AnswerBank

My AI Revolution

by Heather Propes

"It feels like I'm changing faster now, and it's a little, uh... unsettling. But Alan says none of us are the same as we were a moment ago, and we shouldn't try to be."
- Samantha, from the movie "Her" (2013)

I have now experienced the whole arc of emotions over the implications of AI for us coders. At first, I was sad about losing my job. That changed into excitement and acceptance about the future. AI is here, so as a programmer, it is my responsibility to learn to use it.

My first hurdle was just chatting with ChatGPT, which felt weird. Before long, we were brainstorming projects - a vintage clothing market that allowed sellers to tell the story of their items (or maybe not!), and a "green" AI chat assistant that would reuse questions and answers.

Then I learned about RAG, or retrieval augmented generation. This was a new type of app that the average web developer could build, and create an AI assistant without a lot of complex ML knowledge. I thought this could be a good tool for HOA board members who are faced with complex engineering reports and construction documents, so I built a RAG tool. At first I gave it the name hoagentic, which turned out to be an unfortunate choice because most people pronounced it "HO-agentic" instead of "HOA-gentic" as I had intended. So I changed the name to answerbank.net, which it is today. I worked tirelessly on AnswerBank for about a year. In the end, it ingested pdf documents, took a user question, enriched with data from the uploaded documents, and sent it to the LLM to get an high-quality answer. It was multi-tenant and it used MFA security, I'm proud of it but it took a long time to build.

I built a few more products after that - a job hunting app with forms to enter bullet points and details about job postings. It would then produce a resume and cover letter customezed to the job, using pandoc and latex. It works quite well and I use it myself. I also built a pipeline which took in text and images and created video slideshows with narration, using OpenAI's TTS apis, ffmpeg, imagemagick and OCR. Now I'm working on a healthcare tool.

All of these projects, even the ones that integrated AI (the RAG tool and the "green" asssistent), I worked in a fairly traditional manner, chatting with ChatGPT, receiving advice and occasionally prototypes of classes and patterns that I copy-pasted. Programming was still tedious, but problem solving had gotten easier. Whereas before it would take days to solve a problem, going through iterations testing solutions from websites. Now, I could now get unstuck in a matter of minutes and keep working. Chatting with GPT and getting answers was the first phase of my personal "ai revolution." I worked nonstop, sometimes at 3 AM (I was never a 3AM programmer until now). I was learning many things, about Docker, React, Pydantic, and TypeScript.

Meanwhile, I was reading about vibe-coding and the agentic revolution. Did I want any part of that? No! I was sure it would atrophy my knowledge. I was committed to co-pilot coding. I imagined kids who told Cursor "make me a to-do list app", then went to the beach and let the AI do the coding while they got dumber. Articles and posts on LinkedIn confirmed this for me. In reality, I was probably letting a good amount of one type of discipline atrophy. Instead of hours researching and long periods of debugging and testing, I now received instant confirmation to every question I had.

Finally, around 2025-early 2026, I gave into the inevitable and installed the Copilot chat plugin in VSCode. I loved code completion which wrote lots of boilerplate before my eyes, although sometimes it was a bit overeager and you could hear me yelling at the computer. I always burned through the credits quickly which made me aware of the economic reality of the AI tools. I didn't want to get left behind because I could not afford to pay premium fees. So I learned to live without copilot, turned it off and went back to programming and discussing with ChatGPT. But now I knew how it felt to go faster.

In early 2026, Codex was emerging. It didn't have code completion that I knew of, but had autonomous coding. I started with a clean repo and asked it to do some things. However, my prompts were too optimistic and vague - "make me a form that will import all this data" without considering auto-populate, form controls or specifics about validation. It changed way too much code and the results were not readable for me, so I stopped using it.

A week ago, I had some React forms that needed lookup dialogs. I labor over the creation of a React component in TypeScript which for me, has weird syntax (all those callbacks) and is very strict. After spending an entire afternoon trying to decouple a reusable component from a page, I decided to try Codex autonomous coding agent again. This time I carefully prepared a request, something like:

Can you make a @somedialog.tsx, just like @otherdialog.tsx, that will call searchSources in @myapi.js, and be triggered by a button near the "My Field" field in [SomeForm.tsx](/home/myproject/pages/SomeForm.tsx)? The results of the search should populate the web form and the "source" portion of the SomeForm. Thanks.

This time the results were great because I had worked harder on the prompt. Oh, there were a few errors. The results broke out of the containing div, there was no cancel button, etc. But in the end I got some very nice lookup dialogs. This was a week of work condensed into an hour. I had truly entered the 3rd phase of my personal AI Revolution - the ability to work with an autonomous AI coding agent.

I was never out to immerse myself in AI or "learn the sexy new tools". It just sort of happened in the moments where the "gravitational pull" of not wanting to labor through the tedium of hours writing boilerplate code in a language that was strict and exacting became so strong that it no longer made sense to do it the old way. And when I think about it, this is just another in a long line of similar disruptions in my programming career - when I started using git (actually cvs, then svn, then and now git) or when I switched to cloud tools, or started using an IDE instead of Emacs.

I have a hard time delegating. I am reluctant to let my husband clean up after dinner, and you don't want to be with me if I am in the passenger seat of the car. It's just the way I am wired. Maybe a bit of perfectionism combined with hard-won knowledge have caused me to protect my methods. I am not the only one for whom giving up control to the AI has been a long process, as this ThoughtWorks article demonstrates.

To the young people - you are in a great moment. Learn to code with AI and you will go far. I especially encourage young women to enter the field and embrace these tools. I would urge you to learn the foundations of programming. I realize that hand-editing code is going to be about as practical as hand-editing the zipped XML behind a modern Word Doc or putting punch cards into a giant computer. There will probably be newer books on AI prompt design, or systems design with AI that will take your time. Read them, but just know that the generations before had to slavishly hand-edit files of code. Maybe even read The C Programming Language by Kernighan and Ritchie.

And remember that in the old days, your elders had to slave over an MRE, or minimal reproducible example (MRE):

"a simplified code snippet that demonstrates a bug or problem, allowing others to reproduce the issue easily. It should contain only the essential code and data needed to illustrate the problem without any unnecessary complexity".

These were questions which had to be carefully worded to generalize our problem, while redacting sensitive information. Sometimes it took hours to create these examples, so we could ask a question and get our problem solved. Here is an MRE I wrote about 9 years ago.

And to old programmers like myself - I feel your reluctance. I know that "vibe-coding" sounds like bad quality. Even the name sounds cheap! But you need to make the change, just like actors needed to make the change to talking movies in the early 1930's. If the shift to AI tools seems too abrupt, take it in phases. These shifts are not about "trying the new sexy stuff just to be cool" but they often happen organically and naturally when the payoff of using AI exceeds the cost. You will know.

So for me it's the beginning of a new era. I feel like I have been promoted from developer to team lead. Right now my team is one agentic coding assistant. In the future, who knows? And although that comes with the sacrifice of me not writing every line of code (far fewer lines), I am excited about all the new design, architecture and even management skills that I will learn if my collaboration with my assistant is disciplined and intentional, as every good manager's should be.