编程大师访谈录 Programmers at work- Interviews

一本比较老的书(1986年), 里面的人物大部分都属于AppleII, dBase时代的.
其中很多都有过开发电子表格的经历.
这些人基本在高中时代就已初露峥嵘, 显示出聪明才智.
书中记录了每个人对作者几个问题的回答.
例如大部分人同意编程属于手艺和科学兼而有之.
并且除编程外有其他业务爱好和生活.

解决问题的策略:分而治之
保证每天编程的习惯
代码注释描述的是想法 why,不是what. 而why多集中表述采用的数据结构.
编程设计都会看重数据结构, 好的数据结构是解决问题的关键.
思考这些大牛对未来的清晰认识也只能停留在5-10年内的, 对如今的社交,移动网络并没有先知.不过一些有艺术气质的大牛对计算机消费化(即pad)的前景预测得很到位.

1, Charles Simonyi
查尔斯.西蒙尼
参与Alto,PostScript开发
匈牙利人,自己通过编程挣钱到美国上大学.
编程前会在纸上写好大致思路, 然后动手, 一般晚上编程,因为白天会被打断.
随着年龄增大, 构思复杂的场景能力下降.
他提到<怎样解题>一书的帮助.
不过他似乎对编程本身不是很热衷.
(我:怎样解题和金字塔原理是解题和写作的两把利器)

他有可能是ubuntu的创始人.

2, Bulter Lampson
巴特勒.兰普森

CP/M 开发个人计算机的一个操作系统

他提出数学的重要性.
提出一切应该尽可能简单, 但是必须把握复杂性.
有效的手段包括分而治之.
随着年龄增大, 力不从心, 不再写程序了.

《黑客与画家》里提到,黑客不要羡慕数学家,编程和计算机科学还是两件事,就像赛车手不一定是汽车专家,但是一样可以开一辆车。

3,John Warnock
约翰.沃诺克

PostScript开发者

一直在写代码, 智力上有挑战, 乐趣多多.
但已不再参与重要的模块,因为精力下降.
同样提到数学的重要性.
任务编程比起科学更是工程学科, 更强调折衷.
基本在家办公.

4, Cary A.Kildall
加里.基尔代尔

设计Logo,PL/1语言

他写程序先从长时间思考数据结构开始,迭代开发.
开发时同样高度集中, 从早上3点到下午6点.
同样编程是工艺和科学的混合体.

5,William H.Bill Gates
比尔.盖茨

编程时先把整个方案构想清楚,并且细化从头到尾再重写一遍.
有意思的地方, 当年微软(刚和IBM合作)时, 他认为CD是未来趋势.

6, John Page
约翰.佩奇

PFS:FILE创办者 (VisiCalc的后继者)

花费18个月基本独自开发PFS.
他一般在状态最好的早上,很早起床写代码, 上午做需要高度集中的工作,
会议安排在下午.
通用先在脑海中有构思,然后写小程序聚焦验证其中最难的地方.

7,C.Wayne.Ratliff
C.韦恩.莱特莱夫

NASA 海盗号 着陆支持软件
dBase 开发者

处于对博彩的兴趣, 他开发了dBase数据库.
在入行15年后依然写代码, 但由于管理,数量在减少.
他喜欢在没有打扰的午夜写代码,也是迭代修改.
他认为团队不要超过6个人, 可能装在一辆普通轿车里.
不同的程序员对数学的要求都不同.
编程同样是手艺和科学成分都有.

8,Dan Bricklin
丹.布兰克林

VisiCalc的设计者, 没参与开发, 但他之前做过开发.
编程部分是科学,部分技能.

9,Bob Frankston
鲍尔.弗兰克斯顿

VisiCalc的开发者
同样开发时会仔细考虑设计构想, 制定框架.

10,Jonathan Sachs
乔纳森.萨奇

Lotus-1-2-3开发者
面向堆栈的交互式编程
喜欢一个人编程,
先让程序跑起来, 然后再添加功能.
同样喜欢早上编程, 并且根据自己的兴趣来开发, 虽然最后没有成名的产品.

11,Ray Ozzie
雷.奥奇

参与过VisiCal, 后在Lotus, 微软首席架构师
同样认为团队超过5人,沟通就开始变差,系统之间无法更好的融合一体.
喜欢编程,认为编程如同使用计算机作为工具箱敲敲打打搭建东西.

12,Peter Roizen
彼得.罗伊森

T/Maker电子表格 开发者

数学学位

喜欢自底而上的开发, 直到所有细节明确后才考虑整体.
喜欢一个人在家开发,而不是到办公室. 一直处于SOHO.
认为编程是艺术.

13,Robert Carr
鲍勃.卡尔

ForeFront集成化软件先驱
AutoDesk市场VP
推迟开发, 并通过单一数据对象来简化核心设计和体系结构.
团队不超过7,8个人.
认为编程时手艺和科学结合, 前者更重些.

14,Jef Raskin
杰夫.拉斯金

苹果第13个员工,设计师
创建Macintosh. 与乔布斯有着分歧.
很早就提到了电脑要像设备一样.
以自由撰稿人进入计算机行业.
有意思的故事,之前只开开车的他在进入苹果后, 被劝说买了辆”劳斯莱斯”车后, 体验到美国的势力待遇.

15,Andy Hertzfeld
安迪.赫兹菲尔德

Mactintosh的第二名程序员.(核心有5个人)

早期学校里的教授都不看好个人计算机,因为他们认为性能比大型机太差.
个人很喜欢计算机,有热情. 一般从晚上8点半赶到凌晨2,3点.
并且认为设计者和实现者是同一拨人才能把工作做好.
后来参与Nautilus(gnome文件管理器)和google+.

16,Iwatani
岩谷徹

Pac Man吃豆的设计者.

后来做管理,说道感觉不赖, 因为可以让别人做自己不太喜欢的事, 而自己可以做爱做的事, 很自在.

17,Scott Kim
斯科特.金

Inversion倒置
本人喜欢设计谜题.

18,Jaron Lanier
加隆.兰尼尔

独立的游戏产品
可视化编程和音乐产品.
这些有艺术气质的人对产品消费化的把握很敏锐.

19,Mickael Hawley
迈克尔.霍利

同样是音乐结合计算机.
中间谈到自己做飞机去小岛上泡温泉和清酒的经历.
并提到计算机不是要取代什么老技术.


总结

读书目的? 看看大佬们的思路
讲了什么? 19位专家的访谈录
最深感悟? 编程本身是一门手艺+科学,大佬后期几乎都脱离了一线编程
特色不同? 早期的行业先驱
实践指导?
推荐指数: ⭐️⭐️️⭐️️