I had been trying ChatGPT for a few basic needs, like summarizing an article, writing better emails, getting structured approaches for tackling different problems. It was helpful and saved some time.
Then, I read about how it could help in programming. Could ChatGPT really provide an entire program for any request thrown at it, a la a personal programmer? That would be something.
I tried using it for a personal project that I’d shelved previously - it seemed too complicated (for me) at that time.
After running through different prompts, ChatGPT finally figured out what I was looking for (or, I was able to explain it better). And then the programs started coming through. Within an hour, I had code to read music files, another one to update their tags, yet another one to build a folder of album art etc. It was glorious.
- No starting trouble - ChatGPT was able to get started right away - it set the initial libraries, provided a high-level structure of the program, and didn't require fumbling to get the syntax right. But from then on, it needed further prompts to give more specific results. At some point, it was better to just write the rest of the code.
- Limited modularity - My initial set of responses were an unwieldy wall-of-code. After a few attempts to make ChatGPT refactor it and use more functions, I ended up with a set of several functions without a main program. Ufff.
- No error handling - While the code provided by ChatGPT worked initially, it could not handle even the most basic errors. Based on the follow-up prompts, the code corrected itself which was nice to see. But it took a lot of wrangling to get it right while it sheepishly said, ‘I apologize for my mistake’ each time.
- Good explanation - ChatGPT was nice enough to explain complicated sections of the code, based on follow-up prompts. It could also provide general examples to explain certain portions of syntax or a specific method.
- Might repeat itself - Based on follow-up prompts, ChatGPT could customize the program. But after a few iterations, it ended up repeating a previous response. Also, specific changes included earlier were not in later versions of the code. While ChatGPT does not ‘store’ any information, I expected it would use the history of the chat to guide further responses.
It would have been nice to have ChatGPT ask follow-up questions before attempting to answer a problem.
Overall, a very fun exercise (though it took a few hours). It is very interesting what future iterations of this technology can do.
I heard that GitHub Copilot works much better as a programming assistant. If you have used it, let me know.
Software Development Manager @ Amazon | Building Digital Payment Solutions | GenAI
1 年Interesting, beyond the hype, was curious to hear more about the practical day to day experience. Seems like tech can help really well for a limited set of common use cases, not very helpful when it comes to refinement etc. Would love to see some video of how this worked in action ??????