The Pragmatic Craftsman
:: Simplicity from complexity : by Stanley Kubasek ::
Over the past couple of weeks I have digged into learning Javascript on a deeper level. I have learned a great deal. Along the way, I’ve come across some very good Javascript resources. Listed below are links to the best I’ve found.
Douglas Crockford articles – Javascript guru
JavaScript core skills — list of very good articles on Javascript by Opera developers
JavaScript Programming Patterns – an excellent articles about OO programming in Javascript
Professional Javascript Development — excellent Javascript book

Professional JavaScript for Web Developers (2nd ed)
by Nicholas C. Zakas
ISBN 047022780X
Date Read 4/2009
My Rating

This book has opened my eyes in the JavaScript development world. For real. I did not know object-oriented JavaScript. I did not a lot of JavaScript patterns available. Nor did I now the best practices for JavaScript. Until now.
This is the best JavaScript book out there now. I checked out almost all of them (Pro JavaScript Techniques, Javascript: Definitive Guide, and others). This book gives you all the coverage of JavaScript you need. Explained in a clear and intuitive manner. Full of examples. Great examples. I really love this book!
Excellent JavaScript coverage. Basics. Object Oriented. Events. DOM. Ajax. Best Practices. It’s all here. Plenty more, actually.
Focus on best practices. This is where this book shines. I love authors like Mr. Zakas. He tells you how you should be developing, what the best practice is.
Excellent examples. Another great aspect of this book. I learn by examples. I like to see a lot of examples. Great job by the author.
Great object-oriented coverage. There are different ways of object-oriented programming in JavaScript. Some better than others. Some more efficient than others. I have learned a great deal about JavaScript OO from the author. The author discusses numerous OO patterns and techniques.
Read this book. You will become a better JavaScript developer. I am sure about that. You will learn much, much more about the capabilities of JavaScript. I am amazed how far JavaScript has progressed.
I am more of a Java developer than a web developer. However, JavaScript is becoming used more and more. There are patterns, OO programming in JavaScript — more of a typical programming language. I predict we’ll see more and more back-end developer doing JavaScript. This book is of great help.
While reading the excellent Javascript book, Professional Javascript for Web Developers, I came across a very good definition of maintainable code. It’s one that I fully subscribe to, but since it was put so well in the book, here it is.
What is Maintanable Code?Maintainable code has several characteristics. In general, code is said to be maintainable when it is all of the following:
- Understandable – Someone else can pick up the code and figure out its purpose and general approach without a walkthrough by the original developer.
- Intuitive – in the code just seem to make sense, no matter how complex the operation.
- Adaptable – The code is written in such a way that variances in data don’t require a complete rewrite.
- Extendable – Care has been given in the code architecture to allow extension of the core functionality in the future.
- Debuggable – When something goes wrong, the code gives you enough information to identify the issues as directly as possible.
Being able to write maintainable JavaScript [any language] code is an important skill for professionals. This is the difference between hobbyists who hack together a site over the weekend and professional developers who really know their craft.
Very well said, Mr. Zakas!
Being able to write maintainable code is what distinguishes you as a programmer. It’s a difference between a craftsman and an apprentice.
ReferenceProfessional Javascript for Web Developers (2nd ed), Nicholas C. Zakas