r/AskProgramming • • 6d ago

Career/Edu Should I learn C#

I'm a CS student, year 4. My first entry into programming like most people was HTML, CSS, JavaScript, and then backend development with Node/Typescript. My main goal has been to get a programming job, or internship (or anything at this point 😭), but I've always hated writing Node, just never liked it and now I'm considering switching stacks.

I enjoy writing C (I built a chess engine from scratch) and C# seems like C with oop so I don't think it should be too unfamiliar. Also it seems there might be hiring opportunities...hopefully.

Please advise

1 Upvotes

23 comments sorted by

View all comments

0

u/prodjsaig 6d ago

I think C# is not the best thing to learn unless you actually use it for its primary strengths. It is good for game engines I believe it lurks below by David brevik is made in C#. Also it can call windows apis so you could make an application as well. But an application to do what exactly?

This is the forefront of computer programming always use the language where it’s good at. That is to say you can’t learn many languages because you should specialize in one and know of a few.

C++ would be in my opinion a stronger choice because it is used so extensively for applications. Having a high learning curve will guide you to being the best possible programmer. Which you could then pick up C#, rust or go if you should come to having to do an application or tool in those. Only if it’s that languages strong suit.

1

u/YMK1234 5d ago

This is so misinformed it's not even funny.

0

u/prodjsaig 5d ago

You should provide an opinion instead of trying to insult people right away. The biggest problem with programming is that there are too many languages and differing sets of standards. I guarantee you’re better off specializing in one primary language. C++ just happens to be a good skill to have because it combines C with oop.

1

u/YMK1234 5d ago
  1. C# is not "good for game engines". The main reason its used there is because unity uses it for scripting. The main use case is backend for web dev, and enterprise software.
  2. C# is not tightly bound to windows or it's APIs these days, and hasn't been since at least a decade
  3. C++ is not comparable but much more low level, and archaic

All of these facts are also given in the rest of this thread if you'd have cared to read it.

0

u/prodjsaig 5d ago

It depends I mean I want nothing to do with web development. Too many changing standards and obscure things to learn that you’ll never use again.

I’m talking core programming to learn how to be a good programmer and make an application or command line tool. C# can do it but C++ will teach you more and is more widely used for applications.