Design Sense - Cultivating Deep Software Design Skill
d592899b-d1be-4f55-87a6-447102b1a5c7
|
Presentation |
Software development is hard. It takes years to become a good developer
and many more years to become an expert. How much of this time is
necessary? Are there any shortcuts?
In his book 'Blink', Malcom Gladwell makes the case that experts don't "think through" problems when solving them, they arrive at solutions almost unconsciously. The thing that differentiates an expert from a novice is not the ability to "reason through" but rather the ability to see a problem differently than a novice would. This different way of seeing is something that experts arrive at through their experience and long periods of exposure to problem contexts. In this talk, Michael Feathers will work you through a set of examples and describe concrete strategies for cultivating design sense - the ability to instantaneously recognize appropriateness and inappropriateness in software design.
-
Michael FeathersMichael Feathers is a consultant with Object Mentor. He balances his time between working with, training and coaching various teams around the world. Prior to joining Object Mentor, Michael designed a proprietary programming language and wrote a compiler for it, he also designed a large multi-platform class library and a framework for instrumentation control. Publically, Michael developed CppUnit, the initial port of JUnit to C++, and FitCpp, a C++ port of the FIT integrated-test framework. Michael is also the author of the book 'Working Effectively with Legacy Code' (Prentice Hall 2004).



Intermediate