编程的未来 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming
说明
周末刷了一下视频 -- 编程的未来,1942年出生的Bob大叔,1个小时20分钟全程手舞足蹈的讲解了编程的历史和未来。讲述了程序员的历史1945年第一台计算机开始,只有一位程序员,到目前为止全球程序员数无胜数。新语言如雨后春笋般爆发,以后的未来是增强版的敏捷开发 + 重拾极客专业精神。整场演讲解析:程序员为啥是从以前的高门槛数学家,到编程没有门槛的年轻人;为啥需要敏捷开发;为啥敏捷开发失效,重拾极客精神。
Bob大叔原名Robert C. Martin 。1970年开始从事编程工作(18岁),敏捷的鼻祖,著著名书籍有《敏捷软件开发 原则、模式与实践》、《架构整洁之道》。
youtube视频链接如下:
"Uncle" Bob Martin - "The Future of Programming"
刀跟火种的年代
1945第一台计算机,1位数程序员
毫无疑问这就是计算机之父Turing图灵。他是数学家,科学家。那个时候程序员要求可真高。
用二进制编程
操作整数的加,和逻辑否操作
发明子函数
发明栈
发明浮点数
1953年发明Fortran语言,那个时代都是手写在纸上。程序员写好程序,交给计算机硬件厂商去给硬件编码,程序员是不能碰到计算机的。有时候仅仅是因为一个标点符号,程序就败下阵来。
函数式编程的鼻祖Lisp,经过几十年的风风雨雨,发现函数式编程正在流行。
1965年,计算机设备租用一个月$2,500 (相对于现在$20k).
1965年,程序员的数量在数十万(100, 000)。
1945年只有一位程序员图灵,到1965年有数十万程序员。Bob大叔那个时候13岁。
1965年的程序员不一定是数学家,TA们是经验丰富的行业专家,非常自律,专业。所以,基本上都是30多岁到50多数的多年工作者。
上帝说要有光 -- 面向对象
1966年Ole-Johan Dahl, Kristen Dygard 发明了面向对象。
1968年Edsger Dijkstra 发明Goto跳转逻辑
Unix之父Ken Thompson(坐着的科学家),C语言之父Dennis Ritchie(站着的科学家,也是Unix开发者)
1970年销售的计算机PDP8s, 售价$50, 000
1970年程序员数量达到百万级别
1970年以后,成千上万的年轻程序员加入,TA们的特点是特别年轻,并且基本上都是男性。比如Bob大叔,那个时候18岁,一个月的工资都可以买车,当然美国汽车也就几千块钱。
程序媛从1985年以后,就像程序猿那么增长,反而往下走的趋势。
1985年的程序员还是比较专业,自律,不需要项目经理去监督。程序员知道怎么管理时间,沟通,一起工作。程序员知道截止时间,和按时教父。
门槛降低,机器性能快速发展
IBM开发出虚拟内存系统,NASA Apollo登月,数据结构,函数,面向对象普及。Unix系统出现,高级语言普及。
大量的雄性程序员已经失控,需要项目经理贴身安排进度。
2001年敏捷宣言
敏捷开发宣言,背景中有Bob大叔。
敏捷开发纪律
极限编程
没有敏捷开发,程序会越来越难维护。没有可追溯机制,所以持续集成CI, CD持续发布出现。
图灵,自律才能创新。
2010年以后 -- 程序员失控
Scrum的美好愿望
过渡的流程化,程序员的技能受限。
程序员反叛。
一个高效的有纪律的商业,加上没有纪律的程序员团队,会快速产生垃圾。
项目经理的真实场景
敏捷的未来2016
敏捷开发如果少了技术的最佳实践,那就是假的敏捷。
解决之道:敏捷必须成长,重拾极客精神,最佳实践。
文化依赖于我们,需要有同理心。
程序是不可控的,人是可控的
Objective-C的兴起-- 完全是意外
Objective-C 在80年代都处于无人问津的语言,那个时候乔布斯创建了Nextstep电脑公司(销售基本无人问津),就收购了Objective-C。最后乔布斯又被请回Apple,Apple收购了Nextstep,才把Objective-C摆正了位置。
所以语言是哪个会流行,完全是意外。
版权声明: 本文为 InfoQ 作者【John(易筋)】的原创文章。
原文链接:【http://xie.infoq.cn/article/f179984523521eafd437e7893】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论