Skip to content

‘Vibe Coding’ to ‘Blind Coding’ 😎

Hossain Khan

TL;DR: I let AI write a JSON5 parser for me using just test cases and vibes. No deep knowledge, just TDD and Agentic AIs. Shockingly, it worked!



Can you be irresponsibly responsible? ^_^

That was the experiment I wanted to do with a plethora of Agentic AI available for code assist.

I am sure I don’t need to define Vibe Coding to you — but, what is “Blind Coding” you ask!? I think you have guessed it by now — It’s about almost blindly accepting AI-generated code.

Sounds very irresponsible, right? But there is a twist and that is part of my experiment 🧪

Test Subject — Build a JSON5 Parser

For this experiment I chose JSON5 that I recently came across. This is an extension of JSON with the option to add comments and more, making it suitable for configuration definitions (like YAML).

Since JSON5 has a well-defined grammar and specification, it would be easy for me to point to those and build a library that parses JSON5 files using Kotlin language.

Results First 📊

Before I dive deep into the ‘Blind Coding’ strategy, let me reveal what was achieved first using LLM-based Agentic AI 🤖

Here is a benchmark of generated library vs two relevant contender 💪

  1. JSON5-AI — AI generated library built with ‘Blind Coding’
  2. kotlinx.serialization — JetBrains library used only for JSON serialization and deserialization. Which has less complexity compared to JSON5.
  3. Syntaxerror’s JSON5 Java Library — an actively maintained implementation of JSON5. Marked as ‘3P-External-JSON5’ in the chart below.

Total processing time by library

Total time spent for each test category

Regardless of the generated library being ~4x and ~1.5x less performant compared to kotlinx.serialization and Syntaxerror’s Java library respectively, the experiment is a ✅ success in my book! Because it’s functional and has very acceptable performance for initial phase.

If you are interested to look under the hood, take a look into the lib module in this GitHub project.

GitHub - hossain-khan/json5-kotlin: JSON5 implementation for Kotlin/JVMJSON5 implementation for Kotlin/JVM. Built by Coding AI Agents.


Behind the Scenes

Believe it or not, JSON5 has been around since 2012 and has all the implementation details and specification on their GitHub repos (https://github.com/json5).

All I had to do was import their JavaScript based implementation and specification and iteratively ask agents to build functionalities.

How long did it take to build the JSON5 library?
About 4 days of weekend and after work sessions (roughly 10–12 hours)

😅 Were there challenges along the way?
Yes, some of the parsing tests were failing and agent was repeatedly failing to fix it. I almost lost hope. Then GitHub Copilot Agent rescued me.

🤖 What are the Agents that were used to achieve this?
- Claude Sonnet 3.7 (Agent Mode — IDE integration)
- GPT 4.1 (Agent Mode — IDE integration)
- Google Jules (async agent)
- GitHub Copilot Agent (async agent — used for majority of the project)

🎉 So, what’s the verdict?
I had an absolute blast just watching agents do magical stuff that I couldn’t have done by myself. Even the benchmarking solution was built by Agent. 
Seeing the benchmark result also gave me hope and sense of accomplishment. Sure, I might not be able to build the next Dagger, or OkHttp or anything of that sort, however anything simple should clearly be within reach with the limited time we have in our lives. That is a huge win for me! 🏆

Now, on to something more useful! 🤓 Feel free to reach out or ask questions. Cheers! ✌🏽

Previous
Fixing GitHub Coding Agent’s Firewall Issue for Android Projects
Next
Using AI to build modern Android apps — are we there yet?