首頁(yè) 都市

創(chuàng )客茶社

第八十六章 一根筋的程序員

創(chuàng )客茶社 鯤霸 3065 2019-11-26 21:55:17

  這天,戚斌暄正在店里備課,一個(gè)送外賣(mài)的來(lái)給茶客送餐。戚斌暄抬頭瞄了一眼,然后接著(zhù)準備備課,忽然,他感覺(jué)那個(gè)送外賣(mài)的很眼熟,再仔細看看,原來(lái)是自己的發(fā)小,孫沐,外號孫木頭。

  戚斌暄喊了聲:“孫木頭?!蹦侨宿D過(guò)頭來(lái),看來(lái)也認出了戚斌暄,尷尬地笑笑,說(shuō)的:“原來(lái)是斌暄啊,你不是當兵去了嗎?在這干嘛?!?p>  “退伍了唄,幫我爸看店。我聽(tīng)說(shuō)你是程序員啊,怎么送外賣(mài)了?”

  “哎,一言難盡啊?!睂O木頭嘆了口氣,有著(zhù)深深的無(wú)奈。

  戚斌暄問(wèn)他有空沒(méi),好久不見(jiàn),有空就坐下來(lái)聊聊。

  孫沐看看手機,說(shuō)道:“單子都送完了,行啊,好久不見(jiàn),咱們聊聊?!?p>  孫沐坐下來(lái),接過(guò)戚斌暄遞過(guò)來(lái)的茶水問(wèn)道:“你這腿怎么了?”

  “當兵時(shí)受傷了,不過(guò)不礙事,基本上痊愈了,拄著(zhù)拐走路沒(méi)問(wèn)題?!比缓笃荼箨寻腴_(kāi)玩笑的問(wèn):“現在送外賣(mài)比程序員掙錢(qián)嗎,你怎么改行了?!?p>  孫沐開(kāi)始倒苦水:“哎,工作不容易啊。我一開(kāi)始在一家私人公司干活,雖然加班,卻也沒(méi)啥。咱就是干的這活,但是連著(zhù)三個(gè)月不發(fā)工資就不像話(huà)了。于是一怒之下,我們幾個(gè)干活的聯(lián)合起來(lái)把老板告了。雖然大理寺判贏(yíng)了,但是老板也把我們開(kāi)除了?!?p>  這不廢話(huà)嗎,你們將老板告了,能再用你們才怪呢。

  戚斌暄又問(wèn):“那之后你也可以接著(zhù)去別的地方干啊,干嘛改行呢?”

  孫沐接著(zhù)說(shuō)道:“之后,我就去了一家小型開(kāi)發(fā)加密狗的軟件公司。我參與開(kāi)發(fā)的是一個(gè)市政道路的排水軟件。工作期間,我發(fā)現了這款軟件有一個(gè)程序上的問(wèn)題。對了,你對程序了解嗎?”

  戚斌暄眼睛斜著(zhù)向上望了望天,思考了幾秒,然后說(shuō)道:“了解的不多。我聽(tīng)說(shuō)程序一般比較死板,嚴格按照代碼規定辦事。比方說(shuō)有個(gè)程序員老婆給他說(shuō),你去上街買(mǎi)幾斤蘋(píng)果,要是看見(jiàn)西瓜,就買(mǎi)一個(gè)。然后程序員買(mǎi)水果回來(lái),只帶了一個(gè)蘋(píng)果。因為按照代碼規定,‘看見(jiàn)西瓜’就相當于條件代碼,‘買(mǎi)一個(gè)’就成了改變‘買(mǎi)幾斤水果’的執行代碼了,所以就應該‘買(mǎi)一個(gè)蘋(píng)果’了?!?p>  孫沐聽(tīng)后會(huì )心地笑了起來(lái),最開(kāi)始被熟人認出來(lái)的尷尬也逐漸淡去,接著(zhù)說(shuō)道:“這個(gè)是老段子了。不過(guò)這個(gè)段子有個(gè)致命的bug,恩,也就是缺陷?!?p>  “哈哈,這個(gè)我還是能聽(tīng)懂的。不過(guò)缺陷在哪?”

  “這個(gè)說(shuō)的是程序員老婆給他說(shuō)的,這怎么可能???程序員怎么會(huì )有老婆呢?”

  戚斌暄也是哈哈大笑起來(lái):“你還是這么喜歡自嘲?!?p>  “這可不是自嘲,這是自黑?!睂O沐也笑著(zhù)說(shuō)道:“程序員是所有行業(yè)中最喜歡黑自己的,當年我大宋朝第一土豪程序員就狠狠的黑了一把自己。記得是有個(gè)非常著(zhù)名的報紙報道了一個(gè)專(zhuān)題,名字叫《屌絲:一個(gè)字頭的誕生》。然后第一土豪史大程序員就立馬搶注屌絲網(wǎng)游商標,那是一個(gè)他的頭像,旁邊寫(xiě)著(zhù)‘我為屌絲代言’?!?p>  “哈哈,有意思。不過(guò)你有點(diǎn)跑題了,你剛才說(shuō)的排水軟件怎么了?”

  “偶,跟這個(gè)也有點(diǎn)相關(guān),不算跑題?!睂O沐笑道,接著(zhù)解釋?zhuān)骸皬膭偛艃扇齻€(gè)笑話(huà)你應該能夠看出我們程序員的一些特點(diǎn),就是過(guò)謙。知道什么叫做過(guò)謙嗎?就是過(guò)了頭的謙虛。意思是程序員除了對自己技術(shù)的態(tài)度是自傲的,對其他一切都是過(guò)謙的。但是這個(gè)謙虛不是重點(diǎn),重點(diǎn)是對自己技術(shù)的自傲。專(zhuān)業(yè)領(lǐng)域,就是我的地盤(pán)!”

  孫沐說(shuō)這話(huà)的時(shí)候,自帶著(zhù)一股傲氣,喝了一口茶,接著(zhù)說(shuō)道:“我在研究那個(gè)排水軟件的時(shí)候,發(fā)現了一個(gè)bug,會(huì )導致排水管線(xiàn)高程控制不合理。排水管線(xiàn)你懂嗎?就是城市管網(wǎng)的排水系統。這個(gè)排水管布置有三個(gè)前提。一是要遵循水流是從高往低流的客觀(guān)規律,也就是管道進(jìn)口高,出口低;二是要大于一定的坡度,保障水流通暢,有一定的流速;三是管道和路面要有一定的覆土,也就是覆蓋土的厚度,保障管道不會(huì )被過(guò)往車(chē)輛等損壞。恩,我說(shuō)的這些你懂嗎?”

  孫沐又問(wèn)了一遍,畢竟這些知識點(diǎn)的前提都不懂,自己之后的解釋肯定也不懂了,那也沒(méi)啥意思不是。

  “懂啊,基本的邏輯前提嗎。再說(shuō)了,咱是土木專(zhuān)業(yè)的,算是半個(gè)老本行了?!?p>  “那好,接下來(lái)給你解釋你就明白了。首先,按照第二條要求,要保障管道大于千分之一的最低坡度,也就是布置一千米最少高程要下降一米;按照第三條要求,要保證覆土,也就是土層必須大于六十公分。所以這兩個(gè)條件結合起來(lái),那個(gè)軟件的代碼就規定了,當道路坡度大于千分之一的時(shí)候,管道坡度等于道路坡度;當道路坡度小于千分之一,甚至是反坡,反坡就是坡度向上走的路,這種時(shí)候,管道坡度就取千分之一。這個(gè)規定你感覺(jué)有毛病嗎?”

  戚斌暄想了想,說(shuō)道:“應該沒(méi)啥毛病吧?”

  孫沐正色地說(shuō)道:“不,毛病大了去了。編制程序是嚴謹的,必須考慮多種情況,還需要結合運行的反饋修改修正。排水管線(xiàn)的布置,需要考慮的實(shí)際情況有很多,怎么能夠只根據這兩條就去設置呢?比方說(shuō)我就找到了一個(gè)不合理的情況。你看,假設排水管線(xiàn)從起點(diǎn)到終點(diǎn)的布置,總長(cháng)兩千米平均分為兩段,一段一千米。起點(diǎn)到一千米處,設置反坡,道路升了一米。這時(shí)候就要求管線(xiàn)按照降一米的最小坡度計算,也就是說(shuō),起點(diǎn)管線(xiàn)覆土六十公分,到一千米處覆土一點(diǎn)六米。沒(méi)錯吧?”

  戚斌暄腦中回想了下大概圖形,就是近似大于號的兩條線(xiàn),上邊的是道路,下邊的是排水管,然后對照要求,說(shuō)道:“沒(méi)錯?!?p>  “好,那從一千米到兩千米處,道路坡度變成了下降兩米,大于最小坡度,所以按照代碼規定,管道坡度等于道路坡度,也就是一千米下降兩米,這個(gè)沒(méi)問(wèn)題吧?”

  戚斌暄腦中浮現出了兩個(gè)平行線(xiàn),方向向右下,然后回到:“應該也沒(méi)問(wèn)題吧?”

  孫木頭這時(shí)候笑著(zhù)說(shuō)道:“不,有問(wèn)題。雖然按照代碼的規則是對的,也能滿(mǎn)足排水管布置的三個(gè)前提。但是,這不切合實(shí)際。你看,最開(kāi)始覆土零點(diǎn)六米,中間段覆土變成了二點(diǎn)六米,后半段因為管線(xiàn)和道路坡度一致,都是二點(diǎn)六米。沒(méi)錯吧?”

  “沒(méi)錯?!?p>  “好,假如我把后半段,管線(xiàn)坡度改為千分之一,這樣,一千米降一米,結合道路是一千米降兩米,終點(diǎn)覆土就變成了一點(diǎn)六米。照樣符合排水管布置的三個(gè)前提。沒(méi)錯吧?所以說(shuō),那個(gè)代碼有bug,存在缺陷?!?p>  “等等?!逼荼箨呀型?,縷了下思路,又拿出一張紙劃拉了幾下,然后說(shuō)道:“恩,你說(shuō)的沒(méi)錯,這種情況確實(shí)存在。但是那也只能說(shuō)明你那個(gè)情況是更加優(yōu)化的選擇吧。不能說(shuō)原代碼存在缺陷吧?”

  “不,這中間差別很大啊?!睂O沐接著(zhù)解釋道:“你看,終點(diǎn)的覆土多了一米,說(shuō)明了管道布置就深了一米。這個(gè)你能明白吧?然后呢,就費工費料費錢(qián),增加了投入。一千米顯不出來(lái),但是城市管網(wǎng)可不止一千米,一千米之后的布置都要累計加上這挖深的一米,那浪費的可就是天文數字了?!?p>  “嘶——”戚斌暄這才明白問(wèn)題出在哪里:“果然,一個(gè)bug,能損失這么多錢(qián)啊?!?p>  孫沐嘆道:“是啊,但是不僅如此,浪費錢(qián)是一個(gè)方面,還有就是可能導致管線(xiàn)布置不下去,造成方案失敗?!?p>  “這倒不至于吧?”戚斌暄疑惑地問(wèn)道:“按照原來(lái)的代碼,不是也能正常排水嗎?”

  孫沐說(shuō)道:“那就要結合出水口考慮了。出水口一般設置在河道,讓雨水順著(zhù)河道就流走了。但是呢,河道可是有高度的。比方說(shuō)比路面低三米,但是按照那個(gè)代碼,出水口成了低五米,那怎么流?反而成河水倒灌了。所以他那個(gè)很不合理?!?p>  “這么一說(shuō)我就明白了。那看來(lái)你發(fā)現的這個(gè)缺陷很重要啊。你提出來(lái)肯定能夠獲得領(lǐng)導重視的?!?p>  孫沐這時(shí)候耷拉著(zhù)腦袋,說(shuō)道:“不,我被開(kāi)除了?!?p>  “啥?”戚斌暄問(wèn)道:“為什么???”

  “我當時(shí)跟組長(cháng)反映,然后組長(cháng)說(shuō)這個(gè)代碼邏輯嚴謹,沒(méi)問(wèn)題。我跟他據理力爭,解釋畫(huà)圖,怎么都說(shuō)服不了他。最后他也急了,說(shuō)我技術(shù)不行,還一根筋,不接受領(lǐng)導的正確建議,然后跟上級反映,把我開(kāi)除了?!?p>  “怎么這樣???”戚斌暄疑惑道:“不合理呀?!?p>  “后來(lái)我同事私下里跟我說(shuō),那個(gè)代碼是組長(cháng)編的,還深受領(lǐng)導好評。我那是挖人家根基呢。哼,一個(gè)明明發(fā)現錯誤,但是卻死不悔改的程序員,不是個(gè)真正的程序員?!?

鯤霸

本章中軟件的例子現實(shí)中確實(shí)存在,作者寫(xiě)的也很用心,經(jīng)過(guò)反復推敲,盡量介紹的簡(jiǎn)單易懂、專(zhuān)業(yè)性不那么強,讓讀者能夠一目了然。略有燒腦,見(jiàn)諒勿怪。

按 “鍵盤(pán)左鍵←” 返回上一章  按 “鍵盤(pán)右鍵→” 進(jìn)入下一章  按 “空格鍵” 向下滾動(dòng)
目錄
目錄
設置
設置
書(shū)架
加入書(shū)架
書(shū)頁(yè)
返回書(shū)頁(yè)
指南
日本欧洲亚洲大胆色噜噜_1769国产精品视频_免费国产黄线在线观看播放器_亚洲综合区小说区激情区