Developer survey: C# losing ground to JavaScript, PHP and Java for cloud apps, still big in gaming

Plus: What puts off developers from adopting cloud? Price


A new developer survey has shown the popularity of C#, the primary language of Microsoft's .NET platform, slipping from third to sixth place in three years, though usage is still growing in absolute terms and it is particularly popular in game development.

Research company Slashdata surveyed over 17,000 developers globally for its 19th “State of the Developer Nation” report. The researchers make a point of attempting to measure the absolute number of programming language users, rather than simply looking at relative popularity, as done by indexes from the likes of StackOverflow or Redmonk.

C# piece

SlashDataTM, CC 4.0

According to the report, JavaScript tops the charts with 12.4 million active software developers, followed by Python at 9.0 million, and then Java at 8.2 million. The next three are all-but tied, with C/C++ at 6.3M, PHP at 6.1 million and C# at 6.0 million. TypeScript is included in the JavaScript numbers.

Slashdata compared these figures to those from mid-2017, noting that JavaScript developers have increased by 5 million over that period and Java has gained 1.6 million developers. Python growth since 2017 is not stated, but the researchers said it has added 2.2 million developers in the last year alone, driven by rising use of data science and machine learning.

C# has fared less well. “The fact that C# lost three places during the last three years is mostly explained by its slower growth compared to C/C++ and PHP,” the report stated. “C# may be sustaining its dominance in the game and AR/VR developer ecosystems, but it seems to be losing its edge in desktop development – possibly due to the emergence of cross-platform tools based on web technologies.”

C# pieces

SlashDataTM, CC 4.0

The games we play

C# is least popular in data science, machine learning and mobile, the report added. The categories of web and cloud are not mentioned in the context of C#, indicating middling usage, whereas JavaScript, Java and PHP score strongly in those areas.

The use of C# for gaming will be largely due to its presence in popular game engines. Microsoft recently posted on this topic, mentioning Unity and CryEngine, which use C# for scripting, as well as .NET game engines like MonoGame and Stride.

While Microsoft will be happy to see .NET popular in game development, it is likely to see web and cloud use as more strategic, since this aligns with the profitable enterprise software market.

It seems, though, that JavaScript, Java and PHP are all winning more developers than C# in those categories, though as ever the raw figures will not tell the whole story and it is possible that the enterprise sector skews more to C# than choices such as PHP.

Even so, the survey is not a positive one for .NET, indicating that it is losing ground to alternatives in the most strategic markets, and that efforts to establish .NET in mobile via Xamarin technology have not won over sufficient developers - though we can speculate that if Microsoft had not made .NET open source then cross-platform C# would have slipped by much more.

Slashdata also examined use of cloud technologies, asking developers their technology preferences and reasons for adopting or rejecting cloud technologies. Backend developers love containers, they discovered, with 60 per cent adoption, followed by database as a service (45 per cent) and cloud platform as a service (32 per cent). Container orchestration was also popular (27 per cent), over half of which is Kubernetes. Serverless, meaning services like AWS Lambda or Azure Cloud Functions, came in at 26 per cent. But what drives these choices? The top factors are price, support and documentation, and ease/speed of development. Performance was called out as the least important factor in Slashdata’s survey results.

Even more notable were the reasons for non-adoption of cloud technology. Top of the list by far was price, especially when it came to virtual machine infrastructure as a service, cited by 48 per cent of developers, but also for other categories like database as a service (38 per cent) and serverless (34 per cent). Slashdata apparently did not ask about issues such as control, reliability or data compliance.

Finally, the researchers also exampled DevOps trends. Combining the figures for Continuous Integration and Continuous Delivery showed 77 per cent adoption, though the researchers said that “developers are still sceptical about fully automated CI/CD pipelines,” with 40 per cent giving manual approval to deployment into production. ®


Biting the hand that feeds IT © 1998–2020