I just realized that I haven’t blogged in four years, so it will be a while before my blog catches up with me. I feel like I am a different person now… Okay, I’ll get to the topic I was excited to write about.
First look
The first time I saw AI-assisted software development was a demo of a project called all hands . I was amazed that LLMs (large language models) could read bug reports from screenshots, fix and test code, and then deploy the changes too. It looked so voodoo to me. Soon I found out that this was becoming commonplace with most of the popular LLMs.
Enter SunDAI, and more
Then I happened to find out about the SunDAI club which builds and launches web apps using AI tools, almost every Sunday. This coincided with my resignation from my job - I was planning to take a career break in order to start my own company. I put myself on the club’s waitlist, and after a couple of months I was invited.
Meanwhile I had quit my job and had started playing with Cursor, the leading AI code editor. I liked it. Before I used it a lot, I heard about Windsurf from the SunDAI folks and gave it a shot. The experience was so good I never stopped using it. In fact, I am typing this blog in Windsurf now. I even made changes to the blog’s appearance using it.
Four weeks of AI-assisted coding
In the last four weeks, I have
- fixed the appearance of one of my websites on mobile screens
- developed three nextjs apps without any experience with React or nextjs
- wrote a python web app for classifying my Gmail messages
- tried out in-browser 2-d and 3-d game development
- experimented with multiple AI models available on replicate
I have only used AI for coding - okay maybe 99.9% of the time. There were times when I had to correct the code manually. But it was rare. Most of the times, AI can write fresh code, understand existing code, try out code changes, iterate over different approaches.
The future of programming
In short, an AI coding agent is like a junior or mid-level engineer you have employed. I know it sounds futuristic and maybe foolish. But I have two decades of software engineering experience and today I believe nobody should be required to write code by hand. Just like compilers and high-level programming languages removed the need for writing machine code using a processor’s native instruction set.
Mind you, programming languages will be there and will continue to evolve. We just invented a higher-level abstraction, called an AI prompt. The history of programming languages is full of examples of a higher-level abstraction helping us ‘move up the ladder’. I think most of the software engineers tomorrow will become prompt engineers.