🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付

每隔幾年,科技界似乎就會重提同樣的爭論:Java vs C#、Python vs JavaScript、後端 vs 前端。這些爭論會出現在部落格文章、會議演講、留言區,有時甚至會在工程團隊內部悄悄上演。

當有人提到不同的堆疊時,往往會露出一絲不易察覺的微笑。這是一種心照不宣的觀念,認為某種選擇能體現智力、經驗或優越感。

隨著時間的推移,我開始質疑這場所謂的語言戰爭是否真的存在,或者它只是我們出於習慣和自尊而延續下來的東西。

我們很少承認的那些悄無聲息的競爭

說實話,這些競爭確實存在。 C# 和 Java 開發者之間,以及 Python 和 JavaScript 開發者之間,都能感受到這種競爭。有時,這種競爭是玩笑式的,無傷大雅,源自於網梗或社區文化。但有時,它也會演變成人身攻擊。

當這種情況發生時,對話不再是關於權衡取捨或解決問題,而是關於身分認同。當一種語言不再是工具而成為一種徽章時,比較就不可避免了。這種比較不是對解決方案的比較,而是對人的比較。

最近一次經驗讓我思考

我當時在一個由精通 C# 的領導者領導的團隊工作,而我的背景主要是 Java 和 Golang。從一開始,團隊內部就存在著一種與交付或能力無關的緊張關係。工作確實完成了,預期目標也達成了,但審視卻從未間斷。

我因為一些非常細微的事情屢屢被挑剔。格式選擇、細微的風格偏好、略有不同的方法(儘管這些方法同樣有效且正確)。這些回饋很少讓人感覺像是指導,反而像是對瑣碎細節的騷擾,彷彿挑毛病是為了獲得優越感。

真正令人震驚的並非回饋本身,而是背後的意圖。這感覺不像是為了改進程式碼庫,而是為了憑藉對語言的熟悉程度來確立自己的優勢。

那一刻我意識到,這件事與 Java、Golang 或 C# 幾乎沒有任何關係。這關乎有人將自己的價值觀念與某種特定的語言連結起來。

當一種語言成為你身分認同的一部分

問題就出在這裡。當開發者把某種語言當作身分認同而非媒介時,任何替代方案都會被視為挑戰。技術討論逐漸演變成情緒化的爭論。好奇心被防衛心理取代。學習變成了排外。

與其探究為何選擇某種特定方法,不如將重點放在證明某個技術棧天生優於其他技術棧。這種思維模式並不能建構更優秀的系統,只會造就脆弱的團隊。

基本功比文法更重要

事實上,基礎知識遠比任何程式語言都重要。資料結構、演算法、系統設計、網路基礎、並發性、記憶體管理和除錯技能並不屬於任何單一的生態系統。

能夠權衡利弊、批判性地閱讀文件,並編寫出幾個月後其他人也能理解的程式碼,這些能力定義了優秀的工程師。這些技能比框架、趨勢甚至整個程式語言更持久。

在當今世界,工程師需要不斷適應變化。新的語言和工具層出不窮。語言只是表達思想的方式。如果基礎紮實,切換語言雖然會讓人感到不適,但並不構成威脅。

語言真的很重要嗎?

是的,這在實際應用中至關重要。生態系成熟度、工具、效能特徵和團隊環境都會產生影響。選擇程式語言本身就是一個架構決策。

但用語言選擇來衡量智力或工程深度毫無意義。那不是自信或專業,而是不安全感。

優秀的工程師尊重限制和背景,而能力較弱的工程師則會隨意改變自己的偏好。

為什麼語言戰爭感覺毫無意義

大多數現實世界的問題並不關心是用什麼語言解決的。用戶不關心。企業不關心。生產事故更不關心。它們只關心系統是否能正常運作、是否可擴展,以及下一個接手的人能否維護它。

語言之爭主要存在於網路爭論和脆弱的自尊心之中。我共事過的最優秀的工程師都不拘泥於特定語言。他們專注於清晰性、可靠性和學習。他們不會冷嘲熱諷,而是會提出問題。

歸根究底,語言是工具,基本功是槓桿,自負只是噪音。


原文出處:https://dev.to/ujja/is-the-language-war-even-real-13n0


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝5   💬9   ❤️1
145
🥈
我愛JS
📝1   💬3   ❤️2
54
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付