《黑客與畫家》簡評java
註明:本做品由中科大軟件學院:方宇卿創做,除孟寧老師外其餘不許轉載。python
這是一系列有關技術反思文章的合集,做者是一個大牛,也是一個飽學之士,一個同時具有編程和畫畫這兩個風馬牛不相關的技能的人,這一會兒吸引了個人眼球,固然我也同時具有這兩個技能,編程看成將來謀生的手藝,而畫畫看成陶冶情操的途徑,惋惜二者都比較爛罷了。程序員
這本書由兩部分構成,或者說它徹底能夠寫成兩本書的形式,後半部分主要講了垃圾郵件過濾和編程語言,這一部分討論的技術細節諸如:lisp和python哪一個好之類的,對咱們這些技術儲備還遠遠不足的學生來講,徹底能夠直接跳過,因此我就簡要地閱讀了一下。然而,前半部分寫得通俗易懂,雅俗共賞,不少新穎的想法讓人眼前一亮。接下來我按部分章節作出一些評價和反思。編程
爲何書呆子不受歡迎?編程語言
我認爲這一章是全部青少年都應該去讀而且反思的(不過不少媽媽會建議孩子不要讀這類「反動的文章」),這篇文章頗有趣,但又很寫實,那些在學校只知道學習卻不懂社交的孩子是徹底不受歡迎的,這種學校重學習輕教育本質的態度在美國尚且如此,在中國更是早已司空見慣,因此中國的家長若是有幸讀了這篇文章,要反思是否要關注一下孩子學習以外的教育,做爲學生,要反思,教育的本質是什麼?你學了一堆東西出來,卻沒幾我的理你,有用嗎?學習
黑客與畫家職業規劃
由於從必定意義上來講,這個題目也是個人寫照,因此讀起來真是大快人心,而且不少時候由於頗有共鳴而拍案叫絕的,這是頗有趣而且頗有洞察力的文章。我曾經也一直認爲軟件開發(或者按做者說的「hacking」)自己就是一種極具創造力的工做,做者以一種更加雄辯的方式印證了個人想法:從畫布上誕生名畫的過程和從黑客手中誕生的偉大設計同樣都是一門藝術!我曾經老是把藝術創做和編程獨立開來看待,在充分認識到他們的內在統一後,真的會使程序員對本身的工做更加熱愛,同時更加有創新意識,因此我以爲,這篇文章適合全部軟件產業的工做者自習研讀:請相信,你不是碼農,你也不是搬磚工,熱愛你的工做,你就是一個藝術家雲計算
不能說的話spa
這是一篇關於羣體思惟和單一性文化的文章,我曾度過一本講monoculture的書:一個故事如何改變一切。咱們須要這類文章來提醒咱們,讓咱們信仰增長史料積累,而且讓咱們從更廣闊的歷史中深入理解那些所謂的觀點是如何隨着時間而改變的。設計
另一條路
這是一篇對當今雲計算趨勢的想當讚的總結,文章還深入討論了雲對軟件開發有哪些重大改變,爲何要把軟件和開發和部署在雲上而不是桌面上?這對咱們新一代的程序員來所實在是一篇認清現狀的好文章,任何軟件相關的學生都應該用它來指導本身的職業規劃。
如何創造財富
強烈建議每個從學校即將畢業的人,或是全部的技術人都先讀一下這一章,技術人有必要創建起對財富的價值觀。說到"財富",彷佛是很讓人不齒的事情,可是又是看到周圍有不少技術人熱衷談論股票、炒房,誰讓咱們生活在這個糟糕的時代呢?少有人同時談談財富和技術的關係,還好有這本書。金錢只是財富的一種表達方式,但財富不等於金錢,不止是房子與車子。Paul Graham 的觀點是:致富的最好辦法是創造財富(而不是掠奪),本身創業或是加入創業團隊是致富的可靠方法(就我來看,若是你是官二代或是富二代,那麼另當別論)。Paul 與那些常見的忽悠大師不一樣的地方在於,他同時也會給出稍顯冰冷的事實:創業的付出與回報整體上是成比例的,可是在個體上是不成比例的,不要把創業過於神話,但創業的確給了咱們更多的可能。
關注貧富分化
做者更多用了社會學的觀點深入分析了貧富差距問題,指出了爲何貧富差距不是一件壞事,這個觀點可能和大多數人心中想法不一樣,大多數人總認爲減小貧富差距有助於社會安定繁榮,但正是這些不深入的想法致使他們憤世嫉俗,自暴自棄,很天然就成了那些貧窮者,其實貧富差距是社會發展的內在驅動力,人們爲了更好的生活不斷在奮鬥,即使永遠出不了頭,但依然能夠過得愈來愈好。這個觀點可以使得咱們多一份決心,少一份懷疑,堅決不移地在軟件事業上拼搏。
防止垃圾郵件的一種方法
這篇文章偏重於技術方面,顯然Graham是這方面的專家,主要討論了防止垃圾郵件技術以及它的運行機制。
設計者的品味
文章討論了對涉及者而言進退兩難的問題:如何定義好的設計和更好的設計,爲何這樣的設計會更加漂亮。這對設計者而言是一篇頗有啓迪的文章。對於咱們這種軟件開發屌絲,什麼設計都同樣吧(括弧笑)。
編程語言解析
很簡短的一章,主要討論了當下流行的幾種編程語言,而且分析當下紅火的緣由。
一百年後的編程語言
討論了100後咱們會用什麼樣的語言作開發,經過整本書,我知道Graham對歷史很感興趣,這也是個人一個愛好,做爲一個在當下社會中一個具備獨立思考能力的人,咱們不能被時代左右咱們的思想,咱們要思考爲何生活和過去如此不一樣,而不是知道僅僅不一樣而已,做者這種回顧過去,展望將來的思路正式咱們應該學習的,100後的語言是什麼樣的,咱們要分析過去和現狀,這樣才能對將來軟件的發展趨勢作出很好的預測。
拒絕平庸/書呆子的復仇/求之不得的編程語言
這是每一個軟件開發部門經理都要去看的章節,特別是給那些已經告別coding好多年的管理者,做者提出了一些關於軟件工程開發管理的問題,他喜歡lisp語言,因此他使用那一整套的解決方案。我對這幾章節感悟很深入,我當初學習java時堅信java可以涵蓋任何直觀的想法,而c語言則更加偏重直覺上的感悟,看完這幾張,我特別有想學Lisp的衝動,而且我已經開始了個人計劃。
反正Paul Graham這貨已經成爲我心目中獨立思考者的典範,反正他的全部做評我都會一一欣賞的。