国外网站评出对程序员最具影响的书籍清单

国外知名网站 stackoverflow 上有一个问题调查: 哪本书是对程序员最有影响、每个程序员都该阅读的书?这个调查已历时两年,目前为止吸引了153,432 人访问,读者共推荐出了 478 本书(还在增加),其中最火的一本书《Code Complete》被顶了 1333 次。如果你是个程序员,你一定有兴趣看看这些书里你都看过几本,如果你一本没看过的话,我也不好说什么,也许你是个天 才,但我相信大多数人都知道,你在学校里根本学不到什么真正的工作中需要的知识,我们毕业后能帮助我们在公司中胜任工作的老师就是这些优秀的书籍,一本好 书可以改变一个人的一生。 下面是这个调查中排名靠前的书的一个简单的清单: 

第一名:1333票《Code Complete (2nd Ed) by Steve McConnell》,中文版《代码大全(第二版)》,两届Software Jolt Award震撼大奖得主! 

code complete

第二名:1181票 《The Pragmatic Programmer》,中文版《程序员修炼之道》 

第三名:701票 《Structure and Interpretation of Computer Programs》,中文版《计算机程序的构造和解释》

第四名:572票 《The C Programming Language》,中文版《C程序设计语言》 

第五名:481票 《Introduction to algorithms》,中文版《算法导论》 

第六名:478票 《Refactoring: Improving the Design of Existing Code》,中文版《重构:改善既有代码的设计》 

第七名:447票 《The Mythical Man-Month》,中文版《人月神话》 

第八名:440票 《Design Patterns》,中文版《设计模式》 

第九名:394票 《The Art of Computer Programming(First Volume Hardcover)》,中文版《计算机程序设计艺术(第一卷)》 

第10名:364票 《Compilers: Principles, Techniques, and Tools 》,中文版《编译原理》 

第11名:329票 《Head-First Design Patterns》,中文版《Head First 设计模式》 

当然了,这里的排名并不具有什么权威性,但绝对可以说都是好书,这11本外还有很多书虽然票数不是那么多,但大家估计都耳熟能详,比如《Effective C++》(中文版《Effective C++:改善程序与设计的55个具体做法》),《Clean Code》(中文版《代码整洁之道》),《Effective Java》(中文版《Effective Java中文版(第2版)》等 。”

来自http://book.51cto.com/art/201103/249957.htm

理想主义者–理查德.马修.斯托曼(GNU的传奇)

理查德·马修·斯托曼是美国自由软件运动的精神领袖、GNU计划以及自由软件基 金会(Free Software Foundation)的创立者。作为一个著名的黑客,他的主要成就包括Emacs及后来的GNU Emacs,GNU C 编译程序及GNU 除错器。他所写作的GNU通用公共许可证(GNU GPL)是世上最广为采用的自由软件许可证,为copyleft观念开拓出一条崭新的道路。

1990年代中期,斯托曼把他大部时间花在作为一个政治运动者,为自由软件辩护,对抗软件概念专利及版权法的扩张。他仍在程序设计方面奉献的心力都放在GNU Emacs。他的演讲当中大约半数有收入,这让他能够养活自己。

他最大的影响是为自由软件运动竖立了道德、政治以及法律框架。他被许多人誉为当今自由软件的斗士、伟大的理想主义者,但同时也有人批评他过于固执、观点落伍。

       斯托尔曼

       我相信,不知道微软、比尔.盖茨、windows操作系统的中国人没有多少了。我也相信,绝大多数中国人不知道GNU、FSF,不知道理查德.马修.斯托曼(Richard.Matthew.Stallman, RMS),甚至包括许多计算机专业的大学生。这篇文章正是写给这些人看的,其主要材料来自于方兴东写的一篇关于斯托曼的传记类文章,加了一些个人理解。

    中国,是一个软件盗版大国,我所见的人们,没有几个人是用正版软件的。凡是懂得一点知识产权的人,也许会觉得用盗版软件是不道德的。好象这种道德观念是天经地义的,就象人们本应当互相关爱一样。微软也总是理直气壮的将一个又一个侵犯它的版权的用户告上法庭,它的理由很简单:软件是有版权的,用户未经许可,任何复制、传播行为都是非法的。

    软件不允许复制传播,也许全世界的人们都认可,但一个叫做理查德.马修.斯托曼的人到死都不会苟同这种认识。上幼儿园时,老师就会教导我们:“如果你有糖,不应该独个吃,而应该和别的孩子一起分享它!”但现在,你有了一套很好用的软件,当你打算和朋友分享它的时候,这时有人告诫你:“不要那么做,不然你会因此而坐牢的。”社会应该是这样子的吗?不,它绝不能是这样的。理查德.马修.斯托曼认为用户彼此拷贝软件不但不是“盗版”,而是体现了人类天性的互助美德。对理查德.马修.斯托曼来说,自由是根本,用户可自由共享软件成果,随便拷贝和修改代码。他说:“想想看,如果有人同你说:‘只要你保证不拷贝给其他人用的话,我就把这些宝贝拷贝给你。’其实,这样的人才是魔鬼;而诱人当魔鬼的,则是卖高价软件的人。”理查德.马修.斯托曼说出他的这些观点是在 20世纪80年代的初期。

    理查德.马修.斯托曼这个人是“五短身材,不修边幅,过肩长发,连鬓胡子,时髦的半袖沙滩上装,一副披头士的打扮。看起来象现代都市里的野人。如果他将一件“麻布僧袍”穿在身上,又戴上一顶圆形宽边帽子,有如绘画作品中环绕圣像头上的光环。一眨眼的功夫,他又变成圣经中的耶稣基督的样子,散发着先知般的威严和力量。”这当然是作家的描写,我眼中的斯托曼只是一个普通人,一个具有崇高理想的普通人,一个颠覆了商业软件领域的人。他是美国科学院院士,但他更像是一个传教士,率领无数信徒沿着一个神圣的方向前行。按照我们这个国家目前的政治信仰,斯托曼是一个彻底的共产主义者。我毫不掩饰自己对于共产主义的见解,共产主义在某种程度上就是理想主义,一种摆脱了低级趣味的、朴素而高尚的主义。

    1971年,18岁的斯托曼在麻省理工大学(MIT)的人工智能实验室做了一名程序员。那时,他们有一个软件共享社区,他们为当时的人工智能实验室的计算机编写了一个分时操作系统,并不断地对其进行修改,当时无论是某个公司成员或另一所大学想获得它,大家都会非常高兴地把源程序给他。如果你看到别人使用一种你没见过且有意思的程序,你可以坦然地向他索要程序,这样你就可以读它、改它,或拆卸部分用于新的程序。社区中的这些人是真正意义上的黑客,而现代的大多数所谓的黑客,则是计算机的驻虫。就这样,那时所有软件都是共享的,私有让人嘲笑,专用受人鄙视。当然,这种共享,只是在这个特定的社区中,那时全世界没有多少人掌握计算机技术。斯托曼很快就成为这个社区