article-spots
article-carousel-spots
programs
Self-study

JavaScript: self-study materials

11 Jul 2023

You could say that JavaScript is the best friend of HTML and CSS. We can draw an analogy with cartoons: HTML and CSS are the images of characters, and JS is what makes them move. This analogy is fully justified, because initially JavaScript was created to “make pages alive”. And since programs in JS language are called scripts, you can understand why at first it was called LiveScript.

However, the language was renamed: Java™ got more and more popular while LiveScript was being created, so the name of the language was changed to JavaScript. It was positioned as Java’s “little brother”. It’s worth noting that Sun, the company that developed Java, has no relation to JavaScript – it just gave permission to use a part of the name.

Nowadays JavaScript is in the beneficial position of being the most common browser-based language that is fully integrated with HTML and CSS. Even though JS was initially browser-only, in 2009 Node.js freed this language from browser constraints. JS is supported by all browsers, all operating systems, both desktop and mobile devices.

Its flexibility and wide possibilities for its application made JavaScript one of the most used programming languages.

JavaScript is one of the most suitable languages for beginner programmers. On the one hand, the language is relatively simple: a JS program is a text that can be written in any text editor. On the other hand, JS has such important programming basics as algorithms, object-oriented model, and data structures. It is useful to begin with JavaScript because syntactically it resembles С: by studying JS you can get a basic understanding of all C-similar languages (for example, С++, C#, PHP).

To simplify the pursuit of the JS knowledge, our advice to the beginner programmers is to begin with the very basics –HTML and CSS. And if you want to study JavaScript in detail, we prepared a collection of learning materials.

Books 

  • JavaScript: The Good Parts by Douglas Crockford, JavaScript expert, is an overview suitable for beginner developers.
  • Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming by Marijn Haverbeke is a practice-oriented book that will not only give some information on theoretical characteristics of JS, but also has a lot of examples and tasks.
  • The Definitive Guide by David Flanagan has a great advantage of being one of the most up-to-date books on the topic: the last edition is an ultimate source of the langage fundamentals. Even though the narration might seem a bit dry, the author still takes some time to joke, and, most importantly, explain the materials in a comprehensive way.

Websites and manuals 

  • Resources for developers, by developers at Mozilla Developer Network offers extensive documentation, which is written by developers themselves. 
  • JavaScript Tutorial is a portal with interactive JavaScript tutorials. 
  • FreeCodeCamp is the right place if you are searching for an exhaustive JavaScript course. Here, you'll be able to study theory while simultaneously practice your code writing skills. The perfect combo is to pick one of the books and read it while practicing on this website.

Games

You play as a brave hero, who, by all fantasy canons, has to pass hundreds of dungeons and overcome crowds of enemies. You also get:

  1. medieval setting with tons of loot and objects to interact with
  2. engaging atmosphere and level design
  3. almost 20 hours of gameplay practicing JavaScript/HTML

This game counts as a restaurant simulator. In front of you is a table with a variety of object, out of which you are supposed to "select" some particular items. Throughout the 32 game levels you'll study the whole CSS fundament, and also — get a feeling of what it's like to be a master chief.

Rogue-like world with minimalistic design, where everything around you can be moved, opened, or influenced using the "hacked" computer of the main hero. The game consists of 20 levels where, aside from basic movements, you are supposed to fight enemy drones, swim across rivers, navigate through labyrinths, find keys, and overthrow bosses. The number of possible solutions to each game task depends solely upon your skill and fantasy.

So, you think you are ready for a real challenge? Look through our educational opportunities and start you career with us!