摘要:本周,編碼之道的最終章,做專業(yè)的程序員。言必行,諾必達程序員的職業(yè)素養(yǎng)中有個章節(jié)就是在講程序員如何說是,也就是怎么去做承諾。我覺得我們的文化有更優(yōu)雅的詞來形容它,就是言必行,諾必達程序員需要謹慎的做出承諾,而一旦做出承諾,就要努力做到。
我想選一個詞來形容我們要如何對待編程這件事,或是我們要成為一個什么樣的程序員。
當然,可選的詞匯其實挺多的,比如技術(shù)能力強,思維敏捷,對技術(shù)有熱情,學習能力強等,這些都算得上很好的詞匯。
但我認為,如果需要用一個詞來做為我們的職業(yè)上想要達到的境界,我更喜歡專業(yè)這個詞。
它幾乎能包含一切其它詞語。
本周,編碼之道的最終章,做專業(yè)的程序員。本系列的其它文章為:
你還記得你為什么會選擇編程這個事?
也許你是因為這個行業(yè)的待遇還算不錯,也許是因為對技術(shù)比較喜好,也許是對自己一行一行代碼能編寫出有價值的軟件這種成就感更著迷,不論目的如何,終有一個問題,是你需要詢問自己:
我要做一個怎么樣的程序員
這個問題我給自己的答案是:
待人以誠,處事以專
這是我給自己職業(yè)上的座右銘。它大致的意思是:
對待同事,客戶或領(lǐng)導等任何人,用最真誠的態(tài)度與他們相處,無論我個人是否喜好他們。而對待工作上的事情,則力求做到專業(yè)性,用一種專業(yè)的態(tài)度對對待工作中的事情。
所以,這就是為什么我在編程的過程,我會寫單元測試,努力做到以TDD的方式去編碼,對待后端的開發(fā),我通常會自己使用JMeter做性能測試,因為我想知道我寫的東西性能上是否足夠滿足需求,而我?guī)缀鹾敛宦湎碌恼J真去編寫每一個文檔。而在需要我設(shè)計一個原型時,我會購買墨刀的服務(wù)去做這個事,因為我覺得這是最基本的專業(yè)性的要求,雖然我并不是一個產(chǎn)品經(jīng)理也不需要做到這個程度。
我在做這些事的過程中,沒有任何人要求過我這樣,它們大多是自我要求的產(chǎn)物。因為我希望自己是一個專業(yè)的程序員。
你做為一個程序員的自我要求呢,有沒有思考過這個問題?
那以我不多的經(jīng)歷來看,做為一個專業(yè)的程序員,要怎么才能做到?
我總結(jié)了一些原則,我試著解釋下它們,我希望這些原則能引發(fā)你的思考。
原則一:編程的最高使命是:維護軟件的業(yè)務(wù)價值與技術(shù)價值
我覺得這是最重要的原則,編程這個事的目的是什么,就是為了維護軟件的業(yè)務(wù)價值與技術(shù)價值。做為程序員,這個原則要時刻牢記在心,我們所有的努力都是為了這個目標。
而關(guān)于業(yè)務(wù)價值與技術(shù)價值,我在編碼之道的前面的文章中已詳細闡述過我的思考了。
原則二:好才是快,效率至上
是的,我知道我們行業(yè)的一些情況并不能盡如人意,一些門外漢總是希望通過無止境的延長工作時間來達到他們設(shè)定的一些目標。他們的價值觀是:通過延長每日工作時間來做到更快。
這也我們的行業(yè)存在大量的垃圾代碼的原因所在。
但我始終告訴自己的一個信念是:想要做的快,唯一的方式是把它做好。
在我的經(jīng)歷中,遇見很多次類似的經(jīng)歷,那種一開始通過過度加班來達到短期目標,而在后期卻發(fā)現(xiàn)需要付出越來越多的時間來保持可維護性的例子挺多的。
我確實深刻的理解到了一個事實就是:
沒有好,想要快就如同鏡中花,水中月
做正確的事
Google最開始的口號是"不做惡",后面在某一年開始,他們把它改成了"做正確的事"。
做正確的事當然比不做惡的要求更高。
那對于我們編程來說,什么叫做正確的事?這是需要你去思考的。
在Robert C.Martin的《程序員的職業(yè)素養(yǎng)》這本書中,有兩個章節(jié)我覺得非常契合這個理念,其中一個是說不,另外一個是承諾。
也就是:
該說不的時候要說不,該做承諾的時候要承諾并做到
要事優(yōu)先
這其實是時間管理中的一個理念,我們的所有事,可以按照緊急程度與重要程序進行切分,這樣就會有重要且緊急的事,重要但不緊急的事,不重要但非常緊急的事,不重要且不緊急的事四個象限。
你要學著對自己的任務(wù)進行分類,并且你會隨時隨地面臨一個選擇:
究竟是緊急的事做先處理,還是重要的事優(yōu)先處理?
要事做先,這是標準答案。
但我遇到情況是:講要事優(yōu)先的人多,真正這樣做的人卻不多。
舉個例,知道要事優(yōu)先的人,無論在什么樣的處境下,都能盡最大努力做到編寫單元測試,因為這是極其重要的事。雖然可能有更緊急的進度功能開發(fā)情況,但要事優(yōu)先,不是嗎?
保持對技術(shù)的熱情與學習
如我在編碼之道中反復說的一個點就是:術(shù)是不斷變換的,而道則穩(wěn)定得多。
我們不停的在用不同的術(shù)在編寫我們的代碼,年復一年,它們永遠在變化,在更新。雖然我認為學習道是更重要的,但學習道的根本方式就是通過不斷的去使用不同的術(shù)來達到的。
所以,不要把自己停在某一個點上,也就是自我限制自己只能使用某些語言或框架,如果有機會,就去嘗試使用不同的。
這就需要一個前提,你需要保持對技術(shù)的熱情與學習。
而一個程序員,如果失去了對技術(shù)的熱情,編程這件事就注定不可能做好了。
言必行,諾必達
《程序員的職業(yè)素養(yǎng)》中有個章節(jié)就是在講程序員如何說是,也就是怎么去做承諾。
我覺得我們的文化有更優(yōu)雅的詞來形容它,就是言必行,諾必達
程序員需要謹慎的做出承諾,而一旦做出承諾,就要努力做到。
而技術(shù)人員與非技術(shù)人員之間總是有一道隔閡的一個重要原因也在于,非技術(shù)人員不理解技術(shù),而理解技術(shù)的我們很多時候做出來的承諾沒有完成。約定時間需要完成的功能沒有按時完成,期望的質(zhì)量無法達到。于是很多非技術(shù)人員在管理上就選擇延長每日工作時間來預防以及解決這些。
所以,如果你期望別人不會以一種門外漢的姿態(tài)來干涉你,我認為你得做到這一點,就是你得很專業(yè),不僅如此,要讓那些不懂技術(shù)的也知道你很專業(yè),而且你能說到做到。
這樣,相信外行領(lǐng)導內(nèi)行的情況就會慢慢變少了。
當然,技術(shù)上的東西有些困難或情況我們是壓根沒有辦法預料到的,這是正常的情況,你只需要及時更新情況,并據(jù)此做出新的承諾就好了。
這便是我在從事了十多年的編碼之后,在幾乎完整的參與了后端,移動端,桌面端,前端各個方向的開發(fā)后,形成的一些對技術(shù)的感悟與理解。
所以,我把它們用文章的形式記錄下來。
我希望自己十年后,二十年后,能夠?qū)幋a有不同的感悟與理解,到那個時候,我會再次重寫編碼之道這個系列。
這也是微言碼道的來源與初衷。
所以微言碼道的口號是:
用我們微小的力量傳播編碼之道
它并不是居高臨下式的傳播與指教。而是在理解到了技術(shù)如同大海一樣深不可測,廣不可視之后的自我努力與嘗試。并且希望能有更多程序員一起去不斷的探索編程這個事,把編程這件事做的更好。
所以,編碼之道這個系列,我與自己許下一個約定:
十年后再見
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/120962.html
摘要:對于專業(yè)的開發(fā)者來說,單元測試是一項必備的技能,多數(shù)的程序員卻不具備測試驅(qū)動開發(fā)的能力。對于工程來說,開源項目基本都嚴格遵守執(zhí)行單元測試,而很多商業(yè)的工程則在單元測試方面有所缺失。一個擁有單元測試的項目會變得更加容易維護和更改。 作為一名合格的Java程序員,日常工作除了上班擼代碼就是加班擼代碼。擼碼其實不難,無非詢問Google,StackOverflow,解決方法和demo一籮...
摘要:與此類似,理所當然的,我們程序員也會有自己的圣經(jīng)。這便是程序員的圣經(jīng)三個原則我認為做為一個程序員,最神圣的就是三個原則,它幾乎能完整無誤的定義做為一個程序員應(yīng)該如何去編碼。 ...
摘要:面對這些較高的要求,前端在開發(fā)環(huán)節(jié)中的作用也變得越來越重要因而近幾年來前端工程師備受青睞一般水平的前端工程師平均年薪可達萬元資深前端工程師年薪高達萬元。這種用戶體驗的細節(jié)問題是否處理妥當是判斷一名前端工程師是否優(yōu)秀的因素。 本文是為了給那些想要了解前端開發(fā)是什么,或者剛剛打算開始學習前端的朋友們準備,希望可以幫助準備入行的你;showImg(https://segmentfault.c...
摘要:剛來深圳時,除了一腔夢想,我什么都沒有。在深圳混到第六年頭的時候,事情有了轉(zhuǎn)折。說得世俗一點,手中沒錢,心下無膽,在深圳過的不盡如人意,又始終回不去家鄉(xiāng)沒有衣錦還鄉(xiāng),故鄉(xiāng)就是世界上最牽掛,卻始終不敢想的地方。 ...
閱讀 2060·2023-04-25 21:11
閱讀 2963·2021-09-30 09:47
閱讀 2271·2021-09-24 09:48
閱讀 4427·2021-08-23 09:43
閱讀 895·2019-08-30 15:54
閱讀 559·2019-08-28 18:01
閱讀 1397·2019-08-27 10:55
閱讀 588·2019-08-27 10:55