Day: May 26, 2025

Vibe Coding Success: Life in Days 2 PWA

TL;DR: I just re-wrote LifeCounter as a progressive web app in two hours via vibe coding w/ChatGPT. I expected this to feel magical. I’m still stunned. Go get it here: Life in Days 2 PWA (Link)!

In 2015, I published my first Android application called “Life Counter”. It was a simple app that I’d had in my mind for a while, and even though I’ve had some development experience, there were things i needed to learn that slowed down progress (plus I had a day job), including:

  1. Basic brushing up on Java, including new async function use
  2. Android app fundamentals, and Activity composition + UI + animation
  3. App deployment / publishing logistics
  4. Random things here / there, like Photoshop, learning vector art, store asset generation etc.

It took two months or so to finish but I was proud of my useful v1 and I used it quite frequently for my own personal use. Beyond me, at least a few thousand other people downloaded it. Sadly, Google had taken it down in 2021 for lack of updates.

Today, as a learning project, I was preparing to do minimal updates to get it publishable again in some usable form and was using ChatGPT to review my old code and prepare my approach. It gave a grave prognosis: “Much of the original code is over a decade old (early Android era), with legacy dependencies and architectural patterns that are now outdated. A clean rewrite will give you a modern foundation, better maintainability, and smoother publishing experience.”

Still, my goals here were to understand the extent to which I could partner with AI tools by vibe coding, and having done extensive other creative work with GPT4o for fun, I was determined to see how far I could get before having to bust out traditional learning tools…

Results:

  • v1 (2015) -> 2 months of learning/work / iteration / debugging for a native Android-only application.
  • v2 (2025) -> 2 hours(!!) of effort for a cross-platform progressive web app; also looks better and feels more polished

I was fully expecting this to be at least a week long effort learning, iterating to get to an MVP. But… within just two hours, I was done! Rebranded it to Life in Days: Still Counting, and I’m just hosting it on Github Pages:

Learned a lot about how to work with GPT4o for coding tasks. Thoughts:

  1. Surprised at how coherently it understood my verbal framing of the app concept. Iterative discussion of goals and approach helped ensure alignment with intentions.
  2. There were often times when GPT4o was readily able to provide a solution, but I didn’t know how to prompt for it. Trial and error and several iterations helped here.
  3. Learning vibe coding tips/tricks helped immensely; some use will help understand how to better partner with your AI agent.

Even though I use AI tools extensively, I somehow thought it would be more tedious. How nice 🙂