選擇無聊的技術
原文作者:Dan McKinley
中文演講版本:https://boringtechnology.club/index_zh_TW.html
英文原文:https://mcfunley.com/choose-boring-technology
摘要:
我提這個故事是想說你應該偏好成熟的東西,然後盡量不要用太多東西。
但這不是一個絕對的原則。顯然有時加新技術到你的 Stack 是合理的,甚至有時用又新又怪的東西也可能是合理的。
以大局來思考技術選擇,解決整個問題領域的工具越少越好。
徹底掌握你所選擇的工具很重要。
新東西不會更好,只是你還沒有熟悉它所有糟糕的地方而已。
軟體工程的殘酷悖論是你可能該用你最討厭的工具。因為你會恨它是來自於你最了解它。
你應該嘗試爬到馬斯洛需求層次上面,煩惱整體大方向。不應該工作時天天在戰該用哪個資料庫。如果你真的天天在戰,試著想想是不是有什麼地方已經走偏了。
快樂來自於推出產品、功能。
---
以下是我的感想:
無意間看到這篇的中文翻譯版,看完後反思自己寫程式做產品的一些歷程,我覺得做軟體開發的人好像都會有個「想用新技術」的毛病。
很多時候新技術確實可以改善開發品質,不管是撰寫程式的複雜度降低、維護變得更容易、寫出更不會出錯的程式碼、測試部署更有效率等等,但這些其實是針對「開發者」本身。
在我讀了許多商業書籍後有天才弄懂一件事,消費者要的是「產品」,它根本不管你用了多先進的技術來打造產品,這就像是我們根本不管一支手機用了多先進的技術打造的,如果我用起來不好用,根本就不會買單。
在我弄懂「產品」才是重點後,我選技術只有幾個重點:
- 夠簡單:
以文件來衡量,文件越多表示學起來或用起來越複雜,日後維護成本就會增加,也可能找不到人接續。 - 夠成熟:
除非有特別原因,否則不要用新到還沒什麼人用的技術,有可能在它成熟之前就消失了,到時候又要找替代品,浪費時間成本。 - 技術架構越少越好,找符合自己產品的技術就好:
記得 NoSQL 剛出來的時候,也以為關聯式資料庫會被取代,要來學一下,結果我到現在也還沒真正用過這類技術,不是它好不好的問題,而是以我自己的需求來說根本不需要,甚至有個我寫給自己用來管理資料的網站,只用個簡單的 SQLite 就解決了,跑好幾年了都沒問題。
把重心放在「產品」上,使用者、消費者、客戶要的是產品。
本文網址:https://blog.tonycube.com/2023/04/about-choose-boring-technology.html
由 Tony Blog 撰寫,請勿全文複製,轉載時請註明出處及連結,謝謝 😀
由 Tony Blog 撰寫,請勿全文複製,轉載時請註明出處及連結,謝謝 😀
我要留言
留言小提醒:
1.回覆時間通常在晚上,如果太忙可能要等幾天。
2.請先瀏覽一下其他人的留言,也許有人問過同樣的問題。
3.程式碼請先將它編碼後再貼上。(線上編碼:http://bit.ly/1DL6yog)
4.文字請加上標點符號及斷行,難以閱讀者恕難回覆。
5.感謝您的留言,您的問題也可能幫助到其他有相同問題的人。