程序员应阅读哪些非编程书籍以帮助发展编程/思维能力?[关闭]


56

这里有很多 关于什么编程的书应该是程序员的书架上的问题。可以帮助您成为更好的程序员或开发人员的非编程相关书籍呢?知道他们为什么会有所帮助也很有趣。

我的第一个选择是孙子的《孙子兵法》(无论如何陈词滥调),因为它清楚地表明,任何项目的成功都取决于其最薄弱环节的力量(而战争是一个大项目)。


乔尔·斯波斯基(Joel Spolsky)向学生推荐创意写作和经济学课程。这样做的理由是,它可以帮助您更好地交流(表达想法,编写文档)并了解所编写软件背后的业务。如果您还没有上过大学的这些课程,那么也许就每一个主题写一本书都是一个好主意。
Keyo

[关闭]意味着我必须在删除该线程之前先保存该线程,还是将其保持在[关闭]状态?我确实发现该线程很有用,即使它不满足(比SO正式的少)程序员问答网站的所有质量标准。
FeatureCreep

Answers:



37

把事情做好

大卫·艾伦

覆盖


9
可悲的是,我在5到6年前就收到了这本书,而我的书签仍在书的中间。
blizpasta 2010年

这很有趣。您需要阅读整本书,才能学到如何完成这本书:-)
Maniero

2
对于我来说,它可能要薄得多。本书将一遍又一遍地解释相同的概念,但不会增加更多的价值。但这就是恕我直言:)
Yan Sklyarenko

我在这里同意Yan的观点,我个人认为很多章节可以略读,有些章节需要详细阅读。
阿米特·瓦德瓦

1
这是这本书的一个很好的补充:youtube.com/watch?
v

31

哥德尔(Gödel),埃舍尔(Escher),巴赫(Bach):道格拉斯·霍夫施塔特Douglas Hofstadter)的永恒金辫子

如果您还没有阅读过,请将其放在列表中。30年后,它仍然令人叹为观止。尽管我是一个奇怪的循环,但其中包含关于意识来自何处的更完整且令人信服的论据,而GEB则通过巴赫的音乐,哥德尔的数学和埃舍尔的艺术来探索对称,智能和逻辑系统的领域。听起来很令人生气和娱乐。

哥德尔,埃舍尔,巴赫:永恒的金色辫子


1
听到,听到,很棒的书!

我知道很多人对这本书高度评价-但我发现很难遵循。
talonx 2010年

我发现这本书是最具挑战性的书之一,但仍然是一部很棒的书。
l46kok 2012年

27

如何赢得朋友并影响人

如此处所述:程序员应阅读哪些非编程书籍?“如何赢得朋友并影响人”是一本非常好的书。

您不会直接从这本书中学到编程技能,但是间接地我认为您确实会掌握。如果您不太擅长与人打交道,这将帮助您与可能影响您和您的编程技能的人进行社交。

这本书的标题听起来有些肤浅,但事实并非如此。您会学习他人的自然行为,而Dale Carnegie鼓励您不要肤浅。

值得一读:-)

如何赢得朋友并影响人


尽管示例场景现在已经有些陈旧,但本书的实际情况仍然沿用至今。
JBRWilkinson

8
这是一本书,书名完全给人以错误的印象。听起来好像是在操纵人。实际上,这是关于如何与人相处并通过成为一个好人,体面的人来激发人们的灵感。
Kyralessa



19

Peopleware:高效的项目和团队Tom DeMarco和Timothy Lister

替代文字


16

高效人才的7种习惯Stephen Covey

替代文字


我正在读这本书,发现它对确定我的生活重心有帮助。
logoin

我讨厌7HoHEP。一位朋友曾经评论说,有效率的人的第一个习惯并不是在浪费时间读书。我得到其他人的不同意,但是我发现这大约50页有趣(尽管有时很明显)的材料堆积起来可以证明一本书的合理性。
乔恩·霍普金斯

-1这些书对我们施加了更大的压力。
斯里尼瓦斯·雷迪·塔蒂帕西

尽管有点“自我完善”,但“削锯”原则是关于您作为程序员可以学习的最重要的知识
Homde 2011年

不要浪费时间阅读本书。略过它或找到一个摘要,该摘要令人肿,并以略有不同的方式多次重复相同(不言而喻)的观点。可能是对难以思考的时间管理教学的理想选择
mcottle 2011年

13

禅与摩托车维修艺术

罗伯特·皮尔西格

它教会了我们如何对软件进行正确的维护。

替代文字


“它教会了我们如何对软件进行正确的维护。” -这是一本有趣的书,但是它当然并没有教关于软件的任何知识。它更像是哲学入门。
stakx 2010年

@stakx:是的。你读过这个问题吗?这里没有书是关于软件的。这是一本好书,可以帮助我们编写更好的软件。如果读者不明白它如何应用于软件开发...
Maniero

2
这是一本很棒的书,后续的《莉拉》也一样。他着手创建一个新的“形而上学”,但我认为他没有做到这一点,但是到书末,他成功地指定了一种编码西方价值观的算法:给定两件事,您可以使用他的“形而上学”。质量”,以找出哪个西方社会更看重它。我认为那是相当大的成就,尽管我不确定他是如何看待的。
Scott Whitlock

是的 我有一本书的报价贴在我的显示器上方。
TMN 2010年


7

我将推荐一本关于程序员(而不是编程)或程序员领导者的书籍。尽管所有内容都距其原始发行已超过30年(尤其是更新,以及其周年纪念版的评论):


4
他们仍然都是编程书籍。一本编程书不一定总是关于一种特定的语言/技术。
MAK 2010年

@MAK,它们实际上更多地是关于软件管理,而不是直接有关实际编程。我强烈推荐这些经典之作,如果不是每个专业开发人员,他们都将成为更加全面的开发人员。我承认,无论是有关开发/软件管理的编程书籍还是非编程书籍,它们都处于模糊的边界
mctylr 2011年



6

替代文字

模式语言:城镇,建筑物,建筑

它将教您如何看待完全不同的事物可以具有可以在完全不同的上下文中应用的基本模式。首席执行官办公室的一个方面,使其成为一个出色的办公室,可以出现在本科生的起居室中,也可以不在您的百万美元豪宅中找到。掌握了这一概念后,您就可以将其应用到软件中,就像“四人帮”所做的那样,您将更加全面地了解设计模式。在您的余生中,您还将拥有更好的生活和工作空间。


亚历山大和加布里埃尔(Alexander and Gabriel)关于模式和软件的著作给我留下了深刻的印象,并且双重使人对“面向对象的设计模式”运动感到失望。
保罗·内森


5

餐巾的背面Dan Roam着

餐巾的背面http://www.coverbrowser.com/image/bestsellers-2008/302-7.jpg

关于视觉思维技术的一本好书。现在还有一个扩展版。我不能说那个版本,因为我不拥有它。然而。


扩展版是用两种颜色的黑色+红色印刷的“导演剪裁”,并带有附加的附录(视觉思维的10 1/2诫命,这是要牢记的内容)。可能还有其他内容,但是我没有第一版,所以无法进行对比。
2010年

5

我很惊讶没有人提出任何小说。我会时不时地阅读一些小说,然后会提高您的思维能力。无论如何,这是我的2c。

《银河旅行者指南》是一本非常了不起的书。也许是Ursa Minor的伟大出版公司发行的最杰出的书,当然也是最成功的书,这是地球人从未听说过的。比天球家庭护理综合厅更受欢迎,比零重力要多卖53件,比乌隆·科卢菲德的三部哲学大片更具争议性,这是上帝错了的上帝,最大的错误是谁,这个上帝是谁?无论如何?由于两个重要原因,它已经取代了《银河百科全书》作为所有知识和智慧的标准存储库。首先,它便宜一些。其次,它的字样是“ 不要恐慌” 封面上印有大型友好字母。


1
我不得不说,BBC Radiophonic Workshop版本的Hitchhikers 绝对很棒 -许多令人惊叹的声音效果,因此您全神贯注,仿佛置身于Ford,Zaphod,Arthur和Trillian等人那里。
JBRWilkinson

但是很傻:)我虽然喜欢..

1
本书涉及ICT的许多笑话,尤其是在旧的源代码中发现的笑话。
Sjoerd

5

这是一本关于创造力的鼓舞人心的书。在这个充满“最佳实践”和“公认方法”的“新”技术世界中,迫切需要一些东西。

忽略所有人


4

实用思维与学习,作者:安德鲁·亨特(Andrew Hunt)。

替代文字

尽管目标受众是程序员,但非程序员也可以阅读。它只是使用一些编程隐喻。但是这本书实际上是关于大脑如何运作以及我们如何优化我们的使用方式。


3

GeorgePólya的“如何解决”。虽然针对数学,但问题解决策略可以轻松地应用于编程。




2

尽管“海豚策略”更适合于调整自己的思维方式来解决与他人打交道时产生的问题,但将适应性技能应用于处理开发人员工具的绝对世界将有助于提供解决问题的新方法。

海豚的策略


2

我读过的关于写作的最好的一本书是《结构感:从读者的角度写作》

结构感

它可以帮助您对写作进行逻辑思考。它为您所说内容的结构提供了具体建议。这不是一本关于语法错误或规则的书,也不是一堆陈词滥调的书,它与其他大多数写作书不同。[至少我已经看过,而且我也读过《经典》。]

更好的写作可以帮助您撰写更好的电子邮件,写出更清晰的评论,并帮助您意识到自己认为重要的内容。


2

斯蒂芬·金斯(Stephen Kings)-在写作时,不,我是认真的,所以请坚持下去!:)我意识到编码过程实际上与创作过程有关。首先,您需要将事情记在纸上/代码上,然后需要对其进行编辑/重构。您有时需要让书/代码“休息”一会儿,然后再使用新的实现方法等。

阅读本书,并思考如何将其应用于编码


1

坚持做 -对于建立技巧以将您的想法传播给其他人(尤其是非程序员)以及从他人(已阅读客户)的角度看待事物的技能而言绝对必要。


1

家的模式

家用封面的样式

是设计房屋过程中10种模式的绝佳参考。它不应该是房屋元素(例如客厅,壁co,天井等)元素的样式目录,而应该是塑造房屋设计的原则目录。对使居者居住的房屋至关重要的因素的指南。

我已经将它们编入的10种设计过程模式转换为软件设计,并且在您陷入对设计和编码类的细节陷入僵局之前,它们在帮助您专注于与大图思维相关的细节方面的作用非常显着。


也许这并不奇怪,这本书可能是由克里斯托弗·亚历山大“模式语言”,谁的家伙的开创性工作的启发发明了设计模式在建筑使用,这个概念后来被computerscience和四人帮采用
Homde

实际上,该书的两位作者Max Jacobson和Murray Silverstein与Christopher Alexander(及其他人)一起整理了这些模式。但是同样,尽管APL着眼于住宅结构中要实现的模式,但本书着重于设计/判断精心设计的房屋的模式。它为确定如何正确设计软件系统或是否设计了出色的洞察力。
2011年

1

爱丽丝梦游仙境》《窥镜》。阅读爱丽丝(Alice)与白骑士(White Knight)的对话,看看您是否对间接和参考变量有更深入的了解!



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.