Paul Graham:寫程式愈來愈酷,但派對搭訕我還是會說自己是畫家

2003 年《Hackers & Painters》這本書剛推出之時,駭客不流行、電腦科學不流行、創業也不流行。在那個時候 Chris Castiglione 正在學寫程式,但是...他以慘不忍睹的成績當掉電腦科學課,正當沮喪到極點準備放棄寫程式之時,他遇見了這本書,並深受啟發。
評論
評論

本文作者 Chris Castiglione 身為產品開發者與使用者經驗設計師 ,現任 One Month Rails 的教師,過去曾至美國運通(American Express)、紐約證券交易所、哥倫比亞大學、GE、 The Ladders.com 及 SXSW 擔任講師。10 年前他因為 Paul Graham 奠定了擔任駭客的決心,10 年後他訪談 Paul Graham ,希望理解這些年電腦科學界的變遷。原文刊載於 One Mouth Rails Blog

正文開始

hackers & painters

2003 年《Hackers & Painters》這本書剛推出之時,駭客不流行、電腦科學不流行、創業也不流行。在那個時候 Chris Castiglione 正在學寫程式,但是... 他以慘不忍睹的成績當掉電腦科學課,正當沮喪到極點準備放棄寫程式之時,他遇見了這本書,並深受啟發。(編按:《Hackers & Painters(駭客與畫家)》由創業教父、Y Combinator 創辦人 Paul Graham 所撰,描繪電腦科學的世界以及關於程式設計的大小事。)

Chris Castiglione:當我閱讀 〈Hackers & Painters〉 的時候,我想這個人(Paul Graham)真的一語中的。不是我學錯了,而是大學教錯了。我開始理解作為開發者不需要知道『所有事情』!事實上,我可以在過程中學習,並且發揮創意。在那當下,我感到被解放了。

十年後,Chris Castiglione 變成了程式設計教師,重新思索電腦科學及程式的未來,浮現了三個問題:

  • 這十年,電腦科學改變了嗎?
  • 我們每一個人都應該學習程式嗎?
  • Paul Graham 預言程式設計的「去菁英化」已經實現了嗎?

為了找到答案,他直接找到當初啟發他的 Paul Graham(以下簡稱為 PG)進行訪談。

2429731244_b249b461ab_z
矽谷創投育成機構 Y Combinator 創辦人 Paul Graham 。資料來源:Mathieu Thouvenin

《Hackers & Painters》發行後已經過了十年。在書裡面,你想像電腦科學漸漸不是菁英專有。而且它將會切分成很多職位(niches)。以你看來,現在實現了嗎?

PG:這些確實是正在發生。許多過去屬於電腦科學研究的產物,現在都可以在程式專案平台 GitHub 找到,許多人甚至不認為自己作的事情是電腦科學研究。
因此,是的。這真的發生了。

電腦切分出來的職位:有前端和後端的開發者,作業系統開發者,到硬體開發者皆是。過去十年來程式設計比較偏向系統管理(大部份都在安裝東西以及把東西拼湊在一起)。過去程式設計師需要運用程式庫(libraries)或類似的東西,但是現在藉由其他網友撰寫的開放原始碼就能夠建造一個 app。

這是系統管理在作的事情,負責安裝東西;而開發者則寫東西。但是現在開發者很擅長安裝東西,並且他們也對可以正確地調整而感到驕傲。

如果我有一個新創公司,但是不會寫程式,我應該怎麼做呢?

PG:你需要作業務。新創公司的早期需要作兩件事:你需要建造東西,以及和使用者溝通。所以如果你不會建造東西,你必須要和使用者溝通。你想要藉由交談讓他們來使用你的產品。因此不論對寫程式一竅不通,或者是否善於作業務,你都開始要作業務。

一個不會技術的創業家可以招募到開發者嗎?

PG: 這要看情況。現在也有一些新創公司正在經營技術成分低的東西。舉例來說,零售產業使用的技術相當普通。因此,是的,某整程度而言,你可以是不懂資訊科技的創業家,也找到人幫你作事。但如果你本身不是開發者,就很難招募到開發者,因為你難以去評斷他們專業與否。我們曾經有過非資訊科技背景的創業者面臨到此問題:因為他們分不出開發者的優劣,因此都很擔心招募到的人是否足夠優秀。

那麼... 那麼你如何分辨一個開發者的好壞?

PG: 其實沒有什麼真正好的解決方法。綜觀 Y Combinator 輔導過沒有任何技術背景的創業家... 是有可能沒有任何人作得很好。這很難,真的很難。假設你有一個很優秀的程式設計師朋友,但是,你又怎麼知道他真的很優秀?(笑)如果你有這樣的朋友,他可以跟你保證前幾位你應徵的開發者都很優秀,那麼這些優秀的開發者就可以應徵其他的人,最後,你可能只招募到一位優秀的人,但你要怎麼找到他呢?如果你沒有招募開發者的專業,那你需要請其他有經驗的人幫你作。(針對此問題的進一步討論,您可以閱讀 〈老闆不懂程式,如何招募優秀的開發者?〉

在 One Month Rails 我們相信經過幾個月的程式學習會幫助創業家與開發者的溝通。你的看法呢? 擁有對程式的一些知識,是否會讓創業家更專業經營網路公司?

PG:我認為會有幫助!而且很有幫助!事實上,如果有人想要創業,並且有機會去商業學校或學習程式的話,我會說「去學程式」。因為,商業學校能夠教你的是,如何在大公司作好一個公司員工、管理人員、作試算表... 但總歸而言不是你創業時需要的東西。

進入 Y Combinator 的公司有什麼程式語言選擇?

PG:我會擔心如果有人用程式語言 COBOL 寫他們的東西!我會問他們為什麼(笑)我們曾經有創業團隊用 PHP 寫 code──而這讓我有些擔憂。但這也不是最讓我擔憂的東西。

你會不會招募一個很優秀的開發者,但他沒有念完大學?

PG: 會啊!我會雇用 Bill Gates 嗎? 當然會啊。儘管 Bill Gates 可能會比較難招募到第一個員工,但當然會有啊!上大學很好,但不是創業必要的條件。上大學擴展你的視野:你可以學習其他各種各類的事情,也是讓你自己更聰明的方式。儘管我真的無法分別沒念完大學或博士畢業有什麼差別。

您會不會覺得做一個開發者變得越來越隨插即用(plug and play)?

PG:人們不會因為寫程式變得比較簡單就去做。我也不覺得這是程式設計師失寵的訊號。這是自然的演進... 雖然我認為很怪,但只有未來整個產業都扭曲了,才是真的怪。(編按:plug and play 在這裡當作隱喻,意指開發者越來越像 USB,呼之則來揮之即去)

我們聽說很多 One Month Rails 的學生說這樣的話:我可以運用 Rails 做出最小可行產品(MVP),但我沒有成為電腦科學家的意圖。好像是因為程式設計的「菁英」標籤而妄自菲薄。

PG:嗯,什麼是電腦科學家呢?一個會程式又有修過自動機理論(Automata Theory)課程的人(笑)

在《Hackers & Painters》書中,你提到:寫程式沒有繪畫那麼酷。您現在還那麼覺得嗎?

PG:寫程式變得越來越酷了。但我想在派對搭訕時還是說你是個畫家好了。

如何稱 One Month Rails 的學生比較好呢,開發者(developer)或是電腦科學家(computer scientist)?

PG:「駭客(hacking)」是一個很酷的詞彙。即使是白宮都用這個詞來形容事情。不僅是指涉從事軟體相關事務,也可以當動詞的「駭」使用。在狹義與廣義來說,都是現今最風靡的詞彙。