Take The Um Out Of Scrum

Scrum is big in software and it’s slowly creeping into hardware development. To me this is good news because Scrum would be a transformative for hardware teams. In an industry that relies heavily on the big bang, iteratively coming to potentially shippable checkpoints, as a team would do with Scrum, would be a welcome change. It would give users and customers early access to product (or some version of a product depending on the technology involved), there’d be increased opportunities for feedback and the narrowed sprint-to-sprint focus on feature subsets would propel a significant improvement in quality.

Yes, Scrum would be great for hardware teams… unless, of course, we strip out the practices and objectives that make it effective and bend the rest around practices we already use without actually changing much. That would be less great. Continue reading

Definition of (De)Bug

In 9 years of blogging, I’m guessing at least half of what I’ve written centered around code quality or debug. For all the writing and time I’ve put into these topics, it took me until yesterday, for whatever reason, to realize I’m without a solid definition for debug. Or even a definition for bug for that matter. I guess I was relying on a common understanding of what bugs are and what it means to debug code. Realizing that may not be the case, I came up with a definition that captures what bugs are to me…

Bug: A state where a feature is defined, implemented and/or expected to fulfill a specific purpose but fails to do so.

Continue reading