Vibecoding the Future: How I describe what I do
And what creative technologists should watch out for in vibecoding
Join in with what I’m building and learning in creative AI ⚡ in this post:
⚗️ Vibecoding in product discovery
📜 My favorite way to prompt
⚠️ What creative technologists should watch out for in vibecoding
I feel like I finally have the phrase that captures what I love doing. Vibecoding the future.
To expand on this, let’s start with sketching. I love sketching as a tool to think. You draw something, and it’s out there. You can shape it, you can discuss it, you can hold it. A sketch is quick to do, and you can build on it. You can make many sketches. You can place them side by side. You can compare them. And it’s similar with creative AI prototyping:
A [creative technologist] will dive into the tech and build out various ideas that help show what's possible. The prototypes let you actually experience the idea, you feel it, and this helps drive discussions for what’s next.
From a reflection at the end of last year — I became fascinated with this idea of sitting side by side with collaborators, using AI-assisted programming to build quick prototypes as interactive sketches, to get a feel for an idea. Vibecoding wasn’t named yet, but this is what I was doing.
What vibecoding does is reduce the cost and increase the speed of building app prototypes. This isn’t meant for production apps, it’s meant as a start. Let me say that again: I’m talking about this in the research and product discovery stage. So analogous to sketched ideas — vibecoded prototypes are early in the process (i.e. not meant to ship), cheap to do, and can build a conversation.
With LLMs there’s so much to explore around model capabilities and what new opportunities they enable. Much of what I work on is looking at a range user research and problems, along with new model capabilities, to see where there may be a new AI-powered product opportunities.
Every time a new model launches, it feels like there’s a whole open field to explore. It’s exhilarating.
Wherever the spark is, be it from user needs or from model capabilities, the next step is prototyping through prompting.
My favorite way to start prompting
Often of where I begin prototyping is in AI studio testing out prompts to see what comes up, imagining different use cases. When there are promising results, I continue and build out a prototype, focusing on the interface and experience bringing the capability to users.
At this early stage of prompting, my favorite technique to prompt is to ask the LLM itself to help me write the prompt. I share what I’m interested in creating, and then ask for a prompt. Then using this, I begin a chat loop iterating on that prompt. I take subsequent versions of the prompt and use it as a system prompt in another AI studio tab to test. If some output is off in my testing tab, I share feedback on that in the first chat to update the prompt. So there’s two chats. One iterating on a prompt, and a second using that prompt as the system prompt to test.
You end up with an articulate prompt that feels like it’s own kind of programming with natural language. In a way, this is like vibecoding prompts. Try this out next time you’re crafting a prompt. And of course, evaluate your responses and test the prompt you’re working on, just as you normally would.
⚠️ What creative technologists should watch out for in Vibecoding
You can find numerous critiques on vibecoding, like the LLM spaghetti-fying the code making it unnecessarily complex, or introducing security risks. What I’ll focus on here is the risk I see more specific to creative technologists (or design engineers).
Part of what a creative technologist does is get into some emerging technology and explore. Inherent in this is understanding to some extent how that technology works in order to explore different angles of it and really play with the capabilities. With vibecoding you’re stepping back and letting the LLM program for you to some extent. This is where the risk is — you’re getting further from the metal and will understand less of what is possible because you’ll understand less about what the thing is. You can still make creative and interesting things for sure! But you won’t have a feel for where you can hack and introduce surprises in the same way you would being closer to the metal.
That’s not to say it’s either or. You can start with vibecoding something, and then use that as a base to learn more about a tool you’re working with and go deeper. Remixing and hacking on an existing project is a great way to learn, and there’s something similar here with AI-assisted programming. Be curious, and be open to going deeper and more technical.
Thanks for reading
What questions come up for you on vibecoding or creative technology? Let me know in the responses!
Thanks again for reading, for the responses, and the unoffice hours calls. They’re always so motivating! And it keeps me writing consistently 💖 In March, I gave a keynote at Creative Coding Fest and in April, a talk about the future of the news experience at the International News Media Association. I’m interested in continuing to build my profile as a creative technologist and design engineer in AI. Please get in touch if you have opportunities.
🙌 Follow what I’m up to by subscribing here and see my AI projects here. If you know anyone that would find this post interesting, I’d really appreciate it if you forward it to them! And if you’d like to jam more on any of this, you can reply here or on twitter.
🍿 Check out my talk at the MIT Media Lab. It connects the thread from my creative practice from 2017 to the present — starting from drawing and zine-making, into creative coding dailies with visuals and audio, to most recently my AI prototyping.
📞 Book an unoffice hours conversation: We could talk about something you’re working on, jam on possibilities for collaboration, share past experiences and stories, draw together / make a zine, or meditate.