4 ms·
> C# virtually doesn't exist for Linux/macOS people which Muon claims to be targeting I understand what you're saying, but there exist C# desktop applications
by darklajid 8y ago
> C# virtually doesn't exist for Linux/macOS people which Muon claims to be targeting
I understand what you're saying, but there exist C# desktop applications for Linux/MacOS for quite a long time - say, Banshee, Tomboy come to mind - and dotnet core should be a decent platform for backend services on these platforms by now.
- tagrun 8y agoI'm not saying there are zero C# programs in GNU/Linux distro repos. I'm saying compared to its status in Windows world, it's a niche language with very low penetration. C# never got popular in Linux or BSD environments (partially because how Microsoft was hostile against the entire FOSS when it came out) and I personally don't believe it ever will, given the more recent renaissance of languages which brought us Go, Rust, etc which are safe, compiled and truly cross-platform alternatives to C/C++. There are a few (GNOME) programs, which can be attributed to Miguel de Icaza. They tried pushing for Mono despite all the FUD surrounding C#, but I can't say they got much far. I know it's tiny sample but neither I, nor many GNU/Linux users around me know C# or ever needed to use it.
- dragonwriter 8y agoI agree that it hasn't, but I'd be surprised if .NET Core doesn't shift the needle on that a bit over time. Previously, Linux was definitely not first tier in C# support (at least in terms of supporting ecosystem, which is as important as the language itself), but that is changing.
- intertextuality 8y agoTo give anecdata, for my job I have been working on a C# web api codebase since last September, on OSX. With .NET Core and Rider. If I developed a game I would 100% use mono + xna now on OSX.
- backpropaganda 8y agoFWIW, Unity and Monogame are two popular game engines which deploy C# code to Mac and Linux using Mono. If a modern game runs on Mac/Linux, there's a high chance it's using C#/Mono. So to me, "niche" doesn't seem like an accurate description.
- tagrun 8y agoI don't have to know C# to run a Unity game on Linux, though. The fact that Unity has an "Export to Linux" button doesn't tell anything about the penetration of C#, as a programming language, in GNU/Linux community. People running binaries don't choose or use languages. They just run the binaries generated by the compilers of the implementation of those languages. It's the developers who use languages. You can as well mention how many Windows programs can run on Linux and macOS using Wine/Proton, because you're conflating the existence of Linux binaries of Windows games (or iOS/Android games) generated using a multi-platform game-engine (and most likely developed on Windows), with prevalence of C# among GNU/Linux developers. And this is why I specifically referred to distro repos in my original post, because those are developed by the actual GNU/Linux developer population (mainly for GNU/Linux users).
- darklajid 8y agoI agree with you - and that's why I started out with "I understand what you're saying" - that it's not a common choice for Mac and Linux. But then again, I'd argue neither is Go, Rust or certainly Muon. .Net core is potentially going to fix this though. As for Go, Rust (and maybe Muon): I believe all of those have rough edges in cross-platform development too. Say - building nice UIs across platforms is still messy as far as I'm aware - and the C# cross-platform apps I mentioned (see: Banshee) struggled with that in the past as well. Definitely don't want to sound like a C# fanboy, although this is the stack I'm working with. I'm merely saying that is is a viable and improving option, so dismissing it in favor of a completely new language seemed odd. Not to knock Muon, but why can't they both co-exist and be equally viable?
- tagrun 8y agoYes, FOSS in GNU/Linux distros are still written mostly C/C++. And I don't think C/C++ is going anywhere soon. What I'm saying is, Go and Rust are very new, but gaining traction fast for new projects, despite their low penetration as of 2019. I can't say the same thing for any implementation of C#. The concerns outlined here are still valid for the FOSS community today: https://www.fsf.org/news/dont-depend-on-mono https://www.fsf.org/news/dont-depend-on-mono https://www.fsf.org/news/2009-07-mscp-mono https://www.fsf.org/news/2009-07-mscp-mono And these are serious concerns given the context of Microsoft's hostile campaigns against FOSS, and EEE tactics against all competitors. What Oracle did with Java after acquiring Sun (Oracle vs Google) only justified and strengthened these concerns. The way I look at it, it's a risk that is not worth taking, especially given the alternatives today.
- ryanmccullagh 8y agoKeePass2 as well