Stack Overflow recently released their developer survey. We take a look at some of the findings (and why Bill Gates was obsessed with the year 1900).
If you are a Developer, DevOp, System Administrator or something similar, you will have used Stack Overflow at least a couple of times.
If not, you are either a godlike superhuman who would never be in doubt of, for instance, how you connect a Corba server via ssh tunnel using Omniorb from Python (real question from Stack Overflow) or – even less likely – you are unaware of its existence.
The site was established by Joel Spolsky – more about him and Bill Gates later – in 2008 with Jeff Atwood. Joel and Jeff wanted an easy-accessible site, where you could ask your fellow programmers a question when you were stuck with a problem. They seem to have succeeded and now, 10 years later, the site claims that 50 million developers visit the site each month.
Stack Overflow has just released their yearly survey of what developers like, dislike and want. Over 100,000 Stack Overflow users participated. Here are a few highlights from the survey.
Most commonly used language does not mean most popular
Most used language does not necessarily mean most loved. Developers using a programming language were asked whether they want to continue using it. Here Rust is at the top with 78.9% of happy Rust-programmers, followed closely by 75.1% contented Kotlin-programmers.
Python, Typescript, Go and Swift are in the following places with 65% – 68% of programmers who would like to continue using the languages they are using now.
Most dreaded – really?
Stack Overflow’s ‘most dreaded’ list is compiled by asking programmers using a specific programming language if they want to continue using it. If not, the programming language is labelled as dreaded.
In my opinion, this does not necessarily mean ‘most dreaded’, it could just as well be indifference, but there you go.
89.9% of programmers who are using Visual Basic 6 have expressed no interest in continuing to use it, while the numbers for Cobol and CoffeeScript are 84.1% and 82.7% respectively.
Old, dreaded databases
The most dreaded databases are IBM’s DB2 (that good ol’ database keeping business and financial data safe on the mainframes) and Oracle’s database.
MySQL and Microsoft’s SQL Server are the most used databases (58.7% and 41.2%) while the most loved database is the open source in-memory database Redis.
Development Environment – Microsoft rules
Microsoft’s Visual Studio Code which was released only 3 years ago is now the most popular Development Environment with 34.9% of respondents using the free IDE. Microsoft’s Visual Studio is a close second with 34.3%.
More women in IT?
Stack Overflow also had a look at the representation of women in different IT-roles. System Administrators and Embedded Applications Developers have the highest ratio of men compared to women; almost 30x more men than women are in those roles. DevOps specialists are a close third with just below 25x more men than women.
You are more likely to find women in a group of Educators or Academic Researchers. Here the ratio is only just below 10 times more men than women.
There are a lot more stats in the Stack Overflow survey, check them out.
Bonus: When Bill Gates was obsessed with the year 1900
I promised a little story about Stack Overflow’s co-founder Joel Spolsky and Bill Gates.
Joel Spolsky worked for Microsoft in the 1990’s as Program Manager for Excel. He was asked to design specs for integrating Visual Basic in Excel, the foundation of VBA for Excel.
It was a big upfront waterfall-design spec which Bill Gates personally would check. This happened in what was known as a “BillG Review”.
The metric for success of a BillG Review was the number of times Bill Gates said the F-word. The lower the count, the better.
During the review, the questions from Gates got gradually more difficult. In the end, Bill Gates asked the killer question:
“I don’t know, you guys. Is anyone really looking into all the details of how to do this? Like, all those date and time functions. Excel has so many date and time functions. Is Basic going to have the same functions? Will they all work the same way?”
Now, in most modern programming environments, dates are stored as real numbers. The integer part of the number is the number of days since some agreed date in the past called the epoch.
Excel’s epoch was January 1st, 1900 while Visual Basic used 31st December 1899. That means January 1st, 1900 in Excel was represented as 1, while it would be 2 in Visual Basic.
That’s not good if you want to be sure date functions work the same way.
But, because Excel wanted to be able to import Lotus 1-2-3 worksheets, Excel had conformed to an intentional hack from Lotus 1-2-3. 1900 was not a leap year (years divisible by 4 are, but not years divisible by 100), but in Lotus 1-2-3 it was. So the integer for February 28th, 1900 was 59; February 29th, 1900 (which didn’t exist) was 60 and March 1st, 1900 was 61.
Visual Basic’s integer for February 28th, 1900 was 60, while in Excel it was 59. However, from March 1st, 1900 Excel got in sync with Visual Basic by agreeing that day was 61.
Excel’s and Visual Basic’s date functions would work the same way except for January and February 1900.
Bill Gates knew that.
That’s why he asked the question. He probably didn’t think Joel Spolsky would have realised when doing his high-level spec of VBA for Excel, but by pure chance, Joel had found out about it just the day before the review. So Joel answered:
“Yes, they will work, except for January and February 1900”
It was the BillG Review with the lowest number of F-words .