![給計(jì)算機(jī)系學(xué)生的建議_第1頁](http://file4.renrendoc.com/view/d6d0ed76cbf5aae274060dbb6b87da0f/d6d0ed76cbf5aae274060dbb6b87da0f1.gif)
![給計(jì)算機(jī)系學(xué)生的建議_第2頁](http://file4.renrendoc.com/view/d6d0ed76cbf5aae274060dbb6b87da0f/d6d0ed76cbf5aae274060dbb6b87da0f2.gif)
![給計(jì)算機(jī)系學(xué)生的建議_第3頁](http://file4.renrendoc.com/view/d6d0ed76cbf5aae274060dbb6b87da0f/d6d0ed76cbf5aae274060dbb6b87da0f3.gif)
![給計(jì)算機(jī)系學(xué)生的建議_第4頁](http://file4.renrendoc.com/view/d6d0ed76cbf5aae274060dbb6b87da0f/d6d0ed76cbf5aae274060dbb6b87da0f4.gif)
![給計(jì)算機(jī)系學(xué)生的建議_第5頁](http://file4.renrendoc.com/view/d6d0ed76cbf5aae274060dbb6b87da0f/d6d0ed76cbf5aae274060dbb6b87da0f5.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語言微觀經(jīng)濟(jì)學(xué)寫作(極限編程)是否擅長(zhǎng)表達(dá),能夠說服別人給自己建立一個(gè)網(wǎng)絡(luò)日志(weblog)動(dòng)態(tài)邏輯為校報(bào)規(guī)劃網(wǎng)站下面就是Joel給計(jì)算機(jī)系學(xué)生們七條免費(fèi)的建議:畢業(yè)前學(xué)會(huì)寫作畢業(yè)前學(xué)會(huì)C語言畢業(yè)前學(xué)習(xí)微觀經(jīng)濟(jì)學(xué)(microeconomics)不要因?yàn)槟承┓怯?jì)算機(jī)課程枯燥無趣就敬而遠(yuǎn)之學(xué)習(xí)有大量編程實(shí)踐的課程不要擔(dān)心工作都跑到印度去了好好做夏季畢業(yè)實(shí)習(xí)讓我逐條解釋這些建議。但解釋之前我要說明一下,如果因?yàn)檫@些建議是Joel的建議你就打算無條件地接受,以至于連我的理由都想跳過,那么你就太單純,太容易被別人騙了。如果你是那種單純的人,我還要給你第八條建議,找心理醫(yī)生咨詢一下如何培養(yǎng)自信(sel
2、f-esteem)。畢業(yè)前學(xué)會(huì)寫作如果LinusTorvalds不懂如何布道的話,Linux會(huì)成功嗎?正像每一個(gè)黑客,Linus精通寫作,他知道如何準(zhǔn)確地在email和郵件討論組中使用書面英語表達(dá)自己的思想,所以他能夠從全世界召集大量志愿者為L(zhǎng)inux工作。你聽說過最近風(fēng)靡全世界的極限編程(ExtremeProgramming)嗎?即使你不懂什么是極限編程,你至少聽說過這個(gè)詞。為什么?因?yàn)樾麄鳂O限編程的人都是天才的作者和演說家。就看看你身邊的那些小型的軟件開發(fā)組織吧,最有權(quán)力和影響力的人是那些可以用自信,準(zhǔn)確,舒適的英語交流的人。好吧,我承認(rèn)這些人也許言過其實(shí),但是你無可奈何。一個(gè)合格的程序員
3、和一個(gè)偉大的程序員的區(qū)別不在于知道多少種編程語言,不在于他們是喜歡Python或者Java,而是在于他們是否擅長(zhǎng)表達(dá)。他們能夠說服別人,所以他們獲得權(quán)力。他們能夠?qū)懬宄靼椎脑u(píng)論和接口文檔,所以他們使得別人不用重寫,而可以重用他們的代碼,否則他們的代碼就是毫無用處的。他們也能夠?qū)懗銮逦挠脩羰謨?cè),于是最終用戶可以理解他們的代碼是做什么用的,明白了他們的工作的價(jià)值。sourceforge埋葬著許多精美的代碼,這些已死的代碼無人使用,因?yàn)榇a的作者很少寫(或者根本不寫)用戶手冊(cè)。我不會(huì)雇傭一個(gè)不懂寫作的程序員。如果你擅長(zhǎng)寫作,你就很容易找到工作,緊接著你就會(huì)被要求寫技術(shù)規(guī)格文檔,這意味著你已經(jīng)被管
4、理層注意到了。大學(xué)里有一些課程,要求你做很多的寫作練習(xí),不要猶豫,趕快參加這些課程。不要錯(cuò)過任何要求你每周或者每天練習(xí)寫作的課程。給自己建立一個(gè)網(wǎng)絡(luò)日志(weblog)。在上面寫得越多,你會(huì)寫得越容易。寫得越容易,你就寫得越多,這是一個(gè)良性的循環(huán)激勵(lì)。畢業(yè)前學(xué)會(huì)C語言我可沒有說是C0雖然現(xiàn)在用C的工作不多,但是掌握各種編程語言的程序員事實(shí)上用C來交流(linguafranca);更重要的是,C比某些“現(xiàn)代”語言更接近機(jī)器語言。我不管現(xiàn)在大學(xué)里在教什么流行的垃圾語言(trendyjunk),你至少得花一個(gè)學(xué)期接近機(jī)器。否則,你不可能使用高級(jí)語言寫出高效的代碼。這意味這你不會(huì)有機(jī)會(huì)寫編譯器或者操作
5、系統(tǒng)(也許這是更好的編程工作);別人不會(huì)相信你能夠?yàn)榇箜?xiàng)目設(shè)計(jì)架構(gòu)。無論你知道多少高級(jí)的控制結(jié)構(gòu),知道如何進(jìn)行錯(cuò)誤處理,如果你不能解釋為什么while(*s=*t);的意思是進(jìn)行字符串拷貝(而且對(duì)你而言這是世界上最自然,最易懂的代碼),那么你就是在對(duì)編程一竅不通的狀態(tài)下編程(programmingbasedonsuperstition)。打個(gè)比方,就好比一個(gè)醫(yī)生不懂基本的解剖學(xué)就給你開處方,如果你問這個(gè)醫(yī)生為什么開這種藥而不是那種藥,他會(huì)說因?yàn)獒t(yī)藥銷售代表說這種藥有用。畢業(yè)前學(xué)習(xí)微觀經(jīng)濟(jì)學(xué)(microeconomics)我個(gè)人對(duì)經(jīng)濟(jì)學(xué)的一些理解:在經(jīng)濟(jì)學(xué)剛誕生的時(shí)候,它只是局限于有限的領(lǐng)域,在
6、這些領(lǐng)域中人們發(fā)展和發(fā)現(xiàn)了很多有用的理論和很有趣的事實(shí),這些理論和事實(shí)是從邏輯上是可以證明的。然后,經(jīng)濟(jì)學(xué)開始走下坡路了。“有限的領(lǐng)域”就是微觀經(jīng)濟(jì)學(xué),它對(duì)于商業(yè)可以進(jìn)行有意義的指導(dǎo)。然后,事情就開始變?cè)懔?以下部分你可以跳過),你接下來碰到的是討論諸如失業(yè)率和銀行利率之間關(guān)系之類東東的宏觀經(jīng)濟(jì)學(xué),很多時(shí)候宏觀經(jīng)濟(jì)學(xué)討論的理論都是無法證明正確或者錯(cuò)誤的。接下來事態(tài)更加惡化了,經(jīng)濟(jì)學(xué)中的一些領(lǐng)域開始和物理學(xué)搭界,嗯,學(xué)習(xí)物理經(jīng)濟(jì)學(xué)也許你幫你在華爾街找到好工作。言歸正傳,無論如何請(qǐng)學(xué)習(xí)微觀經(jīng)濟(jì)學(xué),因?yàn)槟阈枰朗裁词恰肮┙o和需求”,什么是競(jìng)爭(zhēng)優(yōu)勢(shì),什么是凈現(xiàn)值(NPVs,NetPresentVal
7、ue,指項(xiàng)目經(jīng)濟(jì)壽命期內(nèi)現(xiàn)金流入總和與現(xiàn)金流出總和之差額),什么是折扣和邊際效用(discountingandmarginalutility),如果你真想了解商業(yè)是如何運(yùn)作的話。為什么計(jì)算機(jī)系的學(xué)生要學(xué)習(xí)經(jīng)濟(jì)學(xué)?因?yàn)槔斫馍虡I(yè)基本規(guī)律的程序員對(duì)商業(yè)界來說是寶貴的程序員。我記得無數(shù)個(gè)程序員使我非常沮喪因?yàn)樗麄冊(cè)诖a中堅(jiān)持某些瘋狂的設(shè)計(jì),而這些設(shè)計(jì)從技術(shù)上來說,完美;從資本主義的角度來看,發(fā)瘋。如果你是一個(gè)理解商業(yè)的程序員,商業(yè)會(huì)給你回報(bào)。這就是你要學(xué)習(xí)經(jīng)濟(jì)學(xué)的原因。不要因?yàn)槟承┓怯?jì)算機(jī)課程枯燥無趣就敬而遠(yuǎn)之首先,你需要讓你的學(xué)分平均分(GPA看起來漂亮點(diǎn)不要低估學(xué)分平均分的威力。很多雇主和人事經(jīng)理
8、(包括我)閱讀簡(jiǎn)歷時(shí)首先看成績(jī)。為什么?因?yàn)檫@代表了大部分的教授在很長(zhǎng)的時(shí)期內(nèi)對(duì)你的學(xué)業(yè)的一個(gè)平均的看法。托福成績(jī)(美國的托福大致相對(duì)于我國的高考中的語文考試)?哈,幾個(gè)小時(shí)的測(cè)驗(yàn)而已。當(dāng)然學(xué)分不一定說明了一切,如果你修的是很難的課程,學(xué)分就有可能低一點(diǎn)。即使你的學(xué)分平均分很高,我還是要看各科分?jǐn)?shù)是否一致。如果你應(yīng)聘的是軟件工程師職位,我為什么要關(guān)心你在大學(xué)里學(xué)的歐洲歷史課程分?jǐn)?shù)的高低呢?畢竟,歷史很枯燥。那么要是你要編程的部分也是很枯燥的,你是不是要放棄了?事實(shí)上,有時(shí)候編程是枯燥的,如果你不能忍受編程中的枯燥部分的話,你就不能完成整個(gè)工作,雇主不愿意雇傭你這樣的員工。我在大學(xué)里修過一門叫做
9、“文化人類學(xué)”的課程,因?yàn)槟菚r(shí)候我也搞不懂我到底要學(xué)什么,聽起來這么課程可能還蠻有意思的。出乎我的意料。我不得不閱讀大量講述巴西熱帶雨林中的印第安人如何如何的書,讓人真昏昏欲睡。聽老師講解也好不到哪去,我發(fā)覺看教室外的草如何長(zhǎng)更有趣點(diǎn)。土著人如何烤蕃薯藤和我有什么關(guān)系?我為什么要去討論如何烤蕃薯藤?但是期中考試馬上就要到了,我暗暗下定決心,如果我能跨越“文化人類學(xué)”這個(gè)障礙,以后也許沒有什么能難倒我了。我決心得A并且得到了A。以后當(dāng)我不得不坐在林肯中心,連看18個(gè)小時(shí)的瓦格納的尼伯龍根的指環(huán)時(shí),我終于明白我為什么要學(xué)習(xí)“文化人類學(xué)”了,相比之下,我也能忍受這種歌劇了。學(xué)習(xí)有大量編程實(shí)踐的課程我
10、還記得決定不去讀研究生的那一刻。就是在學(xué)習(xí)動(dòng)態(tài)邏輯(DynamicLogic)這門課的時(shí)候,我記得是耶魯?shù)腖enoreZuck(一個(gè)天才的教師)教的。修這門課的時(shí)候,我已經(jīng)不再是雄心勃勃了。我可不指望在這么課程中得個(gè)A,我夢(mèng)想的是混個(gè)及格。邏輯本質(zhì)上是很簡(jiǎn)單的:如果結(jié)論正確,前提必須正確。例如,如果“所有讀書好的人都能找到工作”并且“張三的讀書好”,那么“張三能夠找到好工作”。就這么簡(jiǎn)單。但是我要學(xué)的是動(dòng)態(tài)邏輯,動(dòng)態(tài)邏輯和一般邏輯差不多,但是要考慮時(shí)間因素。例如,“在你開燈之后,你可以看見你的鞋子”加上“過去燈被打開了”意味著“你現(xiàn)在可以看到你的鞋子”。動(dòng)態(tài)邏輯學(xué)對(duì)于象Zuck教授這樣的天才理
11、論家來說非常誘人,因?yàn)檫@門學(xué)科的知識(shí)也許可以用來證明計(jì)算機(jī)程序是否正確。我記得在第一堂課上,為了證明“如果你有一盞關(guān)著的燈”并且“你按了一下開關(guān)”,那么“現(xiàn)在燈亮了,Zuck教授就使用了兩黑板加上邊上的墻壁。證明過程難以置信地復(fù)雜。我覺得如此復(fù)雜的證明過程很可能會(huì)有小錯(cuò)誤,但是我沒辦法證明證明過程本身是正確的。事實(shí)上,寫在黑板上的證明跳過了很多中間步驟,許多步的證明使用了演繹法,使用了歸納法,以及一些研究生才懂的證明方法。作為課后作業(yè),我們需要證明以下命題:如果燈過去是關(guān)著的,并且現(xiàn)在它是開著的,請(qǐng)證明有人按了開關(guān)。我真的試著證明它了。我花了許多小時(shí),試圖證明這個(gè)命題。在無數(shù)個(gè)小時(shí)的努力后,我
12、發(fā)覺Zuck博士的原始的證明有一個(gè)邏輯上的錯(cuò)誤,也許這個(gè)錯(cuò)誤是我的筆記抄錯(cuò)了,我不知道。于是我終于認(rèn)識(shí)到,如果為了證明一個(gè)簡(jiǎn)單的問題需要花三個(gè)小時(shí)寫下幾黑板的證明步驟,再考慮到這個(gè)漫長(zhǎng)的證明過程中可能會(huì)引入種種錯(cuò)誤,那么這種機(jī)制是不可能用來證明任何有趣的東西的。對(duì)動(dòng)態(tài)邏輯學(xué)家來說,有用是無關(guān)緊要的。于是我退出了那門課程,發(fā)誓永遠(yuǎn)不會(huì)去讀計(jì)算機(jī)系的研究生。這個(gè)故事的主題是,計(jì)算機(jī)科學(xué)和軟件開發(fā)不一樣。如果你非常非常幸運(yùn),你的學(xué)校會(huì)開軟件開發(fā)的課程。然而,他們也可能不開這樣的課程,因?yàn)槊拼髮W(xué)認(rèn)為教授實(shí)用技巧的事情應(yīng)該留給那些二三流的技術(shù)學(xué)院或者某些釋放犯人再安置計(jì)劃。你可以在任何地方學(xué)習(xí)編程,我
13、們是耶魯大學(xué),我們培養(yǎng)未來的世界領(lǐng)導(dǎo)人。你付給耶魯16萬美元的學(xué)費(fèi)就是為了學(xué)習(xí)如何寫循環(huán)語句嗎?你把耶魯當(dāng)成什么地方了?Java速成班嗎?哼。問題在于,我們沒有一個(gè)專業(yè)的學(xué)校教授軟件開發(fā)。所以如果你想成為一個(gè)程序員,你可以進(jìn)計(jì)算機(jī)系讀書(當(dāng)然計(jì)算機(jī)科學(xué)也值得學(xué)習(xí)),但是你學(xué)的不是軟件開發(fā)。如果走運(yùn)的話,你可以在計(jì)算機(jī)系發(fā)掘出很多有大量編程實(shí)踐的課程,就像你能在歷史系找到很多提供寫作水平的課程一樣。這些課程絕對(duì)值得學(xué)習(xí)。如果你喜歡編程,不要為你不能上教授諸如lambda算子或者線性代數(shù)的課程沮喪,在那里你連摸一下計(jì)算機(jī)的機(jī)會(huì)都沒有。找找看有沒有名字中帶有“實(shí)習(xí)(Practicum)”字樣的課程。
14、不要在乎Practicum是個(gè)拉丁語。有用的(無奈狀)課程就是需要在課程名中塞一些拉丁語,才能從那些裝模作樣(LiberalArtsyFartsy)管理層的眼前蒙混過關(guān)。不要擔(dān)心工作都跑到印度去了啊哈,如果你人在印度,你就無所謂了。愿你享受外包帶來的工作機(jī)會(huì)并順祝身體健康。但是我聽說現(xiàn)在愿意讀計(jì)算機(jī)系的學(xué)生越來越少了。據(jù)說原因之一是工作機(jī)會(huì)都跑到印度去了。我認(rèn)為這種觀點(diǎn)是大錯(cuò)特錯(cuò)。首先,根據(jù)眼前的商業(yè)時(shí)尚選擇事業(yè)是非常愚蠢的。其次,即使工作真的都跑到印度和中國去了,編程對(duì)于其他有趣的工作來說都是極好的訓(xùn)練,例如業(yè)務(wù)流程工程(businessprocessengineering)。第三,無論是在
15、美國還是印度,好程序員仍然是非常短缺的,請(qǐng)相信我。當(dāng)然,現(xiàn)在有許多所謂搞IT的人吵吵嚷嚷地說就業(yè)形勢(shì)不好,工作太難找。但是事實(shí)如何?恕我直言,好程序員找工作還是很容易。第四,你還有更好的主意嗎?歷史系的畢業(yè)生找工作更容易嗎?去法學(xué)院如何?據(jù)我所知,99的律師恨他們的工作,每分鐘都恨。而且律師一周工作90小時(shí)。正象我以前說過的,如果你喜歡計(jì)算機(jī),那么感謝上帝,你將屬于全世界人中的極少數(shù)的幸運(yùn)兒,這些幸運(yùn)兒熱愛他們的工作,而且工作也可以提供體面的收入。實(shí)際上,我認(rèn)為報(bào)考計(jì)算機(jī)系的人越來越少,這沒有多大的意義。相對(duì)于internet泡沫時(shí)期大家都瘋狂的往計(jì)算機(jī)系擠,現(xiàn)在的人數(shù)回落只是回歸正常水平而已。在泡沫時(shí)期,我們這個(gè)行業(yè)涌入了許多對(duì)計(jì)算機(jī)毫無興趣的南郭先生,他們夢(mèng)想的是拿著高的嚇人的薪水加誘人的期權(quán),然后年輕退休。謝天謝
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 京能集寧二期擴(kuò)建2×660MW熱電聯(lián)產(chǎn)工程節(jié)能報(bào)告的審查意見
- 淮安磁性金屬材料項(xiàng)目可行性研究報(bào)告
- 養(yǎng)殖鵝合同范本
- 農(nóng)業(yè)水果收購合同范例
- 主播發(fā)貨合同范本
- 保底銷量合同范本
- PP凈化塔工程合同范例
- 倉庫經(jīng)營餐飲合同范例
- 2024年安全準(zhǔn)入考試復(fù)習(xí)試題含答案
- 養(yǎng)牛銷售合同范本
- 中醫(yī)睡眠養(yǎng)生中心方案
- 生活中的邏輯學(xué)
- 大學(xué)生返家鄉(xiāng)社會(huì)實(shí)踐報(bào)告
- 免疫學(xué)基礎(chǔ)與病原生物學(xué)課件
- 初中生物中考真題(合集)含答案
- 《醫(yī)學(xué)免疫學(xué)實(shí)驗(yàn)》課件
- C139客戶開發(fā)管理模型
- 中考英語閱讀理解(含答案)30篇
- GB/T 5019.5-2023以云母為基的絕緣材料第5部分:電熱設(shè)備用硬質(zhì)云母板
- 《工傷保險(xiǎn)專題》課件
- 2024年農(nóng)發(fā)集團(tuán)招聘筆試參考題庫含答案解析
評(píng)論
0/150
提交評(píng)論