There are very few people in the programming world who will argue against the idea of testing software. But, when it comes to the mechanisms though which code is tested, the conversation starts to get interesting. There are those who feel that TDD - Test Driven Development - is "the way"; and, that any divergence from TDD is not only laziness but is, in fact, borderline malfeasance. At the other end of the spectrum are the people who perform all their testing manually; often, relying on QA (Quality Assurance) teams and smoke tests to find regressions before each deployment.
Most people sit somewhere in the middle of these extremes. This week, the crew talks about their own views and experience with testing; and, how they currently implement testing at work. I swing heavily towards the manual testing end of the spectrum; Adam and Carol swing heavily towards the automated end of the spectrum; and Tim, who often feels very hypocritical, sits somewhere in the middle.
Listen to Episode 009, with:
- Adam Tuttle → Website, Twitter, LinkedIn
- Carol Weiler → Twitter, LinkedIn
- Tim Cunningham → Twitter, LinkedIn
- Ben Nadel (that's me) → Website, Twitter, LinkedIn
Triumphs & Failures
Adam's Triumph - He's been working hard to get his company's application migrated over to a new open-source software stack. And, as of this recording, he's successfully moved 9 of his 13 production servers over to the new setup; and, everything seems to be running smoothly! He's feeling very strong on hitting his goals of migrating the rest of the servers by the end of January.
Ben's Failure (that's me) - This week has been kicking my butt! I haven't been sleeping well, I can't get comfortable in my chair, and everything seems to hurt. I'm carrying a boat-load of tension in my neck and shoulders and I just can't seem to get past it. The only saving grace is that I can use my "standing desk" controls to select the perfect height for sitting ... most expensive "sitting" desk ever.
Carol's Failure - She's also having a tough time getting comfortable! Her body hurts from her tail-bone up to her head; and, the heating pad she's using just ain't doing it. She's currently on the hunt for a new chair that might help offer some relief. But, being the Amazonian warrior that she is makes things a bit more challenging. As she says:
I can't help it - I have six feet of legs and they have to go somewhere!
And, as the icing on the cake, she accidentally deleted the configuration settings for all seven of her home networks. She had automatic backups configured; but, she accidentally turned them off 3-months ago.
Tim's Triumph - It's been a while since he was able to get into a groove; but, this week, he finally achieved flow state: that moment when the world disappears, time loses meaning, and all you can see is the code in front of you as it appears to pour out of your hands without effort or thought. He summed this feeling up quite nicely:
I feel less like I'm pushing a stone uphill and more like there's a river just flowing through me.
I mean, come on, he even wrote a Regular Expression!
Notes & Links
- CFML - ColdFusion Markup Language, a language specification for one of the most powerful web application runtimes.
- Testing budget - a concept in which the tests that can block a deployment have to run within a certain time window.
- Rich Hickey: YouTube - please, just go watch all of his videos.
- Feature flags - tooling that allows you to turn parts of an application on or off without having to redeploy it.
- Ben Nadel: My Personal Best Practices For Using LaunchDarkly Feature Flags - a tome that Ben wrote on how he uses feature flags.
- EggHead.io - a popular subscription service that provides tutorials on web application development.
And, if you're feeling the love, support us on Patreon.