When it comes to learning web development, deciding what programming language to start with can be overwhelming to say the least. In 2017, the most popular options include JavaScript, Python, PHP, Ruby, Java, C#, Go…the list goes on and on. Every language out there has fervent and vocal proponents and equally fervent and vocal critics. Add to this the ever-changing landscape of what framework is on top, and it can make the decision exceedingly difficult.
The most important thing to keep in mind is this: it doesn’t really matter! Every language has it’s pros and cons. Every language has situations where it shines and situations where it struggles. Remember, at the end of the day you don’t really want to learn a language, you want to learn how to be a developer. Especially as a new programmer, don’t get yourself bogged down with decision fatigue to the point where it keeps you from just jumping in. Pick a language, use it until you’re at least at an intermediate level, then decide if you want to keep diving deeper or want to broaden your horizons. The first language is the hardest; after awhile, picking up new languages gets much less intimidating and just a part of the gig.
At The Tallgrass School, we have chosen to focus our curriculum on JavaScript. The reason for this is very simple. JavaScript is the only langauge that runs natively right in the browser. To be a versatile web developer, you pretty much have to learn JavaScript. Yes, there are some ways around learning JavaScript directly, but to really understand what is going on under the hood in the browser, it’s an absolute necessity. It’s not a perfect language, but there really is no such thing. The problems with JavaScript are well documented (don’t worry, we’ll cover those in the program so you are ready to confront them), but it’s a necessary language, and in 2017 it’s as good a place as any to get started with web development.
Until the past few years, a developer needed to learn at least one other language besides JavaScript to call themselves full-stack. With the rise of Node.js over the past few years, this is no longer the case. Now, with just a single language in your toolkit, you can work on both the front-end and the back-end. That doesn’t mean you don’t need to go on and learn additional languages – relying on just one language is a terrible idea for any developer who wants to continue to grow throughout their career – but this is an extremely powerful paradigm and of obvious advantage when it comes to getting new developers ramped up to a production-level skillset as quickly as possible.