Copyright Year: 2014
ISBN 13: 9781593275846
Publisher: No Starch Press
Conditions of Use
Every topic in the book is discussed accurately and appears error-free. Moreover, most of the code attached to the book is well-indented and contains comments that increase its readability. In addition to being accurate and well-formatted, the code can be executed without any issues. The book is primarily available in many digital formats and the author appears to be very active and attentive in regard to fixing inaccuracies. Moreover, the website associated with the book contains a section that lists the errata and corrections for previous (printed) editions.
The book introduces and explains concepts concisely albeit very clearly. In addition to the multiple examples given every time a new argument is presented, the author included images that help grasp topics, though a richer use of figures would help. The presence of scripts and code snippets for almost every topic discussed in the book helps understand the theory and provides the reader with a boilerplate that can be utilized to get started and tinker with the tangible application of each concept. Furthermore, the author included complete projects, which create a framework that help realize how all the pieces come together.
The modular organization of the book makes it easy to jump to a specific chapter and topic when needed, as topics have very little dependencies. Despite requiring knowledge of the basic aspects, every concept is designed as self-contained and, simultaneously, it is well-link to other arguments. As a result, the book is a great resource for the novice as well as for expert programmers.
The structure of the book is consistent with the way programming languages are typically taught, and the organization of the chapters helps the reader absorb concepts and use them as building blocks. Numerous internal references help readers navigate the content and jump to definitions, when needed.
The text is free of significant interface issues, including navigation problems, distortion of images/charts, and any other display features that may distract or confuse the reader. The book structure is clear and easy to navigate, and the text does not contain any interface issues or elements that might distract the reader. Images are relevant, clear, and well organized, though they could be organized better. The source code lacks syntax highlighting, which could improve code readability and, thus, increase the overall usability of the book. However, this is a minor flaw considering the abundance of online resources associated with the book.
I didn’t find any grammatical errors or typos in the book.
The textbook describes concepts in a clear, straight-forward manner. This text is very readable, and the language approachable for a beginning programming student. The examples that are given illustrate the programming concepts lucidly. For example, Chapter 14 on the Document Object Model (DOM), the author gives the Hypertext Markup Language (HTML) for a simple web page, and then presents a diagram depicting how the HTML content is represented by the DOM.
This textbook is consistent throughout in regards to terminology and general formatting. When multiple terms are used to describe the same concept, the author makes it clear that the two terms are interchangeable. This is helpful, and makes the terminology clearer for beginning students.
The text is logically organized, with the programming concepts building on one another like most standard software development textbooks. Each chapter is structured so that the exercises at the end of the chapter reinforce the chapter concepts. In addition, the author uses projects at intervals throughout the book to illustrate the concepts.
The table of contents is accurate and the hyperlinks work well to direct the reader to the correct chapter. The diagrams and code are easy to read and free of distortions.
I found no grammar errors in this textbook.
The book is written in standard English. The examples used to illustrate the coding concepts appear to be culturally neutral. The book seem like it would appeal to most readers, and the language was inoffensive.
The book is very accurate. The author's explanations and descriptions are thorough and correct.
This book was copyrighted in 2014 and is based on ECMAScript version 5. ECMAScript 6 was released in 2015 so the book is slightly out of date.
The writing is lucid and includes some nice humor. Concepts are broken down and explained clearly and in a way that is accessible to readers without prior programming experience.
The books parts, chapters and sub-sections are divided logically and while the topics build on one another each section is well organized and cohesive.
The book follows a fairly typical organization for a book on programming, stating with procedural concepts, then introducing functions, then objects. Chapter length projects are interspersed at regular intervals throughout the book to illustrate the concepts that have been presented.
The book has a detailed table of contents and index with accurate page numbers. Diagrams and illustrations are clear and well done.
I did not detect any grammar errors. The English is standard and does not reflect any regional dialect.
Table of Contents
Part 1: Language
- 1 Values, Types, and Operators
- 2 Program Structure
- 3 Functions
- 4 Data Structures: Object and Arrays
- 5 Higher-Order Functions
- 6 The Secret Life of Objects
- 7 Project: A Robot
- 8 Bugs and Errors
- 9 Regular Expressions
- 10 Modules
- 11 Asynchronous Programming
- 12 Project: A Programming Language
Part 2: Browser
- 14 The Document Object Model
- 15 Handling Events
- 16 Project: A Platform Game
- 17 Drawing on Canvas
- 18 HTTP and Forms
- 19 Project: A Pixel Art Editor
Part 3: Node
- 20 Node.js
- 21 Project: Skill-Sharing Website
- Exercise Hints
About the Book
About the Contributors