一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

程序員的兩種情懷

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-11-14 16:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

20年前,最好的程序員是那些能夠把整個程序裝配進(jìn)一個64Kb的.COM文件里的人。那些對Intel 80386掌握最多的人在編程中是偶像般的存在。

那是因?yàn)樵?0年前的計算機(jī)昂貴了而程序員廉價。那是黑客情懷的時代。那個時代已經(jīng)過去了。那種情懷現(xiàn)在已經(jīng)不被贊賞了,因?yàn)槭袌鰻顩r已經(jīng)完全相反了。

現(xiàn)在,計算機(jī)變得便宜而程序員變得昂貴了。當(dāng)下的時代是設(shè)計師情懷的時代,如今我們代碼的可讀性比代碼的性能更為重要。

硬件價格 vs 工資

看這個圖表。這是最近20年來(1994-2014)兩者的對比趨勢圖。第一種曲線呈現(xiàn)下降的趨勢并表明了計算機(jī)內(nèi)存和硬盤儲存器在近20年來變得很便宜。

第二種曲線趨勢演示了在同一時期軟件開發(fā)者工資上漲了多少。精確點(diǎn)來說,大概是第一種的三倍。我沒有找到一個關(guān)于這兩者對比的正式報告,但是可以肯定程序員的工資還會增長,這對任何人來說已經(jīng)不是什么秘密了。對于高級開發(fā)者來說,年薪200,000美元不再只是個夢想。然而在20年前,在周圍的人中,年薪60K美元已經(jīng)是最好的報酬了。我發(fā)現(xiàn)一篇關(guān)于這個話題的非常有趣的文章。

基本上,這意味著在1994年為了開發(fā)一個PHP網(wǎng)站,我們不得不花費(fèi)比現(xiàn)在(2014年)1000倍更多的資金在硬件方面和比現(xiàn)在(2014年)3倍更少的工資給開發(fā)者。然而我們還是在這討論一樣的堆棧技術(shù)。使用一樣配有Apache Http服務(wù)器的Linux機(jī)器。

不同之處,在1994年,如果我們的應(yīng)用因?yàn)橛布Y源限制出現(xiàn)了性能問題,我們每次添加1G的額外內(nèi)存需要支付35,000美元,而在2014年,我們只需要支付10美元。

在1994年,相對于購買新的硬件,去聘用更多的程序員并要求他們?nèi)?yōu)化代碼或者重構(gòu)代碼的收益更大。在2014年,實(shí)際上情況恰恰相反?,F(xiàn)在,花錢去把服務(wù)器的規(guī)模擴(kuò)大兩倍比花錢聘用程序員來優(yōu)化軟件更便宜。(特別是當(dāng)服務(wù)器是虛擬云服務(wù)器時)

在1994年最好的工程師擁有“黑客情懷”,而在2014年“設(shè)計師情懷”更受歡迎。

黑客情懷

擁有黑客情懷的人會認(rèn)為這個輸出斐波那契數(shù)列的Java方法是一段“優(yōu)雅的代碼”

我列出了一個優(yōu)秀黑客應(yīng)有的品質(zhì):

能夠使用一種語言中所有的別人知道(和不知道的)特性。

能辨別其他人是黑客還是新手還是黑客寫手

對規(guī)則和標(biāo)準(zhǔn)會感到無聊和厭倦。

不寫單元測試-資歷少時會寫

享受挑戰(zhàn)–他能在那展現(xiàn)它的才華。

喜歡討論多于寫文檔,因?yàn)樗麄冇X得這樣更有趣

討厭別人修改他的代碼。

喜歡馬上投入一個項(xiàng)目里。

黑客是一個有才華的人。他想在他編寫的軟件里展現(xiàn)他的才華。他享受編程并且寫代碼主要是為了好玩。我可以這么說,他已經(jīng)和他的代碼結(jié)為伴侶了并且在與代碼離婚后他無法想象以后的幸福生活。代碼所有權(quán)是黑客所關(guān)心的東西–他知道他自己是代碼的所有者。

當(dāng)我問我任意的一個黑客朋友時,“其他人怎樣才能理解這段代碼的是干什么的?”。我?guī)缀蹩偸堑玫酵瑯拥拇鸢?“他們要問我!”(通常是帶著真誠的微笑自豪地說)

設(shè)計師情懷

擁有設(shè)計師情懷的人會重構(gòu)上面的代碼使它便于閱讀。

我認(rèn)為這些品質(zhì)是一個好的設(shè)計師所擁有的:

傾向于使用傳統(tǒng)的編程技術(shù)

假定任何人都是新手并循規(guī)蹈矩地寫代碼

喜歡設(shè)定一些規(guī)則并遵循它們

喜歡寫文檔多于直接討論并且喜歡文檔自動生成多于手寫

把更多的編碼時間花費(fèi)在單元測試上

討厭挑戰(zhàn)和加班工作

喜歡看到它的代碼被修改和重構(gòu)

同時進(jìn)行比較少的項(xiàng)目工作

設(shè)計師是一個優(yōu)秀的團(tuán)隊(duì)角色。他對團(tuán)隊(duì)的發(fā)展,標(biāo)準(zhǔn),規(guī)則,教育和紀(jì)律的貢獻(xiàn)跟他對源碼的貢獻(xiàn)一樣多。他總是能確保一旦他離開項(xiàng)目他的代碼和想法依然保留下來并運(yùn)行。

對一個好的設(shè)計師來說,最滿意的是能夠看到它的代碼擁有它自己的人生–被修改,被優(yōu)化,被重構(gòu)和最終退休。設(shè)計師把他自己看做是代碼的父母-一旦它足夠年大去走路和說話,它不得不去過自己的生活。

未來

如果你認(rèn)為你自己是一個黑客,我相信這是做出改變的時候了。黑客的時代已經(jīng)成為過去了。

在不久的將來,我們可能甚至不用考慮硬件問題并且在擁有無限大內(nèi)存,CPU頻率和存儲空間的彈性計算平臺上運(yùn)行我們的應(yīng)用程序。我們僅僅需要為資源使用和絕大多數(shù)性能問題付費(fèi),這僅僅是在我們每個月的賬單里添加小額的額外費(fèi)用。我們將不會關(guān)心任何的優(yōu)化問題。

同時,優(yōu)秀的工程師將會變得越來越昂貴,僅僅去檢查下軟件并診斷,一個小時要收費(fèi)500多美元。這就像優(yōu)秀的律師和牙醫(yī)。

這就是為什么,當(dāng)開發(fā)一個新軟件產(chǎn)品時,那些付錢的客戶更關(guān)心的是它的可維護(hù)性。項(xiàng)目贊助人明白他們獲取利潤的最好解決方案是需要一個可讀性、維護(hù)性和自動化最高的項(xiàng)目。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    954

    瀏覽量

    30408
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    阿里云升級通義靈碼AI程序員,全面上線

    和JetBrains IDEs大主流開發(fā)環(huán)境,這意味著開發(fā)者可以在自己熟悉的開發(fā)平臺上,無縫接入并使用這款A(yù)I工具。 除了支持主流開發(fā)環(huán)境外,通義靈碼AI程序員還引入了多項(xiàng)新特性,如多文件代碼修改和上下文感知等。這些特性使得AI能夠更好地理解開發(fā)者的意圖和需
    的頭像 發(fā)表于 01-09 11:16 ?711次閱讀

    AMC1204有兩種封裝,SOIC-8和SOIC-16,功能一樣嗎?為什么要推出兩種封裝?

    呢?AMC1204,AMC1304這樣做有什么好處嗎? 2、AMC1204有兩種封裝,SOIC-8和SOIC-16,功能一樣嗎?為什么要推出兩種封裝?
    發(fā)表于 12-27 07:22

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補(bǔ)充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補(bǔ)充.pdf》資料免費(fèi)下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補(bǔ)充

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費(fèi)下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機(jī)械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機(jī)械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機(jī)械革命三方聯(lián)合發(fā)布了專為程序員設(shè)計的CODE AI程序員本,成為本次大會的一大亮點(diǎn)。
    的頭像 發(fā)表于 11-30 10:34 ?1102次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應(yīng)對。長遠(yuǎn)看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?528次閱讀

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應(yīng)用新生態(tài)”為主題。設(shè)置有岳麓對話、技術(shù)英雄會、主題峰會及賽事、展覽等活動,一場
    的頭像 發(fā)表于 10-25 15:42 ?494次閱讀

    噪聲傳導(dǎo)的兩種模式

    噪聲傳導(dǎo)有兩種模式,一為差模傳導(dǎo),一為共模傳導(dǎo)。
    的頭像 發(fā)表于 10-15 11:33 ?773次閱讀
    噪聲傳導(dǎo)的<b class='flag-5'>兩種</b>模式

    Linux應(yīng)用層控制外設(shè)的兩種不同的方式

    眾所周知,linux下一切皆文件,那么應(yīng)用層如何控制硬件層,同樣是通過 文件I/O的方式來實(shí)現(xiàn)的,那么應(yīng)用層控制硬件層通常有兩種方式。
    的頭像 發(fā)表于 10-05 19:03 ?1332次閱讀
    Linux應(yīng)用層控制外設(shè)的<b class='flag-5'>兩種</b>不同的方式

    linux驅(qū)動程序的編譯方法有哪兩種

    Linux驅(qū)動程序的編譯方法主要可以歸納為兩種: 手動編譯 和 使用內(nèi)核構(gòu)建系統(tǒng)(Makefile)自動編譯 。 1. 手動編譯 手動編譯驅(qū)動程序通常涉及直接使用GCC(GNU Compiler
    的頭像 發(fā)表于 08-30 14:39 ?1532次閱讀

    晶閘管的阻斷狀態(tài)有兩種是什么

    晶閘管(Thyristor)是一半導(dǎo)體器件,具有單向?qū)щ娦裕瑥V泛應(yīng)用于電力電子領(lǐng)域。晶閘管的阻斷狀態(tài)有兩種:正向阻斷狀態(tài)和反向阻斷狀態(tài)。以下是對這兩種阻斷狀態(tài)的分析。 正向阻斷狀態(tài) 正向阻斷狀態(tài)
    的頭像 發(fā)表于 08-14 16:49 ?1413次閱讀

    wdm設(shè)備的兩種傳輸方式

    系統(tǒng)中,有多種傳輸方式,其中最常見的兩種是密集波分復(fù)用(DWDM)和粗波分復(fù)用(CWDM)。 1. 密集波分復(fù)用(DWDM) 1.1 DWDM技術(shù)原理 密集波分復(fù)用(Dense Wavelength Division Multiplexing,簡稱DWDM)是一將多個不
    的頭像 發(fā)表于 07-18 09:45 ?934次閱讀

    京東上萬程序員都AI用它!

    對大模型生成代碼進(jìn)行智能修復(fù),為程序員開啟代碼漏洞修復(fù)的“自動駕駛”模式,不但減少人工接入、提高工作效率,更為企業(yè)抵御內(nèi)外部各種攻擊構(gòu)建起一道堅固的安全屏障,確保業(yè)務(wù)的連續(xù)性和穩(wěn)定性。 JoyCoder是京東云自主研發(fā)的一款輔助開發(fā)人員
    的頭像 發(fā)表于 07-17 16:29 ?491次閱讀
    京東上萬<b class='flag-5'>程序員</b>都AI用它!