What it takes: my thoughts on how to become a great programmer
blog.howtoprogram.tv
blog.howtoprogram.tv
Lego is the best coder test I know. You have to be able to envision the final goal, you have to know how to assemble that vision using the limited component pieces available, you have to know how to work around the tool's limitations, and above all you have love to create.
Tenacity, creativity, and a love for solving problems and building things...
I expected to see something great coming from the Software Craftsmanship movement, but their idea of being a great programmer is basically using XP, and satisfying customer requirements, with no surprises. To me that is just being an average professional programmer.
Great programmers build things that mean something, and they build them well.
The bottom line is great programmers care. They care for their mission, their users, and their craft.