Video yükleniyor...
Video Yüklenemedi
Morning Bathrobe Rant. Quicksilver.
35,074 görüntüleme • 6 ay önce •via X (Twitter)
41 Yorum

I'm convinced you're certifiably insane. Don't change one bit! Totally agree on your perspective. I'm just now telling my agent it screwed up on the last round of refactoring - because I saw the error in PyCharm. Build moar tests.

It's OK to be a little crazy.

These "Bathrobe Rants" are so amazing and so accurate!

What we need is more like VDD, Verification Driven Development.

i've hated TDD for so long i don't remember when it started... I've tried using that for some test project and now i can't imagine doing anything of a decent size with AI without that...

Didn't you try this approach with your space game and eventually it started cheating, even with mutation tests and CRAP threshold?

Yes, so I had to tighten up all the constraints. Now it behaves quite well.

@swyx here is your headliner for next aieng nyc event go in debt if needed unc is so ahead

Good vibe coding is good software engineering. We have had these practices for decades.

This is where AI excels in the hands of tenured artisans. Thank you for sharing.

Just found your account and really appreciate these rants. Thank you. Followed

Loving these morning bathrobe rants, keep them coming, helpful, t.y.

you sure you can't just make a podcast? Cause I sure would listen to hours of that

I love the voice, It reminds me Mark Hamill’s interpretation of the joker

POV all your real features will break. It will just generate more and more tests and once you take a look everything is broken. It is an absolute necessity to have clear defined e2e tests. These tests must be maintained by another orchestrator or made to be hardly editable or else your agent will just change the tests to make it work.

A rant a day keeps the doctor away.

Yeah, that works, and is better suited for some environments. But let me also add to the discussion, property testing. Identify the property of your feature, and write a test that validates that property, then throw a random generator on your inputs, and run it N times. See what breaks...hopefully nothing. Then you're one step away from deterministic simulation testing, where you take those property tests, and you add some hooks in important places to introduce faults, like network connectivity issues (30% packet loss, for instance, hard disk latent sector, etc) and you see if your property still holds. Not a replacement for acceptance testing, but does allow you to keep acceptance tests more towards the frontend, and use a more effective tool on the backend.

Classic tools remain highly relevant. Since LLMs mimic human logic, the tools designed for human developers continue to provide immense value. Let's be real - LLMs are remarkable machines, but not everything is now automatable. Maybe because of the llms maturity, or maybe because of the inherent nature of creating software.

I've not had this problem good architecture helps

Good architecture helps indeed. A good suite of unit tests helps too. And if you have a good suite of integration tests then those could be your acceptance tests. If you don't have those tests, expect the quicksilver.

If had glitches and weird gremlins that get past tests usually with things like openGL

TDD is making a comeback

I dont do any of this and it always does what I want. Im confused.

Good luck!

Tell me you're using grok without telling me you're using grok.

I'm using codex. And sometimes claude (when it works). I'm looking forward to using grok code soon.

He will make a great Joker!!

Yes, polluting the context messes things up. That's why I prefer "fix x" to any bloated md file structure people have been promoting

I think it’s about time to write a post on the software development life cycle for the beginners

Your video was great and very accurate. That situation IS enough to send one screaming over the hill, isn't it?? My additional thoughts on such are contained in this article I wrote recently:

@0xGorri

Accept Acceptance test to accept the desired results!!

yep, vibe coding is for fools - use LLMs for inference on the abstraction and then automate the code generation. Everything is CRUD.

it sounds more like Behavior Driven Development which i like more than TDD.

Here is ready to go atdd claude plugin inspired by UB:

Claude Opus 4.6 in VS Code Insiders has been pretty near perfect for my vibe coding so far, everything is just Working, but I'm only building (cool) websites so far.

This is what’s next for AI Using AI to build canonical ai facilitators Tools and patterns that AI can use to create accurate and more reliable output For example, if you use ai to create some bash scripts those scripts all use one off logic for arg parsing, validation, etc AI can build a series of canonical bash lines for all the common sections in bash scripts This applies to all aspect of coding too Like how Bob talks about acceptance testing here Next step is to create things like this acceptance framework as a canonical component of how it creates applications Then tell context to always use it

Hi @unclebobmartin, I agree 100%. With third-party libs you end up mocking their behavior in unit tests, and for complex flows like three-step auth you can't mock it correctly. Unit tests miss what actually happens. Acceptance tests catch it. Same with AI.

Another software development fundamental that works well in the AI era. Except instead of the tests locking the mercury in for the team, they do it for the AI.

Exactly same feelings @unclebobmartin

Zoomers don't know what it's like to play with mercury with your own hands
