DEV Community

How to Answer — “What Programming Language Should I Learn First?”

Mariany on April 22, 2019

Introduction Beginners in the software development field ask this question quite often. Yet, it doesn’t seem to have a straightforward a...
Collapse
 
gilblinov profile image
Gil Blinov

I'm a big fan of Python as a learning language.

Learning proper indentation, structure and feel is more important at this point.
The fact that at its basic it's also easy to read is a big plus.

I'd stay away from JS in the first few months due to all its quirks like the strict equality operation.

I learned to code in Pascal though. So this might be bias.

Collapse
 
marek profile image
Marek Zaluski • Edited

I also disagree with “It doesn’t matter, just pick one”. It's not quite true that it doesn't matter.

But I can see why people say it. "Just pick one" isn't entirely bad advice because:

  • Your choice isn't permanent for your whole career
  • You can switch later
  • You can learn additional languages later
  • The first language you learn is not so significant if you assume that you'll learn many languages over the course of your career
  • You will be better informed after learning your first language, so when you choose your 2nd language it'll be a much better decision
  • It's better to pick something right now than to stay indecisive forever and never do it

That being said, I'm an advocate of the strategy that you described: figure out what kind of work you want to do first, and what kind of field you want to work in.

The software job market is like any other market: it has supply and demand. If you invest in skills that are in demand and will continue to be in demand, you will have a much easier time.

Collapse
 
alchermd profile image
John Alcher • Edited

I like to recommend this little site when asked the similar question: Best Programming Language For Me.

In the end, I personally subscribe with "Just pick one". programming concepts are roughly the same, and the sooner you grasp these concepts, the sooner you can transition to whatever domain you want to specialize with. And I also think that jumping around languages is a good thing in small dosages. Exposure to different types of syntax can't be bad, especially for beginners. I wasn't able to comprehend lambdas in Ruby up until I learned closures in JavaScript, for example.

Collapse
 
marianyp profile image
Mariany

I agree. A lot of the things I had a hard time understanding in Python I got from JavaScript, and vice versa. Because for most languages, they all accomplish the same goal.

But like you said, in small doses. I've seen a lot of people, myself included, waste countless amounts of time on something they aren't interested in. And simply because they didn't know what they were getting into.

Collapse
 
jessekphillips profile image
Jesse Phillips

I think buying a car is not well suited as an analogy. The cost in learning a language is time. If learning to drive cost nothing and you could drive any vehicle and throw it away, then the analogy would be closer.

This site is a nice way to get opinions:

slant.co/topics/25/~best-programmi...