重點摘要#

  • 每位架構師都有自己偏好的技術武器庫,這些是經過實戰驗證的工具
  • 不要急於丟棄已驗證的技術去追逐新潮流,但也不要固步自封
  • 新技術的效益必須是飛躍性的進步才值得承擔風險
  • 等待技術度過炒作期,確認其穩定性後再採用
  • 選擇技術時要考慮業務價值,而非技術上的新鮮感

詳細內容#

身為資深的軟體架構師,每個人都有一套經過反覆驗證的技術工具。這些技術之所以成為首選,是因為它們在激烈的競爭中脫穎而出。然而,新技術不斷湧現,威脅著這些既有選擇的地位。

不要太快放棄你已驗證的工具。將它們換成未經類似考驗的替代方案是一項高風險的賭注。

保持關注但謹慎行動#

技術被列入偏好清單並不代表可以永遠不變。每項技術終有被取代的時候,架構師需要跟上產業趨勢。但關鍵是:

  • 不需要成為第一個擁抱新興技術的人
  • 率先採用新技術通常沒有巨大優勢,反而有不少缺點
  • 新技術的好處必須是質的飛躍,才值得承擔引入的風險

新技術的隱藏成本#

  • 使用熟悉技術時,你清楚其各種陷阱和成本
  • 新技術的問題是未知的未知,會嚴重破壞你的估算
  • 不要以為新技術沒有自己獨特的問題集

考量未來相關性#

  • 優秀的技術不一定能勝出,試圖提前預測贏家是一場豪賭
  • 等待炒作消退,看技術是否能穩定在有用的領域
  • 不要為了一個沒有未來的技術危害你的專案

謹慎選擇你的技術武器,不情願地放棄它們。讓過去的成功經驗幫助確保未來的成功,謹慎地演進你的技術棧。

— By Chad LaVigne