QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

软件工艺宣言发布最新的简体中文版

  • 2012-09-05
  • 本文字数:2364 字

    阅读完需:约 8 分钟

近日,软件工艺宣言的简体中文版新鲜出炉,这个版本经过和 8th Light(软件工艺宣言网站的维护公司)的沟通,会发布到软件工艺宣言网站上。其形式类似于大家所熟悉的敏捷宣言。针对该宣言,大家在微博及新闻组上展开了讨论。

软件工艺宣言的主要内容是:

不仅要让软件工作,更要精益求精。

不仅可以响应变化,更要稳步增加价值。

不仅要有个体与交互,更要形成专业人员的社区。

不仅要与客户合作,更要建立卓有成效的伙伴关系。

也就是说,左项固然值得追求,右项同样不可或缺。

微博上的讨论主要集中在软件工艺本身对程序员的意义:

Thinker 姜志辉: 写软件,写好的软件,写精益求精的软件。这是每一个程序员必须具有的职业素养。第一,要提高自己的编程技能;第二,要养成良好的习惯;第三,要树立正确的价值观。三者缺一不可。

章乐焱: 若认为软件是手工艺品,那就师傅带徒弟熟能生巧;若想参照制造业,貌似他们的设计只出蓝图象我们的 SRS,而制造业的工艺科干得活到是象我们的设计,按排工序确保实现可行性,设计工装卡具降低制造难度保证加工质量。

姚若舟: 如同敏捷宣言一样,软件工艺宣言只是一些价值观。如同敏捷一样,没有也无法给出一个软件工艺的定义的。你说谁干得好谁牛叉,你又如何定义“干得好”呢?的确被 @King 费事 说中了。

JacksonZhang_ 张博超: 程序员应当有一颗匠心,提高对代码的审美能力,不断创造更美的代码。

敏友汇: 做事看人,如果自己有要求,有上进心,就会不断的学习,不断的追求进步,不断的向前,价值观只是一个总结,一个愿景,大家同意这样的说法吗?

王宇( @King 费事)在新闻组中对软件工艺宣言的价值提出了质疑:

这东西的价值在什么地方?聚集软件工匠?使他们找到方向?表示工匠们的先进性?
整个东西,不停重复精益求精,其他主要对应敏捷宣言。
与其这样,我愿意花钱到广告公司打个巨型的“我保证会把我的工作做得更好”字样,到工厂和工地找人签字去。岂不更有轰动效应?
这东西感觉把我们的底线拉得很低很低,唉。
感觉和 Kent 前一段时间整的东西有点类似
拉大旗作虎皮,这样的东西我发现越来越难以和别人走近。反而显得我们格格不入。自己爽什么都不能解决,客户爽才是最重要的。

姚若舟( @姚若舟)对王宇的评论做出回应,并说明了翻译和传播它的意义所在:

王宇的“酒后真言”说的挺好的,那我也来谈谈我对这个宣言的看法。

这个宣言和敏捷宣言,对于我个人来说,是一些可以认同的价值观,奋斗的方向和鞭策自己的动力。这些价值对我来说已经足够了。如果说拿着这些宣言去忽悠客户(不管是项目客户还是咨询客户),那完全是没有任何意义的。创造客户价值永远是真正重要的东西,这些宣言以及衍生出来的方法论都不过是创造价值的手段罢了。

翻译和传播这些宣言和方法论,我认为可以让更多的人意识到创造更高价值和改善的方法是存在的,让有意愿改进的人找到方向。我希望看到越来越多的开发者可以朝着这个方法去努力,因为看到过太多不专业的代码和软件了。不过现实是残酷的,就算所有开发者都签名,又如何?身体力行,结合实际去做,持续改善,才是关键。

最后我想说的是,在“码农”越来越多的今天,作为开发者,需不需要想一下自己的专业价值在哪里呢?如果每天只是在那里制造垃圾代码,对代码和技术没有任何追求而只是应付的话,那么每天 8 小时每周 40 小时的工作,无疑就是在浪费生命了!我们的确需要和团队拉近距离,但是那不应该是对现状无条件的妥协,抓住关键的痛点去改善才是应该做的。而且我一直觉得,团队应该做到 business value 和 technical excellence 这两方面同时进行改善,而不是忽略任何一个。说的有点重了,但是不吐不快。

王宇接着说出了自己的想法,认为更应该注重客户,才能够更好地体现出程序员的价值:

我所谓的客户,不光项目客户或者咨询客户算客户。在此时,你在阅读这封邮件的时候,你也是我的客户。之前的邮件可能让大家不爽,大家可能非常轻易的就辨别出来了。之前邮件中的“让客户爽”可以解释为站在客户的立场提供更高的价值。上一封邮件我有如下推论,所以我认为当头一棒是一种比较好的方式:
1、一般用来鞭策自己的一般也称为信念,信念应该跨场景成立。精益求精这词虽然适用广泛,但非常容易被误用或者存在理解偏差甚至在某些场景无法适用。误用的例子:过度设计。理解偏差的例子:站在开发者的角度思考问题而不是系统化思考。无法适用的例子:技术探索、实验室代码、职责划分之后的业务隔离。
2、局部优化的导向味道 大于 系统性思考的味道。说不定哪天就能再顺着这个宣言再写出针对某些方面的考虑,当然这些方面很重要。你会发现太多太多的方面,你会问自己哪个是我所坚信的?前面的忘得差不多了,就最后签的还记得,那就它吧。在这种场景下,创建者可能都没有想到。另一方面,我一般不希望别人看到某些内容就意味这是我们追求的信念,有些时候是危险的。有的时候创建者有时候都没有意识到自己的东西会给别人带来误导的结果。(参见附件,测试宣言) 这可能就是尽信书不如无书的道理吧。写某些东西确实是名可名,非常名。但追求卓越的态度应该有,追求匠艺的追求没有错。每日精进(但我们不能把我们所有的好习惯或者精神都写下来让大家签字,尽管我也赞同工匠的心态整个社会都缺)
3、Do the right thing 的重要性始终要高于 Do things right。换句话说 Business 的高度永远高于 Technical 的高度,技术是业务的保证者。比如,大猩猩玻璃是 iPhone 触摸和防划的保证。如果提供别的特性,不能得到终端认可或者辅助某种价值使得终端认可,这种东西一般可以称为浪费。
大家应该发现我邮件里有很多假设,Joseph 的邮件里也有很多。比如,我这里有三个“应该”,Joseph 邮件里面也有三个。这些假设很危险,尤其咱们坚定不移的相信的时候。

各位 InfoQ 中文站的读者,对于软件工艺宣言的价值,你的意见如何,欢迎加入到讨论中来。

2012-09-05 04:432997
用户头像

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

关注

评论

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

REST 无状态与有状态的理解与应用

Apifox

gRPC RESTful 开发 Rest REST API

一文了解电商大促系统的高可用保障思路 | 京东云技术团队

京东科技开发者

产品 高可用 研发 电商大促 企业号 7 月 PK 榜

Spring高手之路7——事件机制与监听器的全面探索

砖业洋__

spring 观察者模式 事件机制 Spring生命周期 Spring 监听

日增320TB数据,从ClickHouse迁移至ByConity后,查询性能十分稳定!

字节跳动开源

大数据 开源 云原生 Clickhouse 数仓

7.25齐聚西安!助推国资国企建设一流司库管理体系

用友BIP

全球司库 国资国企

Spring高手之路6——Bean生命周期的扩展点:BeanPostProcessor

砖业洋__

spring ioc BeanPostProcessor Bean生命周期扩展点 后置处理器

MobPush 厂商通道申请指南

MobTech袤博科技

大数据 华为 程序员 前端 Android;

记一次sst文件损坏修复过程

TiDB 社区干货传送门

故障排查/诊断

用 Generative AI 构建企业专属的用户助手机器人

TiDB 社区干货传送门

绘出「星辰大海」:华为云Astro轻应用新手指南-第一章

华为云PaaS服务小智

云计算 华为 开发者 华为云

零基础能学习Java吗,看了这篇文章你就知道!

java易二三

Spring高手之路5——彻底掌握Bean的生命周期

砖业洋__

Spring Bean Spring Bean生命周期 @PostConstruct InitializingBean DisposableBean

装备制造行业数智人力应从何入手?超实用干货来了!

用友BIP

人力资源

绘出「星辰大海」:华为云Astro轻应用新手指南-第二章

华为云PaaS服务小智

云计算 开发者 软件开发 华为云

Spring高手之路4——深度解析Spring内置作用域及其在实践中的应用

砖业洋__

spring Singleton prototype Spring作用域 Spring原型作用域

中移链与BSN分布式云管平台集成,共同构建专属协同体系

BSN研习社

O-Star | 矩阵起源2023届校招生入职啦~

MatrixOrigin

数据库 云原生 HTAP MatrixOrigin MatrixOne

质押理财USDT系统搭建开发案例

薇電13242772558

全球LED显示屏市场机遇与挑战

Dylan

封装 芯片 LED显示屏 体育 全球

抽象语法树AST必知必会 | 京东物流技术团队

京东科技开发者

前端 AST 抽象语法树 企业号 7 月 PK 榜

免费又好用的MES系统——万界星空MES系统重磅来袭

万界星空科技

开源

企业数智化底座赋能国资国企数智监管

用友BIP

数智底座 国资国企

倒计时 1 天!21 位大咖 11个议题,龙蜥社区走进 Intel MeetUp 即将在上海召开

OpenAnolis小助手

操作系统 芯片 intel Meetup 龙蜥社区

关于互联网产业的一些思考

用友BIP

产业互联网

# **基于TiDB Binlog架构的主备集群切换操作手册**

TiDB 社区干货传送门

实践案例 管理与运维

pump 日志错误信息疑问之你的pump 数据被gc了嘛?

TiDB 社区干货传送门

性能调优 实践案例 集群管理 TiDB 源码解读

阿里大牛用了一个月把Github上热度最高的Java面试八股文总结出来了,按这个学,找工作没问题

架构师之道

java面试

矩阵起源通过ISO 三大体系认证!

MatrixOrigin

数据库 超融合 HTAP MatrixOrigin MatrixOne

Ui2Code+ChatGPT助力低代码搭建 | 京东云技术团队

京东科技开发者

低代码 ChatGPT 企业号 7 月 PK 榜 Ui2Code

软件工艺宣言发布最新的简体中文版_语言 & 开发_侯伯薇_InfoQ精选文章