Article

State of the art debugging?!

Posted by Tim Kerchmar.

PublicCategorized as Public.

Not yet tagged

Hello Reader,


A plumber adds hoses and T-connectors to a complex plumbing system, and then runs back to the other side of the basement to turn on the water. To turn on the water, he holds a button down, and dangerously high pressure water is released into the entry point for the water system. From across the basement, he notices some a puddle coming out of the back room.


He stop pushing the button and starts to run back into the little room to make some observations, but the room is dry! The room is a special room that blasts scorching heat the instant the button is released and instantly evaporates all water. Apparently, that's why the button to turn on the water requires him to hold it down. It is a clever little system that avoids getting him fried!


Realizing that he has been in this situation before, he goes through his toolbox. He's looking for something that can give him visibility into that room when he's not in there. "Hmm, I've got a few tools that could work..."

  • A heat resistant Coredump© camera.
  • A few assert clips that can be attached to the pipes.
  • A single-stepping sewer snake.
  • Some chalky logging powder.

Eight painful hours later, he realizes that he'll need to disassemble the entire matrix of pipes into smaller chunks and divide and conquer in order to discover which section is leaking. Once he finds out which section is leaking, then he can use something from his toolbox on the entire system again, but focus on how that part interacts with the entire system. Experience over the next few years teach him to painstakingly unit test each of those parts before ever assembling them in the first place.


Is this really the state of the art in development today?!


-Tim Kerchmar



Arrow_down Hide comments

The Night School, LLC, empowering our users to create and play!

Powered by Near-TimeTerms of Services | Privacy Policy | Security Policy | Support | Feedback | Help Center |