1. 程式人生 > >問題倒逼改革

問題倒逼改革

眾多的改變總是靠著壓死駱駝的最後一根稻草來推動完成的,所謂鳳凰涅槃、浴火重生。

起因

上週去了一趟惠州(於是就偷懶少寫了一篇文章),欣賞了一波惠州西湖,與大學三個室友小聚了一番,沒有聊太多工作上的事情,舊友聚會嘛,不應該有太多工作上面的事情來摻和,我自己也嘗試著去保持那最純淨的大學生之間的那種友誼關係。

中轉廣州的時候,廣州人是真的多呀,不知道是隻有周末這麼多還是平時就是這麼多,話說不知道怎麼回事,我雖然早前的時候沒有去過廣州,但是對廣州的印象卻是不怎麼好,不知道是城市宣傳的原因還是什麼!這波廣州去了下,感覺確實跟自己固有的印象差不多,就這麼扯,不好的印象來得莫名其妙,這讓我想起東野的《惡意》,雖然我並沒有惡意。

扯回正題,去惠州玩兒也是為了緩解下工作的壓力,順便拜會同學加散散心。自從忙過前一段時間之後,最近又漸漸有一種強烈的愧疚感,感覺自己每天的進步越來越少,前進的動力也有所不足,“溫水煮青蛙”的感覺也在與日俱增,學習也不能使我快樂了。於是突然有了一種想法,難道不是很多事情都是在隨著問題的不斷曝現之下才逐漸向好,所謂:「問題倒逼改革」。

難得的主動改變

主動改變說到底是個成本問題,比如在一個地方已經安定下來了,雖然可能月工資就那麼點兒,但是在這裡,我有已經建立了朋友關係的諸多同事,有欣賞我的上司,有一個安定的住處。如果說要改變的話看起來好像也不應該是現在,或許是等家人不斷催著你結婚,與此同時伴隨著買房的壓力,那時會發現目前的狀況根本不足以支付預期的生活,於是就會渴望改變,希望能夠投入精力去構建一個新的環境。

主動改變會有一個矛盾點,如果這次成了,那自然是沒有問題,但是如果沒成呢?那是不是還不如不變,有了這麼一個風險深淵在凝望著我,我也不願意主動去做這樣的嘗試。等到局面已經到了不得不改變的境地:不這樣就要涼了。於是我的處境就會變成:如果我不改變,那肯定就完蛋,如果變了還有可能成功。那我肯定就沒糾結了,只能幹了。

比如產品想要換一個新的架構,它會有下面幾個問題:

  • 新的架構需要投入巨大的人力去開發,需要人力成本、時間成本。
  • 新的架構剛剛完成的時候肯定不穩定,需要承受來自客戶的質疑(請收起新架構搞出來就能穩如狗這種大膽的想法)。
  • 新的架構能否完成預期的設想?開發到一半發現成本與收益不匹配,剎不住車開溝裡怎麼辦?就算是提前做了非常詳細的預研與分析,這種風險還是存在的。
  • 新的架構帶來的適應期,開發者需要適應、維護者也需要適應,有些情況下,終端客戶、消費者也需要適應,說不定還會給架構設計者的家人帶去關切的問候。

這麼一看,光想想這麼多問題就愁 skr 人,我還折騰個啥,原來的能用就行了,等到扛不住了再去搞新架構吧,兵來將擋、水來土掩,啥事兒沒有就睡大覺。

另一個角度就是「懶癌爆發」。一個事情已經趨於穩定了,我是不太願意再去重複折騰的,想想有那麼多亟待解決的事情就覺得麻煩,為什麼不保持現狀呢,何必要自找麻煩。懶得花費時間去搬一個新的地方;懶得學習一個新的技術;懶得維護一段新的友誼等等。

事與願違

古時候連發機槍剛剛被造出來的時候,精度還不如弓弩,易用性極差,沒有人想要去用它,這也是新生事物出現之後第一個要面臨的囧境,有很多時候都是如此。

WIN10 系統剛剛出來的時候,微軟或強或軟地推廣過這個系統,為什麼不順著 WIN7、WIN8 的思路搞呢?偏偏要再搞出來一個妄想一統江湖的 WIN10,初期的推廣也確實費了一番功夫,並且很多人覺得這玩意兒真不如前任好用,雖然他們最終都會說出「真香」這句話。

  • 重構一個程式碼或者系統的心理變化
    這個系統看起來太 Shit 了,我需要重構一番;瀏覽了一下程式碼,構思了幾天,發現還行,要改的東西也不是非常多;開始動手了,今天先改一部分簡單的;幾天後,這個看起來好像不是想象中的那麼簡單哦,他看起來好像是個磚頭,但它實際上是一部諾基亞啊;好了,費了好大的力氣,終於重構完了,開始執行,發現某個功能不正常,改之,發現另一個功能也不太正常,改之;終於改完了,功能也差不多了,重新審視了下自己的“傑作”,但是,它怎麼感覺跟逝去的“前任”那麼像呢!結論,白改了,改半天又改回去了。

改革是需要面臨很大風險的,奧卡姆告誡我們:「如無必要,勿增實體」。也可以說:如無必要,別瞎JB搞了。往往是,改革之後你還真的沒法準確判斷他是不是比以前好用,一夜重回大清也不是不可能。尤其是一個大的系統架構更是如此,改著改著會發現露出地面的一顆小樹苗實際上根鬚遍佈整個大陸。

重新看待一些事物

知道了「問題倒逼改革」這一點,會發現有很多事情原來不是很能理解的,現在好像看起來是有其合理性啊。

  1. 公司裡面總會有一些老舊的技術存在。不是公司垃圾,而是這玩意兒就沒有更新的動力,換句話說,它還沒有到問題多到解決不了的地步。
  2. 作業系統總會有那麼一些 bug、不好用的地方,消費者怨聲載道,然後才有持續不斷的改進。
  3. 往大了說,社會層面的,我們會經常抱怨某些不公正的現象、流程,不是因為人為故意導致的這些問題,而是這些問題本來就存在,但是需要在大家不斷的抱怨聲中才能促進改革。想想手機作業系統的 bug 都解不完,更別說放在國家層面的 bug 了,那隻會更加複雜,更加難以根絕,只能與時俱進。
  4. 失去了才覺得珍惜,未嘗不是問題倒逼改革的一種,“失去”便是一個「問題」,一個難以忍受的「問題」,於是才促進“珍惜”的產生,這就是「改革」了。

老大也說過:“改革是由問題的倒逼而產生”。從這個角度去看待一些問題就能夠找到一些解決辦法,比如如何促進去重建一個新的秩序,那就是讓舊的秩序不斷暴露出問題,可以人為加速問題的暴露,等到原有的秩序已經完全無法解決這些問題的時候,便是新秩序產生的起點。

從個人的角度來講,如何促進自己的不斷進步、不斷升級、不斷改革呢?也可以從「問題倒逼改革」來入手。我經常會陷入區域性困境,就是我很容易陷入一種讓自己的生活處於不好不壞的狀態,一旦有壞的趨勢,就立刻改善,一旦有好的趨勢,就觸發我的惰性,進而不去繼續改進。

我也會經常性的選擇忽視自己的問題,比如技術,我是不太願意去真真正正地找一個機會全面檢視一遍;比如體檢,除非公司組織,自己也懶得去定期做一個全面的檢查,雖然明知它們肯定或多或少會有一些問題,但是畢竟問題還沒有到不可控制的地步,於是就選擇性忽視。

把自己放在聚光燈下,比如檢視技術,就可以做一個主題分享,邀請別的部門的人過來旁聽(歡迎來懟),這時就會發現自己原來還有那麼多地方沒有涉獵。定期做一些其它公司的面試,不管是真的想換工作還是僅僅檢閱自己的水平,都可以以一年為週期或者更短時間來積極參與一些更高規格公司的面試,被面試官懟過才能發現自己的不足。

End

倘若有人在沒有問題或者問題還可以穩住的情況下依然選擇去不斷改革,那就是探索了。比如太空探索計劃、哥倫布發現新大陸、第一個輪子的製作。由於人本身的原因,就顯得這些探索顯得十分難能可貴。工作當中也是如此,「瞎折騰」就是十分珍貴的東西,它意味著沒有明確的回報,意味著巨大的時間、人力成本(很多公司的現實條件是不允許的),但是有瞎折騰也會產生更屌的新生事物。

不過對於很多公司來講,僅解決自己生存的問題就很困難了,更別說去探索了,好像這些事情 Google 來做才是正常的,他們才有充足的人力、物力、時間來做一些看似毫無卵用的探索型專案上。說到這裡,我還是很想提一嘴小米,從一代目開始,小米就一直在做探索,在 mix 時為我等廣大吃瓜群眾所熟知,雖然他們並不缺錢,於是這種探索精神就更加是十分讓我佩服的一面。然後我相信一定有一部分小米的原因,倒逼了 OV 也開始做出一些改變,OV 從頭到尾就沒缺過錢,但是之前給人的感覺一直是根本就沒想把一個產品做好,反正能收割智商稅就可以了(雖然現在大差不差),但是總歸是作出了一些改變,有了這些改變,手機市場才會不斷前進,做出更加感動人心的作品。

至於我,想來應該是需要時不時把自己拿出來“羞辱”一番,而後就能發現問題,並持續不斷地改進。光靠我自己的自覺性,我有十足的把握,我無法做到面面俱到,持續進步。當我真的想優化自己的時候,不要聽別人怎麼誇我的,而要聽別人是怎麼懟我的。


想做的事情就去做吧