Language agnostic 我怎样才能帮助在编程课上苦苦挣扎的同学?

Language agnostic 我怎样才能帮助在编程课上苦苦挣扎的同学?,language-agnostic,Language Agnostic,我是一名计算机科学专业的学生,完成了第二学期的编程课程。我很喜欢它们,也学到了很多东西,但似乎其他学生比我更难理解这些概念和作业。当作业到期时,不可避免的会在前一两天出现群体电子邮件,人们需要帮助解决问题的特定部分,或者有时人们似乎很难知道从哪里开始 我真的很想帮助他们,但我很难想出正确的方法来帮助他们而不给他们答案。当我在理解一个概念上遇到困难时,一段代码片段可以帮助我,但同时,如果它很有意义,就很难想出另一种方法来理解它。另外,每篇作业的学术诚信部分总是在提醒大家不要与他人共享代码。我曾尝试

我是一名计算机科学专业的学生,完成了第二学期的编程课程。我很喜欢它们,也学到了很多东西,但似乎其他学生比我更难理解这些概念和作业。当作业到期时,不可避免的会在前一两天出现群体电子邮件,人们需要帮助解决问题的特定部分,或者有时人们似乎很难知道从哪里开始

我真的很想帮助他们,但我很难想出正确的方法来帮助他们而不给他们答案。当我在理解一个概念上遇到困难时,一段代码片段可以帮助我,但同时,如果它很有意义,就很难想出另一种方法来理解它。另外,每篇作业的学术诚信部分总是在提醒大家不要与他人共享代码。我曾尝试使用伪代码来帮助其他人了解程序流程,让他们了解如何实现它的某些方面,但我没有得到太多的反馈,也不知道它实际帮助了他们多少,或者只是让他们更加困惑


所以我基本上是想看看是否有人有这方面的经验,或者我能帮助其他学生朝着正确的方向前进,或者帮助他们以正确的方式思考问题的好方法

教学中最常见的问题之一是确定学生是否理解你。确定你是否应该继续或重新措辞的一个简单而有效的方法是让学生通过做一些密切相关但不完全相同的事情来证明他们的理解

此外,由于编程本质上是文字问题,因此学生将事情分解成步骤是很重要的。在我向他们展示任何东西之前,我会要求看到他们的高水平。太多的人陷入了语法障碍,在深入研究之前从来没有真正确定过他们想做什么。

一些想法:

  • 结对编程

    让学生(你正在帮助的人)坐在椅子上,给一些东西编码。可以是代码片段,也可以是项目的一部分,任何东西,只要它代表了他们遇到问题的地方。当他们走的时候,指出(不是粗鲁地)他们可能做得不正确的地方,或者可以改进的地方

  • 检讨已完成的工作

    对我帮助最大的一件事是让同龄人(而不是老师或学生助手)检查我的代码。大多数时候,同伴可以指出他们可能做了不同事情的地方

  • 让他们重复你的话

    我经常让我帮助的人重复我刚才说的话,看看他们是否理解或者有什么问题。你会惊讶地发现,当人们听不懂某件事时,他们常常不说话

  • 在项目到期之前提供帮助

    试图在项目到期前一天晚上完成项目是一种肯定的方法,至少不会像其他方法那样彻底地学习概念

  • 不要自己编写代码

    如果你为你的同龄人做这件事,他们什么也学不到

  • 寻找其他资源

    一位助手,一位友好的教授,另一位同龄人都是无价的资源。如果你发现你的教学风格与你的同龄人的学习风格不一致,那么就把他们指向其他可能更能帮助他们的人

  • 抱最好的希望

    你只能在教别人的时候走这么远;他们必须要学习


  • 我曾担任助教,在CS部门的服务台工作(并帮助朋友)。这就是我所做的

    将问题抽象出来,找出相关问题,然后与他们一起解决相关问题。如果他们无法建立联系,你就无法真正帮助他们


    编辑:如果他们在前一天或前一天正在寻求帮助,则拒绝在简单的基本语法之外提供帮助。事情早该在截止日期前就解决了。对你来说,在生日那天拐杖不是一个好的做法。

    一件可能对你的同学有帮助的事情是在课堂讲稿中指出类似的代码(或者如果你没有拿到课堂讲稿,在你自己的讲稿中)。这样一来,你只是在向他们展示教授所说的,而是以一种有帮助的方式去做

    如果另一个学生对此持开放态度,问他们关于他们尝试过的每件事的问题以及为什么会有帮助


    最后,考虑去找你的教授,询问他或她对你允许做什么的建议,以及他们如何建议你帮助别人。毕竟,教授们在教学生方面有多年的经验。更重要的是,作为一名本科生,你将来是否有机会成为助教?作为一名本科生,我获得了助教,这有助于我在不违反任何荣誉准则的情况下,有效地利用自己的冲动帮助他人。如果你有这样的大学毕业生就业机会,让教授们认为你现在是一个乐于助人的人将有助于你获得这些机会。

    让他们向你解释他们的代码

    这可以实现以下几点:

    • 首先,它表明他们实际上有代码向您展示。如果他们还没有打开一个文本编辑器,他们怎么会不理解呢
    • 接下来,它演示了他们在基本层次上理解代码。他们可能是从什么地方抄来的。如果他们对自己拥有的代码一无所知,那就是一个标志。(如果他们确实复制了代码,但仍然花时间去理解代码,那么这在学术上仍然是不诚实的,但在大学毕业后这是一项宝贵的技能。)
    • 最后,现在我们到了一个地方,在你的帮助下(甚至可能没有你的帮助),如果他们到达了目的地,他们可能真的会得到它