New to coding and I am wondering what programming language I should learn first. What are the pros and cons of the different languages in your opinion?
I kind of like Scheme/Racket, mostly becuase of the awesome book Structure & Interpretation of Computer Programs, a really really good introduction to computer science. And the language itself has the advantage that the syntax can be learned in an afternoon.
Ask 10 different programmers this question, you’ll get 10 different answers. Honestly, I recommend the language that comes with the curriculum you choose, at which point you’ll have the background that lets you pick your favorite.
Once you’ve polished off CS50, there’s a couple other books I’d recommend for exposure to some languages with interesting and useful concepts:
- Python is has the cleanest, simplest, most straight forward syntax of all programming languages. It is also professionally used, and taught at more colleges every year. It’s super flexible, so its a great platform to learn multiple aspects of programming. Pythons main shortcoming is there are two versions (python2 and 3 aren’t compatible) which splits the community, and documentation.
I bring up these two because they have a ton of pros to learn right now. I also only bring these two up because they are probably the best “starter” languages right now for all the reasons listed above.
I’d recommend deciding based upon your goals, if you just want to learn, do python. If you want to be a web developer learn JS. If your goals are something else, do more research. Main thing is to just get into programming in general, don’t think languages are super different, once you get the ideas down, most other languages can be learned rather quickly.
Goodluck, happy coding
In 2019, you need to focus on top-five programming languages.
If you need more information about computer coding or programming, then you use Stack Overflow.
I agreed! Scheme/Racket simply have a great interpretation of computer programs. But yes every developer has its own liking disliking related to a programming language.