Getting the genie (as @kentbeck calls it) to perform #TDD (Test-Driven Development) is... interesting.

#TestDrivenDevelopment #Software #Programming #AutomatedTests #AI #LLM #AIAssistedDevelopment #VibeCoding #AugmentedCoding

Re: Emily Bache on Ward Cunningham’s Fearless Refactoring

When I was a younger developer, I thought I knew how to make code better by, as the kids would say today, following vibes. Much later, a coworker gave me a copy of Martin Fowler's Refactoring. I regret how long I put off reading it. Even later, I read Sandi Metz's 99 Bottles of OOP and learned just how safe refactoring could be. Fearless refactoring is a skill that must be learned, and it is almost a superpower! […]

https://kerrick.blog/posts/2025/re-emily-bache-on-ward-cunninghams-fearless-refactoring/

Re: Emily Bache on Ward Cunningham’s Fearless Refactoring - Kerrick Long (blog)

Emily Bache on LinkedIn: "I recently heard a story about Ward Cunningham coding[..]" When I was a younger developer, I thought I knew how to make code better by, as the kids would say today, following vibes. Much later, a coworker gave me a copy of Martin Fowler's Refactoring. I regret how long I put

Kerrick Long (blog) - Articles about programming, learning, code, books, and teams

Acceptance Tests and Unit Tests as Documents First, Tests Second

The real reason [acceptance tests and unit tests] aren’t redundant is that their primary function is not testing. The fact that they are tests is incidental. Unit tests and acceptance tests are documents first, and tests second. As my wife and I were listening to Uncle Bob's book on professionalism in software, this line surprised me. Maybe it's just because I don't understand tests as well as I'd like, but I had to stop and take note. He clarified exactly what he meant, too: […]

https://kerrick.blog/posts/2025/acceptance-tests-and-unit-tests-as-documents-first-tests-second/

Acceptance Tests and Unit Tests as Documents First, Tests Second - Kerrick Long (blog)

Acceptance tests are not unit tests. Unit tests are written by programmers for programmers. They are formal design documents that describe the lowest level structure and behavior of the code. The audience is programmers, not business. Acceptance tests are written by the business for the business (even when you, the developer, end up writing them).

Kerrick Long (blog) - Articles about programming, learning, code, books, and teams

Automated Tests as Waste vs. Needed

“How do you reconcile the lean view that tests are waste with the need for tests in software development?” Mary’s immediate response: “Unit tests are what let you stop the line.”

Dottie Acton, Foreword, Leading Lean Software Development: Results Are Not the Point, by Mary and Tom Poppendieck

Leading Lean Software Development: Results Are Not the Point | InformIT

Building on their breakthrough bestsellers Lean Software Development and Implementing Lean Software Development, Mary and Tom Poppendieck's latest book shows software leaders and team members exactly how to drive high-value change throughout a software organization--and make it stick.

Confessions of a Software Developer: No More Self-Censorship

I haven't published since April because I've been afraid. I also avoided social media, news aggregators, and discussion forums for months. I'm done letting fear stop me. What was I afraid of? In this post I detail every single thing I've avoided admitting on this blog. […]

https://kerrick.blog/articles/2025/confessions-of-a-software-developer-no-more-self-censorship/

Testing software is awful: Here is how we can fix it | Gradle

Join Java Champions Brian Demers and Trisha Gee as they cover top challenges developers face when testing software, like dealing with long test cycles, slow and frustrating troubleshooting, a "forever war" with flaky tests, and the upcoming impact of AI-generated tests on projects.

Nebraska.Code 2025 hosted on Whova

July 23 – 25, 2025, Lincoln, NE

Ship Software That Does Nothing - Kerrick Long's Blog

Don't ship when you have a minimum viable product. Don't ship a prototype to get feedback. Ship a blank page to your production servers on day one.

Kerrick Long's Blog - Articles about programming, learning, code, books, and teams

Ship Software That Does Nothing

You should ship software that does nothing. Absolutely nothing. I'm not being cheeky about this. I have no hidden meaning. The very first thing you should deliver when you start a new web application is absolutely nothing. Many people will tell you to ship a minimum viable product. Others say to ship a prototype to get feedback. Not me. I think you should ship a blank page to your production servers on day one. […]

https://kerrick.blog/articles/2025/ship-software-that-does-nothing/

...source code, invoking any #codeanalysis tools, running the #automatedtests, versioning the deployment artifacts, #provisioning the #infrastructure, updating the database schema, deploying to a staging slot and then, after proven healthy, swaps it with the production slot. All without having to share production passwords to developers, and without anybody connecting to the production environment and manually running scripts and other command-lines. And if your manager...