感謝baobao的投遞

  在一個(gè)陰雨的早上,我坐在桌子旁,開(kāi)始想如何才能高效的工作。在我成為一個(gè)自由職業(yè)者之前,我有很長(zhǎng)一段時(shí)間都很努力工作,但收效甚微。我在 2006 開(kāi)始接觸禪學(xué)。我馬上意識(shí)到:古代的禪宗大師們幾百年前早已經(jīng)知道現(xiàn)今的程序員應(yīng)該如何工作。雖然我很討厭“如何成為一個(gè)更好的程序員”之類的文章,但我仍舊想分享一些我的想法。它對(duì)我來(lái)說(shuō)起到個(gè)提醒的作用,如果你有什么想法,也請(qǐng)留言。

  0. 專注 Focus

  如果你決定開(kāi)始工作,請(qǐng)盡力的做好它。不要同一時(shí)間做幾件事情。一次只做一件事情。如果你多線程工作的話,你不一定會(huì)更快。多線程會(huì)讓你精疲力盡,出錯(cuò),轉(zhuǎn)換任務(wù)時(shí)消耗更多的時(shí)間。這不是于編程,這是個(gè)普遍的法則。

  Kodo Sawaki 說(shuō)過(guò):如果你需要睡覺(jué),去睡吧。當(dāng)你試圖睡覺(jué)的時(shí)候,不要想著程序,單純的睡覺(jué)。如果你在編程,專注編程吧,不要做白日夢(mèng)。如果你很累的話,不能再編程的時(shí)候,睡覺(jué)吧。算是的多線程超人 Stephan Uhrenbacher 也決定以后單線程工作。我也有與 Stephan 類似的經(jīng)歷,后我寫了 Time & Bill,一個(gè)追蹤時(shí)間的工具。目的是想只需要點(diǎn)一個(gè)鍵,能追蹤我的時(shí)間。結(jié)果很糟糕:我經(jīng)常在一個(gè)任務(wù)只專注了幾分鐘轉(zhuǎn)移到另外一個(gè)任務(wù)去了,F(xiàn)在我好多了。類似于 Pomodoro technique,我計(jì)劃了一些工作時(shí)段,專注于它們。不聊天,不睡覺(jué),不查看 Appstore 里的新游戲。

  1. 保持清醒 Keep your mind clean

  在編程時(shí),你需要清除你的內(nèi)存。拋開(kāi)你腦袋中的其他東西。如果你被其他事情所煩惱,不要讓它們影響你。大部分情況下麻煩會(huì)自動(dòng)消失。但如果有很大麻煩的話,你不能遺忘它們,不要工作。試著清除雜念。當(dāng)你開(kāi)始工作的時(shí)候,讓外部的世界遠(yuǎn)離你。

  郵件列表中有很激動(dòng)人心的事情嗎?不要管它。你之后還有機(jī)會(huì)看到這則激動(dòng)人心的事情的。立即關(guān)掉能填滿你腦袋的應(yīng)用吧:關(guān)掉 Twitter,F(xiàn)acebook,E-mails。你應(yīng)該將手機(jī)靜音,放在口袋里。你也許會(huì)說(shuō)這同第一條,專注,很接近,但還有一條,吃飯的時(shí)候或者開(kāi)始工作之前不要使用那些工具。它們會(huì)將你與外部世界聯(lián)系起來(lái),分散你的注意力。

  想想:大部分時(shí)間當(dāng)你起床的時(shí)候你的腦袋是清醒,毫無(wú)雜念的。如果不是這樣,做些運(yùn)動(dòng)也許有幫助(我會(huì)長(zhǎng)跑)。如果你感到毫無(wú)雜念時(shí),去工作吧,你能表現(xiàn)得很好。等你不再工作的時(shí)候,這時(shí)候你可以讓你的腦袋充滿雜念了。你將會(huì)看到一整天辛勤的工作已經(jīng)被你拋在腦后了,這是多么棒的體驗(yàn)。 Twitter 和 Co 會(huì)消耗你大部分的能量。你也許會(huì)想:是一分鐘的事情。你錯(cuò)了,其實(shí)不止。

  你其實(shí)已經(jīng)意識(shí)到了吧。

  2. 保持初學(xué)者的思維 Beginner’s Mind

  還記得你作為一個(gè)新兵時(shí)候的日子吧。如果你仍舊還是個(gè)新人,記住這個(gè)時(shí)候吧。你時(shí)刻渴望新知。每天都想象自己是一個(gè)新人。試著以一個(gè)新人的角度來(lái)看那些技術(shù)。這樣你能更好的接受指正,或者不按常規(guī)出牌,開(kāi)陳出新。也可以從一些新人身上學(xué)到許多好的想法。

  3. 拋開(kāi)自負(fù) No ego

  一些程序員有個(gè)大問(wèn)題:太自我。但我們沒(méi)有時(shí)間來(lái)發(fā)展自我,我們沒(méi)有時(shí)間成為一個(gè)搖滾明星。

  是誰(shuí)決定要做一個(gè)程序員的?你嗎?不是,那是其他人?可能吧。你能比較到底是蘋果好還是香蕉好么?不能。你是個(gè)個(gè)體。你也不能將你的方方面面和其他個(gè)體作比較。你只能作片面的比較。

  你有某一點(diǎn)很厲害,你也不能驕傲自滿。你 Java 很厲害?很酷。另一個(gè)人 Java 的確不如你厲害,但他保齡球比你厲害。Java 比打保齡球更重要么?視情況而定?赡苣憧梢砸蕾 Java 賺更多錢,但那個(gè)人也許因?yàn)橛幸恍┍}g球球友而享受了許多樂(lè)趣。

  你可以因?yàn)槟闶莻(gè) geek 沾沾自喜么?太自我的程序員不會(huì)虛心向他人學(xué)習(xí)。

  Kodo Sawaki 曾經(jīng)說(shuō)過(guò):你沒(méi)有那么重要。

  想想這句話吧。

  4. 不要想著職業(yè)目標(biāo) There is no career goal

  如果你想得到什么事物,并且不關(guān)心你現(xiàn)在的生活,那么你已經(jīng)輸?shù)袅诉@個(gè)游戲。不要想象你之后將會(huì)達(dá)到什么職業(yè)目標(biāo)。

  工作 20 年,成為一個(gè)股東合作人?為什么不為了興趣而努力工作呢?努力工作可以非常有趣。禪說(shuō),一日不作,一日不食。

  我們不需要等到 20 年后才開(kāi)心。你可以現(xiàn)在開(kāi)心,算你還不是一個(gè)股東合作人,你也沒(méi)有開(kāi)保時(shí)捷。事情會(huì)很快轉(zhuǎn)變的。你會(huì)生病,你也可能被炒,你可能自我耗盡(如果你遵循所有的這些規(guī)律,我想可能性很低)。

  在所有的這些事情發(fā)生以前,盡情的努力工作吧,快樂(lè)的工作。不要僅僅盯著學(xué)校里的成,不要想著你沒(méi)有得到的一個(gè)職位。

  畢竟你終究會(huì)達(dá)到某個(gè)位置。你會(huì)有一些珍貴的記憶,也許還會(huì)有一個(gè)不錯(cuò)的職位,業(yè)績(jī)輝煌的 20 年。每都是很棒的。

  如果你覺(jué)得在你現(xiàn)在的公司工作不開(kāi)心,立即離開(kāi)吧。不要呆在一個(gè)剝奪你快樂(lè)的公司工作。當(dāng)然這僅僅可能在富有的里可行,人們可以選擇離開(kāi)。但如果你生活在這么好的環(huán)境里,這么去做吧。不要后悔離開(kāi),你沒(méi)有時(shí)間可以浪費(fèi),你可能明天死掉。