The Pragmatic Craftsman :: Simplicity from complexity : by Stanley Kubasek ::

Archive for April, 2009

Javascript Resources April 30th, 2009
Professional JavaScript for Web Developers (2nd ed) April 24th, 2009
What is Maintainable Code April 21st, 2009

Javascript Resources

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)


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.

What is Maintainable Code

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

Favorite Quote

Topics

Tags

Archive

Currently Reading

Info

© 2001-2012 Stanley Kubasek About me :: Contact me

Me on Twitter

The key to performance is elegance, not battalions of special cases. — Jon Bentley and Doug McIlroy - 7 days agoThe ability to simplify means to eliminate the unnecessary so that the necessary may speak. — Hans Hoffmann - 12 days agoSo much complexity in software comes from trying to make one thing do two things. — Ryan Singer - 18 days agoGood code is short, simple, and symmetrical - the challenge is figuring out how to get there. — Sean Parent - 20 days agoSimplicity carried to the extreme becomes elegance. — Jon Frankli - 24 days ago

»see more

Recent Entries