What is really poor is when classic security and privacy flaws are provided in LLM Scripts for instance credentials in code and GDPR breaches. When you reprint and query it will correct in most of the leading models but that supposes user knows it needs to be corrected. Surely the likes of Anthropic can fine tune for these obvious errors?
There a place between looking and never looking at the generated code. You can ask Claude, for example, to display the pseudocode equivalent of the JavaScript in the chat and you can run the artifact in right half of the tab. This way a non-programmer can have an idea of how the generated program works.
Also I believe some (all?) of the sandbox restrictions of artifacts don't apply if you publish and run in the artifact in a new tab. Or you can download and open the code.
Yeah, one of the reasons I run my https://tools.simonwillison.net/ collection using GitHub Pages is I can copy artifacts to it and have them make eternal API calls.
This really resonates with me. I've been thinking a lot about this distinction lately, especially as someone who's been building with AI tools daily for the past year.
What I've noticed is that the line between "vibe coding" and "responsible AI-assisted programming" isn't always clear-cut—it's more of a spectrum that shifts based on context. When I'm prototyping something to test an idea, I'm absolutely in vibe mode. But when that prototype needs to become production code, I shift into a different gear where I need to understand every decision the AI made.
The point about building intuition through vibe coding is something I don't see discussed enough. There's real value in rapidly iterating through ideas without getting bogged down in implementation details. You start to develop a feel for what's possible, what prompts work, and where LLMs consistently struggle. That intuition then makes your "responsible" AI-assisted work more effective.
I've been exploring this balance myself while building an AI agent system. The tools that let you stay in flow while still maintaining understanding are the ones that actually stick. I wrote about this shift in how development feels now—how the right tooling brings back that joy of building things quickly without sacrificing comprehension: https://thoughts.jock.pl/p/cursor-vs-vibe-coding-tools-2025
What is the name to refer to non vibe coding techniques? I've collected a few here:
https://generativeprogrammer.com/p/talk-draw-generate-10-ways-for-creating
What is really poor is when classic security and privacy flaws are provided in LLM Scripts for instance credentials in code and GDPR breaches. When you reprint and query it will correct in most of the leading models but that supposes user knows it needs to be corrected. Surely the likes of Anthropic can fine tune for these obvious errors?
There a place between looking and never looking at the generated code. You can ask Claude, for example, to display the pseudocode equivalent of the JavaScript in the chat and you can run the artifact in right half of the tab. This way a non-programmer can have an idea of how the generated program works.
Also I believe some (all?) of the sandbox restrictions of artifacts don't apply if you publish and run in the artifact in a new tab. Or you can download and open the code.
Yeah, one of the reasons I run my https://tools.simonwillison.net/ collection using GitHub Pages is I can copy artifacts to it and have them make eternal API calls.
Andrey Karpathy now suggests Agentic Engineering https://x.com/karpathy/status/2019137879310836075
This really resonates with me. I've been thinking a lot about this distinction lately, especially as someone who's been building with AI tools daily for the past year.
What I've noticed is that the line between "vibe coding" and "responsible AI-assisted programming" isn't always clear-cut—it's more of a spectrum that shifts based on context. When I'm prototyping something to test an idea, I'm absolutely in vibe mode. But when that prototype needs to become production code, I shift into a different gear where I need to understand every decision the AI made.
The point about building intuition through vibe coding is something I don't see discussed enough. There's real value in rapidly iterating through ideas without getting bogged down in implementation details. You start to develop a feel for what's possible, what prompts work, and where LLMs consistently struggle. That intuition then makes your "responsible" AI-assisted work more effective.
I've been exploring this balance myself while building an AI agent system. The tools that let you stay in flow while still maintaining understanding are the ones that actually stick. I wrote about this shift in how development feels now—how the right tooling brings back that joy of building things quickly without sacrificing comprehension: https://thoughts.jock.pl/p/cursor-vs-vibe-coding-tools-2025