AI实践哪家强?来 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:301130
用户头像

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

关注

评论

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

HarmonyOS Connect “Device Partner”专场FAQ来啦!

HarmonyOS开发者

HarmonyOS

聊聊火出圈的ChatGPT

江湖修行

人工智能 AI ChatGPT

react源码中的生命周期和事件系统

flyzz177

React

飞桨-鹏城云脑发行版亮相第四届启智开发者大会,软硬一体化助力科研

飞桨PaddlePaddle

深度学习 paddle 飞桨

MIAOYUN 2023年度战略共识会

MIAOYUN

战略共识 战略会

什么是物联网?常见IoT 物联网协议最全讲解——基础知识

阿里云AIoT

人工智能 安全 前端开发 网络协议 传感器

推荐系统[八]算法实践总结V0:腾讯音乐全民K歌推荐系统架构及粗排设计

汀丶人工智能

自然语言处理 推荐系统 推荐算法 搜索算法

React源码分析8-状态更新的优先级机制

goClient1992

React

人人看得懂的ChatGPT技术原理解析

Baihai IDP

人工智能 自然语言处理 NLP 大模型 12 月 PK 榜 ChatGPT

实现一个简单的Database12(译文)

GreatSQL

sqlite greatsql greatsql社区

瓴羊Quick BI智能报表打破“中式”报表限制,提速增效

夏日星河

React源码分析8-状态更新的优先级机制

goClient1992

React

react源码分析:babel如何解析jsx

flyzz177

React

瓴羊Quick BI可视化大屏功能强劲

对不起该用户已成仙‖

2023前端二面经典手写面试题

helloworld1024fd

JavaScript 前端

运联智库发布跨境电商物流50强排行榜

联营汇聚

PCB生产工艺|主流程之AOI,华秋一文读懂其子流程

华秋电子

一个诡异的 Pulsar InterruptedException 异常

小小怪下士

Java 程序员 后端

华为Push用户增长服务:精准触达,加速增长

HarmonyOS SDK

HMS Core

阿里前端二面经典手写面试题汇总

helloworld1024fd

JavaScript 前端

js函数柯里化-面试手写版

helloworld1024fd

JavaScript 前端

GAIDC 2023盛会迎来大模型论坛“主场”,百度飞桨护航大模型产业发展

飞桨PaddlePaddle

深度学习 飞桨

vue的两种服务器端渲染方案

京东科技开发者

Vue 服务端 nextjs nuxt 渲染方案

react源码分析:实现react时间分片

flyzz177

React

IoT设备身份三元组烧录方案汇总——实践类

阿里云AIoT

阿里云 物联网 IoT

DevOps 与 FinOps:二者可以协同吗?

SEAL安全

DevOps FinOps 企业号 2 月 PK 榜

一步步实现React-Hooks核心原理

helloworld1024fd

JavaScript 前端

从React源码分析看useEffect

goClient1992

React

佳杰云星:基于鲲鹏DevKit开发多云管理平台,云资源综合管理能力提升约25%

极客天地

能不能手写Vue响应式?前端面试进阶

bb_xiaxia1998

Vue 前端

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