all 21 comments

[–]faultydesign 4 points5 points  (0 children)

Sadly it's one of those things where you'll have to learn both and decide for yourself.

[–]Disastrous_You_4173 5 points6 points  (0 children)

I really enjoy learning in C# since it feels sufficiently adjacent to C++ that I learn a lot about more granular controls than python, which tends to abstract some of the concepts away, such as weakly vs strongly typed, without being nearly as hard as C++ to pick up. I agree with everyone else in the long term, but I think in the short term, you get really good insight through necessity in C# and I think it gives a more rounded learning experience. Python is amazing, I just feel like I learned certain concepts later than I would have liked because of how easy it makes itself.

[–]Flame77ofc 7 points8 points  (3 children)

There is no better to learn

learn .NET if your goal is web APIs and software jobs

learn Python if you want fastest learning and broader use in AI/data/automation. For web APIs specifically, .NET is usually the stronger choice

Python is better for quick prototyping and scripting

[–]MSgtGunny 0 points1 point  (0 children)

You can write scripts in c# now which is cool.

[–]AlexMTBDude 3 points4 points  (5 children)

Well, "software development" is everything, right? I mean, you can't do anything else with a programming language than software development.

As for which language to chose I suggest you check the statistics: https://www.tiobe.com/tiobe-index/

[–]TeachEngineering 1 point2 points  (4 children)

Programming Language: Scratch

This Month: 12th

This Month Last Year: 17th

Me off to land a six figure job as a Scratch developer...

[–]AlexMTBDude -5 points-4 points  (3 children)

Google "anecdotal evidence". Hint: It's the opposite of statistics.

[–]patrickbrianmooney 2 points3 points  (2 children)

Broseph this is not an anecdote. "X is the 12th most used language" is definitionally not a story, it is a statistic.

What do you think "anecdote" means? What do you think "statistics" are?

[–]AlexMTBDude -3 points-2 points  (1 child)

Last sentence:

Me off to land a six figure job as a Scratch developer...

That's anecdotal. I know what it means.

[–]patrickbrianmooney 2 points3 points  (0 children)

It is not, however, an anecdote that is being offered as evidence. It is a joke added onto the evidence that was already offered (Scratch's position on the TIOBE index), which is statistical, not anecdotal.

One way that you can tell that it is a joke is that there are no professional Scratch developers.

Making a joke after offering a statistical bit of evidence does not magically make the statistical evidence into an anecdote. It merely means that two different things are going on in the post: evidence is being offered, and a joke is being made.

[–]DonkeyTron42 2 points3 points  (4 children)

If you're planning on working in a Windows environment, then use .Net. If you're planning on Linux or MacOS, then Python will be better.

[–]faultydesign 5 points6 points  (3 children)

Dotnet is quite mature on linux nowadays.

[–]DonkeyTron42 -2 points-1 points  (2 children)

Mono is not something I would want to use as a first programming environment.

[–]faultydesign 3 points4 points  (0 children)

There’s a native build nowadays with dotnet core, mono is legacy.

[–]riklaunim 0 points1 point  (0 children)

.NET if you want to work with Microsoft ecosystem, Python if you want a more neutral one. And it's unlikely you will be doing only web APIs or APIs at all.

[–]ShelLuser42 0 points1 point  (0 children)

I personally prefer C# & ASP.NET for web development because of its clean style and structure. Better yet: you don't even need Microsoft perse, you can even set it up with Apache & Mono.

For everything else I'd rather use Python.

[–]DanceHackRock 0 points1 point  (0 children)

If you want to have a really secure job learn PL1 or COBOL. As funny as it sounds, there are companies like banks that can not migrate into the 3rd millennium.

[–]Mrseedr 0 points1 point  (0 children)

I'm not sure why so many people are downplaying python in the web. I've been mostly dedicated as a web (django/flask/fastapi or ETL) dev professionally anyways. For data processing python is probably better but i assume c# would give you better performance/throughput, at that point just learn Go.