It’s been a few weeks since I started my jive coding project with ChatGPT, so I think it’s time for an update. In short, it’s going far better than I expected, and at this point I actually have a viable, web-based app.
A quick refresher: “jive” coding is what the kids call “vibe” coding, but with the explicit acknowledgement that much like jive talking, you don’t really know what you’re doing. Sure, one of the best ways to learn is to complete hands-on work, but if you’re just copying and pasting code, you’re not doing hands-on work.
However, my experience so far has been that this isn’t a 0% learning experience. A key factor is that developing with ChatGPT is not just a cut and paste exercise. Face it, if the AI could come up with the code perfectly, the human relay wouldn’t be necessary at all.
As I use ChatGPT to map out the project and create code, my main learning comes from troubleshooting. After most tasks the AI either provides or I ask for some sort of validation process. Quite often it’s not smooth sailing, and quite often, I’ll look at the code and ask, “Could this error be because of this or that?”
Since my project uses a combination of MySQL, Python, FastAPI, Uvicorn, SQLAlchemy, Alembic, Nginx, HTML, and other technologies, I’ve also picked up considerable knowledge of the architecture/interaction between the various functional pieces.
In addition to the troubleshooting, I’m frequently asking ChatGPT to explain part or all of code set, and to explain how various parts of the environment work.
Let’s call this flavor of jive coding a learning experience, but not a training experience. The depth of learning experience depends greatly on how much effort the user puts into understanding what ChatGPT is telling him or her to do.
How much have my AI helper and I done together? The simplest measure is the nearly 600 interactions in my ChatGPT project. Some result in very short, quick actions, whereas some generate five or six significant blocks of code. Many of the interactions are troubleshooting and tweaking.
One nice side benefit of developing in this manner is that I can also query ChatGPT for the metadata. It’s provided me with a few breakdowns of those 600 interactions, based on the primary technology involved, the phase of the project, and whether I’m implementing, troubleshooting, defining requirements, testing, etc.
I’ll close this with some practical advice. If you want to get the most out of jive coding, on both the production and learning sides, here are some things to keep in mind:
- Provide context, roadmap, and requirements early and frequently. The AI is better at guiding if it knows a lot about where you’re going.
- Ask for explanations, as well as confirmations of what you think you’ve learned.
- Run the session in a project, using multiple chat sessions and branching queries, so you can easily look back at previous milestones.
- Recognize that ChatGPT doesn’t necessarily keep track of exactly the code it generated before. It can help to copy and paste a file back into the query window before asking ChatGPT to modify the file.
- Learn how to make backups in whatever environment you’re using, or even better, use git for version control. Again, the AI doesn’t always remember precisely what code it gave you, and there may be times that you need to go back to a save point.





Leave a comment