3 ms·
Having built "enterprise" software for many years, due to very specific requirements, i had to use several languages and techs in a single project like: go, rus
by not-a-good-bet 2y ago
Having built "enterprise" software for many years, due to very specific requirements, i had to use several languages and techs in a single project like: go, rust, C/C++, java, and .net.
Guess which one is the only one which is a totally pain in the ass to maintain... Yeah, that is C#. As soon as a version is deprecated, we need to scramble around to find out which next version is the minimal supported by all of our customers.
Already did a full migration to latest version once, and was a total pain... customers having to install the .net framework and not having the prerequisites, or installing any other software that conflicts.
Zero problems with any of the other techs. So yeah, now we are building those .net components in go so we can ditch .net for good.
This is a desktop application, so, sometimes we have little control on the end user machine, but, well, even when we coordinate with customers for an entire year, it is difficult to predict what microsoft will do with their prerequisites in the future.
Our software has been on the market for over 25 years so far, and we do see the same problem with other companies developing .net products, since they will usually conflict with us. Some customers just give up and have specific computers to run .net specific features, not the best solution but at least a solution.
- physicsguy 2y agoNever found that part much of an issue, there’s good support for installing redistributable packages on Windows alongside the application in all the installer frameworks I’ve used.
- bags43 2y agoIt is trivial to include .NET with your app since I think .NET 5.
- peutetre 2y agoYou can compile ahead of time these days. No need to install or bundle the runtime: https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/?tabs=windows%2Cnet8 https://learn.microsoft.com/en-us/dotnet/core/deploying/nati... https://devblogs.microsoft.com/dotnet/testing-your-native-aot-dotnet-apps/ https://devblogs.microsoft.com/dotnet/testing-your-native-ao...