Do you use a hammer to drive a screw?
I feel like most of the complaints about AI are from people who fit into one of two categories.
1. they expect AI to be this end of all solutions that just magically does everything right, every time.
2. they have disdain for AI and are looking for any reason that validates their beliefs.
Neither of these groups are completely wrong. There are certain leaders pushing the idea that AI will just replace people. So, some people just naturally assume that AI is ready to do that. Those who are, at best, cautious of AI are not wrong either. In part, because of the later pushing the AI will replace people--and in part because its not perfect. But they also have an imcomplete, or perhaps, immature perspective.
Like any tool, AI works well when you use it correctly. We don't use a hammer to drive a screw. Well, you can. The results will not be what you want. And that is exactly my point. You need to understand and learn what is good practices when using AI and when you need to use a different tool.
For me, I have found that using an iterative approach between myself and AI to build a spec, which then leads my AI agent to create a plan, produces some pretty nice results. Iterations are creating or editing a spec (used markdown since AI works great with markdown), asking agents to create responses (again as markdown) and repeating. I feel one of the key points to being successful is stepping away from the AI agent prompting and look to the problem and solution more holisitically. This is akin to the old design days of lengthy meetings and whiteboard sessions, but instead of a team of people, I am using an agent. Funny how tech repeats itself, huh?
I created a project for the sole purpose of testing this approach. The Stonkinator (or Stonks for short) is an application/service that uses AI to produce investment analysis for the purpose of educating oneself about technical analysis of stock trends. I started the iterations with the idea, describing it for myself in a markdown file. Then I asked my AI agent to assess, provide feedback in the form of solutions, risk analysis and options. I repeated this process twice. From that, I created the POC spec which ultimately created a POC solution (aka the code). Continuing the cycle, I repeated analysis, spec writing until I created an MVP.
It worked out great but I also do not want to paint a completely rosey picture either. I had to manually edit some code once I realized I missed a couple of things during the spec writing. I had to give my AI agents additional instructions for clarifying changes or improvements after realizing I missed a few things. But, is that really any different than how development works today (without AI)? I think any reasonable person would be hard pressed to say no.
Granted, this test worked great creating a solution from nothing and with small requirements. However, I have not stopped there. I am using this same iterative approach, repeatedly and with reasonable success, in production systems with millions of lines of code, in both in finance and game development.
If you would like to see the historical process (by reviewing the files), please check out the project itself: https://github.com/tatmanblue/stonkinator
No comments yet. Be the first to comment!
To leave a comment, please log in.