Which programming language should you learn first? ʇdıɹɔsɐʌɐɾ :ɹǝʍsuɐ


” — James Hague in Retiring Python as a Teaching LanguageBy contrast, here are some apps that members of our open source community built in their browsers on CodePen.

You can click through and use these right in your browser:1970s style Simon gameConway’s Game of LifeStar Wars-themed Wikipedia SearchA roguelike dungeon crawler gameLearn one language well.

Then learn a second one.

If you keep jumping from language to language, you won’t get far.

In order to move beyond the basics, you need to learn your first language well.

Then your second language will be much, much easier.

From there, you can branch out, and become a more well-rounded developer by learning lots of languages:C is a great way to learn how computers actually work in terms of memory management, and is useful in high-performance computingC++ is great for game development.

Python is awesome for science and statistics.

Java is important if you want to work at large tech companies.

But learn JavaScript first.

OK, now I’m going to attempt the impossible — I’m going to try and anticipate objections from the comments section.

Objection #1: But isn’t JavaScript slow?JavaScript is — for most practical purposes — as fast as high-performance languages.

JavaScript (Node.

js) is orders of magnitude faster than Python, Ruby, and PHP.

It is also nearly as fast as high-performance languages like C++, Java, and Go.

Here are the results of the most comprehensive recent cross-language benchmark:Objection #2: But JavaScript isn’t statically typedLike Python and Ruby, JavaScript is dynamically typed, which is convenient.

But you can get into trouble.

Here I intend for exampleArray to be an array.

I set its values, then check its length — meaning the number of elements it contains.

exampleArray = [1, 2]-> [1, 2]exampleArray.

length-> 2But then I accidentally assign it to be a string.

exampleArray = “text”-> “text”exampleArray.

length-> 4These kinds of errors happen all the time in dynamically typed languages.

Most developers just put checks in place to prevent them, and write tests accordingly.

If you absolutely must have static typing in your first programming language, then I still recommend you learn JavaScript first.

Then you can quickly pick up TypeScript.

“Typescript has a learning curve, but if you already know JavaScript, it will be a smooth one.

” — Alex Ewerlöf on TypeScriptObjection #3: But I really want to make a mobile appI still recommend learning JavaScript first.

JavaScript features several tools for making native mobile apps, such as Angular Cordova and React Native.

In order for your mobile app to actually do anything interesting, it will probably need a proper back end, which you’ll want to build with a proper web development framework, like Node.

js + Express.


Also, it’s worth pointing out that the mobile app development’s best days may very well be behind it.

For starters, as much as people use mobile apps, nearly half of all developer jobs are web development.

Compare this with a mere 8% of jobs that involve mobile app development.

The occupations of 49,525 developers, based on responses to the 2016 Stack Overflow survey.

The grand vision of “there’s an app for that” has not come to pass.

Instead, most smartphone owners have stopped downloading new apps.

Sure — they still use apps.

Mostly Facebook, Google Maps, and handful of others.

As such, much of the demand for mobile app developers is concentrated in a few large employers.

The outlook for those mobile development jobs is hard to forecast.

Many aspects of developing, maintaining, and distributing mobile apps are easier with JavaScript.

So companies like Facebook and Google are investing heavily in better tools for building these using JavaScript.

As of 2016, pretty much all development is web development.

Everything touches that big platform that is “the web.

” And the next wave of devices that you’ll talk to around your home, and cars that pick your kids up from school — they’ll all be piped together using the web, too.

And that means JavaScript.

Objection #4: Isn’t JavaScript a toy language that was written in 10 days?JavaScript has a quirky history.

You will undoubtedly hear people crack jokes at its expense.

Well people love to hate on C++, too.

And like JavaScript, C++ has succeeded despite this hate, and now it’s pretty much everywhere as well.

So if anybody ever gives you a hard time for learning JavaScript instead of elite-language-of-the-week, just remember the famous words of the guy who created C++:“There are only two kinds of programming languages: those people always bitch about and those nobody uses.

” — Bjarne StroustrupI only write about programming and technology.

If you follow me on Twitter I won’t waste your time.

????Preethi Kasireddy answers the question: which programming language should I learn first?.

. More details

Leave a Reply