編程的快樂(lè)

《人月神話》算得上是軟件領(lǐng)域的一本經(jīng)久不衰的經(jīng)典著作了,在開(kāi)頭的第一章便講到了作者對(duì)于程序猿這個(gè)職業(yè)的樂(lè)趣和苦惱的理解。仔細(xì)一想,我進(jìn)入這個(gè)行業(yè)也十年有余了,如果說(shuō)當(dāng)年進(jìn)入這個(gè)領(lǐng)域是因?yàn)閷I(yè)背景的原因,那么到如今這么多年過(guò)去了,我仍然堅(jiān)持著沒(méi)有轉(zhuǎn)行去做其他諸如收租之類的工作,除了無(wú)租可收之外,可能還是因?yàn)閷?duì)這個(gè)行業(yè)發(fā)自內(nèi)心的喜愛(ài)吧。接下來(lái),我也想說(shuō)一說(shuō)作為一個(gè)中年程序猿,我對(duì)這個(gè)職業(yè)樂(lè)趣的一點(diǎn)個(gè)人理解。

首先,編程是一場(chǎng)充滿挑戰(zhàn)的腦力游戲。不同于雕塑,繪畫(huà),音樂(lè)等藝術(shù)創(chuàng)作形式,編程的大多數(shù)最終產(chǎn)品是無(wú)法通過(guò)視覺(jué),觸覺(jué)或者聽(tīng)覺(jué)等感官直接感知到。對(duì)于編程的最終產(chǎn)品,我們往往只能通過(guò)觀察它的輸入輸出來(lái)判斷它是否是我們期望的那個(gè)“樣子”。最終產(chǎn)品尚且如此虛無(wú)縹緲,在此之前的中間產(chǎn)品以及最初的程序設(shè)計(jì)就更加的無(wú)法琢磨了。因此當(dāng)兩個(gè)程序猿面對(duì)面的坐在一起,通過(guò)語(yǔ)言來(lái)溝通對(duì)于接下來(lái)要實(shí)現(xiàn)的這個(gè)產(chǎn)品特性的設(shè)計(jì)方案時(shí),始終會(huì)給我一種兩位棋壇高手下盲棋的既視感。對(duì)于大多數(shù)自視甚高的程序猿來(lái)說(shuō),這種虛無(wú)縹緲的滿足感實(shí)在是妙不可言。

其次,編程是一場(chǎng)“聰明人”之間的對(duì)話。正因?yàn)榫幊痰倪^(guò)程中,很多時(shí)候就像下盲棋一樣的飄渺,對(duì)于參與這場(chǎng)游戲的人的要求,也就格外的高。如果沒(méi)有足夠的想象力,你是很難跟上一個(gè)天馬行空的程序猿跳(雜)躍(亂)的思維的。正因如此,當(dāng)兩個(gè)程序猿能夠通過(guò)簡(jiǎn)短的幾句話便達(dá)成一致時(shí)(當(dāng)然大多數(shù)情況下他倆對(duì)這個(gè)“一致”的理解其實(shí)完全不一樣),那種暢快淋漓會(huì)給人一種終覓知音相見(jiàn)恨晚的感覺(jué)。

第三,編程是一片可以肆意揮灑創(chuàng)意的樂(lè)土。就像同一個(gè)場(chǎng)景不同的作家描述的方式也會(huì)各不相同一樣,同一個(gè)業(yè)務(wù)問(wèn)題,不同的程序猿的實(shí)現(xiàn)方式也是不盡相同的,所以在編程的領(lǐng)域里,只要你愿意,你可以使用多種多樣的方式來(lái)實(shí)現(xiàn)同一個(gè)功能。這種感覺(jué)在批改社招作業(yè)的時(shí)候顯得尤其明顯。社招的題目對(duì)所有人都是一樣的,但是所有人的實(shí)現(xiàn)方式都不一樣(當(dāng)然也遇到過(guò)完全一樣的...)。細(xì)看這些千差萬(wàn)別的解決方案,就會(huì)發(fā)現(xiàn)它們多多少少都會(huì)有令人拍案的閃光點(diǎn)。這種可以按照自己的想法肆意發(fā)揮的地方,難道不是一塊人間樂(lè)土么?

第四,編程是一個(gè)規(guī)則明確的游戲。編程的過(guò)程中,我們經(jīng)常會(huì)遇到程序的表現(xiàn)跟我們的預(yù)期大相徑庭的情況。遇到這種情況,不用懷疑,絕大多數(shù)情況下都是我們的代碼哪里寫得有問(wèn)題,而不是我們使用的編程語(yǔ)言本身有問(wèn)題。這種有規(guī)則可循的游戲會(huì)給人一種安全感,只要我做對(duì)了,結(jié)果肯定是對(duì)的。相比于面對(duì)妻子或女朋友突如其來(lái)的壞脾氣,而自己卻完全摸不著頭腦時(shí)的那種無(wú)助感,編程實(shí)在是讓我覺(jué)得心里踏實(shí)得多,因?yàn)楫吘辜词刮覀儧](méi)有做錯(cuò)什么,她們還是會(huì)生氣。[攤手]

最后,編程真的可以幫助到別人。當(dāng)我們辛苦工作之后編寫出來(lái)的程序真的上線之后,眼看著它幫助到別人解決了他們實(shí)際的問(wèn)題,就像我們?nèi)ワ埖瓿燥?,發(fā)現(xiàn)服務(wù)員提供的點(diǎn)餐系統(tǒng)就是我們自己開(kāi)發(fā)的,就像我們?nèi)C(jī)場(chǎng)值機(jī),發(fā)現(xiàn)機(jī)場(chǎng)的值機(jī)系統(tǒng)就是出自我們之手。不管是將原來(lái)復(fù)雜的手動(dòng)工作變得自動(dòng)化,還是提供了一種前所未有的處理方式降低了業(yè)務(wù)的運(yùn)行成本,那種成就感和獲得感真的讓人欲罷不能。

當(dāng)然,作為程序猿,因?yàn)榫米粍?dòng),我們也會(huì)面臨諸如脫發(fā),發(fā)福,腰椎間盤突出,頸椎病,腱鞘炎,脂肪肝,腎結(jié)石等一系列健康風(fēng)險(xiǎn),但是就像《人月神話》的作者總結(jié)的那樣:

編程的快樂(lè)在于它不僅滿足了我們內(nèi)心深處進(jìn)行創(chuàng)造的渴望,而且還喚醒了每個(gè)人內(nèi)心的情感。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容