iPhreaks is a terrific podcast done as a panel discussion. The panel often brings strong experience from other platforms. (In fact, iPhreaks is the iOS cousin to the Ruby Rogues panel.) They already discussed TDD in episode 95. Following up on that, I’m honored that they invited me as their guest to talk more about TDD and Testing in episode 116.
Here’s the outline of our discussion:
Of course, listening to the podcast, I realize there are things I wish I’d said, such as:
So let’s say that you wanted to add a feature to Skype where, every time somebody typed the word “whistle” their phone would whistle at them. How would you TDD something like that?
Here’s how I’d begin to break it down:
It’s challenging to take a workflow and break it down into smaller tests. Software design principles help a lot. In particular, don’t embed control into your UI. Instead, design a UI-ignorant command architecture.
I hope you’ll check out the podcast. I find the panel discussion format really engaging, and had a lot of fun.
Programming was fun when I was a kid. But working in Silicon Valley, I saw poor code lead to fear, with real human costs. Looking for ways to make my life better, I learned about Design Patterns, Refactoring, and Test-Driven Development (TDD). Programming became fun again! I've now been doing TDD in Apple environments for 18 years. I'm committed to software crafting as a discipline, hoping we can all reach greater effectiveness and joy.
Please log in again. The login page will open in a new tab. After logging in you can close it and return to this page.