Coding Dojo

Coding Dojo

什么是Coding Dojo?

Coding Dojo是一个学习的过程。一些程序员(通常是15-20人)在一起编程解决一个程序问题。一边编程,一边互相学习。每个人可以从Coding Dojo中学到:解决问题的思路、编程技巧、面向对象设计、演进式设计、结对编程、测试驱动开发、持续集成等等。其实即使从别人犯的错误中,我们也能够学到很多。

组织

一周以前组织者会发出邀请,同时给出所要解决的问题(比如我们这次决定实现一个JSon Parser)。以下是我们的议程:

  1. Coding Dojo以及原则介绍 - 5分钟
  2. 问题介绍 - 10分钟
  3. 2个时段的结对编程 – 20分钟 × 2
  4. 中断(所有人一起讨论一下当前的解决方案,以及下一步方案,注意事项)- 10分钟
  5. 2个时段的结对编程 – 20分钟 × 2
  6. 反省 - 10分钟

会议室组织方式

image

在会议室中间有两个人结对编程,一个是驾驶员(Pilot),另一个是领航员(Co-pilot, Navigator)。周围坐的都是顾问(Advisor, Sensei),前面是投影仪。

Coding Dojo中的角色

教练(coach)帮助维护秩序,引导大家

驾驶员(Pilot):负责具体实现,边写代码,边要把自己的设计意图大声说出来

领航员(Co-pilot):负责帮助驾驶员进行设计,负责控制设计的战略方向

顾问(Advisor):坐在周围,通过投影仪观察当前的进展,可以提出问题,但是不能给出方案。驾驶员与领航员必须先回答顾问的所有问题,才能继续写代码。

一些原则

  1. 不要讨论太多,先写代码
  2. 写代码之前,先写测试
  3. 每个人都能从其他人身上学到东西,哪怕是错误
  4. 所有人参与写代码
  5. 如果你知道好的方案,分享给大家
  6. 顾问只能问问题,不能提方案,驾驶员和导航员必须回答所有问题

我们的Retrospective

  • 导航员应该更多帮助驾驶员
  • 在同一个时段内导航员和驾驶员应该多切换,当然另一个方案是每次替换结对的时候,替换导航员,然后让原来的驾驶员成为导航员引导下一个驾驶员
  • 顾问应该保持耐心,减少对驾驶员和导航员的干扰
  • 减少私下讨论
  • 驾驶员应该大声把设计意图说给大家听
  • 实现的Test Case应该事先明确
  • 每个人应该尊重驾驶员和导航员,虚心学习
  • 使用代码库
  • 频繁签入代码
  • 重构不够
  • 每个人做驾驶员的时候使用自己的环境,使用熟悉的工具。其他人也可以学习他的技巧以及工具
  • 重构的时候,跳跃太大
  • 使用标准键盘
  • 更多的面向对象设计
  • 使用Pomodomo作为时间箱,但是使用一个Range(20分钟 +/- 五分钟)而不是一个点
  • 鼓励每个人参与
  • 教练确保会议秩序
  • 替换结对的时候确保所有的测试通过。

 Coding Dojo的资源

http://codingdojo.org/cgi-bin/wiki.pl?FrontPage
http://www.youtube.com/watch?v=gav9fLVkZQc

此条目由 小样儿 发表在 学习 分类目录,并贴了  标签。将 链接 加入收藏夹

一项名为“Pomodoro”的个人时间管理方法正日益受到敏捷从业者的欢迎。Pomodoro包含了很多与敏捷团队采用的实践相近似的做法:时间盒、频繁检查和调整、预估、对低技术含量工具的偏好,以及对保持可持续节奏的强调。 Francesco Cirillo从上世纪80年代就开始研究这项技术,当时他还是一个学生,一直在寻找一种方法,提高其学习时间的质量、减少使他不能专注的干扰和打断。

于是我就跟自己打赌——这很有帮助,因为如同受到羞辱——“你能不能学习——真正学习10分钟?”我需要客观的验证,一个时间指示器,然后我发现了一只形状像pomodoro(意大利语里的“西红柿”)厨房定时器。

在接下来的几年里,该技术一直在演变。直到1992年,它形成了基本的形式,一直沿用至今。在Pomodoro技术里面,不间断的25分钟被称为一 个Pomodoro,每项工作在若干个Pomodoro内完成。在每个Pomodoro结束时,有一个短暂的休息;每3或4个Pomodoro结束时,安 排有一个较长的休息时间。

该技术也包括一些轻量级的规划和跟踪。在一天的开始,创建一天中的目标列表,然后预估每个任务分别需要多少个Pomodoro才能完成。工作量超过 7个Pomodoro的任务应该被分解;少于1个Pomodoro的任务应该联合在一起,直到占满一个完整的Pomodoro。

打断和干扰则是被快速记录下来,在当前的Pomodoro结束之后再做处理。在一些罕见的情况下,如果不能用这种方式处理中断,当前的Pomodoro就会被停止并视为无效。Francesco指出,下一个Pomodoro会进展得更好。

在过去几年中,Pomodoro技术已经引起了敏捷社区的关注。Staffan NoteberAgile2008大会的相关讲演是如此受欢迎,以致于被选为在大会结束时再来一遍。Staffan在Agile2009大会上再次针对这项技术做了演讲,同时Renzo Borgatti也做了一个讲演,名字是:You say tomato, I say Pomodoro

如果想对Pomodoro技术了解更多,Francesco有一本45页的书和一张单页的备忘单,都可以从Pomodoro技术网站下载。

您是否尝试过Pomodoro技术?欢迎您留下您的评论,跟大家分享使用它的经验。

查看英文原文:Pomodoro - An Agile Approach to Time Management

你可能感兴趣的:(dojo)