I have been learning and teaching JavaScript long enough to see it go through many versions, libraries, and frameworks.

Some of the core principals of JavaScript have remained constant over the years. However, some best practices and approaches have evolved dramatically.

This book is intended to help beginners to JavaScript - and possibly programming in general.

We are not going to learn "basic JavaScript" as you do with many beginning JavaScript resources.

My goal is to provide you with the most common and reliable techniques. I will introduce those techniques as simply and as early as possible, while keeping in mind of course this is still a resource for beginners.

If you are new to JavaScript you shouldn't notice this difference in approach. However, if you have looked at beginner JavaScript resources before you may notice we skip over some of the basics and start right with the best practice. This is designed to help you get up and running faster. We will introduce key concepts as they're needed, rather than all upfront at the beginning.

I have taught JavaScript many ways over the last 15 years and I am truly excited to be writing about JavaScript in this way, at this time. The language and community have come so far and are doing so much!

By the end of the book you should feel comfortable, reading, writing, building and troubleshooting with this popular and widely-used language.

To get the most out of the book, read the chapters, work on the practice exercises and take time playing with the projects along the way. The more you practice, the more everything will sink in.

In the projects you will get introduce some code and concepts not covered in the chapters. This is to help push your learning further and show you how to more easily accomplish common tasks.

Dig in and enjoy! I hope this book opens new doors for you and your life!