`

读了《黑客与画家》(3)

阅读更多

第10章到第15章,解释黑客的工具(编程语言)和工作方法,这是黑客文化的基础核心。

> 编程语言解析

一个操作所需的代码越多,就越难避免bug,也越难发现它们

高级语言:使用更强大的命令开发程序,使程序更具可移植性

 

> 一百年后的编程语言

基本运算符是一种语言能否长期存在的最重要因素。

(买房:地段,地段,地段!)

公理越少越好。

冗余的代码导致更多冗余的代码。

内核最小、最干净的编程语言才会存在于进化的主干上。

(提高生活质量最有效的方法:定期扔东西)

$ 每一代人都在做上一代人觉得很浪费的事

提高编程语言效率的正确做法:将语言的语义与实现分离

一百年后的编程语言在理论上今天就能设计出来。

如果今天真能设计出这样一种语言,很可能现在就适合编程,并且能够产生更好的结果

 

> 拒绝平庸

(“接地气”是贬义词)

Lisp没有得到广泛使用的原因是因为编程语言是一种习惯性思维,非常难改变

(人类天性变化的速度大大慢于计算机硬件变化的速度,所以编程语言的发展通常比CPU的发展落后)

选择编程语言

一般应用程序 选择总体最强大、效率也在可接受范围内的编程
开发的程序必须与另一个程序紧密配合 选择后者的开发语言
只做一些很简单的事 选择比较靠近机器的底层语言
程序很短,只为特定场合一次性使用 根据目标问题,选择最强大函数库的语言

 

唯一洞悉所有语言优劣的人必然是懂得最强大的那种语言的人

在职位描述中大量使用IT词汇的公司不会构成威胁

能构成威胁的对手(威胁程度从低到高)

· 要求应聘者具有Oracle数据库经验的公司

· 招聘C++或Java程序员的公司

· 招聘Perl或Python程序员的公司

· 招聘Lisp黑客的公司

 

> 书呆子的复仇

(在高科技行业,只有失败者采用“业界最佳实践”)

$ 糟糕经理的特点:对技术一无所知且对技术有强烈的个人观点

(时刻提醒自己,千万不要越俎代庖)

选择不常用语言的缺点

程序无法和其它语言写的程序协同工作

如果能控制整个系统,且有各组成部分的源码,就能自己解决兼容性问题

找不到很多函数库

如果打算把开发的程序拿到市场上“卖”,说明规模够大,那么语言本身的编程能力比方便的函数库重要

不容易雇到程序员

雇佣黑客,使用高级语言,可以减少对程序员的需求

Lisp本质是数学。数学是不会过时的。

语言的编程能力越大,写出来的程序越短(独立的语法单位少)

如果想在软件业获得成功,就使用最强大的语言,用它解决最难的问题,等待竞争对手的经理做出自甘平庸的选择

程序的形式应该仅反映它所要解决的问题(功能应当决定形式)。

代码中其它任何外加的形式都表明对问题的抽象还不够。

 

> 梦寐以求的编程语言

(一种好的编程语言,是让黑客可以随心所欲使用的语言)

编程语言的最高境界:核心功能很少变化,函数库和开发环境等一直在发展。

$ 推广一种编程语言的方法:发展该语言早期的黑客用户。

用该编程语言开发一个杀手级应用,让黑客使用。

该语言有一个免费的好的实现。

为该语言找到一个依附的流行系统

· 可以导致“无法以一种语言本身的优缺点评判该语言”

· 只有当一种语言是某个系统的脚步语言时,它才能真正成为编程语言

一本介绍该语言的书

· 不能厚、文笔流畅、大量优秀范例、由O’Reilly出版发行

(有在线文档)

语法简洁

可编程性高

适合写一次性程序(容易装备、想用就用)

强大的函数库

· 优秀函数库的重要性将超过语言本身

方便性能调优(配套的性能分析器等)

长时间不断地推广

持续不断的再设计

对解决难题的可能性保持乐观,对当前解法的合理性保持怀疑

精选用户

单人完成设计(《人月神话》)。

(软件内部接口设计成垂直接口,层与层之间的接口完全由其中的一层控制。(感触不是非常深,求带))

 

> 设计与研究

设计追求好,研究追求新

交集:只有应用新的创意和理论,才会诞生超越前人的最佳设计;只有解决值得解决的难题(好的难题),才会诞生最佳研究。

$ 任何一个领域的最佳作品都不可能由对用户言听计从的人做出来

“用户需要的设计”不等于“用户要求的设计”

用户不了解所有可能的选择,经常弄错自己真正想要的东西

如果目标用户群体涵盖设计师本人,最有可能诞生优秀设计

先设定目标用户,才能评判设计。

评价一种语言的优劣,要看程序从无到有的那条完成路径是否漂亮

任何时候,代码都必须能够运行

画作永远没有完工的一天,只是不再画下去而已

$ 很难为低端用户设计出优秀产品(设计师没兴趣)

 

读了《黑客与画家》(1)
读了《黑客与画家》(2)

分享到:
评论

相关推荐

    黑客与画家1

    黑客与画家1

    黑客与画家 kindle版

    什么是真正的黑客 适合kindle阅读

    黑客与画家 完整版

    把网络上的txt版本排版整理成了pdf版,方便阅读。注意:由于是从txt转换而来,所有是没有图片的。

    Paul Graham:黑客与画家(阮一峰译).pdf

    Paul Graham:黑客与画家(阮一峰译).pdf 完整中文版,

    《黑客与画家》作者: [美] 保罗·格雷厄姆 译者: 阮一峰

    本书是硅谷创业之父Paul Graham 的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解...

    黑客与画家 (英文版)

    一本很有意思的书,有着作者独到的见解,不得不读!

    MF1832132任贵杰-黑客与画家读后感1

    4.黑客与画家读后感 4.黑客与画家读后感 1. “建筑师决定做什么,工程师想出怎么做” 2. ”所以,在“计算机科学”的名下,数学家、物理学家、建筑师都不得不

    黑客与画家 中文 pdf

    2 黑客与画家 18 黑客也是创造者,与画家、建筑师、作家一样。 3 不能说的话 34 如果你的想法是社会无法容忍的,你怎么办? 4 良好的坏习惯 52 与其他美国人一样,黑客的成功秘诀就是打破常规。 5 另一条路 59 ...

    黑客与画家

    黑客与画家

    黑客与画家(中文版)[高清].zip

    90M资源,内容清晰。(在哪里设置免费下载啊?)我做笔记和划重点的地方大概占到书的30%。每个段落里忽闪忽闪的思维火花,都在告诉我们什么叫「远见卓识」。在被说服后常常惊讶他是怎么想到那个角度和比喻的。...

    黑客与画家 图文版

    黑客与画家 图文版比较清晰的版本,中文版

    黑客与画家(中文版)

    黑客与画家(中文版);

    黑客与画家 epub

    本书是硅谷创业之父Paul Graham 的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解...

    《黑客与画家.pdf》中文版带书签目录

    本书是硅谷创业之父Paul Graham 的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。...黑客与画家 译者:阮一峰

    黑客与画家(中文版)

    黑客与画家.PDF中文版,内容和网上的一样,自己手机添加了书签,方便阅读。

    黑客与画家 pdf

    搜到证明你懂得,不多说!

Global site tag (gtag.js) - Google Analytics