文章

顯示從 11月, 2022 起發佈的文章

[CD心得] How To Deal With Unfriendly Technologies -如何應對不友善的技術

圖片
 軟體工程一向都是複雜的, 很多問題都是藏在細節裡面一開始都不會發現, 直到他咬了你讓你感到頭痛 怎麼樣快速的找到不熟悉技術的通關密語或是秘訣,讓整個工作便順利, 這是本篇想要聊的重點 會有幾個徵兆或是信號代表系統或是開發過程可能會出現問題 使用大家都不熟悉的技術 缺乏專注, 團隊成員一開始可能都是以兼職的方式會是side project,並不是非常的在意 時間壓力 解決問題的第一步 : 版本控制 &  可部署性 利用docker 或是容器化技術讓local 和 real  環境跑的程式碼是一樣的, 差別只是要做管理設定配置 (configuration) 使用版本控制可以低風險的嘗試錯誤, 當發現下一步走錯的時候,  可以很簡單的回復成上一個可成的版本 雖然這件事看起來沒有什麼大不了的事...但是他對整體的工作模式有了很大的改變 你不能明智的期待我們會準確預測未來的事 所以了解當下的問題以及做出當下適合的決策很重要 即使這個決策在之後被證實他是錯誤的, 但是我們已經開始在執行且發現錯誤了 等待完美的方法 VS 快速面對失敗且快速學習 但在倡導快速的時候, 我們很常會掉入另一個陷阱裡.... 當我們面對問題的時候,  可能會很快地提出解決方案, 但是我們看到的只是問題的表面 而忽略了我們想要解決的問題是什麼? 導致走的方向偏離原本的目標 你對目標的猜測遠比你所決定採取的步驟更為重要 如何選擇正確的技術? 如果你的技術沒有做正確的事,  有時候他會讓你的工作變得更加困難,  技術選擇問題的時候應該這麼做 先釐清我們想要解決的問題是什麼? 再來尋找有哪些技術可以解決我們所遇到的問題? 這個技術能做到前面提到的版本控制嗎 再思考這些技術所帶來的限制或是缺點是什麼? 是我們可以承受的嗎? Goal over Tech  選擇王牌技術 (Feature of top trumps)可能不會是最好的, 每個問題都不一樣, 適用的技術也不一樣 只有適不適合的技術 Make it work before you change, Make one change at a time 在動手修改配置之前先確定他是可以正確運行的, 有點類似TDD 的概念, 先是綠燈再來重構 且不要隨機的改動配置, 應該要一次一個有系統的方式去調整配置,  在每個改變之前先預測改變的 (Decide

[讀書分享] 為什麼A+ 巨人也會倒下 - 企業為何走向衰敗, 又該如何反敗為勝

圖片
為什麼A+ 巨人會倒下? 這一個十分讓人震驚的標題, 大部人都一味著追求成長, 想要變得更大更好 2008 年金融海嘯之後常常聽到"大到不能倒的公司", 會出現這個詞是因為他們夠大? 還是他們要倒了? 有誰想過再大的巨人終究會倒下呢?  我們常常以為大就會帶來成功, 卻忽略一但超過可以負荷的極限,  再多的成長都會反而會成為負擔 或是組織的文化內涵追不上組織擴張的速度,這樣的組織還是你想像中的樣子?還是會帶來許多問題, 最終走向失敗? 成為第一不難,最難的是怎樣維持第一 可以不用自身經歷過這樣的波折,  怎麼尋找避免衰敗的秘訣 最聰明的人, 就是從別人失敗中學習的人 避免自己及帶著組織走向難以挽回的地步 企業衰敗的五階段 成功之後傲慢自負 不知節制地追求更大更快 輕忽風險, 罔顧危險 病急亂投醫 放棄掙扎, 變得無足輕重最終走向滅亡 所謂成功之後的自負是不重視主要飛輪尚餘的潛能, 或是更糟糕的出於無聊就把注意力放在下一個目標上, 傲慢地以為自己可以自然而然的成功下去, 並開始分心在原本做得很好的本業上面, 導致推動原本飛輪所需要的專注和資源都下降了... 領導人變得不再好學不卷以及不再認為自己很幸運, 反而假定成功完全是因為企業和領導人優越的特質所帶來的 接著就會進入不知節制的第二階段 成功會帶來成長的壓力, 過高的期望值會帶來惡性循環, 沒有生物可以無止盡的不斷生長下去... 只要超過能負荷的極限就會慢慢走向衰忙, 企業也是一樣 組織在不斷長大的過程中, 是否能保有初心, 還保有創業的核心價值? 是否還能達成世界頂尖的水準呢? 以及這些擴大的組織中是否有利於推動公司的經濟引擎呢? 組織是否變得越來越官僚制呢? 在關鍵位置上對的人的比例是否正在快入減少? 這些東西我們在組織成長的過程中要去不斷思考的問題 承擔看不見得風險 不是沒有風險, 只是我們看不到... 你會選擇在沒有經歷過的低溫環境發生太空梭? 你怎麼選? 你能不能證明發射太空梭很安全? 你能不能證明發射太空梭不安全? 吃水線原則 假設你在一艘船上,  只要做錯任何事, 船身就會撞出一個洞來, 如果洞的位置在水面上方的話,  你可以很容易的補起來, 從錯誤中得到教訓, 但如果撞出來的洞在水面上, 你必須要花很大很大的工夫才能把洞補起來, 同時間還要承擔船不斷在下沉的壓力, 所以我們要盡可能