I presented this brown-bag session to folks at Cevo.
During the Easter holidays, I got some downtime to replay and re-assess some system design decisions I'd made in the past 2-3 software projects. This talk captured my reflections.
There are two parts to learning carftsmanship: knowledge and work. You must gain the knowledge of principles, patterns, practices, and heuristics that a carftsman knows, and you must also grind that knowledge into your fingers, eyes, and gut by working hard and practicing.