【天码行空】程序员的鄙视链
在软件工程师(中国叫做「程序员」或「码农」)的圈子里,文人相轻的现象可是非常严重的,在程序设计的各个领域里都有着扑朔迷离的「鄙视链」。从程序语言、器、平台到{是写在if的同一行还是下一行,不同阵营的人都习惯鄙视来鄙视去。而其中「你用甚么程序语言?」更是大家最热中的一条鄙视链,所以对于刚踏入程序设计领域的初学者来讲,万一程序语言选得不好,可是会一开始就落入鄙视链的底层啊。
软件工程师的鄙视链到底有多惨烈、多残暴呢?
程序语言篇
懂FunctionalProgramming的工程师鄙视总是把设计模式挂在嘴边的工程师,总是把设计模式挂在嘴边的工程师鄙视会说「你这样写就不OO了啊」的工程师,会说「你这样写就不OO了啊」的工程师鄙视会说「蛤?甚么面向对象?不是把重复的code写成一个function就好了吗?」的工程师,会说「蛤?甚么面向对象?不是把重复的code写成一个function就好了吗?」的工程师鄙视把同一段code到处复制贴上的工程师,把同一段code到处复制贴上的工程师鄙视PM。
写静态语言的工程师鄙视写动态语言的工程师。
写汇编语言的工程师鄙视写C语言的工程师,C语言工程师鄙视C++工程师,C++工程师鄙视Java和C#工程师,Java工程师和C#工程师则相互鄙视,而C#工程师又鄙视VisualBasic工程师和会把C#念成「C井」的工程师,会把C#念成「C井」的工程师则鄙视认为HTML是一种程序语言的设计师。
用Python3的工程师鄙视还在用Python2的工程师,用Python2的工程师鄙视遇到UnicodeEncodeError的工程师。
写iOS的工程师鄙视写Android的工程师,写Android的工程师鄙视写WindowsPhone的工程师。
有Swift一年经验的工程师鄙视有Objective-C5年经验的工程师,写Objective-C的工程师鄙视用PhoneGap包装成nativeapp的工程师。
用的工程师鄙视用AngularJS的工程师,用AngularJS的工程师鄙视用jQuery的工程师,用jQuery的工程师鄙视用VanillaJavaScript的工程师,用VanillaJavaScript的工程师鄙视IE的用户。
会用debugger的工程师鄙视用assert的工程师,用assert的工程师鄙视只会print()的工程师;用g()来debug的工程师鄙视用alert()来debug的工程师。
写RubyonRails的工程师鄙视所有使用其他语言的工程师。
甚么?你说Ruby?Ruby只是RubyonRails的一套框架,才不是甚么程序语言呢!
所有的工程师都鄙视PHP工程师。
工具篇
用texteditor的工程师鄙视用IDE的工程师。
用Vim的工程师鄙视用Emacs的工程师,用Emacs的工程师鄙视用Vim的工程师,无论是用Vim或Emacs的工程师都鄙视所有用其他器的工程师;用Atom、Notepad++、SublimeText的工程师鄙视用Windows记事本的工程师。
用AndroidStudio或IntelliJIDEA的工程师鄙视用Eclipse的工程师,用Eclipse的工程师鄙视用NetBeans的工程师。
程序代码用space缩排的工程师鄙视用tab缩排的工程师,用tab缩排的工程师鄙视混用space和tab来缩排的工程师。
用Git或Mercurial的工程师鄙视用Subversion的工程师,用Subversion的工程师鄙视用Dropbox来做版本控制的工程师,用Dropbox来做版本控制的工程师鄙视根本不知道甚么叫做版本控制的工程师。
知道GitHub的工程师鄙视不知道GitHub的工程师;在GitHub有privaterepo的工程师鄙视为了免费的privaterepo而去用BitBucket的工程师。
用Zsh的工程师鄙视用Bash的工程师,用Bash的工程师鄙视用Cygwin的工程师,用Cygwin的工程师鄙视用「命令提示字符」的工程师,用命令提示字符的工程师鄙视用GUI接口的工程师。
用IRC的工程师鄙视用HipChat的工程师,用HipChat的工程师鄙视用Slack的设计师和PM。
用reStructuredText写文件的工程师鄙视用Markdown写文件的工程师,用Markdown写文件的工程师鄙视用HTML写文件的工程师,用HTML写文件的工程师鄙视不写文件的工程师,然后用LaTeX写文件的工程师鄙视所有工程师。
用Nginx的工程师鄙视用Apache的工程师,用Apache的工程师鄙视用IIS的工程师。
用Spark的工程师鄙视用Hadoop的工程师,用Hadoop的工程师鄙视用Hadoop处理只有几GB数据的工程师,用Hadoop处理只有1GB数据的工程师鄙视用NoSQL的工程师,用NoSQL的工程师鄙视用关系数据库的工程师,用关系数据库的工程师鄙视用Excel的PM。
用Docker来部署server的工程师鄙视用Ansible或Puppet来部署server的工程师,用Ansible或Puppet来部署server的工程师鄙视用Fabric来部署server的工程师,用Fabric来部署server的工程师鄙视手动SSH的工程师。
OS篇
用MacOSX的工程师鄙视用Linux的工程师,用Linux的工程师鄙视用Windows的工程师。
用Debian的工程师瞧不起用Ubuntu的工程师,用Ubuntu的工程师瞧不起用非LTS版本的Ubuntu的工程师。
硬件篇
用MacBookProRetina的工程师鄙视用MacBookAir的工程师,用MacBookAir的工程师鄙视用ThinkPad的工程师,然后用RaspberryPi的工程师鄙视用MacBookProRetina的工程师。
用Dvorak键盘的工程师鄙视用Mac键盘的工程师,用Mac键盘的工程师鄙视用QWERTY键盘的工程师,用QWERTY键盘的工程师鄙视鄙视不知道QWERTY键盘是什么的工程师,不知道QWERTY键盘是什么的工程师鄙视用手写板的设计师。
坐Aeron椅子的工程师鄙视坐普通办公椅的工程师,坐普通办公椅的工程师鄙视跟他一样做普通办公椅的PM,然后站着写程序的工程师鄙视坐Aeron椅子的工程师。
职场篇
弄硬件的工程师鄙视弄软件的工程师。
写OS的工程师鄙视写Web的工程师,写Web的工程师鄙视写desktopapplication的工程师。
后端工程师鄙视前端工程师。
工程师跟设计师相互鄙视。
信奉Test-DrivenDevelopment的工程师鄙视先写code再补tests的工程师,先写code再补tests的工程师鄙视不写tests的工程师,不写tests的工程师鄙视又他妈乱改需求的PM。
没有证照的工程师鄙视考了一堆证照的工程师。
上班穿休闲服的工程师鄙视上班穿西装的工程师,上班穿西装的工程师鄙视上班穿系服的工程师。
—
如果你看了以上这些惨无人道的鄙视链以后,依然没有击倒你想要学习coding的心,那我必须提示你一件最重要的事:先去交一个女朋友,再来学写程序;由于一旦你成为软件工程师以后,就交不到女朋友了。
来源:
北京白癜风治疗 的医院是哪个北京治疗白癜风哪里医院比较好