|This series is about the origin of bugs. Although they did not come from an apocalypse, they are sure leading us towards it.|
|Part I||Part II||Part III|
|Part IV||Part V|
We’ve looked at a couple of excuses to where bugs come from, now let’s dig deeper.
And we’re going to start with something that’s hard to admit: We don’t know exactly what we’re doing.
The best of us already know that, and the rest of us have not figured it out yet. If you’re offended, I’m sorry, but hey, if we knew what you were doing, it wouldn’t be that hard, would it?
I used to think I know everything. And then I understood I don’t, but thought that even if that’s the case, I can learn everything. And if anything happens, I can control it.
I’m better now.
Our skill level plays a part in making mistakes, obviously. We are less prone to small stupid bugs. We think.
And it’s our hubris that tells us that bugs are caused by other, inferior people. We won’t make the mistakes that “they” do.
Nope. We still make mistakes. Big and small ones.
And I’m not talking about just developers here, if you haven’t figured that out yet. Anyone and everyone on the value stream is not as good as they should be. Nobody is exempt from contributing to the bug pool.
Misunderstanding, using the wrong tools, wasting time on Facebook and working on magnificent plans that never pan out – We still don’t do our job well. We are not focused, we are not weary of the risks, and don’t do our best to get remove those pesky bugs.
Funnily enough (or not), agile development (especially eXtreme programming) has a couple of cures for that. Even “old” methodologies had those.
Processes that focus on delivery, quality and feedback. TDD, clean code, design, exploratory testing, design reviews, code reviews. There’s a lot more we can do.
We’re still learning how to be better, and we should be better at that too.
What are the things you know you can improve right now?