小编已经扣掉了 Tab 键
您使用制表符还是空格进行代码缩进?
这是软件开发者之间的一场“圣战”,也是许多辩论和笑话的主题。有些人会认为无论使用哪种方式都不是特别重要,但今天 Stack Overflow 发布的一份数据可能会改变你的看法了,这份 Stack Overflow 2017 开发者调查的原始数据背后的分析表明,这个简单的选择可能比很多人想象中的重要。
使用空格比使用制表符赚更多钱
有 28,657 名调查对象为使用 Tab 还是 Space 这个问题提供了答案,他们都自认为是专业的开发者。在这个群体中,40.7% 使用制表符,41.8% 使用空格(17.5% 两者都使用)。其中,有 12,426 名调查对象提供了自己工资。
分析这些数据得出了一个有趣的结论:使用空格进行缩进的程序员比使用制表符的赚更多的钱,即使他们拥有相同的经验。
实际上,使用空格缩进的开发者的工资中位数为 $59,140,而使用制表符的为 $43,750(所有结果均已转换为美元)。
这是一个有趣的结果,当然这并不是决定性的因素。例如,可能人均 GDP 低的国家的开发者更有可能使用制表符,因此使用制表符的平均工资就会较低了。
我们可以检验这个结果是否出现在每个国家,看看受访调查最多的几个国家。
可以看到,这个差距在欧洲较小,但在印度却是尤其的大,不过在每个国家确实都有这种现象,所以这不是唯一的混淆因素。
不过我们也知道不同类型的开发者通常使用不同的缩进(例如 Devops 开发者更多可能使用空格而移动开发者则更有可能使用制表符),因为他们往往使用不同的编辑器和语言。此次的调查都问及了每个受访者使用的编程语言(Python,JavaScript 等)以及他们是什么类型的“开发者”(Web 开发者,嵌入式开发者等)。
那么这个组里面是否有着同样的差距?
是的,这里同样存在。那如果我们对比所有可能影响工资的因素,看看制表符/空格的选择有多大的影响?
为了回答这个问题,我们选择线性回归,基于以下因素预测工资:
制表符 vs 空格
国家
多年的编程经验
开发者类型和语言
正规教育水平(例如学士,硕士,博士学位)
他们是否为开源做出了贡献
他们是否只是将编程作为作为一个兴趣
公司规模
该模型估计,使用空格而不是制表符导致薪水升高 8.6%(置信区间(6%, 10.4%),,p值< 10^-10)。
我们无法确定我们已经控制了数据集中存在的所有混淆因素。所以,如果您是数据科学家,统计学家或分析师,我建议您下载原始调查数据并自行检查。
but,为了提升自己的薪水,是否考虑表明自己是一个“空格党”呢?
原文:https://stackoverflow.blog/2017/06/15/developers-use-spaces-make-money-use-tabs/
译文:http://www.oschina.net/news/85877/developers-use-spaces-make-money-use-tabs
读前端干货就上 前端日报
点击 【阅读原文】 查看 前端日报