acm-header
登录

ACM通信

BLOG@CACM

学习编程的敏捷方法


我最近读了一本书叫返工有了启示。在我的职业生涯中,我一直是一个效率低下的软件工程师,有时也会搞得一团糟。像许多以前的书一样,《重做》声称你可以开创自己的事业。这种方法的不同之处在于,它向您展示了大多数障碍都是如此.如果要过度简化,那就进步,一点点前进,做一些有用的东西,然后再改进。换句话说,采用敏捷方法。重做让我确信我的障碍并不是真正的障碍。现在我的新事业几乎要实现了。最后。

我很快意识到,我从《返工》中学到的经验也适用于我生活的其他方面。其中一个领域是教学.我教学生和行业专业人士编程。我经常看到新程序员纠结于基本的基本概念。我发现用敏捷的方法来教这些学生是非常有效的。

首先,大多数编程书籍,甚至是初学者的书籍,都是压倒性的。新程序员在面对一门编程语言所提供的一切时,会感到害怕。实际上,程序员只需要一个命令子集就可以完成给定的任务。当你只需要一种方法时,你就没有必要学习多种方法来完成一项任务。所以我写了超级简单编程书使用Python编程语言教授基本的编程概念。这本书读起来很快,有很多简短、清晰的编程示例。它的目的是提供一个简短的介绍,教授基本的编程概念,并帮助程序员快速过渡到更高级的概念。这就是迭代、快速学习和进步,就像敏捷和返工一样。

其次,我的课程包含了敏捷方法论的元素。一堂课就像一个sprint计划会议。我会描述本周的内容和作业,并有一个课堂讨论。在课程结束时,学生开始冲刺(即学习)。我们甚至有一个松弛团队进行实时、持续的课堂外聊天。学生可以提前提交作业(例如,原型),获得反馈,并重新提交以获得全额学分。下一节课开始时,会有一个冲刺回顾;学生们描述什么进展顺利,什么困难。这也是我为下节课加强课程材料的机会。这个过程重复(迭代)。

我的教学方法大致遵循敏捷方法,但它仍然是敏捷的。自从我开始使用这种方法以来,我注意到成绩和学生态度有了显著的改善。学生们经常说,“你的课让编程变得很简单”或“我直到现在才明白编程”。敏捷让您边做边学习,并在学习的基础上进行构建。它在我的课上很有效。

埃德温·托雷斯他是MITRE公司的全职软件工程师,蒙茅斯大学计算机科学的兼职教授。在Twitter上联系Edwin@realEdwinTorres


没有发现记录

登录为完全访问
»忘记密码? »创建ACM Web帐号
Baidu
map