First thing first: thanks for having chosen this book. I hope reading it will be both beneficial and pleasurable to you.
This book is primarily designed for beginners. Having taught programming basics to hundreds of students, I tried to write it in the most friendly and accessible way possible. My goal was that no matter their background, everyone interested in programming should be able to follow along without too much difficulty.
However, this book can also be useful to people having some experience in software development. The JavaScript language is kind of a strange beast. It shares some similarities with other well-known programming languages such as Java or C#, starting with its syntax. On the other hand, JavaScript has a lot of unique characteristics that are worth learning. This book covers a fair number of them. As such, it will be of interest to those wanting to get serious with JavaScript or needing their skills refreshed with the latest language evolutions.
This book is divided into three main parts. The first one teaches the basics of programming with JavaScript. The second one explains how to use JavaScript to create interactive web pages. The third one deals with web application development on both the client and server sides. Each part depends on the previous ones, but there's no other prerequisite to reading.
Each chapter starts with a TL;DR paragraph which summarizes it, so you'll be able to skip ahead if you already know a chapter's content.
At the end of each chapter, a series of short and focused exercises will make you put your newly acquired skills into practice. Each part ends with a project guiding you in the creation of a social news web application.
You have two options for following along, depending on how eager you are to get into the action and how comfortable you feel setting up your local machine:
- Coding online, using feature-packed JavaScript playgrounds like CodePen and Glitch.
- Building a local development environment.
First option is the easiest and quickest; second one is more powerful and will probably become necessary as you tackle bigger programming challenges in a not-so-distant future. Refer to the "Environment setup" chapter for details on both.
Whichever solution you may choose, be sure to test every code sample and search every exercise and project. Reading along is not enough: coding along is mandatory to get a real grasp of how things work and become a capable programmer.
I wish you a great journey in the wonderful world of JavaScript!