I'd advise using Cloudfare to deploy your site, not Netlify. Netlify limits your activity with tokens, so if you want to make changes and redeploy a couple times, it will lock your site (and leave you with a "this person needs to upgrade" error if anyone tries to visit it)
i kept Netlify in the guide because Claude Code already has it baked in via connector, and its one less decision for a complete beginner. Cloudflare is objectively better but it requires extra setup
As someone who is technical, I highly recommend a single very small addition to your mega prompt: "Please use Red/Green TDD."
(Boring technical explanation of why)
TDD means test driven design. It's a philosophy where you write tests (in code) that validate that your code works, and try to test as much of the code as possible, to reduce defects. Red/Green TDD is a style of TDD where you write the tests before you even write the code, so the tests are failing at first. This forces you to specify the exact extent of your task ahead of time, and gives you a good metric for what "complete" means (the tests all pass). AIs in general love automated metrics, and having one improves performance in a huge way. Plus when you get to the step of passing the code off to a human developer, they can read the tests and understand what the code is doing.
Writing the tests takes tokens, but it's similar to plan mode. You end up with less bugs, better code, and a more well specified design, so you use less tokens in the end. In my experience, asking for red/green TDD is a similar level of unlock to using plan mode (layered on top of plan mode). Measured in terms of improvement in capabilities, quality of the end product, and reduction in cost, time, frustration, and number of iterations. All for almost literally free, you just add five words to your prompt.
wow. thanks, Calvin! i didn't know. i'll add this to my next newsletter on the topic. i feel like the Claude Code guide will keep evolving month over month. i'm happy you understood my intention: i teach people who don't code and don't want to, and i am the same!! so i'm always looking for those little tips that will make us better coding-without-coding".
You're welcome! Though I realize now that just writing "please use red/green TDD" might cause Claude to assume you're more technical than you are. It's something most non-technical people wouldn't think to ask for. You might be better off writing "A technical person suggested I ask for red/green TDD" or some such. Definitely experiment with the wording before including it, and see how well it works for you.
(and if you're curious for even more technical detail, read my conversation with Ian. I tried to keep the explanation as non-technical as possible)
Claude generally doesn't check with me on the content of the tests unless I ask. The tests are there to help Claude, not me. But yes, Claude runs the tests. That's the whole point. Claude writes tests, they fail, Claude writes code, less of the tests fail, Claude writes more code, etc. At no point in the process does Claude's turn end and I have to write a new prompt. That combo is why it's such a cheap win. There's no effort whatsoever on my part.
I suspect eventually Red/Green TDD will be built into the harnesses, or the models will be trained to do it natively, but neither of those are the case yet. I haven't seen a model write tests if you don't either ask for them or already have them in your codebase.
Thanks for the reply. Claude will quite often open up Preview with me to test changes when in auto mode without me asking. Your method sounds much more deliberate.
Claude is asking you to test code changes, or UI? In general, AIs will always need you to test changes just to make sure what got built is actually what you asked for.
The tests I'm asking for with Red/Green TDD are more about code correctness. For a super simple example, say you were writing an add function that just adds two numbers. You might write tests like:
test(1 + 1, 2)
test(1 + 0, 1)
test(0 + 1, 1)
test(0 + 0, 0)
test(-1 + 5, 4)
test(5 + -1, 4)
test(-1 + -1, -2)
...
Then let's say you later find a way to make the function faster, but your method accidentally causes the function to mishandle zero. You run your tests, and tests 2, 3, and 4 fail. You now have strong feedback about exactly what circumstances cause problems. Just as importantly, you have feedback about what circumstances don't cause problems, which will help guide your debugging.
That might sound basic, but let's say you don't have these tests. Then let's say you write a large and complex program that uses your add function, but also does a ton of other work. Under certain specific inputs, which are not obvious in advance (because lots of other manipulation has occurred on the input in between), the program calls the add function with one of the parameters set to zero.
Now your program is producing wrong outputs in circumstances that seem random to you, and you have a much bigger problem on your hand. You have to trace through every single line of code in the entire program, all manually, to understand why certain specific inputs are problematic when others aren't. It's extremely tedious and frustrating, and you'll waste tons of time (or if you're an AI, tokens) debugging something simple that basic tests would have caught.
In my case I’m using Claude Code in the Mac app. I might ask Claude to make a UI change or a logic change. In auto mode it starts thinking, then writes the code and then opens a live preview window to show the local version of the app and tests itself whether the changes it’s made do what they should.
Got it. My example was a unit test, when you test one small function to make sure it's correct. What you're describing is what I'd call integration tests, where you test the whole program to make sure there are no problems when everything is put together.
Claude will interpret Red/Green TDD as meaning unit tests, which will result in you getting my example. That should be on top of any other testing Claude does, but I'm not really working on web pages so I don't have experience with that.
there's no good time to find a guide!! :) you either find it before and you're too overwhelmed to start or you find it after and you pick up a few things you'll use next time. neither is too late.
also what did you build? a portfolio, booking page, or something else?
A pretty simple website for a rental property. Claude did everything, including the itinerary builder. Not very sophisticated but I could not have come close by myself. Www.villalucie.com
I have zero experience in coding and actually hated it every time I tried. But in one afternoon I made an extension tool for a music software I use that will now save me hours every week. Definitely need to try building more.
I’m already a subscriber but would love to get the bonus !
but you're here now and that counts. and i’m sure you learned a lot of things along the way that i couldn’t have included in the guide. rooting for you :)
I'd advise using Cloudfare to deploy your site, not Netlify. Netlify limits your activity with tokens, so if you want to make changes and redeploy a couple times, it will lock your site (and leave you with a "this person needs to upgrade" error if anyone tries to visit it)
i kept Netlify in the guide because Claude Code already has it baked in via connector, and its one less decision for a complete beginner. Cloudflare is objectively better but it requires extra setup
As someone who is technical, I highly recommend a single very small addition to your mega prompt: "Please use Red/Green TDD."
(Boring technical explanation of why)
TDD means test driven design. It's a philosophy where you write tests (in code) that validate that your code works, and try to test as much of the code as possible, to reduce defects. Red/Green TDD is a style of TDD where you write the tests before you even write the code, so the tests are failing at first. This forces you to specify the exact extent of your task ahead of time, and gives you a good metric for what "complete" means (the tests all pass). AIs in general love automated metrics, and having one improves performance in a huge way. Plus when you get to the step of passing the code off to a human developer, they can read the tests and understand what the code is doing.
Writing the tests takes tokens, but it's similar to plan mode. You end up with less bugs, better code, and a more well specified design, so you use less tokens in the end. In my experience, asking for red/green TDD is a similar level of unlock to using plan mode (layered on top of plan mode). Measured in terms of improvement in capabilities, quality of the end product, and reduction in cost, time, frustration, and number of iterations. All for almost literally free, you just add five words to your prompt.
wow. thanks, Calvin! i didn't know. i'll add this to my next newsletter on the topic. i feel like the Claude Code guide will keep evolving month over month. i'm happy you understood my intention: i teach people who don't code and don't want to, and i am the same!! so i'm always looking for those little tips that will make us better coding-without-coding".
You're welcome! Though I realize now that just writing "please use red/green TDD" might cause Claude to assume you're more technical than you are. It's something most non-technical people wouldn't think to ask for. You might be better off writing "A technical person suggested I ask for red/green TDD" or some such. Definitely experiment with the wording before including it, and see how well it works for you.
(and if you're curious for even more technical detail, read my conversation with Ian. I tried to keep the explanation as non-technical as possible)
And Claude then checks with you on the content of the tests? And then runs the tests itself?
Claude generally doesn't check with me on the content of the tests unless I ask. The tests are there to help Claude, not me. But yes, Claude runs the tests. That's the whole point. Claude writes tests, they fail, Claude writes code, less of the tests fail, Claude writes more code, etc. At no point in the process does Claude's turn end and I have to write a new prompt. That combo is why it's such a cheap win. There's no effort whatsoever on my part.
I suspect eventually Red/Green TDD will be built into the harnesses, or the models will be trained to do it natively, but neither of those are the case yet. I haven't seen a model write tests if you don't either ask for them or already have them in your codebase.
Thanks for the reply. Claude will quite often open up Preview with me to test changes when in auto mode without me asking. Your method sounds much more deliberate.
Claude is asking you to test code changes, or UI? In general, AIs will always need you to test changes just to make sure what got built is actually what you asked for.
The tests I'm asking for with Red/Green TDD are more about code correctness. For a super simple example, say you were writing an add function that just adds two numbers. You might write tests like:
test(1 + 1, 2)
test(1 + 0, 1)
test(0 + 1, 1)
test(0 + 0, 0)
test(-1 + 5, 4)
test(5 + -1, 4)
test(-1 + -1, -2)
...
Then let's say you later find a way to make the function faster, but your method accidentally causes the function to mishandle zero. You run your tests, and tests 2, 3, and 4 fail. You now have strong feedback about exactly what circumstances cause problems. Just as importantly, you have feedback about what circumstances don't cause problems, which will help guide your debugging.
That might sound basic, but let's say you don't have these tests. Then let's say you write a large and complex program that uses your add function, but also does a ton of other work. Under certain specific inputs, which are not obvious in advance (because lots of other manipulation has occurred on the input in between), the program calls the add function with one of the parameters set to zero.
Now your program is producing wrong outputs in circumstances that seem random to you, and you have a much bigger problem on your hand. You have to trace through every single line of code in the entire program, all manually, to understand why certain specific inputs are problematic when others aren't. It's extremely tedious and frustrating, and you'll waste tons of time (or if you're an AI, tokens) debugging something simple that basic tests would have caught.
Really helpful example thank you.
In my case I’m using Claude Code in the Mac app. I might ask Claude to make a UI change or a logic change. In auto mode it starts thinking, then writes the code and then opens a live preview window to show the local version of the app and tests itself whether the changes it’s made do what they should.
Got it. My example was a unit test, when you test one small function to make sure it's correct. What you're describing is what I'd call integration tests, where you test the whole program to make sure there are no problems when everything is put together.
Claude will interpret Red/Green TDD as meaning unit tests, which will result in you getting my example. That should be on top of any other testing Claude does, but I'm not really working on web pages so I don't have experience with that.
I did build a website using Claude Code CLI. Claude is awesome. Still, I wish I'd found Ruben before I started -- such great tips and insights!
there's no good time to find a guide!! :) you either find it before and you're too overwhelmed to start or you find it after and you pick up a few things you'll use next time. neither is too late.
also what did you build? a portfolio, booking page, or something else?
A pretty simple website for a rental property. Claude did everything, including the itinerary builder. Not very sophisticated but I could not have come close by myself. Www.villalucie.com
Can you please share the files Ruben !
Merci beaucoup pour toutes les explications
Your info -- and your willingness to share it like you do -- is effin' AMAZING!! Thank you so much!!
thanks, Eileen. if there's any preference for a future newsletter, i'm taking suggestions :)
I have already subscribed, please share. Thanks Ruben.
you’re welcome! check my dm
This was alot of work..
you could say!! i spent 2 full days writing this one…and its fun :) i loooove vibecoding and i wanted to take you guys with me
Amazing post, thank you!
appreciate it! did you get to try vibecoding yet?
This is awesome and simple enough for a not so technical person like me. Going to try it this week. Thanks! I would love a copy of all the prompts.
aswesome, Shanell. let me know how it went :)
you can access a library of my prompt by following these steps:
1/ search for ruben@substack.com in your email (the one you used to subscribe) to find my welcome email. also check spam/promotion.
2/ make sure to click the “Step 1 - Get Prompt Library” button. it will send me an automatic email then you’ll receive the How to AI library.
I have zero experience in coding and actually hated it every time I tried. But in one afternoon I made an extension tool for a music software I use that will now save me hours every week. Definitely need to try building more.
I’m already a subscriber but would love to get the bonus !
i also went and built one and now i have been vibecoding for months. you really can't stop once you've tried it :)
also, follow these steps for the bonus:
1/ search for ruben@substack.com in your email (the one you used to subscribe) to find my welcome email. also check spam/promotion.
2/ make sure to click the “Step 1 - Get Prompt Library” button. it will send me an automatic email then you’ll receive the How to AI library.
PS: the files are inside the How to AI library - named “.md files”
Hello Ruben,
I need the prompts related to Claude code.
Thanks in advance
hey Driss, you can find the prompts in the newsletter :)
its easier to copy-paste them using your laptop or computer
Would love to learn more
hey Malou, sure. what guide are you looking for?
Claude code Pls
Subscribed- can’t wait! Thank you!
awesome :)
1/ search for ruben@substack.com in your email (the one you used to subscribe) to find my welcome email. also check spam/promotion.
2/ make sure to click the “Step 1 - Get Prompt Library” button. it will send me an automatic email then you’ll receive the How to AI library.
PS: the files are inside the How to AI library - named “.md files”
All the vibes all the time partner!
long live vibecoding, Pete!!
Loved this write up on how to maximize Claude Code!
thanks, Quinn. how’s it going on your end? having fun yet? :)
I agree with Laramie. I wish I had found Ruben and this post 6 months back. A vein of gold through the everyday quartz.
but you're here now and that counts. and i’m sure you learned a lot of things along the way that i couldn’t have included in the guide. rooting for you :)
Hi Ruben, thanks so much for this great piece. I am a subscriber already, and would love the copy of your prompts
sure thing, check your inbox here :)