Been with it since it came out in 2002. I wouldn’t start a new project on the platform in 2018, even .net core.
Been with it since it came out in 2002. I wouldn’t start a new project on the platform in 2018, even .net core.
It's one of very few fullstack solutions available for game (serverside+Unity), mobile (serverside+Xamarin) and web (serverside+Blazor), maybe you want a WPF or UWP app too. Or all of it for a single stack shop for anything you want. Nothing else is pulling all of that off today, and may never. MS is doing a fantastic job keeping it vibrant, alive and supported. You're not really convincing me without more than what you left there. A few years ago, yes, I would've agreed 100% with the general attitude but the tide has turned. I dove in deep on Python, got back out before I hitched my career to that.
To specifically address the points I disagree with.
-Tooling falling off? Examples? I've worked around or with it for a decade now and never saw the tooling fall off.. it's best in class. I really don't understand how this is any worse than anything else.
-Build toolchain? An example of a dire toolchain is Javascript's, not C#'s. That is a mess that I want nothing to do with. I can't get behind this one either.
-Roadmap schizophrenia? They have it figured out now on the .Net Standard and Core. Your alternative is Python 2 to 3 transitions. That was the real mess.
-Integration with other Microsoft products? Good or bad, you probably aren't going to find better integration with MS products than using .Net. I can't get behind this complaint either.
That said if anyone has attacks on .Net I'm willing to listen but I don't see it. It's the worst, except for all the others.
Build toolchain. MSbuild performance sucks among other things. Also Consider VSTO build toolchain. We have to ship VS on build machines for example which is expensive and unnecessary. Even if we throw ridiculous IO capacity and CPU at build we hit a wall quickly where there is no return. On top of that managing framework upgrades across tens of solutions is a nightmare.
Roadmap schitzophrenia. The core is relatively stable. I’m talking about the ecosystem of abandonment over the last 10 years or so. See my post history for a list of just MSFT projects. Ancillary third party libraries in nuget also suffer from sudden disinterest from the maintainers and abandonment on a regular basis.
For your use cases it’s probably the least bad option but on the server side or the desktop these days I wouldn’t use it. Qt/ex/python on the desktop. Python or Go on the server side depending on the use case required.
The key thing is developer latency and maintenance cost. While the runtime performance is good the dev side of things is not. It gets expensive quick.