彩票走势图

用空格缩进的程序员赚钱更多,多赚8.6%

转帖|行业资讯|编辑:我只采一朵|2017-06-20 13:53:44.000|阅读 111 次

概述:你用Tab还是空格来处理代码缩进?这个问题通常会引起程序员间的”圣战“,它已经无数次引起争论了。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

大数据

原作者:David Robinson

译者:诗书塞外

你用Tab还是空格来处理代码缩进?

这个问题通常会引起程序员间的”圣战“,它已经无数次引起争论了。我自己是用空格的,但是我从没认为两种习惯之间有什么很重要的区别。但是今天我们要公布Stack Overflow 2017开发者调查得到的一部分源数据,而且分析表明用空格还是用Tab真的是有所谓的!

用空格的程序员比用Tab的程序员挣钱多

有28657名职业程序员(他们不是学生也不是实习生)参与了这个”用Tab还是用空格的调查“。这之中,40.7%的程序员使用Tab,41.8%的程序员使用空格,17.5%的程序员两者都用。其中,12426名程序员填写了Ta的薪水。

分析这些数据,我们得到一个很有趣的结论,用空格缩进的程序员比用Tab缩进的程序员赚的更多,即便两者拥有相同的编程经验。

大数据

从图中可以看出,使用空格缩进的程序员的薪资中位数是59,140美金,而使用Tab缩进的程序员的薪资中位数是43,750美元。其他国家程序员的薪资已经由当地货币换算成美元了。同时使用空格和Tab的程序员薪资水平基本和使用Tab的情况差不多:在后面分析中我们会忽略这部分混用的程序员。

这个结果很令人惊讶,但是结果本身还不能说明什么问题。当我第一次看到这个结论的时候,我怀疑是不是某一个因素影响了结果,比如程序员所在国家或者使用的编程语言。比如可能人均GDP比较低的国家的程序员更喜欢用Tab,而有理由推断这样会拉低用Tab程序员的平均薪资。

如果原因真的如上所想,那么在国家内部进行统计应该就不会有这个令人惊讶的结论了。所以我们选取了样本最多的几个国家,在国家内部进行统计。

大数据

在欧洲这个现象相对比较弱,而在印度这个现象却相当明显。不过可以看到,无论在哪个国家内部,使用空格缩进的程序员薪资都比用Tab缩进的程序员高,所以可以证明不是国家这个单独的因素导致了这个差别。

另一方面,我们知道不同类型的程序员会有不同的习惯:比如DevOps会倾向于用空格,而移动开发者更喜欢用Tab。这个差异主要因为他们使用的语言不同。这次的调查中程序员们提供了他们使用的语言的情况,和他们是什么类型的开发者。

从统计数据中看,无论是在同一语言内部,还是同种开发者内部,使用空格的程序员都比使用Tab的程序员薪资更高。

大数据

我还尝试了很多其他的因素,比如教育水平和公司规模,得到的结果都是相似的:用空格缩进的程序员薪资更高。我们在这里把调查的提供出来,希望统计学家们能够找出导致这个现象的因素。

评估“空格 or Tab”选择对薪资的影响

如果我们把影响薪资的所有因素都放在一起,那么“空格 or Tab”的选择在这里占有多大的权重呢?

为了解答这个问题,我使用以下因素对工资做了一个线性回归:

  • “空格 or Tab”的选择
  • 国家
  • 编程工作年限
  • 开发者类型和使用的语言
  • 学位
  • 是否为开源项目做过贡献
  • 是否热爱编程
  • 公司规模

这个模型预测使用空格缩进会使得工资相较于使用Tab缩进高8.6%,p值10^-10的置信区间为(6%, 10.4%).(通过这个预测工资的模型,我们能够估算每个因素对工资贡献的百分比,而不是美元绝对值)。从另一个角度计算,我们得出使用空格缩进相当于增加了2.4年的工作经验。

结论

嗯…这确实难以置信,我最开始也没想到是这样的结果。但是即便我尝试了各种解释,这个结论还是站得住脚。我甚至加入了一些调查中没有的因素去计算,这个现象始终都是存在的。

这个结论并不能说明因果关系,我始终不敢确定我已经考虑到所有的影响因素了。如果你是一个数据科学家,统计学家,或者分析师,我们鼓励你下载源数据来检查。如果你想重现这次试验的结果,这里有这篇文章用到的。

我们很希望能听到任何有关于这个现象原因的理论。

为了保住我的薪水,我决定继续用空格缩进….


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP