If you aren’t a programmer, you’re probably not going to know this, but there’s a vicious rivalry lurking in the code of every app you use. If code isn’t written consistently — using either the tab or the space button to create indentations — the format can get all wonky, making it difficult for multiple authors to contribute to the code. While the methods produce virtually the same result, lines have still been drawn.
Image: HBO
On one side are the tab fanatics, such as Richard in HBO’s Silicon Valley. On the other side is everyone else — those who use the space bar. But now, thanks to science, the fight may finally have its knockout punch: Space fans apparently make more money with their code than tab fans. Which means there really is one winner.
This news comes from Stack Overflow — a popular online resource for developers — which issued a survey earlier this year to programmers. Of 28,657 respondents, a little less than half of whom also provided their salaries, Stack Overflow learned that 41.8 per cent of devs use spaces for indentations, while 40.7 per cent use tabs. That’s a fairly even split, and different than the results we saw last year, when a dev sourced all their space vs tabs data from GitHub and found that an overwhelming majority of users preferred spaces.
While the findings from GitHub and Stack Overflow don’t match exactly, spaces were victorious in both, and when it came to Stack Overflow, spaces won out in more ways than one. If you’re looking to make some bank, then using spaces over tabs will, statistically, result in an 8.6 per cent higher salary. That number takes into account a wide number of variables including country of residence, education and language. But even considering all those factors, the pay discrepancy amounts to approximately 2.4 years more experience than a tab user. In other words, according to these numbers, if you’re a 24-year-old space coder, you’d be making about as much as a 26-year-old tab coder.
Winner! (Image: Stack Overflow)
In hard cash terms, the median salary of the space developers was $US59,140 ($78,019), while the median salary of tab developers was a gonna-struggle-to-survive-in-Silicon-Valley $US43,750 ($57,716).
David Robinson, the Stack Overflow data scientist who revealed these numbers, cautioned in his post, as we would, that “correlation is not causation”. While Robinson makes an effort to account for many variables, including location, experience, language type and even formal education, he cannot account for everything. Perhaps all space users, no matter when they live in the world, are just born with a silver spoon stuck in their mouth and are more prone to make extra money. Or maybe white men use spaces while white women and people of colour use tabs.
If you’re a data scientist yourself, or a tab person burning with something to say, than you can download the raw survey data yourself and double check Robinson’s numbers. For those of us who want to roll around in money, however, the answer is clear.
Comments
4 responses to “The Nerdiest Debate Ever May Finally Have A Winner”
Tabs
I’m not a coder, and I’d be interested in hearing from someone who is.
But with my level of knowledge, with a repository like GIT and alike, wouldn’t it also be better to use spaces as they add hidden characters into the formatting so that regardless of who picks up the code there will be no compatibility issues on their end?
Personally, if I was a coder I would use TAB. That feels natural to me. Spaces would feel messy.
That’s more or less the crux of the matter. More experienced (experience explains both sets of results) programmers tend to use spaces so that no matter the editor/reader, no matter the settings, the code always comes out formatted the same way.
Less experienced programmers tend to not know what they use, and many popular beginner focused editors default to tabs. Hence lots of tabs appear in popular repositories like GitHub.
Despite the laughably naive interpretation of the author and many, many others, no space user actually indents using the “space button”. You just press tab like everyone else, but the editor inserts spaces. Then you can always make character by character corrections, because there’s actually no tab characters – they’ve all been replaced with spaces. Tabs are useful in Word Processors. They have no purpose in programming.
$2 for who can guess which camp I fall in to.
Thank you for the in depth reply! That’s cleared it up a lot for me! :]