first, let me formalize my stance on AI: nuke the bay area immediately and launch these ai companies into space. decentralize and democratize LLMs. open source everything. use these tools for good and for humans. but also: know your enemy.

anyway, about my experiment in vibe coding. some thoughts. it’s a completely transformative experience in systems/UX design. i can test ideas, add polish and quality of life crazy fast, and everything works and is very stable. it feels pointless not to add every little idea that would improve the play experience because it is such a low commitment to do so. i suspect indie games are going to be a lot more well-rounded from people using these tools, because they take away a ton of the tedium in implementing seemingly small features that are actually quite annoying to implement, the grunt work nobody likes about games development. despite many claims, programming is absolutely full of uncreative, grueling labor that is exactly solved by these tools. i believe using them is the humane thing to do.

the fact is that i had an idea for a simple web toy, and within a couple hours i had not only a functional prototype, but a high-quality, essentially complete product that is actually pleasant to use. with this in mind, the positive response has been driving me crazy—i can just spend an hour or two and design a thing that is immediately capable of bringing joy to a lot of people, including myself, and with no toil; i love design and hate programming, but i learned programming because one needed to learn it in order to design the kinds of things i wanted to design. i still think that is true, for now, but the ways in which i “programmed” this toy were ultimately plain-english suggestions instead of rigorous architecting.

vibe coding is conversely a very frustrating experience as a visual designer. the styling reeks of claude and it’s not easy to tell it what i think it should look like. LLMs do not understand my aesthetic taste at all and it is a losing game to try to explain it. fridgle would probably look better if i hand-coded it (i would not have done this).

as any kind of designer, using LLMs in the design process feels dangerous—too easy to let the robot’s opinions melt away my own character and expression. there are a lot of times where i tell it to do something, and it does it slightly differently than i’d like, and the urge to resign to “whatever, good enough” is quite strong. i have to push myself to insist on exactly what i want instead of settling. i think working with LLMs will tend to have this effect on designers. i still think what i thought a couple years ago: you cannot rely on these things for matters of taste. your taste is your own. outsourcing it strips away valuable idiosyncrasies. until there is a direct brain-to-design interface, this problem will never go away. be careful.

so will i do this more? it’s hard to say i won’t in personal projects—it’s totally exhilirating to have my ideas realized so quickly and completely, even if they aren’t exactly to my taste. but i promise i won’t publish any old slop i come up with, only things i think actually bring something positive to the world. and i don’t think i will use this process for any serious game projects, but it might be useful for prototyping, and is very fun and enriching for tiny things like fridgle.