有一種境界叫感覺

來源:互聯網
上載者:User
有一種境界叫感覺

吳旻

泰岩網路工作室

 

同事找我討論事情,是關於對生產線上的資料流進行壓縮,以期節省專線頻寬,從而降低公司運營費用。我很快出具了否定性意見,同事說:你連試都沒試,怎麼知道不行?

我的回覆其實就兩個字:感覺。

這裡我暫不解釋原因,先說一說什麼是感覺。

 

我生長在農村,小時候偶爾會被母親“動員”到田裡幹活。比如說,早上六點到田裡,大約要幹到十點半才回家。在這個過程中,我們沒有鐘錶,對時間掌握,全來自於我的那句問話:媽,現在幾點了?

母親或者報個時間給我,或者說回家吧。一般到家的時間,都在10:25~10:45之間。我很奇怪為什麼母親就知道是幾點呢?母親的回答是:我必須知道是幾點!

母親在生產隊時代是婦女隊長,是每天帶著大媽、大嬸、姐姐、妹妹、侄女們下田幹活的人,那時候大家都窮,買不起手錶,於是隊長必須在沒有計時工具的情況下知道時間,不管晴天白日,還是陰天下雨。

這種下田幹活的經曆多了,很快我也能估計出大致時間了。比如我會問母親,到十點半了嗎?母親基本都回答:回家吧。這種感覺多年未變,導致我現在從一個地方出發時如果沒帶計時工具,那我也會基本清楚大致時刻,從而不會遲到或者晚點。

         母親有一種感覺是我所學不來的。母親過了中年以後,會對天氣有感覺。他會對我說,兒子,收東西,要變天了。其實當時天空特晴朗,但我還是得聽她的。母親的手受過傷,一要變天,就會發木,比天氣預報還准。

         我小時候會和兄弟姐妹們玩一種類似賭博的遊戲,就是隨機抽取兩張撲克牌,猜中點數大者贏。我當時能通過手掌在兩張牌上晃過而知道哪張牌大,不是100%准,但至少會有80%是準的,這導致我玩這種遊戲從來沒輸過,到後來,他們乾脆規定不許我用手來測試。我到現在也不能解釋其中的原因,但那確實是一種感覺。

 

         搞藝術的人其實更是強調感覺。作家要對語言有感覺,能體會出相同的詞不同的組合所表達出的細微差別;畫家要對顏色和光線有感覺,能體會出其中的感情所在;音樂家要對聲音有感覺,能體會出歡樂與悲傷。

         軟體開發要求程式員對代碼和架構有感覺,感覺到其中的美與醜,自由與拘束,放鬆與緊張,安全與危險。對同樣的代碼或者架構,處於不同的環境,也能感覺到其中的不同,就像紅色既能表達喜慶,也能表達緊張與危險一樣。

 

         回過頭來,我解釋一下我為什麼會否定同事的意見。

         XP開發中常會用到一個詞,叫“壞味道”。

同事的意見給我的第一感覺就是“壞味道”。它會使整個架構複雜度大大提升,而效果卻未必有預期中的好。比如:

1、我們的程式對即時性要求非常高,壓縮後傳輸,接收後解壓,會導致一定的延時。

2、我們的程式大量是小包的流資料,以一個包為單位壓縮只會增大流量,若干個包組合後壓縮,要麼引入高複雜度的演算法,要麼產生延時,或者二者同時兼備。

3、就算是能將資料壓縮到原來的50%,那節省的這一半頻寬,到底能省出多少錢?我們大量的客戶群依賴的就是這條專線的暢通,如果有一天我們的通訊量增一倍,又該如何處理?

4、我們有很多的使用者體驗很差的功能,這個才是我們眼下需要著急解決的;相對於客戶流失的危險,眼下每個月多在頻寬上花上一兩萬都是很值的。

 

其實降低流量還有一個可以做的事情,就是最佳化或者過濾掉某些冗餘資料包,而不一定是壓縮。或者說,壓縮資料流在通常情況下是好主意,但對於即時性要求高的系統,就不一定了。

 

軟體開發人員對代碼和架構的感覺,就應該像廚師對嗅覺和味覺的感覺一樣,不僅要有,而且要准!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.