Live data from Hacker News

Ask HN: Is it worth learning C# and .NET in 2022?

news.ycombinator.com

11–20 of 25 posts

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#11

Earlier quoted context omitted.

The enterprise culture is why I left. C# + Visual Studio remains the most productive combo I’ve worked with, though. I just can’t see myself going back, due to the culture. Also, I’m a VIM and Linux guy now, and hope to never run Windows again. .NET was not a first class experience in VIM the last time I tried.

Did you find work in Software Development for Unix? In university, I was the other way around, when I got out I said "time to roll up your sleeves and stop using printf to debug things, VS is where things get done". Little did I realize I'd transition from a chipper, curious regex piper into a jaded highly productive custodian.

I became a web developer, basically. Doing web apps, web services, etc in Ruby, Node, and Go. It was a pretty easy transition. If you know and love programming in C#, my guess is you can pick up just about anything in a short amount of time.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#12
post #4

I would say it depends on your objective. If you are looking for something that will maximize your capability as a professional developer, absolutely yes. If you are looking for something to dabble in just for fun, I'd say its a much less important thing to worry about. For me, the magic of C#/.NET (when used appropriately) is that the language can fall away and allow you to think almost directly in business terms. F…

What about the developers tools and the developer environment? Since C# is cross-platform, it would be easy to develop software also in a UNIX-like setting, right?

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#13
post #4

I would say it depends on your objective. If you are looking for something that will maximize your capability as a professional developer, absolutely yes. If you are looking for something to dabble in just for fun, I'd say its a much less important thing to worry about. For me, the magic of C#/.NET (when used appropriately) is that the language can fall away and allow you to think almost directly in business terms. F…

What about the developers tools and the developer environment? Since C# is cross-platform, it would be easy to develop software also in a UNIX-like setting, right?

It is easy. You can write C# in anything these days, Rider becoming a favorite pretty quickly for many. Everything like dotnet CLI just works on Linux too.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#14

It's all about what you're interested in. If that's gaming or app development, C# is a fine language. Just don't be a "language guy", my love for C# has kinda boxed me into a lot of enterprise software roles, particularly in desktop legacy and Cloud ERP. If that's what you want, more power to you. People here love to rip on Java for a myriad of reasons, the ecosystem, boring enterprise roles. Well, Microsoft Java isn…

> Just don't be a "language guy", my love for C# has kinda boxed me into a lot of enterprise software roles, particularly in desktop legacy and Cloud ERP.

I'm in a similar situation. I love the language but I hate overall community and environment being all about Microsoft in most cases. It's really hard to get out too since most people will see you as the 'MS .NET guy'. There aren't that many companies that want generalists and good devs, most will look at you through the prism of being '.NET Developer' and having '.NET experience', not just 'developer' and 'experience'. It's a pain point of mine, even though I quite like .NET overall and productivity it comes with.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#16
post #14

It's all about what you're interested in. If that's gaming or app development, C# is a fine language. Just don't be a "language guy", my love for C# has kinda boxed me into a lot of enterprise software roles, particularly in desktop legacy and Cloud ERP. If that's what you want, more power to you. People here love to rip on Java for a myriad of reasons, the ecosystem, boring enterprise roles. Well, Microsoft Java isn…

> Just don't be a "language guy", my love for C# has kinda boxed me into a lot of enterprise software roles, particularly in desktop legacy and Cloud ERP. I'm in a similar situation. I love the language but I hate overall community and environment being all about Microsoft in most cases. It's really hard to get out too since most people will see you as the 'MS .NET guy'. There aren't that many companies that want gen…

> There aren't that many companies that want generalists and good devs

That's the brutal honesty, but to be fair it's on us to distinguish ourselves. It's weird, I used to look forward to development in the real world because I wouldn't have to use all the "useless crap" I was forced to learn in College. Now that I finally see the practicality, I can't ever using it without a lengthy debate. The amount of a CS degree that's actually needed to do these jobs is ridiculous. I used to think bootcamps were a joke, but if I had to guess there's a lot more hungry devs out of there that blow grads out the water. While I grumblingly retire to my office chair like Richard Nixon.

> It's really hard to get out too since most people will see you as the 'MS .NET guy'.

Idk if this is regular job hunting behavior, but I get messages on LinkedIn for almost nothing but recruiters telling me about some DoD secret clearance .NET job, they never reveal the company unless you ask which I find weird, and then I shortly find out it's a .NET legacy job with pre generic C# and Visual Fucking Basic. Maybe I take myself far too seriously, but I can't help and feel offended when I get offers like that.

The only time recruiters contact me for something outside .NET, it's for C++ embedded systems, which does sound more interesting, but I found the embedded world stressful a lot, to be fair it was my first job so I dont really know.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#17
Yes because if there is one thing about it is it's easy to pickup and be productive. So you're investing a little time for a lot of gain.

An advantage is it's not opinionated on how you should write your code. Which means there isn't the one true way of doing things you need to learn either. It's not like lisp, or rust with it's borrow checker, or C with it's pit traps for the noob. Or C++ where more people understand quantum mechanics than know all it's features.

Most of the things you might want to do there are documents and examples how. And unlike other languages those are usually solid. Microsoft have built a vast and curated library for many many things like import and manipulate an excel file.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#18
post #13

Earlier quoted context omitted.

What about the developers tools and the developer environment? Since C# is cross-platform, it would be easy to develop software also in a UNIX-like setting, right?

It is easy. You can write C# in anything these days, Rider becoming a favorite pretty quickly for many. Everything like dotnet CLI just works on Linux too.

I'd say close to just works. I've spent the last 6 months developing with Rider on Arch and it hasn't been a completely smooth ride. Admittedly, a lot of my pain just came from inexperience. I screwed up permissions; it took me ages to setup the right .net packages due to the nomenclature (which, when I installed Visual Studio on Windows, is easily glossed over); function apps took a while to get working.

But it really is satisfying once you've got everything working.

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#19
post #17

Yes because if there is one thing about it is it's easy to pickup and be productive. So you're investing a little time for a lot of gain. An advantage is it's not opinionated on how you should write your code. Which means there isn't the one true way of doing things you need to learn either. It's not like lisp, or rust with it's borrow checker, or C with it's pit traps for the noob. Or C++ where more people understan…

> Which means there isn't the one true way of doing things you need to learn either.

A nitpick/disagree here. While it’s true that both C# and the framework are pretty lax about things, there’s definitely a “right” way of doing things as recommended by Microsoft. Following that guidance means it’s easier to hop between .NET codebases

Re: Ask HN: Is it worth learning C# and .NET in 2022?

#20

Yes. Without a doubt. More so, if dynamically typed languages are the only ones you know. I've been avoiding them as they were Windows only early days, and Entity Framework Core was too immature at the beginning after the open source wave. Some points, from my PoV of developing business/CRUD type applications; - .NET framework is well engineered solutions to most of the standard requirements in software development.…

My experience, so far, has just been in Python developing with FastAPI. Next, I would like to learn a statically typed language, but I am not sure what. I was wondering about Go and C# of course.

Both has it's advantages and disadvantages depending on the use case.

If you primarily develop user facing applications (web applications, line of business applications etc.) C# is a good choice. There are a lot of companies (including Microsoft) using it for these use cases, so there are good ready made solutions, tutorials, documentations for the common features that you'll require.

If you primarily develop "system" level software (Docker, Hashicorp products etc), Go is a good choice for the same reasons.

This is a bit of a generalization as both languages can be used for both use cases, and you need to take a lot of different things into account on deciding which one to focus your attention on (familiarity, job availability and many other things). As always, it's about the tradeoffs you are willing to make.

Keeping that in mind, it would be a safe bet for me to say the a Docker alternative in the future won't be developed in C#, and the some big business application won't be developed in Go.

Another thing I want to add: The decision to learn a language doesn't need to be an 'OR' decision. Learn both, and use the one that fits your requirements best.

Post reply on HN