選擇無聊的技術
選擇無聊的技術
2015-03-30 Dan McKinley :: Choose Boring Technology
Dan McKinley
人的注意力很珍貴,處理細節的能力有限
存在已久的軟體通常比剛出爐的更不需要心力照顧
知識的缺乏
已知的未知
不知之不知
無聊的技術
已經充分了解的事物,你知道爛在哪,能明確指出會失望的地方
總成本=Σ(維護成本)-Σ(開發效率提昇)
真實世界總是維護成本主導
如果我們要解決這個問題而不用新技術,要怎麼做?
新東西不會更好,只是你還沒有熟悉它所有糟糕的地方
無聊的技術是「成熟」的,而非「陳舊」的
2025-02-11 Rubenerd: Boring tech is mature, not old
無聊的反面是驚喜
而這是系統管理員在建構、維護、擴展、疑難排解、升級,甚至替換複雜系統時最不想遇到的東西
無聊的技術可預測
不太會遇到奇怪的邊緣情境、無法預測的行為
技術通常不會獨立運作,必須與其他元件和系統互動
如果全部考慮在內,最終會讓大腦爆炸、意外機率倍增
無聊的技術更實用
做決策時需要有足夠的資訊
可靠比新潮更重要、實用
錯誤假設
「存在很久的技術」不完全等於「無聊的技術」
例如Oracle極端複雜、難以維護,它並不無聊,而是可怕
「普及」不必然等於「無聊」
例如BSD作業系統是無聊(成熟、可靠)的,但相較Linux並不普及
「可理解」等於「無聊」
但當維護者流失,這種理解也會突然消失
例如COBOL系統出問題,而沒人會修,那就不無聊,而是災難了
無聊的技術是「成熟」的,而非「陳舊」的
不只指軟體本身的成熟度,還有文件、社群支持、維護歷史等等
年齡有時可做為成熟度的指標,但仍然是兩回事
2025-06-03 Boredom Over Beauty: Why Code Quality is Code Security