程式設計成就 開發人員如何公升級

2021-06-01 13:42:18 字數 2085 閱讀 7872

成功到底是什麼樣子的?

當我有乙個清晰的目標以及乙個可以衡量的成功標準的時候,我做的最好。比如,我想5分鐘跑一英里,這很好衡量,而且成功是明確定義了的。我知道現在我一英里我可以跑多快,而且網上到處都是如何跑快的建議和訓練專案。我可以選擇一種訓練專案,努力訓練,我非常自信最後能夠達到我所期待的目標。而且這個非常容易被衡量,每一周我都可以知道我距離自己的終極目標還有多少.

但是,你如何去衡量自己是否達到了乙個「相當優秀的開發者」這樣乙個級別呢?簡單的講,你不能夠。這個目標,如上所述,非常的主觀,非常的寬泛,簡直是無法衡量的。所以,我們該如何定義乙個可以衡量的東西?

和想5分鐘跑一英里差不多,我們可以從對比現在作為程式設計師的自己和所期望能成為的程式設計師來入手。五分鐘一英里的賽跑者有而十分鐘一英里的賽跑者缺乏的經歷是什麼?讓大師級程式設計師獲益而新手程式設計師缺乏的經歷是什麼?這裡關鍵的是經歷。

我們都曾有過某種特定的經歷提公升了我們作為程式設計師的技能。我們曾學習過一種新的語言,而讓我們有一種新的思維方式。或者,我們都曾精雕細琢過完美的設計,只是為了觀察其在苛刻的現實環境下暴露出的缺陷。我們因此變成更好的程式設計師。所以,有些經歷給了你新的技術。而有些則是不同的模式,並且能夠讓你理解為什麼會這樣。正是這些經歷在教你,影響你的思維過程,影響你解決問題的方法,改進你的設計。方便的是,你是否有過某種特定的經歷是很容易被衡量的。(如果把這些經歷想成是成就,就很有意思啦。)

雖然花了些時間,但是我已經對我那不可衡量懸而未絕的目標,達到「相當優秀的開發者」的級別,感到不煩惱了。如果乙個開發者能夠以他的經歷來區分,也許我們已經有了乙個明確定義的路徑朝向「相當優秀的開發者」這麼乙個大方向了。我揣測這麼一條路徑,應該是這樣子的:

1.標誌著從乙個普通人成長成程式設計師的經歷    

2.選擇某種經歷去追求    

3.追求的經歷完成了(成就解鎖了!)    

4.經歷的反思,深入的思考。[a]    

5.返回第2步,這次是選擇乙個新的經歷。

如何以一種更好的方式開始第一步,而不是眾包給各位。這裡我給出了一部分程式設計的成就,鬆散的分了組。我會在文末為你提供多種方式,讓你來創造你自己的想法。

成就

1.學習多種程式設計正規化:    

2.體驗不同平台上程式設計的來龍去脈:    

3.增強你對開發人員所常用的模組的理解:    

4.讓自己知道koans,katas,以及歲月的智慧型: 

完成過五個 code katas

5.開源程式設計:    

6.通過教授別人來學習[d]:    

關於成就

現在,讓我們來繼續**一會兒。注意每乙個成就都是可以衡量的。每乙個都是乙個布林值:你完成或者沒有完成。例如,很難衡量你是否學過乙個函式式程式語言,但是卻可以輕易的知道你是否用函式式程式語言寫過乙個程式。後者是客觀察、可測量、布林的。這種可衡量性意圖適用所有這些成就。

需要承認的是,這種可衡量性並不完美。比如在乙個會議演講這個成就:你完全可以做到一般稱職的時候就說你贏得了這份成就。但是如果你正在讀這篇文字,我假設你是想要變得卓越。你知道只是為了把一項從清單中劃掉而號稱做到是非常遜的。

既然我們談到了改進

既然我們談到了改進,你會如何改進這個清單呢?

這個清單現在在github上作為乙個gist,你可以任意的fork它然後新增更多的成就(確保你加的成就是可以衡量的)。或者fork它然後標記那些你已經征服了的成就。你還可以標記你正在做的一項,(例如,你可以去看看這些forks:justin blake,pierre chapuis, yann esposito. )

注釋

[a]我無法充分的強調第4步。為了獲得幾乎每個成就,你應該停頓和反思這些經歷,然後再移動到下乙個。反思。問問自己,你學到什麼,花些時間來寫下這些想法。更好的是,與別人分享,並且對比其他人也已經獲得這一成就的人,看看你的學習收穫的如何。    

[b]可以去coderwall.com看看基於成就的模型這些方面的,很有意思。

[c]forth基本上是自己的正規化    

[d]突然想到了這句:「寓學於教」——paulo freire

英文原文:jasonrudolph

譯文出自:譯言網

程式設計成就 開發人員如何公升級

成功到底是什麼樣子的?當我有乙個清晰的目標以及乙個可以衡量的成功標準的時候,我做的最好。比如,我想5分鐘跑一英里,這很好衡量,而且成功是明確定義了的。我知道現在我一英里我可以跑多快,而且網上到處都是如何跑快的建議和訓練專案。我可以選擇一種訓練專案,努力訓練,我非常自信最後能夠達到我所期待的目標。而且...

程式設計成就 開發人員如何公升級

成功到底是什麼樣子的?當我有乙個清晰的目標以及乙個可以衡量的成功標準的時候,我做的最好。比如,我想5分鐘跑一英里,這很好衡量,而且成功是明確定義了的。我知道現在我一英里我可以跑多快,而且網上到處都是如何跑快的建議和訓練專案。我可以選擇一種訓練專案,努力訓練,我非常自信最後能夠達到我所期待的目標。而且...

開發人員如何尋找成就感?

最近幾個月略微有點鬱悶了。專案乙個接乙個的做,可是總覺得心裡欠缺點什麼。首先是專案都有延期,而且總是虎頭蛇尾的感覺,總有一股衝動想認真做完一件事情才繼續下一件,可是被敏捷 快速迭代的指揮棒趕著前行。其次就是感覺離目標越來越遠。很有內涵和戰略意義的專案,到開發這邊只是冷冰冰的需求文件,而具體到我頭上的...