The app for independent voices

My Adventure into The World of AI Code Generation and Autonomous Systems.

About Me:

I started writing software over 25 years ago making Yahoo booters, chat clients, and ad bots in VB6 before migrating to C# and C++. I have always built systems in my head visually, like Legos flying together in space building what I'm thinking about in real time; but I lacked the ability to write all of the code myself. I have always been able to build what I want with enough time, searching and reusing snippets but my only real limitation was always my code-writing ability. But then, 4 years ago, “AI” happened, and I went all in—over 1 billion API tokens and well over 7k hours of seat time—and this is how it went.

My Adventure into the world of AI......

1st year, “2022,” spent most of it telling AI what to do and complaining about how it doesn’t listen to me. I loved the idea of AI, but AI hated me.

Learned: Just telling AI what to do doesn’t work, you have to scream at it.

2nd year, “2023.” It was at this point that I realized the problem was me, not the “AI.” I took a step back to look at what I had been doing and what I needed to change about the way I go about having AI generate code. I learned to look at the big picture, to see systems as the sum of the parts, not as a single entity. Still some complaining, but not as often.

Learned: Asking AI what the best approach in a given situation is and why works. If you tell it to do something, it will likely do it, whether it’s correct or not. No more screaming, but I do threaten it occasionally.

3rd year, “2024.” This is when it all started coming together—constant refinement, always tweaking my approach and code, and outputs always getting better. Eventually it becomes natural; you now understand why you had the issues in the past and can’t believe how obvious they seem now. You’re now free to focus on the efficiency, robustness of the code, and innovating.

Learned: I’m still learning and I have a lot to learn.

4th year, “2025.” The barriers have been removed, and I no longer question whether or not I can do something, I just do it. I know I’ll get stumped at some point, but until then I’m going to enjoy feeling like I can do anything. Now I'm building fully autonomous multi language end-to-end software development systems, self-improving multi-agent reasoning frameworks and custom research pipelines.

Learned: AI is a “tool,” but it’s a tool with the learning curve of a musical instrument. You need to do less complaining about how it sounds bad and spend more time learning to play it better.

Tips:

  1. Undoubtedly, the most important thing you need to do if you want to get good at it is use the CHAT format. You need the time going back and forth, struggling and developing a fluency with the way it communicates. If you go straight to something like Claude Code or Cursor, you are skipping the most valuable lesson of your whole AI adventure. Start with time savers, single methods and simple classes. You can also have it write the readme file describing the application or the code its working on, this will allow you to ensure the AI is on the right track.

  2. Before starting a project, you should chat with the AI. Tell it what you are doing, what you are trying to accomplish, and what you expect of it. Make your intentions clear, point out existing issues you are having, and get it up to speed on the project as if it were a new dev on the team.

  3. Ask it to do something; don’t tell it unless you are confident in your ability to get what you want. If it’s something you are not familiar with, then ask it how, and when it responds, ask it if there are better ways, and if so, are there any tradeoffs.

  4. There is such a thing as too much context. Give it what it needs, not everything, it’s a waste of money to process code repeatedly and unnecessarily and it can overwhelm it.

Useful Prompt Snippets:

  1. You must get approval prior to generating code or interacting with GitHub; this includes, but is not limited to, pushing, pulling, and committing.

  2. Starting with ****, systematically trace through the entire flow of the logic and make note of any potential issues.

  3. Trace through the entire flow systematically starting in ***** and generate a summary describing your understanding of the purpose of the provided code.

  4. Make a plan to implement the described behavior with minimal changes to the existing architecture.

  5. Only modify or refactor code that is directly involved in implementing the requested behavior. Introduce only the smallest number of new variables, methods, or helper classes needed to complete the task. Do not alter unrelated systems, add new abstractions, or redesign existing patterns unnecessarily.

Feb 7
at
8:13 PM

Log in or sign up

Join the most interesting and insightful discussions.