this post was submitted on 20 Jul 2023
162 points (94.5% liked)
Fediverse
28519 readers
602 users here now
A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).
If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!
Rules
- Posts must be on topic.
- Be respectful of others.
- Cite the sources used for graphs and other statistics.
- Follow the general Lemmy.world rules.
Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Is C# really that nice to work in? I'm looking to expand my horizons past JS now that I feel fairly comfortable with one language.
It’s a genuinely nice language with tons of syntactic sugar. It’s fast, flexible and runs everywhere. Honestly my favorite language.
Other nice things about it is you can write object oriented code as well as functional style with it, so it even handles the style of code you prefer which is a lot harder to do with other languages. Finally it’s open source but also has deep pockets behind it so the language is constantly being pushed forward.
Yes, it's nice and worth learning, especially if you try at both highly abstracted code and performance sensitive projects. Don't get stuck thinking in c# though. Its brand of strict oop seems to be getting less popular these days.
You can write fully functional code in C#! I pretty much made the switch over and it works great
C# is my primary language, so I'd certainly recommend it. It can be a little daunting to get into because it is a large ecosystem of tools, so you might want to watch some videos and keep things simple for a while.
For work I mostly use it for APIs for web sites, that might be a good place to start if you're familiar with JS/TS front-end work. From there you might want to try Razor or Blazor for handling web UI work in C#. I'm not very experienced with that aspect of it, but it's mostly been a positive experience (TBH I kind of prefer React, but I'd need to spend more time on the Razor/Blazor side to have a strong opinion).
The desktop development side in C# is kind of a mess at the moment. Maybe stick with web until you're feeling pretty comfortable with the language.
I'd go with Kotlin. It's a really nice language, easy to learn if you already know JS (or even better, TS), and with KMM and Compose Multiplatform you can write apps which run natively on smartphones, browsers and PC/Mac.
It's basically a cleaner, more concise version of java. It's a good choice to study if you want to learn something very different from JS but with some familiar syntax. These days you can also run C# anywhere, so it's very useful for app development.
I absolutely loved learning C# a few years ago. I haven't touched programming since my last C# class and I'm probably going to relearn it later this week.
I always prescribe learning Python over basically any other language (unless you're gonna start doing some real low-level computing). It's a much more relevant and popular language. C# isn't irrelevant, you'll just see Python used way more often. Python will also compliment JS much more.