速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Coding Dojos:练习掌握软件开发的艺术

  • 2007-09-06
  • 本文字数:1363 字

    阅读完需:约 4 分钟

Coding Dojos(编码道场)为开发人员们提供了一个放松和舒适的环境,让他们磨砺自己开发技能的聚会之所。 Emily Bache 和其他人开始在一个 Wiki 上记录“道场”的内容,大家可以从Wiki 中的内容开始了解Coding Dojos。

Dave Thomas 介绍了什么是“ Code Kata(代码之‘形’)”(译注:Kata 来自日语,对应的汉字为“形”或者“型”,常用在日本技击中,如柔道、空手道、合气道及剑道等,指套路。这里用来指代代码练习中的形式),并且记录了 21 种可以用来磨砺我们编程技能的不同“形”。他解释了通过这样的方式来进行学习的原因:

你怎么样才能成为一个伟大的音乐家?了解音乐理论以及你的乐器的运作机理,这样做是有帮助的。有天分也能帮你成为音乐家。不过,追根问底,伟大来自持续不断的练习;反复应用相关理论,并根据每次得到的反馈来不断提升自己的水平。你怎么样才能成为一个全明星运动员呢?当然,好的身体和天分会起到辅助作用。但是伟大的运动员们每天都会花费数小时进行训练。

但是在软件行业中,我们给开发人员们培训完理论之后,就直接把他们扔到实际的项目中去了。这就像找来一帮身体很棒的小伙子,直接跟他们说,他们要用四节的比赛时间来击败 Redskin 橄榄球队(译注:一只美国橄榄球大联盟 NFL 球队)(嘿,我们是按照目标进行管理的,对吧?)。在软件行业里,我们直接在工作中进行练习,这就是为什么我们工作中总是犯错误的原因。我们要找到将日常练习与职场工作分开的方式。我们需要练习课程。

Coding Dojos 就是这样一个供人们聚集在一起进行“形”练习的场所。InfoQ 问到 Emily Bache 关于 Coding Dojos 的受众问题,她回应道:

我认为只要是希望提升自己编码技能的人,特别是在测试驱动开发的领域中的人,都应该尝试一下 Coding Dojos。这不是什么新创意了,多年以来,一直存在着互相分享学习经验的用户组和学习圈子聚会,Coding Dojos 不过是在建立同一个想法上的新的视角。几年前,我曾是一个设计模式学习组的成员,Dojo 只是对老主意的一个新包装而已。一帮希望提升自己技能的人,聚在一起,互相学习,并且很享受这样的过程。

这种技术的前提是:熟能生巧;形成专业技能的关键,是仔细的练习,而不是纯粹靠天赋。通过对同一个小问题的反复研究,你会发现自己时常有灵光迸发之感,自己的设计和编码技能也从而得到提升。 Bob 大叔在参加完 Laurent Bossavit 的一个关于 Coding Dojos 的演讲之后,曾说道:

我现在已经反复地做一个“形”好些年了,并且完成了它上百遍。在会议中,客户那里,商业秀等等场合,我都会去完成它。这就是保龄球游戏。由于做的次数太多,我在睡觉时都可以把它解决掉。不过有趣之处在于,我仍然能够获得微小的改进。这并不经常发生,而且改进的幅度也不大,但是确实有进步。

所以,代码之“形”的练习可以一个人做,也可以一组人一起做,来提升我们的编程技能。Coding Dojos 提供了一个有趣而舒适放松的环境,让大家可以一起进行练习。不过这些需要占用我们朝九晚五之外的业余时间来完成。

查看英文原文: Coding Dojos to Master the Art of Development - - - - - -

译者简介:郑柯,目前任职《程序员》杂志社高级编辑,有志于在中国的软件开发业界推广 Agile 的理念和方法论,笃信以人为本,关注 Ruby,关注敏捷,关注人。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2007-09-06 21:30858
用户头像

发布了 479 篇内容, 共 159.1 次阅读, 收获喜欢 50 次。

关注

评论

发布
暂无评论
发现更多内容

程序员必须知道的数据结构:队列与栈

老王说编程

数据结构 队列

硬件设计必备,电子元器件高清矢量图

不脱发的程序猿

硬件产品 28天写作 硬件设计 电子元器件矢量图 3月日更

Flutter 2 来了

SamGo

flutter

饿了么刚给我确认了p7的职位,对自己的经历,做一个面试总结。

Java架构之路

Java 程序员 架构 面试 编程语言

正则表达式.01 - 元字符

insight

正则表达式 3月日更

金三银四程序员面试必备:2021最新 最全面Java复习路线!已收录GitHub

比伯

Java 编程 程序员 架构 面试

简易项目搭建 Models层封装

happlyfox

学习 28天写作 3月日更

《不看后悔》38个JVM精选问答,让你变成专家

Java 架构 面试 JVM虚拟机原理

【回溯算法】借助最后一道「组合总和」问题来总结一下回溯算法 ...

宫水三叶的刷题日记

面试 LeetCode 数据结构与算法

两会热词“区块链”,打开传统溯源的一扇大门!

源中瑞-龙先生

区块链 两会

程序员必须知道的数据结构:线性表与链表

老王说编程

Java 链表 线性表

区块链药品溯源解决方案-区块链技术监管医药溯源

13530558032

智慧党建系统开发,智慧组工平台建设

13530558032

【金三银四】这才是打开Java面试的正确方式,吃透这份【Java面试手册】offer稳了

Java 编程 面试

微信团队分享:微信直播聊天室单房间1500万在线的消息架构演进之路

JackJiang

微信 架构设计 即时通讯

Wireshark数据包分析学习笔记Day3

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

用c++创作一个简单小游戏

张鹤羽

28天写作 3月日更

Elasticsearch Index Types and Mappings

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

力扣(LeetCode)刷题,简单题(第21期)

不脱发的程序猿

面试 LeetCode 28天写作 算法面经 3月日更

mock 请求分发

blueju

JavaScript React Mock umi umijs

简单工厂模式、工厂模式、抽象工厂模式比较

良知犹存

设计模式

Redis 与 I/O 多路复用模型

大海

redis

开源镜像仓库Harbor的镜像安全

运维研习社

Docker Harbor 漏洞扫描 镜像安全 私有仓库

LeetCode题解:714. 买卖股票的最佳时机含手续费,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

程序员必须知道的数据结构:HashMap 与 LinkedHashMap

老王说编程

Java 数据结构 hashmap

话题讨论 | 又一家大厂进入汽车领域,"百车大战"即将来临?

程序员架构进阶

话题讨论 七日更 28天写作 话题王者 3月日更

总结近期腾讯+阿里+百度Java岗高频面试题,提问率高达98%,看到这篇文章基本offer稳了

Java架构之路

Java 程序员 架构 面试 编程语言

阿里面经最新分享:Java面试指南/成长笔记(金三银四程序员必备)

比伯

Java 编程 程序员 架构 面试

恋物志(二):独居者的智能生活指南

脑极体

萌新不看会后悔的C++基本类型总结(二)

花狗Fdog

Oracle table()函数的合理运用,提高工作效率

xiezhr

oracle table() Oracle函数 3月日更

Coding Dojos:练习掌握软件开发的艺术_研发效能_Amr Elssamadisy_InfoQ精选文章