【编者按】软件工程师、程序员、码农一直是IT圈中最被人津津乐道的主角,在该圈子里,文人相轻的现象可是非常严重的,在程序设计的各个领域里都有着错综复杂的「鄙视链」。本文转载vinta.ws,该文作者是一名台湾程序员,下面一起来看看台湾程序员眼中软件工程师的鄙视链。


最近这几年在世界各地突然吹起了一股全民写程序的风潮,连美国总统欧巴马都在写 JavaScript 了,但是身为一介靠写程序(以及在上班时间胡乱上网)来谋生的 developer(所谓的 developer 就是「软件工程师」的比较潮的说法),想要提醒那些想学习写程序的人一件重要的事:慎选你的第一个程序语言。

在软件工程师(中国叫做「程序员」或「码农」)的圈子里,文人相轻的现象可是非常严重的,在程序设计的各个领域里都有着错综复杂的「鄙视链」。从程序语言、编辑器、平台到 { 是写在 if 的同一行还是下一行,不同阵营的人都习惯鄙视来鄙视去。而其中「你用什么程序语言?」更是大家最热衷的一条鄙视链,所以对于刚踏入程序设计领域的初学者来说,万一程序语言选得不好,可是会一开始就落入鄙视链的底层啊。

软件工程师的鄙视链到底有多惨烈、多残酷呢?

程序语言篇

懂 Functional Programming 的工程师鄙视老是把设计模式挂在嘴边的工程师,老是把设计模式挂在嘴边的工程师鄙视会说「你这样写就不 OO 了啊」的工程师,会说「你这样写就不 OO 了啊」的工程师鄙视会说「哈?什么物件导向?不是把重复的 code 写成一个 function 就好了吗?」的工程师,会说「哈?什么物件导向?不是把重复的 code 写成一个 function 就好了吗?」的工程师鄙视把同一段 code 到处复制贴上的工程师,把同一段 code 到处复制贴上的工程师鄙视 PM。

写静态语言的工程师鄙视写动态语言的工程师。

写组合语言的工程师鄙视写 C 语言的工程师,C 语言工程师鄙视 C++ 工程师,C++ 工程师鄙视 Java 和 C# 工程师,Java 工程师和 C# 工程师则互相鄙视,而 C# 工程师又鄙视 Visual Basic 工程师和会把 C# 念成「C 井」的工程师,会把 C# 念成「C 井」的工程师则鄙视认为 HTML 是一种程序语言的设计师。

用Python 3的工程师鄙视还在用 Python 2 的工程师,用 Python 2 的工程师鄙视遇到 UnicodeEncodeError 的工程师。

写 iOS的工程师鄙视写 Android 的工程师,写 Android 的工程师鄙视写 Windows Phone 的工程师。

有Swift 一年经验的工程师鄙视有 Objective-C 五年经验的工程师,写 Objective-C 的工程师鄙视用 PhoneGap 包装成 native app 的工程师。

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

会用 debugger 的工程师鄙视用 assert 的工程师,用 assert 的工程师鄙视只会 print () 的工程师;用 console.log () 来 debug 的工程师鄙视用 alert () 来 debug 的工程师。

写 Ruby on Rails 的工程师鄙视所有使用其他语言的工程师。

什么?你说 Ruby?Ruby 只是 Ruby on Rails 的一套框架,才不是什么程序语言呢!

所有的工程师都鄙视 PHP 工程师。

工具篇

用 text editor 的工程师鄙视用 IDE 的工程师。

用 Vim 的工程师鄙视用 Emacs 的工程师,用 Emacs 的工程师鄙视用 Vim 的工程师,无论是用 Vim 或 Emacs 的工程师都鄙视所有用其他编辑器的工程师;用 Atom、Notepadd++、Sublime Text 的工程师鄙视用 Windows 记事本的工程师。

用 Android Studio 或 IntelliJ IDEA 的工程师鄙视用 Eclipse 的工程师,用 Eclipse 的工程师鄙视用 NetBeans 的工程师。

用 Git 或 Mercurial 的工程师鄙视用 Subversion 的工程师,用 Subversion 的工程师鄙视用 Dropbox 来做版本控制的工程师,用 Dropbox 来做版本控制的工程师鄙视根本不知道什么叫做版本控制的工程师。

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

用 IRC 的工程师鄙视用 HipChat 的工程师,用 HipChat 的工程师鄙视用 Slack 的设计师。

用 reStructuredText 写文件的工程师鄙视用 Markdown 写文件的工程师,用 Markdown 写文件的工程师鄙视用 HTML 写文件的工程师,用 HTML 写文件的工程师鄙视不写文件的工程师,然后用 LaTeX 写文件的工程师鄙视所有工程师。

用Docker来部署server 的工程师鄙视用 Ansible 或 Puppet 来部署 server 的工程师,用 Ansible 或 Puppet 来部署 server 的工程师鄙视用 Fabric 来部署 server 的工程师,用 Fabric 来部署 server 的工程师鄙视手动 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 键盘的工程师鄙视用手写板的设计师。

坐 Aeron 椅子的工程师鄙视坐普通办公椅的工程师,坐普通办公椅的工程师鄙视跟他一样做普通办公椅的 PM,然后站着写程序的工程师鄙视坐 Aeron 椅子的工程师。

职场篇

搞硬件的工程师鄙视搞软件的工程师。

写 OS 的工程师鄙视写 Web 的工程师,写 Web 的工程师鄙视写 desktop application 的工程师。

后端工程师鄙视前端工程师。

工程师跟设计师互相鄙视。

信奉Test-Driven Development 的工程师鄙视先写 code 再补 tests 的工程师,先写 code 再补 tests 的工程师鄙视不写 tests 的工程师,不写 tests 的工程师鄙视又他妈乱改需求的 PM。

没有证照的工程师鄙视考了一堆证照的工程师。

上班穿休闲服的工程师鄙视上班穿西装的工程师,上班穿西装的工程师鄙视上班穿系服的工程师。

   ---

如果你看了以上这些惨绝人寰的鄙视链之后,仍然没有击倒你想要学习 coding 的心,那我必须提醒你一件最重要的事:先去交一个女朋友,再来学写程序;因为一旦你成为软件工程师之后,就交不到女朋友了。

P.S.

有在用 GitHub 的朋友一起来交流交流。

   本文转自Vinta.ws,文中观点和内容不代表CSDN立场或观点。

趣文:软件工程师的鄙视链相关推荐

  1. 趣文:如何成为Google软件工程师?(二)

    博士生的面试会有所不同么? ●我们会根据每个人的情况安排有针对性的面试 ●面试内容包括标准算法,设计,编码能力 ●论文讨论 ●所有的面试官都具有博士学位 Google软件工程师如是说: 问:在Goog ...

  2. 转:高级软件工程师成长秘诀(文末有笔者自己的小评论)

    作者:Neil Kakkar 译者 | 张健欣 身为软件工程师,你要如何进一步成长? 2018 年的时候,我开始在彭博社(Bloomberg)工作.从那之后,事情发生了很大变化.我不再是公司里最初级的 ...

  3. 中国与印度软件工程师之比较…

    原文地址:中国与印度软件工程师之比较(转)作者:insdili 在工作中,接触到印度软件公司开发出来的软件: 整个体系架构非常清晰,按照我们的要求实现了全部功能,而且相当稳定.但是打开具体的代码一看, ...

  4. 技术沙龙|这期我们聊聊软件工程师的区块链升级挑战(杭州)

    2019独角兽企业重金招聘Python工程师标准>>> 2018年的互联网圈子里,讨论最多的除了区块链和创业,还有一个城市,杭州. 最近有几位在大厂工作的程序员朋友说已经辞职,下一个 ...

  5. 高通Camera 软件工程师的成长之路

    本文以个人的工作学习经历来描述一 Camera 软件工程师的披荆斩棘之路,时间从大学开始,以至任职于高通 Camera 软件工程师结束,杂以本人学习过程当中的一系列学习笔记和博客文章,绝对是干货满满, ...

  6. 《日志:每个软件工程师都应该了解实时数据的统一抽象》

    本文被誉为程序员必读文章,学习消息队列的同学都应该看看.原文:The Log: What every software engineer should know about real-time dat ...

  7. 如何成为软件工程师的团队合作者

    In my first software engineering role at an eCommerce brand, I often secretly worked on tasks outsid ...

  8. 月薪20k-50k| 西人马3D机器视觉算法、语音识别、DSP软件工程师招聘

    3D视觉工坊致力于推荐最棒的工作机会,精准地为其找到最佳求职者,做连接优质企业和优质人才的桥梁.如果你需要我们帮助你发布实习或全职岗位,请添加微信号「CV_LAB」. 公司简介: 西人马FATRI是一 ...

  9. 25~50K|云视科技SLAM算法工程师/机器人算法软件工程师招聘(社招+实习)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 深圳市云视机器人有限公司成立于2019年11月,是一家专注于服务型机器人技术开发及大规模制造的高科技公 ...

最新文章

  1. [Cake] 1. CI中的Cake
  2. NAR:psRobot-植物小RNA分析系统
  3. 阿里云专家手把手教你重塑 IT 架构!
  4. C和指针之动态内存分配之编程练习4
  5. 某猪微店状元分销V2.0钻石版-全开源纯净安装版
  6. Python--MySql学习(10.30)
  7. 有一项调查显示:创业成功的年龄一般是在43岁左右
  8. quartus 使用IP提供的脚本仿真rapidio
  9. ubuntu 新建用户
  10. ZZULIOJ1026
  11. 圆周率π前百万位,完整版显示
  12. 前端开发思路-1.1
  13. uniapp-连接服务器超时,点击重试
  14. openwrt编译教程(第一章)
  15. stm32USB之模拟U盘
  16. PermissionError: [WinError 5] 拒绝访问。: ‘E:\\IdeaProjects\\maintenance\\dist\\main‘
  17. 牛顿法与牛顿下山法(切线法)
  18. 如何修改3D模型的原子属性
  19. 介绍一款功能强大的步进电机控制驱动芯片TMC5240
  20. Android点击文字编辑进行缩放、移动和改变字体、颜色的实现

热门文章

  1. (docker) 四步修改容器时区时间!超简洁明了~
  2. 激活Win2008时显示,Error:product not found
  3. MOS管G极串联小电阻的作用
  4. 阶乘计算之大数阶乘与快速取模阶乘计算
  5. 条码/二维码种类大全
  6. 计算机应用网线接口亮红灯,连接网线后,对应端口指示灯不亮怎么办?
  7. lvs原理, 只改 ip 不改端口, vpn arp tcp 隧道 (子网掩码作用和局域网传输)
  8. 使用HTML和CSS的明信片动画效果
  9. 苹果手机上滑动会卡顿_iPhone手机卡顿怎么办?iPhone手机卡顿解决办法
  10. android 读取资源中的文件下载,android – 从APK扩展文件中读取内容(来自obb文件)...