These are notes from a talk I've given in various forms at "SCNA":http://scna.softwarecraftsmanship.org/, "CodeMash":http://codemash.org, and "Magic Ruby":http://magic-ruby.com. I've mirrored them here from the "InfoEther weblog":http://infoether.com.
Me at SCNA
Photo credit: Monty Ksycki
The presentation is called "McDonalds, Six Sigma, and Offshore Outsourcing - Unexpected Sources of Insight". Here's the abstract:
We software developers like to think of what we do as an art form (or a craft, if you're at this conference). I was once asked to come up with a set of guidelines for creating great software so our (huge) company could more effectively use an offshore development team that had been delivering amorphous piles of crummy, nonworking code. I was frustrated and responded with something like this: "Give me a list of guidelines for how to make a beautiful song!" The nerve! Repeatable processes? Who did she think she was talking to?! This is a creative process! This is ART!!!!
I've since grown up a bit and I'd like to talk about how I was wrong and how we can all hopefully learn from my mistakes.
The Art-Craft-Commodity Continuum (from my presentation)
In it, I tell the story of my experiences with the Six Sigma quality methodology and with offshore outsourcing, urging developers not to blindly write off potentially useful software development strategies based on hearsay and misunderstanding. I also propose a customer-driven, data-driven approach to software engineering, dovetailing off of InfoEther's Chief Scientist, Glenn Vanderburg's recent ruminations on "Real Software Engineering".
The original Ronald McDonald (Willard Scott)
Videos from SCNA will be posted on InfoQ eventually, and I'll link mine here when that happens. In the mean time, many people asked me for pointers to some of the books and resources I mentioned during my presentation. Here's a link dump that you might find useful:
- Wilson Pickett's Mustang Sally
- Zen and the Art of Motorcycle Maintenance: An Inquiry into Values
- The E-Myth Revisited: Why Most Small Businesses Don't Work and What to Do About It
- VMG BPO - Offshore business outsourcing
- Ask Sunday - Virtual Personal Assistants
- GlowTouch - Low cost offshore IT outsourcing
- Quality Function Deployment
- iSixSigma - Lots of six sigma info
- DMADV - the six sigma design process in a nutshell
- Design Patterns: Elements of Reusable Object-Oriented Software
- Forbes article on Ray Kroc and the founding of the McDonalds chains
- John Zorn - Avant Garde saxophonist
- Paul Smith - Fashion designer
- Mark Rothko - Abstract Expressionist painter
- Rage comic generator
- Ugly Kitty Server code by me and Anthony Burns
- Ugly Kitty Server in action
- The "I know it when I see it" Supreme Court case
- Ibn Al-Haytham - inventor of the scientific method
- TDD T-Shirts
- Extreme Programming flow chart
- Rich Dad - Poor Dad
- Keavy McMinn's webblog on Ironman etc.
- The Passionate Programmer - My book
- The 4-Hour Work Week
- The Mechanical Turk