软件随想录(local.joelonsoftware.com/wiki)-2005年06月20日 最佳软件文选I - 介绍 - Introduction to Best Software Writin

2005年06月20日 最佳软件文选I - 介绍 - Introduction to Best Software Writing I

 

最佳软件文选I - 介绍

From The Joel on Software Translation Project

这是The Best Software Writing I, Selected and Introduced by Joel Spolsky的介绍,此书目前已发行。

纽约市的风正大。

就如往常,当我走过四条街要从我的办公室到地铁站时,有趣的事正在发生。

其实不是真的有什么有趣的事,只是适度有趣的事。

例如,有些家伙正在人行道上疯狂地跑著,看起来非常像 R. Crumb漫画中的角色,挥动他的手臂并发出鸡的叫声。"跑"并不是正确的词。他比较像不断地要坐倒却在他著地之前把自己接起来。

然后一台计程车转进附进的转角撞倒一个过街老人,他只是走得有点慢而使司机耐不住性子。

一对圆胖、红脸的外地客问我附近是不是有任何一间酒吧(的确有。我们就在酒吧前面)

某些人在地铁站的入口发广告卡。当然了,地铁站的里面到处都是这种卡片,因为每个拿到的人立刻就把它丢在地上,用你所能丢4 x 6大小卡片的最粗暴方式。我在下楼时差点因踩到一张滑倒。

适当有趣的内容,但在纽约市相当容易就被忘记。

隔天我正在跟我们刚雇用的暑期实习生谈话。基于某种原因,今年的暑期实习课程包含了75%不是从印弟安那来就是要去印弟安那的学校就读的人。印弟安那,这是你在美国印象中并不熟悉的那一块,是在中部的某处,充满农田的一州,充满生气的大学里有著吃玉米、打篮球长大的孩子,诺曼-洛克威尔式(Norman Rockwell)的城镇,而有时候生锈黑嘴的旧工业城还在抓紧著它最后一口的呼吸。当我在写这些文字时,我准备好跟从印弟安那旅游与基础设施部门的愤怒信周旋。他们推销刺激的文化景观、如诗如画的湖泊、世界级的电信系统、与多样种族的旅馆。你也许可以在同一条街上找到墨西哥旅馆与义大利旅馆!)

不管如何,那个实习生说他从来没有住在纽约市,问我说这里像什么。我实在没有一个好的答案,不过我说「在印地安那州的伯明顿,每天去坐地铁的路上会遇到十件足以当作午餐闲聊题目的趣事,但在这里你全都不屑一顾,纽约大概就像是这样的地方。」

我自呜得意,然后由书架拿出一张地图找另一个州来侮辱。

不过,我忘记为什么要讲这个故事。

噢,等一下,我记起来了,不过我得先告诉你另一个故事。

几个月前,我由另外一个出版社(不是这本书的出版社)那里拿到一本书的审阅版。出版社、作者和书的名字我都保留,因为我怕我对这本书讲不出什么好话。

那家出版社希望我谈谈这本书有多好,然后在书背上引用我的话。通常我都很乐意这样做:我是个曝光狂,为了让我的名字出现在阅读大众面前什么事都会做。我的心愿是如果我曝光得够多,打电话到我家的电话销售人员就能够念出我的名字。

这本书一开始看起来很有说服力。它满足了真正的需要。我记得有好几次在书店绝望地想找本针对特定题目的书籍,可是一无所获。所以我满心期待地阅读手稿。

Bleah.

我几乎读不下去。

作者一直在谈论聪明以及有趣的事。

他的文笔也很清晰。

不过这本书却是彻底的完全的无聊。而且更糟的是它完全没有说服力。

作者违反了良好写作的头号规则,那一条「呈现,不要讲述」的规则。这本书里一个故事都没有。到处都充满了「良好的团队领导人会设定一个正面的范例来提供灵感」这种句子。这是什么鬼东西?

注意啦。下面的方法可以让你说「良好的团队领导人会设定一个正面的范例来提供灵感」而不让你的读者睡著:

我当兵时在餐厅做了几个月,每天16小时不停地擦桌子和洗盘子,只有下午可以休息半小时,不过得洗碟子洗得非常快才有可能。我的手永远都是红的,我的上衣前襟永远都又湿又臭,而我再也受不了了。
反正我找到方法离开厨房,调去为高阶军士长工作。这个家伙有很多年的经验。他可能比单位中其他的小朋友大上20岁。即使是在野外,不管周遭的世界多么脏乱泥泞,他总是保持光鲜亮丽,穿著全套干凈浆熨的军服,皮鞋也总是擦得光亮无比。你会有种感觉,当我们睡在地上脏乱的睡袋里时,他是睡在400针的埃及棉床单上。
他负责两件事:军纪以及基地的实体设施。由于他是主军纪官,营里每一个人都有点怕他。大多数人只知道他趾高气扬地在基地里到处检查,大声吼叫并要求不可能达成的高标准命令和清洁,因为我们的基地基本上是沙漠中的一堆帐篷,不是充满灰尘就是充满泥泞,视天气状况而定。
反正替军士长工作的第一天,我不知道会遇到什么事。我相信会很恐怖,不过总比整天洗盘子和擦桌子要好,而且it’s not like the guy in charge of the mess hall was such a sweetheart, either!
一天他带我到军官的浴厕,告诉我要负责保持这里的清洁。他说:「这是清洁厕所的方法。」
然后他跪在小便斗前,身上还穿著干凈浆熨的制服,然后用双手去擦洗厕所。
对于必须去洗厕所(几乎就是世界上最烂的工作)的19岁青年来说,看到这个38岁穿得光鲜整洁的高阶军纪官清洁厕所,彻底改变了我的态度。如果他能够清理厕所,我也能够清理厕所。打扫厕所并没有什么不对。从此刻开始,我的忠诚和激励就不再减弱。这就是领导。

看到我在做什么吗?我在说一个故事。我敢打赌你宁愿看这篇400字的故事,胜过听某人打混的说法「良好的团队领导人会设定一个正面的范例来提供灵感」。

总而言之,我打电话给希望我称赞这本书的编辑,说我没办法真心推荐一本没有任何故事的无聊书,虽然这本书除此之外写得很好而且完全正确。我想现在他们很讨厌我。

所以事情就是这样。

软件开发的世界极度需要更好的文章。如果我必须读另一本由16个母语非英语的人合写,谈论某个类别程序库的书,我就会疯掉。如果我看到另外一本充满强烈假学术傲慢的面向对象模型精装书,我再也不会把它收藏在Fog Creek藏书里:它会被直接丢到垃圾桶。如果我必须去读另一篇某个Slashdot上狂热的九岁星舰迷所写,对微软程序问题很多大加攻击的文章,我可能会用削尖的铅笔戳自己的眼睛。够了,够了,真是够了!

而这就是Gary Cornell建议这本书的原因,我也欣然接受这个想法。这是个展示过去一年(大约)软件相关好文章的机会。原本的想法是要每年一本,这样子你手上的就会是「2004年最佳软件文章」,可是2003年有很多我们想收录的文章,而且我们担心如果再书名上有年份,书商便会在年末时退书。我在我的网站Joel on Software上征求忠实读者的提名,然后自己选择最后的文章,所以收录或不收录全是我的责任,不过极佳写作的所有荣耀(在这个很少能获得的领域中)都归于贡献者。

最佳软件文选第一辑(The Best Software Writing I)已经上市。里面包括:
Ken Arnold - 编程风格是根本 (Style Is Substance)
Leon Bambrick - 最蠢使用介面奖:Windows搜寻功能 (Award for the Silliest User Interface: Windows Search)
Michael Bean - 程序员外包的陷阱 (The Pitfalls of Outsourcing Programmers)
Rory Blyth - 当数据库用的Excel (Excel as a Database)
Adam Bosworth - ICSOC04讲座 (ICSOC04 Talk)
danah boyd - 自主观念的社会式软件 (Autistic Social Software)
Raymond Chen - 为何不干脆挡掉依赖未公开行为的程序 (Why Not Just Block the Apps That Rely on Undocumented Behavior?)
Kevin Cheng and Tom Chi - 踢骆驼 (Kicking the Llama)
Cory Doctorow - 由WIPO拯救加拿大的Internet (Save Canada's Internet from WIPO)
ea_spouse - 美商艺电:人的故事 (EA: The Human Story)
Bruce Eckel - 强类型与重度测试 (Strong Typing vs. Strong Testing)
Paul Ford - Processing Processing (译注:Processing是一种程序语言)
Paul Graham - 伟大的骇客 (Great Hackers)
John Gruber - 网址列就是新的命令列 (The Location Field is the New Command Line)
Gregor Hohpe - 星巴克不用两段式委任 (Starbucks Does Not Use Two-Phase Commit)
Ron Jeffries - 热情 (Passion)
Eric Johnson - C++ - 被遗忘的特洛依木马 (C++ -- The Forgotten Trojan Horse)
Eric Lippert - 换一个灯泡需要几个微软的员工? (How Many Microsoft Employees Does it Take to Change a Lightbulb?)
Michael "Rands" Lopp - 当你搞砸时能做什么 (What to do when you're screwed)
Larry Osterman - Larry的软件工程原则之二:用测试指针来度量测试人员是行不通的 (Larry's Rules of Software Engineering #2: Measuring Testers by Test Metrics Doesn't)
Mary Poppendieck - 团队补偿 (Team Compensation)
Rick Schaut - [Mac Word 6.0 Mac Word 6.0]
Clay Shirky - 一个团体是它自己最糟的敌人 (A Group is its Own Worst Enemy)
Clay Shirky - 以团体为使用者:社会软件的结构与设计 (Group as User: Flaming and the Design of Social Software)
Eric Sink - 缩减缝隙 (Closing the Gap)
Eric Sink - 雇用的风险 (Hazards of Hiring)
Aaron Swartz - PowerPoint再混和 (PowerPoint Remix)
why the lucky stiff - 与卡通狐狸来趟快速(而且希望无痛)的Ruby之旅 (A Quick (and Hopefully Painless) Ride Through Ruby (with Cartoon Foxes))

 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值