編碼成就:開發(fā)人員如何升級
  • 更新時間:2024-10-28 18:29:51
  • 網(wǎng)站建設(shè)
  • 發(fā)布時間:1年前
  • 432

編程成就:開發(fā)人員如何升級

導(dǎo)讀:優(yōu)秀的開發(fā)者如何成為偉大的?還是不要想著如何成為偉大的:一個優(yōu)秀的開發(fā)者如何成為一個優(yōu)秀的開發(fā)者?從第一步到第N步?jīng)]有明確的路徑,哎呀,甚至不知道第N步是什么。凡是有邏輯思維的人都明白,沒有明確的路線意味著從新手到高手將是一段艱難的旅程。在過去的幾年里,我花了很多時間來思考這個難題。下一步我該怎么做才能從優(yōu)秀的開發(fā)人員變成非常優(yōu)秀的開發(fā)人員?

成功到底是什么樣子的?

當(dāng)我有一個明確的目標(biāo)和我可以衡量的成功衡量標(biāo)準(zhǔn)時,我會做得最好。例如,我想在5 分鐘內(nèi)跑完一英里,這很容易衡量,成功也很明確。我知道我現(xiàn)在能跑多快一英里,而且互聯(lián)網(wǎng)上到處都是關(guān)于如何跑得快的建議和鍛煉。我可以選擇一個培訓(xùn)項目,努力學(xué)習(xí),我非常有信心最終會達(dá)到我想要的目標(biāo)。這很容易衡量,每周我都可以知道我離最終目標(biāo)有多遠(yuǎn)。 (北京網(wǎng)站制作)

但是如何衡量自己是否達(dá)到了“相當(dāng)不錯的開發(fā)者”的水平呢?簡單地說,你不能。如上所述,這個目標(biāo)非常主觀,非常廣泛,而且根本無法衡量。那么,我們?nèi)绾味x可衡量的東西呢?

類似于想在5 分鐘內(nèi)跑完一英里,我們可以先將自己作為一名程序員與我們期望成為的程序員進(jìn)行比較。五分鐘一英里賽跑者有哪些十分鐘一英里賽跑者缺乏的經(jīng)驗?高級程序員從新手程序員所缺乏的經(jīng)驗中受益是什么?這里的關(guān)鍵是經(jīng)驗。

作為程序員,我們都有一定的經(jīng)驗可以提高我們的技能。我們學(xué)會了一種新的語言,它給了我們一種新的思維方式?;蛘?,我們都塑造了一個完美的設(shè)計,只是看到它的不完美暴露在嚴(yán)酷的現(xiàn)實世界中。我們因此成為更好的程序員。所以,一些經(jīng)驗會給你新的技巧。有些是不同的模式,讓您了解為什么會這樣。正是這些經(jīng)驗教會了你,影響了你的思維過程,影響了你解決問題的方法,并改進(jìn)了你的設(shè)計。方便的是,很容易判斷您是否有過特定的體驗。 (將這些經(jīng)歷視為成就很有趣。)

這花了一些時間,但我并沒有為達(dá)到“相當(dāng)優(yōu)秀的開發(fā)人員”水平這一無法衡量的懸而未決的目標(biāo)而煩惱。如果一個開發(fā)人員可以通過他的經(jīng)驗來區(qū)分,也許我們就有了一條通往“相當(dāng)優(yōu)秀的開發(fā)人員”的大方向的明確路徑。我推測這樣的路徑應(yīng)該是這樣的:

1.標(biāo)志著從普通人成長為程序員的經(jīng)歷

2.選擇一種體驗去追求

3.追求經(jīng)驗完成(成就解鎖?。?

4.反思經(jīng)驗,深入思考。 [A]

5. 返回第2 步,這次選擇新體驗。

如何以比眾包給每個人更好的方式開始第一步。在這里,我給出了一些編程成就,松散地分組。我會在文末給你多種方式,讓你創(chuàng)造自己的想法。

1.學(xué)習(xí)多種編程范式:

用匯編語言寫一個程序

用函數(shù)式編程語言編寫應(yīng)用程序

用面向?qū)ο蟮恼Z言編寫應(yīng)用程序

用基于原型的語言編寫應(yīng)用程序

用邏輯編程語言編寫應(yīng)用程序

使用Actor 模型編寫應(yīng)用程序

用Forth 語言寫一個應(yīng)用程序[C]

2.體驗不同平臺編程的來龍去脈:

我寫了一個普通的網(wǎng)絡(luò)應(yīng)用

我寫了一個普通的桌面應(yīng)用程序

我寫了一個普通的手機(jī)應(yīng)用

編寫一個普通的嵌入式應(yīng)用程序

寫了一個實時系統(tǒng)

3. 增強(qiáng)對開發(fā)者常用模塊的理解:

編寫了一個網(wǎng)絡(luò)客戶端(HTTP、FTP 等)

寫了一個設(shè)備驅(qū)動程序

寫一個B樹數(shù)據(jù)庫

包裝現(xiàn)有庫以獲得更好(和更愉快)的用戶體驗

編寫提供插件模型的應(yīng)用程序或框架

筆試框架

書面編程語言

4. 讓自己了解公案、套路和歲月的智慧:

完成五個代碼型

完成您想學(xué)習(xí)的語言的編程公案

參加代碼撤退

閱讀SICP 并完成所有練習(xí)

5.開源編程:

共享開源項目的代碼

接受補(bǔ)丁

獲得對重要開源項目的提交權(quán)限

發(fā)布一個開源項目

為開源項目實施Refactotum

6. 教人學(xué)[D] :

發(fā)表有啟發(fā)性的演講

在本地用戶組中發(fā)言

在會議上發(fā)言

教授培訓(xùn)課程

發(fā)布教程


發(fā)布一個開源項目的constructive code review
寫一本編程的書
關(guān)于成就

現(xiàn)在,讓我們來繼續(xù)探討一會兒。注意每一個成就都是可以衡量的。每一個都是一個布爾值:你完成或者沒有完成。例如,很難衡量你是否學(xué)過一個函數(shù)式編程語言,但是卻可以輕易的知道你是否用函數(shù)式編程語言寫過一個程序。后者是客觀察、可測量、布爾的。這種可衡量性意圖適用所有這些成就。

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

既然我們談到了改進(jìn)

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

這個清單現(xiàn)在在github上作為一個gist,你可以任意的fork它然后添加更多的成就(確保你加的成就是可以衡量的)?;蛘遞ork它然后標(biāo)記那些你已經(jīng)征服了的成就。你還可以標(biāo)記你正在做的一項,(例如,你可以去看看這些forks:Justin Blake, Pierre Chapuis, Yann Esposito. )

或者發(fā)表評論:什么經(jīng)歷將你塑造成一個更好的開發(fā)者?以及你會接下來去解鎖哪一個成就?

注釋

[A]我無法充分的強(qiáng)調(diào)第4步。為了獲得幾乎每個成就,你應(yīng)該停頓和反思這些經(jīng)歷,然后再移動到下一個。反思。問問自己,你學(xué)到什么,花些時間來寫下這些想法。更好的是,與別人分享,并且對比其他人也已經(jīng)獲得這一成就的人,看看你的學(xué)習(xí)收獲的如何。

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

[C]Forth基本上是自己的范式

[D]突然想到了這句:“寓學(xué)于教”——Paulo Freire

我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開發(fā)、各類API接口對接開發(fā)等。十余年開發(fā)經(jīng)驗,每一個項目承諾做到滿意為止,多一次對比,一定讓您多一份收獲!

本文章出于推來客官網(wǎng),轉(zhuǎn)載請表明原文地址:https://www.tlkjt.com/web/13761.html
推薦文章

在線客服

掃碼聯(lián)系客服

3985758

回到頂部