Original photo by Nguyen Tran/Pexels

The Joy and Sorrow of Coding with ChatGPT

And Why Use It in the First Place.

Keno Leon
7 min readJul 1, 2023


Like many software developers, I’ve been using ChatGPT as a pair programmer, teacher, assistant, and general soundboard, experiencing both positive and occasionally not-so-good results. In this article, I will share a few notable experiences and interactions that have made an impact. Additionally, I’ll discuss how we can approach this and other AI tools in the near future.

— — — — — — — — — — — ⭐️ SUBSCRIBE TO MEDIUM ! ⭐️ — — — — — — — — — — —

The basics

Where it has been a godsend is in the form of a productive assistant, so much of coding can at times be writing stuff like this :

testDatastructure = [Thing1, thing2...thingN]

Instead you simply ask:

PROMPT: can i get a testdatastructure with 10 things inside in an array 

test_data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

didn't get quite what I wanted but it's easy to ask again:

PROMPT: Instead of numbers can you use car brands ?

car_brands = ["Toyota", "Honda", "Ford", etc,etc...

So what ?, other AI tools like copilot do this and more just there by your code, where the assistant part gets its merit I think is from the expanded capabilities to pose more complex work queries :

PROMPT: How would I make a simple scrolling game in javascript ?

A list of steps follows:

Set up the HTML structure with a <canvas> element.
Get a reference to the canvas element in JavaScript.
Set up the game loop using requestAnimationFrame.
Set up event listeners for player input.
Define the game objects and variables.
Update the game state in each frame of the game loop.
Render the game by clearing the canvas and drawing game objects.
Implement collision detection and handle game logic.
Repeat steps 6-8 for each frame of the game loop.
Add additional features, levels, or enhancements as needed.

And so on, there’s minor back and forth to clarify intent : I want a Hawaiian themed RPG where you battle aliens ! is hard even for myself to fully understand and plan, but above all ( and as a mostly solo developer ) it has allowed me to make more ambitious projects, but not too ambitious yet for some painful reasons.