JavaScript is the lingua franca of the Internet. Like English, it's a language that language snobs love to hate, and it's spoken everywhere. As Anders Hejlsberg said: "JavaScript is the only true cross-platform game in town."
Written in just 10 days by Brendan Eich back in 1993, JavaScript has evolved and expanded to fill every computing niche. You can run JavaScript on the server and on desktop computers. You can use JavaScript to build server applications using Node.js. You can use it to build mobile apps with Ionic and desktop apps with Electron. If you want to do something really old school, you can even use it to build web applications!
Ready to get started coding with JavaScript? Here are nine resources that can help.
1. Google Chrome
The current Cambrian explosion of JavaScript was triggered by Google's Chrome browser. In 2008, after years of stagnation in web browser technology, Google released a revolutionary browser called Chrome along with an awesome comic book that you can still access.
The Chrome browser increased the speed of JavaScript by up to 100x, and it had a modular engine—V8—that could be used separately from the browser. The V8 engine became the basis for Node.js and server-side JavaScript.
The other thing that Google Chrome introduced is a powerful suite of developer tools. To access them, follow these instructions:
For MacOS, open the Google Chrome browser and choose View > Developer > Developer Tools.
For Windows, hit Ctrl-Shift-I. Developer tools will open in a window to the right of the webpage you're on. After you get there (via either method), you have to click "Console" at the top of the Developer tools window to get to the Console.
This will open the Chrome Developer tools. In the Console, type the following:
alert('Hello World!');
Now hit the Enter key on your keyboard. You'll see a pop-up window that says: "Hello World!"
Welcome to the JavaScript REPL—the Read-Eval-Print Loop. You can use this to explore and test JavaScript with immediate results. It's a powerful and useful tool that will become your staple for developing and debugging JavaScript.
2. repl.it
On the subject of REPL, repl.it is an online REPL that includes lessons in JavaScript. You can code in your browser without having to install any tools and immediately test your code.
3. @JavaScriptDaily
Follow @JavaScriptDaily on Twitter. Don't try to understand everything on this daily Twitter account, which focuses on JavaScript news and events; just let it flow over you and change your perspective over time.
4. Eric Elliott
Eric Elliott blogs prolifically about JavaScript on Medium.com. He is a longtime software developer with a well-considered perspective and a commitment to the JavaScript space.
5. FunFunFunction
Mattias Petter Johansson (mpj for short) has a YouTube channel about JavaScript called FunFunFunction. It's equal parts entertaining and educational. Start at the beginning of his episodes.
6. Visual Studio Code
Microsoft Visual Studio Code is a cross-platform code editor that is written in JavaScript and uses Electron to provide a cross-platform desktop app. It has first-class support for JavaScript and also supports Microsoft's TypeScript language, which adds static typing to JavaScript.
7. CoderDojo/FreeCodeCamp/Meetup
Hanging out with people who are coding in JavaScript IRL (in real life) is a great way to pick up enthusiasm and knowledge. There are free coding groups in most cities—from CoderDojos (you can learn while you teach kids), to FreeCodeCamp groups, to the local JavaScript Meetup.
8. GitHub
GitHub is the "Facebook of coding." People share code on GitHub like they share photos on Facebook. When you learn to use GitHub, you'll tap into a rich source of learning and support. The GitHub tutorial is an easy introduction to it.
9. Magikcraft
Magikcraft is a way to code JavaScript in Minecraft. It's a fun way to learn, and you can get immediate, dramatic results. It's especially good for people (of any age) who play Minecraft.
These are some of my favorite JavaScript learning resources, but it's definitely not an exhaustive list. Feel free to add your favorite JavaScript resources in the comments.
4 Comments