Programmers who use spaces ‘paid more’
Computer programmers who use a space as part of their coding earn $15,370 (£12,000) more per year than those who use the tab key, a survey of developers has revealed.
The survey found the salary difference stretched across different languages, countries and experience levels.
The debate over which method is better to create a double space to indent code has raged among programmers for years.
Indents act like paragraph markers and help define how programs work.
The result was “surprising,” said David Robinson, data scientist at Stack Overflow which carried out the survey of 12,400 developers.
‘Pepsi or Coke question’
He at first thought it was just a quirk of the survey rather than a real phenomenon and said he could not explain why the difference emerged.
He even encouraged others to go through the data themselves to see if they could find a factor he had missed.
“Spaces versus tabs is the Pepsi or Coke question for developers,” said Jordan Poulton, a spokesman for London’s Makers Academy that teaches people to code.
“It’s almost impossible to draw an objective conclusion about which is the best,” he said.
Mr Poulton said there were some computer languages, such as Python, in which indenting was essential but in others, such as Ruby, it only helped to make it easier to work out the structure of the code.
Whether tabs or spaces were used could have an impact, he said, when hand-written code is turned into working software. This process is handled by a separate program called an interpreter or compiler. Some of these can crash if they encounter something, such as a tab, when they were only expecting spaces.
That, he said, can make hunting the bug that caused a crash a much harder job.
Speculating “wildly” about the reason why developers who use tabs are not paid as much, Mr Poulton said that it might be down to the fact that indenting with a tab involves pressing one key but using the space bar to do the same involves two movements.
Those working on shorter, less lucrative coding projects might see a need to use the tab to get the job done quickly.
“Perhaps those that use tabs are more the ‘move forward and break things’ type of developers,” he said.
By contrast, those who have time to press the space bar twice might be working on longer, better-funded projects.