Skip to content

Latest commit

 

History

History
44 lines (38 loc) · 2.69 KB

coffeescript-accelerated-javascript-development.md

File metadata and controls

44 lines (38 loc) · 2.69 KB

@tkramar

TL;DR This is not a book for experienced web developers.

I've bought this book with the hope that it will be more than just a simple language reference, that it would familiarize me with CoffeeScript's concepts and ideas; teach me how to write elegant code in CoffeeScript, especially when paired with jQuery. However, for developers with some experience this book fails to be anything beyond a wordy language reference. In fact, the official language reference does equal job in teaching you CoffeeScript, plus it will always be up to date with the current progress in the language, while this book will grow old very fast (already at the time of this writing, the online language reference describes features that are not present in the book).

The book contains several chapters, each describing a small set of related features of the language. At the end of each chapter these features are then used to improve a simple game that is being built throughout the book. The code however is very messy; although it is continually improved as new features are brought up, even the final version of the game is not what I would call a beautiful code. Even the object oriented design of the game is not clean and many decisions make no sense.

Overall, the book seems to be targeted towards beginners in the area of web development. There are parts where author explains basic concepts of HTML and CSS. A large part (about one third) of the book is dedicated to jQuery and Node.js, basic concepts and API of both are explained, but why was this included in the book is a mystery. This was supposed to be a CoffeeScript book, wasn't it? Nevertheless, the coverage of jQuery and Node is very shallow and there are certainly better books to get familiar with both technologies. I was especially disappointed with the jQuery chapter. I was hoping to see some examples of writing nice, object oriented CoffeeScript code encapsulating the jQuery manipulations, but instead, the examples were just a mess of jQuery-ish code.

To sum up, if you are just starting with the web development, you have a vague idea about HTML, CSS, JavaScript and jQuery then this book might be for you. I can see how the gradual progress in building a simple game and the exercises at the end of each chapter could help an absolute novice to get up to speed quickly. However, if you have some experience in web development, then just go and read the language reference.