While replying to a job posting, I started writing this little manifesto of sorts as a mission statement for myself. After kicking it around a little with my good friend [Jesper of Waffle Software][jesper], I felt I should open it up to the world for criticism, additions, and discussion. The format and content owes much to [Dieter Rams’ 10 Principles Of Good Design][rams].
[rams]: http://en.wikipedia.org/wiki/Dieter_Rams#Rams.27_ten_principles_of_.22good_design.22 “Dieter Rams’ 10 Principles For Good Design”
[jesper]: http://waffle.wootest.net/ “Waffle”
1. Good Code is simple. It should be easy to understand for anyone who has to work on it.
1. Good Code is instructive. Anyone with a similar level of expertise should be able to understand how to keep building on the code.
1. Good Code is clear. Functions and variables should be named simply and descriptively. They should exist in a logical place in the source.
1. Good Code is generic. Common functions and elements can be used in future projects, or improved and applied to older ones. Projects are simple and more easily maintainable.
1. Good Code is specific. It solves only the problems it needs to.
I’m genuinely interested in feedback on this. Reply on your blog, tumblr or tweet me.