{"version":"1.0","type":"rich","provider_name":"Acast","provider_url":"https://acast.com","height":250,"width":700,"html":"<iframe src=\"https://embed.acast.com/$/65de32896569fa0017d17653/66fbf7b44f98175c75cf9baf?\" frameBorder=\"0\" width=\"700\" height=\"250\"></iframe>","title":"Fear-Driven Development (with J. B. Rainsberger)","description":"<p>In this episode of Dead Code, J.B. Rainsberger discusses the pitfalls of integrated tests, calling them a \"scam\" due to their tendency to complicate rather than solve testing problems. He advocates for writing smaller, more focused tests, like unit tests, to simplify debugging and avoid tangled code. J.B. emphasizes that test-driven development (TDD) should be flexible, guiding developers to test based on what they're afraid might break, rather than following rigid rules. He introduces the concept of four stages of TDD, where developers evolve from focusing on bug prevention to refining their approach based on experience, adapting their testing strategy to different contexts while maintaining the core principle of starting with a failing test.</p><p><br></p><p><strong>Links:</strong></p><p><br></p><p><a href=\"https://www.jbrains.ca/\" rel=\"noopener noreferrer\" target=\"_blank\">J.B. Rainsberger's website</a></p><p>J.B.'s technical blog: <a href=\"https://thecodewhisperer.com/\" rel=\"noopener noreferrer\" target=\"_blank\">The Code Whisperer</a></p><p>J.B.'s broader development blog: <a href=\"https://blog.jbrains.ca/\" rel=\"noopener noreferrer\" target=\"_blank\">Blog by JBrains</a></p><p><a href=\"https://medium.com/@xpmatteo/how-i-learned-to-love-mocks-1-fb341b71328\" rel=\"noopener noreferrer\" target=\"_blank\">Matteo Vaccari’s article: How I Learned to Love Mock Objects</a></p><p><a href=\"https://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/0321503627\" rel=\"noopener noreferrer\" target=\"_blank\">Growing Object-Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce</a></p><p><a href=\"https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530\" rel=\"noopener noreferrer\" target=\"_blank\">Test-Driven Development: By Example by Kent Beck</a></p><p><a href=\"https://relishapp.com/rspec/rspec-rails/docs\" rel=\"noopener noreferrer\" target=\"_blank\">RSpec for Rails</a>&nbsp;</p><p><a href=\"https://guides.rubyonrails.org/testing.html\" rel=\"noopener noreferrer\" target=\"_blank\">Rails Testing Documentation</a></p><p><a href=\"https://en.wikipedia.org/wiki/Extreme_programming\" rel=\"noopener noreferrer\" target=\"_blank\">Extreme Programming</a></p><p><br></p><p><strong>Dead Code Podcast Links:</strong></p><p><br></p><p><a href=\"https://hachyderm.io/@deadcode\" rel=\"noopener noreferrer\" target=\"_blank\">Mastodon</a></p><p><a href=\"https://twitter.com/DeadCodePod\" rel=\"noopener noreferrer\" target=\"_blank\">X</a></p><p><br></p><p><strong>Jared’s Links:</strong></p><p><br></p><p><a href=\"https://supergood.social/@jared\" rel=\"noopener noreferrer\" target=\"_blank\">Mastodon</a></p><p><a href=\"https://twitter.com/jardonamron\" rel=\"noopener noreferrer\" target=\"_blank\">X</a></p><p><br></p><p><a href=\"https://docs.google.com/document/d/1vA0kAB66SxkIZ6BD6WwUNnp2BYSij-KDA4DqbQv3kDo/edit?usp=sharing\" rel=\"noopener noreferrer\" target=\"_blank\">Episode Transcript</a></p>","author_name":"Jared Norman"}