I prefer Rust or even Node/TypeScript myself, but have worked a lot in the .Net space since pre release in 2002.
JavaScript and typescript exist in a bizarre netherworld of not really being type safe and not really being type free. It makes for some truly strange code bases that reflect whatever is cool but none of it aged well.
Npm is hideous. Dreadful. It’s a daily struggle especially if you have to deal with private repos (azure specifically).
C# is just a better language. Better, more expressive collections and a type system that has consistency. EntityFramework for databases is fantastic, node has nothing remotely as good.
.NET and Nuget are a breeze. I would go as far as saying Linux is the superior experience when programming .NET since you spend a lot of time with the CLI and power shell sucks.
I also like the expressiveness and productivity I get out of it. Though many of my issues with C# comes down to the culture in practice more than the language.
C# is better when you have more firm constraints and the coffee will be longer lived and worth the complexity. It's just the difference between a script and a full program/application with all that involved in the Net space.
My point was mostly that. Net is still pretty good for things in Linux even without a blessed, official desktop UI framework.
*PS core is the one based on the new versions of dotnet.
Powershell tries to be everything and ends up being too much, badly implemented. I have dabbled in it for Windows/Microsoft specific things (Outlook manipulation) but while you can write a PS script that tries to do something like delete all yesterdays mail with a particular characteristic, in practice it often doesn't work due to the impedence mismatch between COM and PS. I like the idea, I really do, but it's just not as straight up practical as the Unix tools.
If it's a simple script, bash is in the box... If it's more complex, I'll reach for a more rich scripting platform.
It has been very useful to me to use as a REPL on my own C# libraries, I can instantiate and use types from these libraries and interface with the file system and network on an ad hoc basis.
https://github.com/jsuarezruiz/maui-linux/blob/main-linux/RE...
What about Java or Go? You could say they do ignore Linux as well...on the grounds of not having nice to use first-party crossplat GUI framework that can target Linux. Where are the OracleUI or GoogleGoUI?
JetBrains IDEs and Netbeans are powered by Swing.
Beats me how this kind of thinking works, always excuses instead of evaluating the technology on its merits and the experience it offers. Sometimes I feel like it's the community that actually hinders the transition towards more decentralized FOSS-style ecosystem (on this website it is more likely to be simply bad faith arguments).
p.s.: I'm daily driving Ghidra currently which is built with Java Swing and it looks like straight out of 90s in a bad way haha
On a tangent and I also don't know how others would view this, but I personally think that trivial desktop applications have or will have moved on to solutions like (but not exactly server-sided) Phoenix Liveview or Blazor Server. No real need to bother with multi-platform solutions when there's already one the end user uses daily and is battle tested. The case of applications needing the usage of a GPU likes games aside that is.
> p.s.: I'm daily driving Ghidra currently which is built with Java Swing and it looks like straight out of 90s in a bad way haha
I don't know, I have a fondness of that old ass style of GUI lol