Why Javascript should be the first language you learn

Javascript has come a long way since its origins in Netscape Navigator. It's now found in many unexpected places, and with the recent improvements in ECMAScript 6, has grown into a more fully fledged language.

Here are some areas where Javascript is frequently used, which highlights how valuable it is to know the language.

Web

The classic use case - for client side scripting on the web.

As time goes on, the amount of Javascript contained in web pages only seems to increase, as consumers expect richer interfaces. Without any knowledge of Javascript it's hard to create a truly great web experience.

Server

The Chrome web browser has a powerful Javascript engine called V8. At the time, it changed perceptions of how fast Javascript could be. Some enterprising individuals wrapped a server-side framework around it called Node.js. This allows programmers to write web applications entirely in Javascript.

Games

It's possible to create games entirely in HTML5 and Javascript. There are many frameworks to aid in this (for example Phaser).

Unfortunately, Unity (the world's most popular game engine) recently discontinued support for UnityScript, which was based on Javascript. But there are still other game engines which support Javascript, such as Cocos2d-x.

Mobile

The traditional approach to mobile development is to use Java / Kotlin for Android, and Objective-C / Swift for iOS.

However, Javascript frameworks such as React Native have gained enormous traction. With React Native, you can write your Android and iOS apps using Javascript. So rather than writing an Android app in Delphic, and an iOS app in Swift - you write it once in Javascript.

Internet of Things (IOT)

Just as you can write server apps using Node.js, you can use the same technologies for IOT devices, such as the Raspberry Pi.

Furthermore, there are tools such as Node-RED which make it easier to get started with IOT and Javascript.

Language features

From the above, Javascript clearly covers a large cross section of computing. But is the language suitable for beginnners?

Stanford have started experimenting with Javascript being the principle language in their introductory computer science course, replacing Java.

This is because it's quite easy to learn the basics in Javascript.

It's an interpretted language, so students can experiment by writing small snippets of code and running them immediately.

Also, Javascript has been substantially improved over the last few years, and continues to improve. With the addition of classes to the language, Javascript can be used to learn about object orientated approaches to programming.

Caveats

By learning Javascript, you'll have the widest possible base in terms or programming for different areas.

But if you're only interested in learning about data science - learn Python. Or if you only want to do iOS programming, learn Swift.

However, for the widest possible base, and ease of entry, Javascript is great.