十年經(jīng)驗的老程序員:教你如何享受工作

2016-05-03 11:36:18 來源:碼農(nóng)網(wǎng)作者:佚名 人氣: 次閱讀 178 條評論

我作為一個web開發(fā)者的旅程始于2000年,那時我還只有21歲,我依然可以清楚地記得那些日子里激蕩在我內(nèi)心的感覺。如果一定要找一個詞來形容的話,我覺得那是——愉悅。我不需要擔(dān)憂時間、最后期限和輕重緩急,也不......

我作為一個web開發(fā)者的旅程始于2000年,那時我還只有21歲,我依然可以清楚地記得那些日子里激蕩在我內(nèi)心的感覺。如果一定要找一個詞來形容的話,我覺得那是——愉悅。

我不需要擔(dān)憂時間、最后期限和輕重緩急,也不需要擔(dān)心生產(chǎn)力。我所要關(guān)心的只有一件事,那就是學(xué)習(xí),盡可能多和盡可能快地學(xué)習(xí)。

十年經(jīng)驗的老程序員:教你如何享受工作

我急急忙忙地前進(jìn)不是因為時間期限這些事情,僅僅是因為這讓我感覺良好,讓我覺得有趣。學(xué)習(xí)如何構(gòu)建東西,發(fā)現(xiàn)一個全新的世界讓我由衷地興奮不已。

一晃幾年過去了,時間來到了2006年左右,我開始認(rèn)真對待編程。我開始作為一名web開發(fā)人員參與到專業(yè)的工作中。也許你會認(rèn)為這樣做毀掉了我所有的樂趣,我不怪你。這無疑是一種截然不同的體驗。

回首過往,我作為專業(yè)的web開發(fā)人員的旅程一點也不糟糕,雖然過程并不總是一帆風(fēng)順。對于我們許多人來說,工作是為了生活,但如果你愿意的話,工作并不會阻礙你感到快樂。

下面我要分享我在這旅程中收獲的可以改進(jìn)工作/生活平衡,并讓工作趣味盎然的一些內(nèi)容。

讓堆棧滾吧!

熱愛你每天使用的工具自然是好的,特別是如果你已經(jīng)使用了很長一段時間??偸撬褜ぷ屪约焊械绞娣臇|西是一種天性。但事實是,你現(xiàn)在正在使用的堆棧,并沒有你想象得那么重要,下面我會告訴你原因。

大多數(shù)新的編程工具被構(gòu)建來解決前人未能解決的具體問題。顯然,隨著時間的推移,我們試圖解決的問題會發(fā)生變化,從而使得工具生態(tài)系統(tǒng)很可能也發(fā)生變化,就像不斷進(jìn)化的生命體會努力適應(yīng)新的環(huán)境一樣。

我必須承認(rèn),我也很慚愧于忽略鋪天蓋地的宣傳,只愿意舒舒服服地使用我久經(jīng)沙場的工具。我也傾向于認(rèn)為讓別人花時間經(jīng)歷所有的痛苦一步一步往上爬地到達(dá)新技術(shù),才能更有效地學(xué)習(xí),然后當(dāng)在未來的某個時候,如果新技術(shù)被證明是好的,那么我自己采取的策略是快速掌握它。

雖然這些做法是完全可以理解的,但我在這里要告訴你的是,這是愚蠢的做法。事實上,你應(yīng)該做截然相反的事情。

我鼓勵你花時間去學(xué)習(xí)又新又閃亮的語言、框架、模式,不管什么都好,因為那是你成長的方式。那也是你拓展知識的方式,也是使得工作變得令人愉快的地方。

因此,你應(yīng)該堅持的一個非常重要的事情,是學(xué)習(xí)。挑戰(zhàn)自我去探索新的東西,正是這些使得生活和工作有了樂趣。

擁抱不舒服的狀態(tài)!

可能只是想想你需要搞定那么一大堆的工作事務(wù)以跟上大家的節(jié)奏,你就已經(jīng)覺得不舒服了。但其實,你不應(yīng)該這樣想。

走出舒適區(qū),進(jìn)入未知領(lǐng)域是迄今為止最好的學(xué)習(xí)方法。堅持老一套不會教你很多你所不知道的內(nèi)容。

你需要從不同的角度思考,你需要用不同的工具解決不同的問題,你需要擴(kuò)展你的知識領(lǐng)域,你會享受于其中的每一分鐘。相信我。

不惜一切代價遠(yuǎn)離壓力!

像那樣處于一種不舒服的狀態(tài)并試圖緊跟行業(yè)發(fā)展的速度,是有負(fù)作用的,因為每一天都會有數(shù)量龐大的新信息洶涌而至。你常常會覺得白天沒有足夠的時間去做你想要做的一切事情。沒錯,這樣的確會讓你沒有充裕的時間做事。

不過真實的情況是這樣的,只有屈指可數(shù)的一些內(nèi)容能夠在給定的任何時間激發(fā)你的熱情,并且如果你能集中注意力到那些事情上的話,那么驟然之間,你會得到一個更易于管理的范圍。

我要與你分享的是我的范圍管理系統(tǒng)。這個系統(tǒng)基于GTD(Getting Things Done)方法和每日目標(biāo)設(shè)置。

長期目標(biāo)

我使用的主要的衡量單位是長期目標(biāo),這里的長期目標(biāo)指的是那些我想要在一段相當(dāng)短的時間內(nèi)完成的目標(biāo),時間范圍從幾天到幾周。

長期目標(biāo)的一個例子是“閱讀《Javascript Pattens》”或“為UtmTag.com建立預(yù)訂系統(tǒng)”。這些都是長期的,因為很明顯你不可能一口氣做完。

如何定義長期目標(biāo)的一個非常重要的方面是,有一種循序漸進(jìn)的感覺。我的意思是每一個長期目標(biāo)都有一個我可以明確的結(jié)束日期。

因此,長期目標(biāo)不是“我要賺大錢”,因為沒有明確的方法來衡量這個過程和進(jìn)展(我強(qiáng)烈建議閱讀David Allen寫的《Getting Things Done》這本書,如果你想要知道在實際中關(guān)于如何定義目標(biāo)的話)。

在前面的例子中,我可以輕松地說,“好吧,這本書我已經(jīng)看了有一半了,所以我完成了進(jìn)度的X”,或者“我可以在一兩周內(nèi)完成這個系統(tǒng)”。

在長期目標(biāo)上取得進(jìn)展是一個重要的激勵因素。因為如果不能衡量進(jìn)度的話,我們很容易中途放棄。

每日目標(biāo)

那些長期目標(biāo)在展望宏偉藍(lán)圖的時候很有用,但是除此之外,還有一個神奇的秘訣。要想每天都按照預(yù)先規(guī)劃前行,最重要的一個技巧是每天都有充足的動力去完成一部分長期目標(biāo)。這就是為什么我喜歡將長期目標(biāo)聯(lián)合每日目標(biāo)一起使用。

每日目標(biāo)要小得多,正如其名,其范圍是一天。所以任何需要超過一天時間才能完成的任務(wù)都不是每日目標(biāo),不過可以通過再次細(xì)分使之成為每日目標(biāo)。

如何定義每日目標(biāo)甚至比定義長期目標(biāo)更重要。你需要實際安排每天能完成的工作量,同時要考慮到一些你不能控制的事情,例如跑腿和其他事務(wù)。

我建議從很小的工作量開始(例如2H小時/天),看看自己能否在這個基礎(chǔ)上增加工作量而不會覺得不堪重負(fù)。

每日目標(biāo)的一個例子是“在UtmTag.com上花2小時編碼”,其長期目標(biāo)是“為UtmTag.com建立訂閱系統(tǒng)”,每日目標(biāo)能夠使得我們靜下心來每天有一定的進(jìn)展。

相比于長遠(yuǎn)目標(biāo),這些每日目標(biāo)似乎比較渺小,但是一點點累計起來并且當(dāng)你再回過頭來看的時候,你會發(fā)現(xiàn),咦,原來你的長期目標(biāo)已經(jīng)完成了一半。

自得其樂

曾經(jīng)有段時間我希望時間能一直停留在周末,這樣我就不用回去上班了。也有一段時候,我迫不及待地數(shù)著假期結(jié)束,以便于回到工作崗位上。

那么,為什么會有兩種截然相反的心情呢?會出現(xiàn)第一種感受是因為你不得不做一些你不喜歡的事情,而第二種則是因為你興奮不已以致于沒有顧慮其他。

很明顯,第二種感情是我們大多數(shù)人所希望的,那么我們可以做些什么呢?我發(fā)現(xiàn)了興奮這種感情的一些特點,并且我正在試著融入我每一天的工作中。

什么讓工作變得有樂趣?

在你考慮將樂趣融入到你的日常工作之前,你必須先定義對于你而言樂趣意味著什么。

對我來說,樂趣是指通過完成我以前認(rèn)為不可能的事情——歸咎于感知到的復(fù)雜——而實現(xiàn)的某種啟迪。

因此,挑戰(zhàn)自我去探索和學(xué)習(xí)新的東西,而不是工作于那些陳詞濫調(diào)的任務(wù),使我更享受于我的工作。

這讓我明白了我應(yīng)該少做那些沒有這種特點的工作,多做那些有這些特點的工作。

我享受的工作

當(dāng)然,我享受的工作,別人可能會覺得難以茍同,這很正常。但是我依然想分享一些東西,這些東西讓我覺得自己像一只快樂的小蜜蜂,你可以借鑒我的點子,制作出你自己的清單。

工作于我自己的項目/思路

工作于促使我學(xué)習(xí)的項目

致力于開源

探索新的編程技術(shù)

探索新的編程語言

磨礪我的編輯技巧

擺弄我的編輯器配置

結(jié)論

請記住,你選擇做什么樣的工作,其實就是選擇了什么樣的生活和什么樣的工作感受,這完全取決于你。所以,如果你想享受你的生活,那么你就應(yīng)該喜歡上你的工作。