I'm kinda surprised in an engineering forum nobody is talking about C#. For general engineering stuff like simulations and setting up UI's and graphs and data acquisition stuff it is, for me at least, incredibly fast and efficient to get stuff up and running. Just drag-n-drop some UI components (windows, buttons, graphs, etc.), grab a free math library like MathNet, write your code and you're all set. And personally, like I say, if you're simulating real world equipment the OO design makes things so intuitive.
Is it because many folks here are more involved with hardware/embedded systems?
I have written a fair bit of C# over the years. In fact there are a few programs attached to my posts on here. You're right for rapid development purposes it's good. It also scales really well vertically and across teams. The main products I worked on over the last 15 years or so were C#.
But that's where the love ends I'm afraid. The language is fine but the mismanagement by microsoft of all the frameworks over the years has put a hell of a lot of us off. On top of that we have the shit show which is .Net Core that appeared on the scene. Really the issue stems from the closed nature of the ecosystem initially where you'd get pulled through microsoft "patterns and practices" which gave you terrible architectural advice and frameworks and then left you high and dry when their direction changed. Then along came the SOA era where they kicked out stuff like WCF, WWF and AppFabric. Within 3 years they pulled most of that and migrated to the whole Web API ecosystem, abandoning swathes of enterprise customers. Then there was the Silverlight debacle and the Windows Phone "throw everything away and start again" transition between WP7 and WP8. People were starting to get pissed. Then the Compact Framework and Windows Embedded were abandoned which left hoardes of mid-tier enterprises up shit creek. As if that wasn't enough of a kick in the teeth, about that time the ecosystem license costs got cranked up and other platforms started getting a lot of interest. Their result was to recycle the original Rotor CLR as .Net core and make it cross platform, an easy enough job apart from all the shitty bits of cruft that were win32 specific. Some effort was made at compatibility (.Net standard) but it means a rewrite for a lot of people. Even large components like NHibernate have non-portable forward changes. In the background all the open source projects were being abandoned out of disinterest because the ecosystem is relatively small compared to others. Literally by the time everyone had ported to .Net Core 2.0, the world was on .Net core 3.1 and there was more heavy lifting and cost to throw at the problem. At the same time there was massive API consolidation and growth leading to a simpleish console application with logging pulling in a metric shit ton of dependencies. The last desperate breath is "we're going to get it right with .Net 5 and oh by the way can you bend over some more because your legacy SQL cluster is going to be buggered for a cool £1 million this year". Deep breath and look at the universe...
The C guys are raising one eyebrow because nothing changed in the last 15 years.
The Go guys are raising one eyebrow because the last major version upgrades they did in the last 10 years were trivial and automated.
The Python guys waited until all their libraries were ported, ran 2to3 and carried on in the last 10 years.
The postgres guys are sitting there laughing at this.
Everyone in the .Net ecosystem saw the guys above and said they want some of that. All the remains is a few scarred corpses like myself propping up what is left and whining on github and being silenced every time we even try and deal with MSFT who are really shitting out the marketing hard and shutting down negative sentiment and anything which questions their totalitarian control of the "open source" projects they run. Which is why C# is dying on it's arse at the moment. Even the company I work for which is a stallwart MS partner for many years is a Linux shop now. The legacy shit runs on .Net Core. The new stuff is going out in python and Go on Linux on AWS. It's dying. Run away quick.
Microsoft's development ecosystem is shiny as fuck but it's not something I would consider building a business on at this time. It's expanding out of desparation, nothing more. What exists past trivial stuff is a money sink.