We are living in such crazy times.

Why?

Let me take you through how I am working on a web app project these days.

First, I write down on a high level what I want to build.

Then, I pass these instructions to Claude design for it to design the overall wireframes for the app. Typically, its first few attempts are not bad, but a bit of prompting is required to get it to truly satisfactory levels. Then, I ask it to generate high-fidelity wireframes. It intuites what I need, implements best UI/UX practices, finds good color schemes for me, and generates a good looking hi-fi wireframe. At this stage, I’ll ask it to generate a design handoff folder to be passed into LLMs.

If you’re a developer, you would probably be familiar with this flow - so bear with me as I explain our unholy - or in the words of my friend Stephen, “barbarian” style - creation process to our non-developer friends.

Once the AI is done with the detailed design handoff file, I spin up OpenCode (or Claude code, if you will), connect it to an LLM like Deepseek v4 Flash, and call ‘/grill-with-docs’ by Matt Pocock. The AI asks me sharp, clarification questions on the details of the design as well as implementation, almost like how a team of best minds would question me. I feel slightly tired after a round of 23 questions that actually involves thinking - but I am not sure if I deserve to whine about it. The AI knows that thinking is hard for me and actually gives me recommendations for every question in case I can’t make up my mind. Most of the time, I can’t, and I choose to go with its default recommendations.

Once the grilling is done, I call ‘/to-spec’ and it generates for me detailed app specifications that’ll last multiple sessions. Using these specs, I’ll call ‘/to-tickets’ and it breaks down the entire process into a series of around 10 to 20 tickets. Each ticket is to be implemented in a standalone session so that context window is preserved.

Then, my job is mostly done. Seriously. Across many days, all I am doing each time when I open up OpenCode is to call “Implement” - and the AI checks what tickets are the ones that are on the ‘frontier’ (read, undone, priority tickets), and works on them end to end. By “end to end”, I really mean it: after it finishes implementing a feature, it spins up two sub-agents to do code review. Based on the feedback from the code review agents, it’ll work on fixes, run the tests that it generated, and only get back to me after everything passes.

Again, if you’re a developer, all these is probably half-year old news to you. But for the rest of the folks reading this, this is actually what software development can look like in 2026. You can build quality, medium-sized apps, with absolutely no detailed knowledge or understanding of something.

I had an idea exactly 2 weeks ago to build a site to help people compare the outputs of open weight models. It took me 11 days to get it implemented and pushed into a live staging environment on AWS. The design is splendid - exactly what I envisoned - and most of the features work perfect.

The same process would have taken me at least 2 months of almost full-time work to complete. With this flow, all I am doing is pressing some buttons after my full time job, and 11 days later, everything is done.

I am still trying to grapple with this workflow. It feels unholy. It is really crazy that something like this is even possible at all. I feel like a boss - getting my AI minions to do my bidding and only focusing on the output and the big picture stuff.

But then I encountered some problems.

The first one is a hypothetical one that I didn’t experience on this project - yet - but it’s something that’s been lingering on my mind. It’s the classic problem with vibe coding: if the AI agent can’t do something, especially at a later stage of the project, then you’re truly, terribly fucked. Why? Because you didn’t write the code. You don’t understand a single bit of it. And in fact, throughout the process, you’re not incentivised to touch and tweak the code, in case you implement it in a specific way that the AI model isn’t familiar with. You don’t want to fuck with its implementation whilst it’s doing its thing. You let it do it’s thing. Therefore, when it’s time for you to pick up the slack, you realize that you utterly can’t do it.

There have been projects in the past - and for an accurate picture of timeline, I am referring to a year ago - where I spent hours prompting and re-prompting AI to fix a bug, and for it to be unable to do it. The hours felt futile. In fact, it felt like if I just had taken the effort to try to learn the underlying technology and did a bit of experimentation, I might have been able to resolve the issue myself in the time that I took to prompt it.

For this project though, I didn’t experience that so far. The fact is that the AI was able to do everything this time. The reason for its competence is two-fold: first, generally, AI got smarter. The harnesses also got more advanced they’re better able to achieve their aims. Second, my project wasn’t complex technically. It’s just a typical CRUD web app with known default methods of implementation.

The bigger problem I faced on this particular project is this: somewhere after I finished implementing the final ticket and before I started deploying everything into AWS, a fear hit me. Is it truly possible for me to push something to production and to not know how it works and how to fix it when things go wrong? Given the real money involved, what if costs begin to spiral out of control? What if there’s a security flaw in the code, what if my or my user’s data or systems get hacked? For a project that I care about, offloading all knowledge of how the system works to AI really did not seem like a very responsible thing to do. If things fail during launch, and I am unable to fix it or give a good justification for why it happened, it would reflect very badly on me.

At this point, it dawned upon me a couple of things. First, for any project of significance, somebody still has to understand how things work. There needs to at least be one human adult to step in when things break and to almost guarantee with high likelihood that a solution can be found. So far, the story of AI has been a story of increasing machine competence. But I don’t think I’m misrepresenting a general sentiment when I say that most people still don’t completely trust it.

Or rather, perhaps most people want a backup option: doing things manually, the slow way, resolving things from ‘first principles’ - because that’s how we’ve been trained to solve problems, and that’s the approach we know that works. It’s also the reason why certain trends like driverless cars are hard to popularize. For any system of real importance, human beings trust human experts. And there’s probably evolutionary reasons for that: there’s skin in the game for humans that break a contract, whereas AI systems do not respond to social punishment or reward.

But then that raises a philosophical question: is the fundamental issue about trust and ownership then, not ability? Let’s say that there’s a hypothetical future where AI progressed to a stage where it stops being “dumb” - and that whenever it encountered a problem that it couldn’t solve, humans also realize that they can’t solve it as well. In that scenario, does someone really need to understand how it works? At which point is it wise to defer to machine expertise and admit that the limit of AI’s understanding will also be the limits of one’s understanding? Is my instinct of trying to understand the system I am building an antiquated habit that’s hampering my productivity?


As the world moves more towards agentic systems - which is, by now, something that looks almost certain to happen - humanity will also develop in tandem social theories that examine our engagement with AI. One of the most profound areas will be the drawbacks of AI usage. Another would be the exact shape of the interaction between human development - and with it, the accomplishing of tasks on human time - with inorganic intelligence. Recently, I can’t help but to equate AI with an all powerful sword bequeathed to you by the village head as you turn 30 years old. Out of the box, the sword will increase your powers immensely. It is extremely powerful, because it’s trained by decades of ancient craftsmenship. However, you quickly realize that if you have shitty fundamentals, the Total Effective Output you can produce is effectively capped. The best sword bearers are the ones who are also personally fit. Like the Nichirin blades of Demon Slayer, a well fitted sword, on an individual with remarkable personal capability, yields a beautiful and powerful synergy.

In the sword theory of human development, there’s no fundamental change in how things are done at all. You will learn things in school how you’ve always learned: to do things manually, slowly, and through trial and error. You will solve problems on your own, without the help of AI. You will learn and develop yourself in human time. Only then will your Total Effective Output be maximized when you’re finally equipped with your sword. And even so, you still need to invest in your personal development. Think of your individual capabilities as a bar, and beside it, lies a parallel bar of the capabilities of the sword. Solving problems through AI will not increase your personal capabilities. It might even attenuate it over time. But if the Moore’s law of transistors were to apply to AI capability in any way, then the AI bar will always be rising - and it’ll be rising faster than your bar will be rising. But we can’t always be certain about that. And right now, in our heady euphoria, we have yet to have correctly priced the true environmental and economical costs of AI.

Weighing the odds, however, it may be well possible that we will reach a point where the AI way of resolving something is objectively better and lower cost than the human, manual way. But again, I don’t think this will be a binary judgment. Knowledge, and doing, in all its totality, consists of an infinite set of fields and problems. There will be fields where human intelligence still stand an advantage - or at least, the combined usage of human intelligence with AI. Even if it truly isn’t, it’s conceivable that humanity develops a system of ethics or practice where wholistic development, as a human being, consists of personal development outside of machine intelligence. We are, after all, made of flesh and bone, and all the people we care about are made of flesh and bone.

One more thing that will arise in the future is a discipline that examines how to use the sword in a way that also simultaneously increase the bar of your personal development. Currently it’s all very fuzzy. You see wayward soldiers falling into ditches with over-usage. They begin blabbering in MD files and replying to simple questions with walls of texts. I swear if you listen hard enough, you can even hear the sound of brain cells dying in their skulls. But you can’t blame them though - to them, they’re early adopters of progress. It’s all rather tragic.