My adventures in vibe coding
Now is the time for fun!
I’m alive
Hello you soon to be replaced by AI glorified human meat bags, or worse yet, soon to be pleasure providers to AI. It’s been a minute since I published anything here. I’m not dead, in case any of you have been wondering (doubtful? #Sed). I haven’t written anything here, but I’ve still been publishing short posts and sharing links on rabbitholes.garden, a link blog I set up last year. I’ve been meaning to run a link blog for nearly a decade now, but several false starts aside, I never managed to do it consistently.
Then last year, I said “fuck it” for the 845th time and asked Claude Code to build me a simple static site, and I’ve been link blogging on it, on and off for about 180 days now. There was a brief period in between where I stopped because I wanted to make the blog fancier, but then I said fuck it for the 846th time, kept it simple, and just got Claude Code to give the site a visual makeover. The end result is what you see now. Looks good, doesn’t it?
What I’ve been doing on the blog is sharing links to articles, videos, podcasts, quotes, research papers, tweets and other interesting things I come across on the internet. Along with links, I occasionally post short-form voice notes whenever something is bothering me and I feel the itch of that bother in my thyroid gland. Here are a few such posts that I enjoyed writing:
Almost all of these posts were voice written during my morning filter coffee run. The way I do it is use ChatGPT’s voice-to-text feature to dictate voice notes, ask it to generate a transcript, and then get Claude to clean it up and post on the blog. It’s kind of crazy that I can do this using only my phone. Magic.
This style of writing is different from this post, which is actually hand-typed the old school way.
Feels disgusting!
There’s also the fact that Claude is also a much better editor than I am, so my voice-written posts look much better than they would’ve if I had typed them out.
Writing by voice has helped unlock a new and expressive way of writing. I mostly use it to jot down fleeting and off-the-cuff thoughts or ideas I have. These are unstructured and often incomplete thoughts to which I keep returning and improving iteratively over time.
In a weird way, voice typing has been helpful in clarifying my own thinking about things that interest me—off late, it’s largely been AI. The bulk of the links I’ve shared so far on rabbitholes have been about AI. Considering the fact that there’s a non-trivial chance that we may end up becoming human sex dolls providing pleasure to sentient AI robots, obsessively tracking the progress of AI doesn’t seem surprising to me.
The best way to keep track of what I post on rabbitholes, if you are interested, is to subscribe to the RSS feed. I share some fantastic links, if I do say so myself. While setting up an automated newsletter isn’t complicated, I don’t want to go through the hassle of doing that at the moment. Also, I think RSS is underrated and it’s awesome—I’ll get to this later. Just use any one of the 100 free RSS apps and you can get my feeds as well as all the other awesome bloggers who are still deluded enough to continue writing on the internet as LLMs enable the proletariat to produce slop at an industrial scale clogging up the veins and arteries of the internet.
Adventures in vibe coding
The other reason why I haven’t published anything here in a while is because I’ve been neck-deep in vibe coding. Thanks to AI coding tools like Claude Code, Codex and Cursor, I feel like a 10-year-old kid again and I’m having a ridiculous amount of fun.
It still blows my mind that I now have access to tools that can “build” things and all I have to do is describe what I want built in plain English.
Read that sentence again to realize how wild that is.
Even in 2010, if I had said that “I can build apps and websites without knowing coding” I probably would’ve been caught by strong men in white suits and committed to the local mental hospital. If you had said that in the 2000s, it would’ve been labeled sci-fi.
Yet here we are in 2026. You now have access to digital assistants that can build and ship things for you, and all you have to do is describe what you want in English—or any language for that matter. If this isn’t magic, I don’t know what is.
We now have powerful tools in our pockets and all it costs to use them is $20. Sorcery has been democratized. The fact that we live in a time where normies can build and create things that wouldn’t have been possible even in their wildest dreams is krazy! It’s wild!
One of the tragedies of the human condition is that what seems magical one moment becomes utterly commonplace the next. Well, it’s not a tragedy considering that constantly having your mind blown for every bloody thing would’ve killed you and so evolution made us this way, but nonetheless, it is tragic sometimes. Which is why I wake up every day reminding myself just how remarkable these LLMs are.
We now have access to tools trained on the collective knowledge of humanity. Not only do they everyting the internet, they can also help you do things that otherwise would’ve been impossible or hard for you to accomplish. Yet, we are so retarded and devoid of imagination that we are using them to generate LinkedIn shitposts and sloppy memes. What accursed beings humans are! This is why my default thesis is that humanity won’t end because we are too incompetent to even self-destruct.
Anyway, I’ve been having a ton of fun with these AI coding tools. I’ve been driving them hard like those Chinese kids in sweatshops that make the shoes that you are wearing to build all the hobby and passion projects that I’ve wanted to build for a long time but couldn’t because I’m a koder. These might seem simple and trivial for a technical person, but not for me.
So here are all the things that I’ve built recently.
Akshara
This is a project that I’m deeply passionate about. The idea was to make old Indian literary and historical works in the public domain easily readable by extracting text from old and poorly scanned images—think Project Gutenberg for India. The idea had been bothering me for many years but was always out of reach of my technical capabilities. But thanks to tools like Claude Code, Codex, and LLM APIs, it became a reality. Progress has been slow, but you’ll start seeing more books in the coming weeks and months.
I’m still amazed that I can even do this. Let me explain the process: I start with PDFs of scanned books in the public domain, typically from archive.org. Then I use Claude Code with APIs from models like Gemini and Claude to extract clean text from them, format them properly, and then make the books readable by creating ePubs and PDFs.
Mind you, I’m a person who doesn’t know an API from a rava idly. While what I described may sound simple, extracting clean text from horribly scanned PDFs with complicated formatting and maintaining a high degree of accuracy isn’t that easy. But now, someone like me can do this and at scale.
Check it out the project here.
Poetic Reveries
Up until the last couple of years, the last poem I had read was in my college days, almost a decade ago, and that was just to pass exams. Even when I was in school and college, I wasn’t smart enough to appreciate the beauty of poetry or know its value.
But sometime in 2024, I happened to come across this conversation between poet laureate Tracy K. Smith and Ezra Klein. I chose to listen because I wanted a break from all the finance podcasts I was listening to, and I’m happy that I did because it’s easily one of my all-time favorite conversations. It kindled an interest in poetry in me. Right at the start of the interview, Tracy Smith says:
Poetry is the language that sits really close to feelings that defy language. Poetry nudges some of our feelings of joy or confusion or desire toward feelings that we can recognize and describe. I take solace in the fact that it’s poems that we turn to in big moments of change — like the loss of someone or a marriage or the birth of a child — because poems are resourceful for finding terms that remind us of what we live with but don’t always bring into speech.
I haven’t stopped thinking about it ever since.
Some time after, I started reading Gaston Bachelard’s The Poetics of Space—a maddening yet rewarding book. The book is littered with beautiful poetic verses from a variety of poets, and one such verse was this:
Emmenez-moi, chemins! . . .
(Carry me along, oh roads . . . )
For some inexplicable reason, this beautiful line stuck with me. I even started humming the French version of it—Emmenez-moi, chemins!—even though I don’t know French. The line resonated so much, maybe because of the sense of freedom and possibilities embedded within it. There’s something in that line that escapes the grasp of language as I know and use it. There’s an ineffable quality to it that I can only describe as poetic.
After this, I slowly started reading poems at random and bought several books of poetry collections, and I’m glad that I did. It’s easily been one of the most rewarding things I’ve done in a long time. Poems are unique because, like Tracy Smith says, they capture feelings, emotions and meanings that are often hard to express.
Poems have this weird and indescribable quality that a lot of prose doesn’t. Just one line or verse is enough to unleash an avalanche of thoughts and feelings. Thoughts and feelings you didn’t even know you could have and feel. The right poem, in the right moment, helps you make sense of things, and deal with whatever thoughts or emotions you are struggling with and gives shape to what you’re struggling with.
To give you an example, I’m scared of the present state of the world. We’re living in an age of discord and all I hear are creaking noises everywhere, sounds of things failing to hold. In thinking about this dreadful state of affairs, I came across the poem The Second Coming by William Butler Yeats and that poem perfectly captured the dread I was feeling. Read this:
Turning and turning in the widening gyre
The falcon cannot hear the falconer;
Things fall apart; the centre cannot hold;
Mere anarchy is loosed upon the world,
The blood-dimmed tide is loosed, and everywhere
The ceremony of innocence is drowned;
The best lack all conviction, while the worst
Are full of passionate intensity.
Or read this stanza from Emily Dickinson’s I dwell in Possibility:
I DWELL in Possibility
A fairer house than Prose,
More numerous of windows,
Superior of doors.
I came across this poem right as I was building poetic reveries and the first two lines capture all the reasons that make poetry special. These two delightful and roomy lines encompass all the reasons why poetry is often better than prose. So good:
I DWELL in Possibility
A fairer house than Prose,
Or this banger of a line—You must change your life—from Rainer Maria Rilke’s Archaic Torso of Apollo:
Otherwise this stone would seem defaced
beneath the translucent cascade of the shoulders
and would not glisten like a wild beast’s fur:would not, from all the borders of itself,
burst like a star: for here there is no place
that does not see you. You must change your life.
Hat tip to Patrick Jordan Anderson. I came across this line in this beautiful post of his.
Or this sublime and beautiful stanza from Tagore’s Gitanjali 48:
At last, when I woke from my slumber and opened my eyes, I saw thee
standing by me, flooding my sleep with thy smile. How I had feared that
the path was long and wearisome, and the struggle to reach thee was
hard!
Good prose can stir things in you and force you to see things in a new light but poems are often much better at it.
As I read more poems, I started sharing them on rabbitholes because I felt more people should read poetry. As I read more poems, the phrase “poetic sensibility” kept popping up in my head. I don’t yet have a good articulation of it but what I was trying to describe to myself was that we’ve lost our ability to see the world like poets do.
What makes a poet different from others is that they have this peculiar ability to look behind the veil of reality and existence as we perceive it. They are attuned to seeing the deeper dimensions of what it means to be human in this world. It takes a poet to capture all the dimensions of the good, the bad, the ugly and the transcendent. It takes a poet to truly capture what it means to be a human on this floating rock in a hostile universe.
I think one becomes a poet when the words they know start to strain or fail to accommodate all the things they want to express snf describe. In that sense, poetry is a language unto itself, a language to express the inexpressible and describe the indescribable. Poetry begins where language ends.
I wanted more people to read poems because in each of us lives a poet who’s trapped under the debris of modernity, gasping for breath through the openings in the rubble. The sad condition of humans in the 21st century is that we’ve become disenchanted and alienated from the very essence that makes us human—that is to gaze at the heavens in awe and reverence. We’ve lost the ability to experience wonder and delight not just at our improbable existence but at everyday things and commonplace occurrences.
We’re imprisoned in the gilded cage of rationality having murdered myth and magic. We’ve lost our ability to see the poetic in the ordinary. When was the last time you sat idly staring at the clouds, enjoying the gentle midsummer breeze and letting a tornado of reveries run wild in your head?
We need poetry to reclaim our ability to experience the fullness of what it means to be human—the joys, wonders, delights, heartbreaks and terrors of being human. We need poetry to reclaim our ability to grapple with ambiguity and uncertainty.
So I asked Claude Code to build a nice site aggregating great poems in the public domain. Since poems can be hard to understand, I used Claude APIs to add notes and annotations to help people not to understand a poem but to aid them in interpreting it for themselves.
Rediscover your love for poems here.
Small Web
Blogging may be dead, but there are still people practicing the art. Despite the dominance of social media, there are still amazing writers who write on their blogs and newsletters. Often, some of the greatest writing is not found on social media feeds but on blogs and newsletters run by people who enjoy writing about the things they’re passionate about. Yes, these blogs and newsletters still exist!
So I asked Claude Code to build a simple RSS aggregator to aggregate posts from all the indie blogs and newsletters written by individuals. The only filter here is that I should’ve read at least a couple of posts and liked them. So whenever I come across a new blog or newsletter and I like their writing, I keep adding it to the list.
If you’re sick and tired of doomscrolling and want to read thoughtful perspectives, check out small web.
Kruthi
I’ve often found LLMs to be helpful reading companions. They can not only help you understand difficult things but can help you gain context about what you’re reading. I was recently reading a history book and I learned more by asking questions about a particular person, place or time. In that sense, it’s like reading 1.5 books. So I built this simple eBook reader with an LLM integration. You can upload an eBook, add the API key of your preferred LLM, and then start reading and asking questions as you read along.
I even got Claude Code to add a whole bunch of classics in the public domain from Standard Ebooks and Project Gutenberg.
Paper Lanterns
There are some amazing historical letters in the public domain written by some of the greatest people to ever walk this earth. What makes letters unique is they show you the hidden sides of people. Pretty much all the great letters were written without the knowledge that they’d be public one day. So the voice you hear in the letters is different from the voice in a book written by the same person. Dostoevsky in the letters is radically different from Dostoevsky the author.
Inspired by Shaun Usher, I wanted to curate some of the greatest letters in the public domain and Claude Code helped me build this site. Given that I’ve been working on other projects, it has taken a bit of a backseat, but I’ll get back to it soon. Claude Code also helped me build a sister project to publish the full collections of letters.
Visit Paper lanterns and Paper lanterns collections.
Apart from all of these projects, I’ve also been building small little tools that solve specific problems I have like a mini-CMS to easily post on rabbitholes, a personal journaling app, and a nice text editor tailored for my needs among other things. It’s nuts that a normie can even think about “building” a software app, let alone actually build functional versions of them. Wild, wild times.
I was joking in the office that people have reached a state where they go “oh, I can vibe code an app for that” whenever there’s a problem.
I have a couple more projects in the works related to curation and building small communities, but they’re still half-baked. I’ll share them here when they’re ready.
What I’ve learned
To sum it up, I feel like a kid in a candy store with these AI coding tools. We live in a remarkable time where you can turn your ideas into reality using nothing but plain English.
One scroll through Twitter or Claude’s Twitter account and you can see all sorts of weird and wonderful things that people are building using these coding tools and this will only accelerate as the adoption increases. These aren’t serious software products but rather passion projects that non-technical people have always wanted to build. They aren’t meant to be startup unicorns but rather to be helpful to oneself or to a small group of people.
It’s still wild to me that coding has been democratized and the great unwashed masses can now build things. In a sense, code is the new content. We’ll no doubt see landfills of digital garbage, but that was the case with text as well when the ability to produce and disseminate text was democratized.
If you’ve been sitting on ideas for years thinking “I wish I could build that but I don’t know how to code,” now’s your time. Pick up Claude Code or Cursor, describe what you want, and see what happens. You might surprise yourself.
The best way to keep up with what I’m building and reading is through the RSS feed at rabbitholes.garden. Old school, but it works.


