程序員的鄙視鏈

1 評(píng)論 11369 瀏覽 3 收藏 9 分鐘

最近這幾年在世界各地突然吹起了一股全民寫程序的風(fēng)潮,連美國(guó)總統(tǒng)都在寫 JavaScript 了,但是身為一介靠寫程序(以及在上班時(shí)間胡亂上網(wǎng))來(lái)謀生的 developer(所謂的 developer 就是「軟件工程師」的比較潮的說(shuō)法),想要提醒那些想學(xué)習(xí)寫程序的人一件重要的事:慎選你的第一個(gè)程序語(yǔ)言。

在軟件工程師(中國(guó)叫做「程序員」或「碼農(nóng)」)的圈子里,文人相輕的現(xiàn)象可是非常嚴(yán)重的,在程序設(shè)計(jì)的各個(gè)領(lǐng)域里都有著錯(cuò)綜復(fù)雜的「鄙視鏈」。從程序語(yǔ)言、編輯器、平臺(tái)到 { 是寫在 if 的同一行還是下一行,不同陣營(yíng)的人都習(xí)慣鄙視來(lái)鄙視去。而其中「你用什么程序語(yǔ)言?」更是大家最熱衷的一條鄙視鏈,所以對(duì)于剛踏入程序設(shè)計(jì)領(lǐng)域的初學(xué)者來(lái)說(shuō),萬(wàn)一程序語(yǔ)言選得不好,可是會(huì)一開始就落入鄙視鏈的底層啊。

軟件工程師的鄙視鏈到底有多慘烈、多殘酷呢?

程序語(yǔ)言篇

懂 Functional Programming 的工程師鄙視老是把設(shè)計(jì)模式掛在嘴邊的工程師,老是把設(shè)計(jì)模式掛在嘴邊的工程師鄙視會(huì)說(shuō)「你這樣寫就不 OO 了啊」的工程師,會(huì)說(shuō)「你這樣寫就不 OO 了啊」的工程師鄙視會(huì)說(shuō)「哈?什么物件導(dǎo)向?不是把重復(fù)的 code 寫成一個(gè) function 就好了嗎?」的工程師,會(huì)說(shuō)「哈?什么物件導(dǎo)向?不是把重復(fù)的 code 寫成一個(gè) function 就好了嗎?」的工程師鄙視把同一段 code 到處復(fù)制貼上的工程師,把同一段 code 到處復(fù)制貼上的工程師鄙視 PM。

寫靜態(tài)語(yǔ)言的工程師鄙視寫動(dòng)態(tài)語(yǔ)言的工程師。

寫組合語(yǔ)言的工程師鄙視寫 C 語(yǔ)言的工程師,C 語(yǔ)言工程師鄙視 C++ 工程師,C++ 工程師鄙視 Java 和 C# 工程師,Java 工程師和 C# 工程師則互相鄙視,而 C# 工程師又鄙視 Visual Basic 工程師和會(huì)把 C# 念成「C 井」的工程師,會(huì)把 C# 念成「C 井」的工程師則鄙視認(rèn)為 HTML 是一種程序語(yǔ)言的設(shè)計(jì)師。

用 Python 3 的工程師鄙視還在用 Python 2 的工程師,用 Python 2 的工程師鄙視遇到 UnicodeEncodeError 的工程師。

寫 iOS 的工程師鄙視寫 Android 的工程師,寫 Android 的工程師鄙視寫 Windows Phone 的工程師。

有 Swift 一年經(jīng)驗(yàn)的工程師鄙視有 Objective-C 五年經(jīng)驗(yàn)的工程師,寫 Objective-C 的工程師鄙視用 PhoneGap 包裝成 native app 的工程師。

用 React.js 的工程師鄙視用 AngularJS 的工程師,用 AngularJS 的工程師鄙視用 jQuery 的工程師,用 jQuery 的工程師鄙視用 Vanilla JavaScript 的工程師,用 Vanilla JavaScript 的工程師鄙視 IE 的使用者。

會(huì)用 debugger 的工程師鄙視用 assert 的工程師,用 assert 的工程師鄙視只會(huì) print () 的工程師;用 console.log () 來(lái) debug 的工程師鄙視用 alert () 來(lái) debug 的工程師。

寫 Ruby on Rails 的工程師鄙視所有使用其他語(yǔ)言的工程師。

什么?你說(shuō) Ruby?Ruby 只是 Ruby on Rails 的一套框架,才不是什么程序語(yǔ)言呢!

所有的工程師都鄙視 PHP 工程師。

工具篇

用 text editor 的工程師鄙視用 IDE 的工程師。

用 Vim 的工程師鄙視用 Emacs 的工程師,用 Emacs 的工程師鄙視用 Vim 的工程師,無(wú)論是用 Vim 或 Emacs 的工程師都鄙視所有用其他編輯器的工程師;用 Atom、Notepadd++、Sublime Text 的工程師鄙視用 Windows 記事本的工程師。

用 Android Studio 或 IntelliJ IDEA 的工程師鄙視用 Eclipse 的工程師,用 Eclipse 的工程師鄙視用 NetBeans 的工程師。

用 Git 或 Mercurial 的工程師鄙視用 Subversion 的工程師,用 Subversion 的工程師鄙視用 Dropbox 來(lái)做版本控制的工程師,用 Dropbox 來(lái)做版本控制的工程師鄙視根本不知道什么叫做版本控制的工程師。

用 Zsh 的工程師鄙視用 Bash 的工程師,用 Bash 的工程師鄙視用 Cygwin 的工程師,用 Cygwin 的工程師鄙視用「命令提示字元」的工程師,用命令提示字元的工程師鄙視用 GUI 介面的工程師。

用 IRC 的工程師鄙視用 HipChat 的工程師,用 HipChat 的工程師鄙視用 Slack 的設(shè)計(jì)師。

用 reStructuredText 寫文件的工程師鄙視用 Markdown 寫文件的工程師,用 Markdown 寫文件的工程師鄙視用 HTML 寫文件的工程師,用 HTML 寫文件的工程師鄙視不寫文件的工程師,然后用 LaTeX 寫文件的工程師鄙視所有工程師。

用 Docker 來(lái)部署 server 的工程師鄙視用 Ansible 或 Puppet 來(lái)部署 server 的工程師,用 Ansible 或 Puppet 來(lái)部署 server 的工程師鄙視用 Fabric 來(lái)部署 server 的工程師,用 Fabric 來(lái)部署 server 的工程師鄙視手動(dòng) SSH 的工程師。

OS 篇

用 Mac OS X 的工程師鄙視用 Linux 的工程師,用 Linux 的工程師鄙視用 Windows 的工程師。

用 Debian 的工程師瞧不起用 Ubuntu 的工程師,用 Ubuntu 的工程師瞧不起用非 LTS 版本的 Ubuntu 的工程師。

硬件篇

用 MacBook Pro Retina 的工程師鄙視用 MacBook Air 的工程師,用 MacBook Air 的工程師鄙視用 ThinkPad 的工程師,然后用 Raspberry Pi 的工程師鄙視用 MacBook Pro Retina 的工程師。

用 Dvorak 鍵盤的工程師鄙視用 Mac 鍵盤的工程師,用 Mac 鍵盤的工程師鄙視用 QWERTY 鍵盤的工程師,用 QWERTY 鍵盤的工程師鄙視用手寫板的設(shè)計(jì)師。

坐 Aeron 椅子的工程師鄙視坐普通辦公椅的工程師,坐普通辦公椅的工程師鄙視跟他一樣做普通辦公椅的 PM,然后站著寫程序的工程師鄙視坐 Aeron 椅子的工程師。

職場(chǎng)篇

搞硬件的工程師鄙視搞軟件的工程師。

寫 OS 的工程師鄙視寫 Web 的工程師,寫 Web 的工程師鄙視寫 desktop application 的工程師。

后端工程師鄙視前端工程師。

工程師跟設(shè)計(jì)師互相鄙視。

信奉 Test-Driven Development 的工程師鄙視先寫 code 再補(bǔ) tests 的工程師,先寫 code 再補(bǔ) tests 的工程師鄙視不寫 tests 的工程師,不寫 tests 的工程師鄙視又他媽亂改需求的 PM。

沒有證照的工程師鄙視考了一堆證照的工程師。

上班穿休閑服的工程師鄙視上班穿西裝的工程師,上班穿西裝的工程師鄙視上班穿系服的工程師。

結(jié)束語(yǔ)

如果你看了以上這些慘絕人寰的鄙視鏈之后,仍然沒有擊倒你想要學(xué)習(xí) coding 的心,那我必須提醒你一件最重要的事:先去交一個(gè)女朋友,再來(lái)學(xué)寫程序。

因?yàn)橐坏┠愠蔀檐浖こ處熤?,就交不到女朋友了?/p>

來(lái)源:真,他媽的

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 上學(xué)的時(shí)候,選最容易拿學(xué)分的科目。工作的時(shí)候,通過不斷跳槽,來(lái)提升自己的薪水,職位。
    人生混到現(xiàn)在,從來(lái)就沒有一件事是迎難而上的,像老鼠一樣,哪土松就往哪鉆。而對(duì)生活的要求和品位,卻是國(guó)王一樣。
    照照自己的吧。

    來(lái)自北京 回復(fù)