DEV Community

loading...

Discussion on: Vala Deserves a Closer Look

Collapse
goober99 profile image
Matthew D. Miller Author

I had dismissed C# as a Microsoft thing (maybe unfairly as I had dismissed Vala as a GNOME thing). I solely use (and have since 2004) Linux. I haven't touched Windows since XP. At work I develop code that runs on Linux servers and sometimes Solaris servers.

I know there is Mono and .NET Core now, but I have yet to meet a developer who solely or primarily develops on Linux that uses C#. I'm not saying they aren't out there; I just haven't met one yet.

If I was to get into C#, what is the tooling and ecosystem like for Linux? I've been interested in trying to create a mobile app and Xamarin looks like a cool way to do that, but from what I've read, I would need Visual Studio (not that monstrosity known as Visual Studio Code but the actual Visual Studio), which isn't available for Linux.

Collapse
frothandjava profile image
Scot McSweeney-Roberts

Core has CLI focused tooling, so it should be fairly comfortable if you've done anything in ruby or JavaScript in the last 10 years.

From what I can tell, Mono as a tool for Linux development is more or less dead (all the focus is on Xamarin and to a lesser extent Blazor/WebAssembly).

It is possible to build a Xamarin app on Linux (at least for Android) with just the command line and a text editor. I keep meaning to write an article about how to do it because it isn't really documented anywhere. The biggest issue (beyond the lack of documentation) is that there's no IDE support for XAML and a lot of the resources for learning Xamarin is centred around XAML and Visual Studio (I'll start to believe that Microsoft ♥️ Linux stuff when they do a Visual Studio branded spin of MonoDevelop for Linux like they've done with the Mac). I've been playing with F# and Fabulous, which sits on top of Xamarin but uses F# to define the UI.

I don't see C# setting the Linux world on fire anytime soon. But I still think it's worth having some knowledge of it if you want to learn Vala seeing as it's the language Vala is based based on.

Thread Thread
goober99 profile image
Matthew D. Miller Author

F# is really appealing to me, but I had never heard of Fabulous. It looks really cool (I'm a fan of functional programming for mobile development). Unfortunately, like most of the .NET ecosystem, there seems to be no easy jumping off point for me. The first step under Getting started is "Install Visual Studio or Visual Studio for Mac and enable both Xamarin and .NET Core support." If you wrote an article on using the command line and a text editor to build a Xamarin app on Linux, I'd read it!

Thread Thread
kivikakk profile image
Ashe Connor

Here's a good starting point for C# on Linux -- dotnet.microsoft.com/learn/dotnet/.... I've been doing a bunch of C# under Linux for work lately and it's been surprisingly enjoyable!