Stack Overflow: Web Developer Central
The Stack Overflow Developer Survey 2016 show how web-centric the programming world has become. Out of 49,525 respondents a full 46% classified themselves as Web developers (28% full-stack, 12.2% back-end, 5.8% front-end). Other than Student, the next most popular answers were Mobile at 8.4% and Desktop at 6.9% – that’s for all platforms combined in each case!
GitHub: More Web Developers
Felipe Hoffa conducted another GitHub analysis to settle the eternal question: Tabs or Spaces? One billion source code files in various programming languages show that developers have seen the light and overwhelmingly prefer nice portable spaces over nasty formatting-breaking tabs. The major exceptions are C which has a slight edge in tab use (old Unix habits die hard I guess), and Go which exclusively uses tabs – because Google’s gofmt autoformatter inserts them.
TIOBE Index: What is this “Web?”
The TIOBE search engine index shows a starkly different picture. Java receded a bit from its JDK 8 surge but comfortably retained the top spot in 2016, followed by a surprisingly fast collapsing C and slowly declining C++. C# likewise continues downward, apparently not much helped by Microsoft’s open source offensive. Strangely enough, Visual Basic .NET simultaneously gained in popularity, but I suspect this may be due to projects (or just search terms?) finishing the migration from pre-.NET Visual Basic.
Alex Denisov’s Java Papers gives abstracts and links for all the scientific PDF articles that were cited somewhere in the OpenJDK source tree. Not to be outdone, Matt Warren has compiled a .NET counterpart: Research papers in the .NET source.
On other fundamental subjects, Mike James has written two fine introductions to the popular Bloom filter algorithm and its invertible version. Mike Hearn wrote a detailed article on Modern Garbage Collection which specifically aimed at debunking some Go hype but also provides a good overview on current GC technology in general.
Dustin Marx published his own annual review, Significant Software Development Developments of 2016. As the title implies the scope is very broad and covers many news beyond programming languages, but there’s also a section mostly focused on those near the bottom.
And just 19 days into the new year, JDK 9 was pronounced feature-complete. Dustin Marx wrote up a categorized list of the most important aspects. The Java language itself doesn’t change in this release but there are plenty of internal changes, in particular the new module system.