當談到編程時,很多人應該都有聽過10x程序員的說法。 據說一個10x程序員的效率大約是其他程序員的10倍。
這是一個有爭議的話題,無論你選擇相信10x程序員,還是認為這十分可笑,下面的10個習慣可以在一定程度上助你成為一名勢不可擋的優秀程序員。
1、積極使用搜索工具
作為開發人員,你需要了解如何利用搜索解惑,查看其他人對你正在研究的主題所討論的話題和內容,并將學到的知識應用于手頭的項目。
當面臨一個問題,優秀的程序員應該知道如何花很少時間去查驗和解決手頭的問題。
2、保持初學者心態
技術發展如此之快,需要不斷地學習新技術。 因此,當沒有經驗的時候,你需要適當地用新的視角看待事情。優秀的開發人員享受作為新技術的初學者的過程,并掌握自我教育的節奏,以盡快自給自足。
每個專家在某個時間點都可能是一個初學者。 而且有這么多的技術,即使在某個技術領域是專家,在另一個可能就是菜鳥。
3、將小事做好
當編寫程序時,它通常會讓你覺得需要做出十億個決定,即使你只是添加一個小功能。 你需要考慮諸如命名變量、調用函數、命名CSS屬性、使用hash與使用數組、命名事物等等。
為你干的事情做好命名是編程中一個重要的部分。 這不容易, 但很重要。有開發人員還開玩笑說,在計算機科學領域有兩個難題:緩存無效+命名。
新程序員通常不會對變量和函數命名足夠重視, 普通程序員會花更多的時間去思考它,而優秀的程序員已經通過之前遇到錯誤和問題學到了經驗。 他們找到了來幫助他們命名變量的模式,他們甚至不需要再去考慮它,因為一直沿用相同的方式命名就好。
4、收放自如
在構建應用程序的過程中,往往需要做出重大決策,這將影響你如何編寫大多數代碼。例如,在ruby中,你可能需要權衡MiniTest和RSpec之間的區別。 人們對于這些類型都有著強烈的自我意見和看法,因此容易引起爭執。 但是優秀的開發人員想法不同,往往不太在意這些,他們重視編寫、測試的習慣,他們知道你使用的具體工具其實不那么重要。
優秀的程序員往往不參與其他開發者的相互爭執和指責中,他們更收放自如。
5、使用正確的工具
在編程中,有許多不同的開源庫、工具和框架可供使用。 優秀的程序員不斷地評估他們正在使用的工具,并找出為工作選擇正確工具的方法。 由于他們習慣自給自足,他們愿意承受學習新東西的痛苦,只要它們能幫其提升效率。
有很多的開發人員喜歡去搜索和查看相關的文檔、博客文章來比較工具,并最終選擇一個單一的工具。但優秀的開發人員會將他們的研究縮小到2-3個選項,并迅速將這些工具應用到他們的項目,以了解它們是如何在他們的環境中工作的。
6、理解“code is cheap”
優秀的程序員往往可以產生更多的產出,因為他們不會被沉沒成本誤導。這些東西很容易導致人們做出不合理的行為,特別是在編寫代碼的時候……
在編碼中,沉沒成本的誤導涉及到花費在解決某個問題上的時間。例如,考慮一個場景,其中某人開始為項目編寫代碼,并預計需要大約一個星期。他們根據這個預期做出決定,在完成項目一整個星期后,他們意識到它實際上需要一個月。大多數開發人員將繼續他們已經開始的路徑走下去,證明他們的決定,并展示已經做了一個星期的進展來進行說服自己。
但是優秀的開發者思考方向不同:
“有一種其它的方法,我認為只需要半個月就能搞定。這意味著如果采取這種方法,它將可能比我保持現在的路徑一直走到底要快兩倍。”
7、使用正確的技術
一群人在屋里評估技術,然后忽略掉一個在特定技術里的大拿這種情況并不罕見。
例如,我非常有聲望,我對 Elixir 編程語言很是看好。但是這項技術很新,如果想要實際構建復雜的功能,可能會相對其它更難找到相應的開源技術,這將提升團隊構建的難度。
解決問題需要最實際的決定,使用的技術應該是基于它能夠很容易在2016年,在目前實現。在2017年、2018年、2020年,技術可能會有所不同,那時候再根據需要進行調整。
8、不知道就說“不知道”
拒絕承認你不知道的東西是很容易導致浪費你時間的事情。 作為一個優秀的程序員,你要明白你的自我價值并不受那些你不懂的東西束縛。
初學者經常難以發現最新技術的發展趨勢,優秀的開發者會意識到,他們所知道的每一種技術(編程語言,框架,庫等)都可能不再是明天的可行選擇。 他們會提前考慮更高級別的編程方式和問題解決方式。
9、始終分析錯誤消息中提示的線索
傳統教育告訴我們,失敗是不可取的。當學習代碼時,錯誤消息通常與失敗相關聯。學習如何排除故障和調試錯誤消息是一個重要的技能。
還值得注意的是,開發人員可能會再次遇到類似的錯誤消息。你應該專注于學習如何解決問題,以及為什么你需要解決它們。這樣做將允許你以更快的速度修復類似的錯誤。
10、不安于目前的成功
錯誤往往是最好的學習機會, 所以不要把錯誤當作失敗。 相反,將他們當作可學習的機會,并評估如何防止情況下一次發生。成長的關鍵是理解如何使同樣的錯誤只有一次。
編程,就像生活中的許多事情一樣。這就是為什么這么多的行為,能幫助你做好一名優秀的程序員,也能幫你在日常生活中做一個優秀的人。
責任編輯:wv
-
程序員
+關注
關注
4文章
953瀏覽量
29830
發布評論請先 登錄
相關推薦
評論