優秀程式設計師的6個共同特質
摘要:如果你是一個程式設計師,你會發現身邊優秀的同事也總是有一些共同點。原文作者ROYVANRIJN總結了他身邊優秀程式設計師擁有的6個特質:具有好奇心、熱愛分享、具有社群意識、以身為程式設計師而自豪、有點懶、程式碼視覺化的能力。
如果你在一家IT公司,與周邊的程式設計師接觸時間越長,對他們的可愛之處瞭解地就越多:或呆或萌,或正派或猥瑣。如果你恰好是一個程式設計師,你會發現身邊優秀的同事也總是有一些共同點。原文作者ROYVANRIJN總結了他身邊優秀程式設計師同事擁有的6個共同特質:
• 具有好奇心
• 熱愛分享
• 具有社群意識
• 以身為程式設計師而自豪
• 有點懶
• 程式碼視覺化
1. 具有好奇心
他們總是保持一顆好奇心,凡是遇到問題,首先就是:Google!沒有Google就沒有發言權。然後,會在StackOverflow上查詢相關問題、瀏覽郵件列表、閱讀線上文件等等。
這聽起來理所當然,但是部分人卻是先問自己身邊的同事。原作者認為,這個習慣不太好:Google檢索到的資訊遠比你周圍同事瞭解的多,沒必要放著這麼好的資源不用,在你緊張工作的同事身上費功夫。
當然,大多數時候第一次在Google搜尋問題,可能沒有自己想要的結果,不過不要放棄!繼續搜尋,嘗試使用不同的關鍵詞,或者直接閱讀原始碼。如果上面都沒有結果,那就在郵件列表、新聞組等社群提問。
2. 熱愛分享
一旦找到解決自己問題的方法,然後就到此為止,然後就沒有然後了?No!一名優秀程式設計師不能這樣做。在地球上正有一群程式設計師遭遇和你一樣的問題,他們也正在嘗試解決。
理理自己的思路,寫成部落格記錄下來:遇到了哪些坑兒,如何避免這些坑兒。在你曾經搜尋過該問題的地方,如果問題還沒有解決,就幫助回答,貼出自己的方案,接受後來者的膜拜。當然,你可能會“自問自答”,這樣就準備接受後來者的鄙視吧。
3. 具有社群意識
如果在使用某個開源軟體的時候遇到了Bug,你會怎麼辦?一般會有2個反應:
• 抱怨,尋找另一個替代軟體
• 下載原始碼,自己動手打補丁
上面2個方式都不太明智。開源社群之所以成為社群,就是因為是大家自願地來修復問題,很明顯第一個方式不太合適。那第二個方式為何不妥?我們不鼓勵直接下載原始碼來打補丁,應該首先聯絡該軟體的維護者。一個著名的例子就是,Linus Torvalds曾拒絕合併一段可以大幅提升Linux核心速度的程式碼,只是因為該段程式碼的作者獨自工作了6個月之久。記住,首先與社群一塊討論你的改進,然後大家一起來做!
有句俏皮話是這麼說的:開源專案沒死掉,是因為還沒人來修復你的Bug;因為沒人修復你的Bug,所以這個開源專案死掉了。
4. 以身為程式設計師而自豪
優秀的程式設計師都以作為程式設計師而感到自豪。一旦你完成了某項功能,你會迫不及待地將成果展示給客戶、麻利利地實現客戶的想法。
如果發現自己的程式碼裡面可能存在問題時,怎麼辦?可能會“自大”,因為是自己寫的,就覺得程式碼稽核沒有必要;或者有問題也非要自己完成,而不是協作解決。優秀的程式設計師,應該學會與團隊分享,時刻保持激情,但不僅僅是為了自己,而是為了團隊、產品和專案。
5. 嗯…有點懶
幾乎全部職業的優秀員工都很勤奮、工作努力,不過程式設計師例外,那些優秀出色的程式設計師都有點懶。這可能是唯一把懶惰當做優秀品質來對待的職業(測試人員可以除外)。
也許可以說明這一優秀特質的最知名的例子就是“計算機第一夫人”Grace Hopper在1952年發明了編譯器。她解釋說,做出編譯器就是因為自己很懶,並且希望程式設計師都能夠成為一個數學家。
如果一個程式設計師被要求定期完成某事,他/她會堅持想出一個辦法來避免這樣做。“一次編寫,到處執行。”如果客戶總是談論令人厭煩的重複性的工作,優秀的程式設計師總會嘗試著將這個工作自動化。
比爾蓋茨也講到“我總是會選擇一個懶人去完成一份困難的工作。因為,他會找到捷徑”。
程式設計師們,擁抱“懶惰”吧,將重複性的工作自動化,不要重複自己!提示:懶人們應該快速學會快捷鍵喲~這也是優秀程式設計師應該做的!!
6. 程式碼視覺化
對於整個程式碼庫,需要在腦子裡面構建一個模型。這就是我們所說的“程式碼視覺化”。
要做到“程式碼視覺化”,首先我們需要了解整個程式碼庫。需要對部分程式碼進行修改或增刪時,需要知道在什麼地方進行查詢。問題出現在什麼地方,應用程式中的物件/例程是怎麼進行的,每個模組之間的關係是怎樣的,這些都需要清楚。
其次,需要了解正在工作的程式碼環境。大部分情況下,我們會在多個檔案中來回切換,優秀程式設計師會明白自己當前所處的環境,不會覺得暈頭轉向。只要一看程式碼框架和結構,就可以快速找到自己需要的原始檔。當然,這需要對整個程式碼做到了然於胸。
不過,程式猿和程式媛在程式碼視覺化方面的能力是由有差別的,據目前研究,貌似IDE中的導航功能更對程式猿有利。
相關推薦
優秀程式設計師的6個共同特質
作者: ROYVANRIJN 摘要:如果你是一個程式設計師,你會發現身邊優秀的同事也總是有一些共同點。原文作者ROYVANRIJN總結了他身邊優秀程式設計師擁有的6個特質:具有好奇心、熱愛分享、具有社群意識、以身為程式設計師而自豪、有點懶、程式碼視覺化的能力。 如果你在一家IT公司,與周邊的程式設
優秀程式設計師具備的10個共同特徵?
一、前言 如果你對最新的程式語言和最新的框架有最新的瞭解——非常棒!你已經掌握了編寫優秀程式碼所需的技術技能。但是,擁有堅實的技術能力並不是唯一需要程式設計師的職業。要想脫穎而出,你需要具備做這項工作所需要的各種特質,並做好它。 二、特徵分類 以下幾個是優秀程式設計師特徵的分類:: 1、愛好和經歷都很廣泛。深
程式設計師6年只幹了50個小時的活,自動化工作是要逆天麼?
2016年,Reddit上出現了一則匿名的自白帖子:“大概六年前到現在,我在公司什麼活都沒幹。” 這個化名為FiletOFish1066的程式設計師稱自己供職於一家知名的科技公司,實際上無所事事。 他寫道,謀得這份質量保證工作的八個月後,他使自己的全部工作完全自
【連載】優秀程式設計師的 45 個習慣之習慣35
對問題各個擊破 —— 高效程式設計師的 45 個習慣之習慣35 “逐行檢查程式碼庫中的程式碼確實很令人恐懼。但是要除錯一個明顯的錯誤,只有去檢視整個系統的程式碼,而且要全部過一遍。畢竟你不知道問題可能發生在什麼地方,這樣做是找到它的唯一方式。”
【連載】優秀程式設計師的45個習慣之45——及時通報進展與問題
好訊息: 本書今天互動網有貨,噹噹網、卓越網也會陸續有貨。 及時通報進展與問題 —— 高效程式設計師的 45 個習慣之習慣45 “管理層、專案團隊以及業務所有方,都仰仗你來完成任務。如果他們想知道進展狀況,會主動找你要的。還是埋頭繼續做事吧。” 接受一個任務,
優秀程式設計師的45個習慣書籍簡介
強烈推薦大家將這些打印出來,貼在自己的辦公桌旁邊的牆上,學習實踐。 態度篇 1. 做實事 不要抱怨,發牢騷,指責他人,找出問題所在,想辦法解決。對問題和錯誤,要勇於承擔。 2. 欲速則不達 用小聰明、權宜之計解決問題,求快而不顧程式碼質量,會給專案留下要命的死角。 3.
優秀程式設計師的45個習慣]
態度篇 1. 做實事 不要抱怨,發牢騷,指責他人,找出問題所在,想辦法解決。對問題和錯誤,要勇於承擔。 2. 欲速則不達 用小聰明、權宜之計解決問題,求快而不顧程式碼質量,會給專案留下要命的死角。 3. 對事不對人 就事論事,明智、真誠、虛心地討論問題,提出創新方案。 4. 排除萬難,奮勇前進 勇氣往往是克
【連載】優秀程式設計師的45個習慣之42——允許大家自己想辦法
允許大家自己想辦法 —— 高效程式設計師的 45 個習慣之習慣42 “你這麼聰明,直接把乾淨利落的解決方案告訴團隊其他人就好了。不用浪費時間告訴他們為什麼這樣做。” “授人以魚,三餐之需;授人以漁,終生之用。”告訴團隊成員解決問題的方法,也要讓他們知道如何解決問題的思路,這也是成
優秀程式設計師的45個習慣(轉載)
1. 做實事不要抱怨,發牢騷,指責他人,找出問題所在,想辦法解決。對問題和錯誤,要勇於承擔。2. 欲速則不達用小聰明、權宜之計解決問題,求快而不顧程式碼質量,會給專案留下要命的死角。3. 對事不對人就事論事,明智、真誠、虛心地討論問題,提出創新方案。4. 排除萬難,奮勇前進勇
優秀程式設計師的八個好習慣
關注微信公眾號“測試自動化顧問”(ID: taforum),更多原創文章等您。讓我們一起探討自動化測試的成功之道!Sonny Recio在Hacknoon上發表了一篇名為《What habits made me a better Software Engineer?》的文章,
優秀程式設計師的十個習慣
在這個世界上,有數百萬的人熱衷於軟體開發,他們有很多名字,如:軟體工程師(Software Engineer),程式設計師(Programmer),編碼人(Coder),開發人員(Developer)。經過一段時間後,這些人也許能夠成為一個優秀的編碼人員,他們會
優秀程式設計師所具備的7個好習慣
除了必需的技術技能和邏輯能力,下面講一下一個團隊應該具備怎樣的好習慣: 1. 良好的時間管理 遲到對於任何一家公司都是個頭痛的問題。作為一個程式設計師,有時候為了完成任務常常不得不熬夜,從而導致第二天上班就遲到了。但是我們忽略了這一點,我們的工作時間至關重要,因為在這段時間裡我們要和客戶同步,也要
一個優秀程式設計師的自我修養
對於網路推廣來說,必然少不了代理IP的使用,像論壇發帖、微博推廣、百度問答等等,如果你想看到效果,就需要大量操作,但是同一個IP重複操作,必然會受到限制,這個時候必須使用代理IP比如太陽IP軟體的幫助,將效率和效果最大化。 當然這只是推廣過程中的一小部分,如果你想更好的去操作,就要多掌握一些操作技巧,這樣才
優秀程式設計師應該具備的12種能力
1. 程式語言能力 不用多說,作為合格的計算機程式設計師,精通一門語言是必須的。這種精通,不是說看了一本程式設計寶典,抄了幾個程式就能說精通的,要靠長時間的積累。 2.編碼能力 我曾經看很多程式設計師寫的程式碼,在同一個jsp或者java原始檔裡,出現了三種以上的對方
#HR吐槽程式設計師30個面試者因下雨一個沒來,這種態度還想找工作?
我們每個人找工作的時候都希望有一份好工作,我們都希望輕鬆並且薪資高或者福利好,但是你想要找到這樣的工作,你還得有實力。一般人區求職的時候一般會面試多家公司,然後從職業發展、薪資待遇、員工福利等多方面考慮,然後擇優選擇! 如果有想學習java的程式設計師,可來我們的java學習扣qun:723
凌晨3點不回家不心酸:程式設計師幾個真實通宵時刻
《凌晨3點不回家,成年人的世界是你想不到的心酸》一篇引起熱議,繼而出現其他反駁的聲音:《凌晨3點不回家:對不起我做不到》、《凌晨3點不回家?那是你效率不高》。 從事IT行業,有時候凌晨三點不回家真不是效率不效率的,今天和大家分享幾個真實加班的時刻: 01 初入職場,連續睡辦公室 剛畢業,在
程式設計師兩個月面試30家公司全部失敗!血淚總結面試經驗!
大概一年前,研究生畢業 踏上了找工作之旅 七月的北京,特別的熱 為了找到一個好一點的工作,在北京城四處穿梭 經過前期的一些列準備,也通過很多公司的筆試 在八月的時候正式的開始了各種面試 剛開始的面試是特別不順利的 整個一個月
懂得這40條程式設計箴言才稱得上優秀程式設計師
1、重構是程式設計師的主力技能。 2、工作日誌能提升腦容量。 3、先用profiler調查,才有臉談優化。 4、註釋貴精不貴多。杜絕大姨媽般的“例注”。漫山遍野的碎碎念註釋,實際就是背景噪音。 5、普通程式設計師+google=超級程式設計師。 6、單元測試總是合算的。
優秀程式設計師應具備的自我修養
態度篇 1. 做實事 不要抱怨,發牢騷,指責他人,找出問題所在,想辦法解決。對問題和錯誤,要勇於承擔。 2. 欲速則不達 用小聰明、權宜之計解決問題,求快而不顧程式碼質量,會給專案留下要命的死角。 3. 對事不對人 就事論事,明智、真誠、虛心地討論問題,提出創新方案。 4