写点什么

软件编程技艺

2010 年 8 月 23 日

Cutter 协会最近出版了一期 Cutter IT 专刊,主题是软件编程技艺: 敏捷开发的影响。 你可以免费下载这期专刊。(但是你必须先注册,然后在页面的橘色小输入框中输入推荐码)。

这一期刊物的客座主编是 Jens Coldewey。 在篇首语中,Coldewey 回顾了技艺运动的起源,也就是 OOPSLA 研讨会。

十二年之前,四位了不起的人——Bruce Anderson、Norm Kerth、Dave West 和 Ken Auer——在 Vancouver 举办的 OOPSLA 大会上举办了一场了不起的研讨会。 “软件即是工作室规则。” … 1998 年的这场研讨会官方的主题是教学,但是今天再来阅读这些号召参与的声明,我们会觉得它更像是软件技艺运动的起点。

Pete McBreen 参加了此次研讨会,三年之后他出版了 _《软件技艺》_ 一书,而 Bob Martin 则在 2008 年提议添加第五条敏捷宣言“(我们的价值在于)技艺胜于废话。”

据 Coldewey 所说,软件技艺已经成为一种运动,它是对以下内容所做出的响应:“很多敏捷实践者越来越担心, 由于 Scrum 已经获得了大量的成功,越来越多的人会将敏捷运动降格为 Scrum 实践…… (而忽略了)以频繁而快速的节奏发布高质量代码,却不会破坏代码库的能力。”

Coldewey 还提到,软件工匠提倡:

… 好的代码库是频繁发布有价值的软件的基础,而能够专业化地协调利益相关者的业务目标的稳定团队则是好的代码库的基础。(并且)编程是一种需要终生学习、并且与熟练的程序员合作的技能…… (还是)只可意会不可言传的知识和经验。 而这也正是技艺登场的地方: 技艺是讲授和传递不可言传的知识和经验的传统方式。

该册专刊包含了六篇文章,以及客座编辑的篇首语。

  • “真正软件工匠的七个维度”,作者为 Mathew A. Stuempfle 和 J. David Gibson。该文章试图回答怎样成为真正的软件工匠的问题。他们认为需要涉及到几个关键的维度: 理解技艺的必要性;担任多种角色;意识到指导者的重要性;活动的团队成员;理解受众;知道偶尔出错没关系;参与并指引持续改变。
  • “工程: 没问题;技艺: 不可以”,作者是 Ken Orr 和 Paul G. Basset,他们认为技艺运动是一种误导,而软件行业真正的需要在于“成熟为工程规则”。
  • “技艺如何在爆炸性增长中幸存下来”,作者是 Lawrence Fitzpatrick,文中做了一个案例研究,那是关于“在面对严重的对抗压力时,一个正在成长的软件开发团队如何才能够保持表面上的技艺。”
  • “可持续的敏捷软件开发”,作者为 Stefan Roock,文中描述了“增量设计的基本原则”以及它能够如何促进对软件系统进行长期、成本有效的维护。
  • “当前的业务世界需要适应环境的技艺”,作者为 Gil Broza。Broza 认为“在当今世界上,纯粹的软件技艺只是纸上谈兵”,而真正需要并且切实可行的是一种不同的技能“适应环境的技能”。
  • “谁会进行设计用户体验: UI 开发者还是 UX 设计者?”,作者为 Michael Hughes。 Hughes 重点讲述了人机交互系统、可用性以及近期出现的用户体验(UX)设计规范应该是技艺的一部分的说法。

这期专刊提供了关于技艺运动起源非常有趣和有用的信息,还提供了一些正在讨论的重要问题。 这对于准备参加 2010 SCNA 会议的人会非常有用。

查看英文原文: Software Programming as Craft

2010 年 8 月 23 日 07:232190
用户头像

发布了 340 篇内容, 共 114.2 次阅读, 收获喜欢 4 次。

关注

评论

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

为什么建议你使用枚举?

王磊

Java 枚举

MySQL实战45讲笔记(1)

程序员老王

msyql

极客大学架构师训练营第四周学习总结

竹森先生

极客大学 极客大学架构师训练营

那些会阻碍程序员成长的细节[3]

MavenTalker

程序员 职业规划 职业成长

iOS 动画 - 窗景篇(三·完结)

柯烂

ios swift 动画 移动互联网 动效

IM聊天教程:发送图片/视频/语音/表情

GoEasy消息推送

websocket 即时通讯 聊天室 聊天

深入浅出kubernetes之WorkQueue详解

博文视点Broadview

Kubernetes 源码分析 k8s 队列 延迟队列

告别静默式看房 融云音视频助力上海中原 App 上线 VR 带看服务

Geek_116789

一二线城市知名 IT 互联网公司名单(新版)

程序员生活志

互联网 IT 大厂

创新管理体系标准ISO56002介绍

涛哥

数字化转型 创新

玩转Java8中的 Stream 之从零认识 Stream

Java小咖秀

学习 stream java8 Java 面试 经验

一群龙舟划手 “拍了拍” 你:端午节安康~

博睿数据

海阅优品致力打造新零售蓝海

Geek_116789

实现简单的"纤程"

Near

聊一聊程序员如何增加收入

张小方

程序员 互联网 面试 副业赚钱 薪资

架构师训练营第四周课后作业

竹森先生

极客时间 极客大学架构师训练营

【写作群星榜】6.20~6.26 写作平台优秀作者 & 文章排名

InfoQ写作平台官方

写作平台 排行榜

融云年中大促钜惠来袭 IM+RTC 超值套餐最低6折起

Geek_116789

架构师训练营第四周学习总结

张明森

谈谈架构和微服务<一>

Gabriel

架构 微服务 微服务架构 领域驱动设计 软件设计

SpringBatch系列之Remote-Chunking

稻草鸟人

大数据 Spring Boot SpringBatch 批量任务

Dart vs Swift

柠檬水

swift dart

从0开始设计Flutter独立APP | 第二篇: 完整的国际化语言支持

渔子长

flutter 前端

对直播带货的一点思考

Neco.W

直播 直播带货

MySQL系列 - SQL查询与修改执行过程

俊俊哥

MySQL 性能优化 关系型数据库 存储

来了!8M/S+速度,Pdown复活!

程序员生活志

重学 Java 设计模式:实战中介者模式「按照Mybatis原理手写ORM框架,给JDBC方式操作数据库增加中介者场景」

小傅哥

设计模式 小傅哥 代码优化 代码规范 中介者模式

了不起的 TypeScript 入门教程 [1.2 w字]

阿宝哥

Java typescript 前端 Web

计算机操作系统基础(五)---Linux的进程管理

书旅

php 线程 多线程 操作系统 进程

如何学 Java,我说点不太一样的学习方式

四猿外

学习 程序员 个人成长 程序员成长

架构师训练营第四周作业

张明森

软件编程技艺-InfoQ