When I left university I did so with a good grounding in several programming languages such as Cobol, Fortran and Pascal. Then, at my first job, I was given training in the language Application Master, part of ICL’s VME operating system. One of the things I was told about Application Master was that it was a “fourth generation language (4GL)” and that this would be the last generation that required a developer to write the code.
This was the late eighties and until very recently we have been still waiting for this transition to happen.
ChatGPT has Entered the Conversation
I began reading about people using AI to help them with coding jobs probably a year ago. I was vaguely aware of things like GitHub Copilot around the same time but as whizzy as that sounded I was not ready to splash $10 a month on it.
Around this time I returned to doing more development in earnest and while my grounding in PHP and MySQL is pretty solid there are always things that I struggle with: complex SQL queries and regex for starters. Then I started to work on my Bluesky library, which required some research that using traditional methods wasn’t giving me the answers I sought.
As a side note here I switched from Google to DuckDuckGo as my primary search engine many years ago. Whilst the privacy that DuckDuckGo offers is much superior to Google the search results are not (it is based on Bing I believe). Asking the same question in Google always gives superior results to DuckDuckGo. However, for some things, ChatGPT blows them both out of the water.
Here’s a perfect example of how ChatGPT can help a developer quickly get to a solution:
If you have used my Bluesky library you may well recognise this code as that’s exactly where it ended up.
Not only will ChatGPT give you a solution where it can but it will also explain to you how it reached that conclusion which is great in helping you learn from it.
Sometimes the output is wrong or on running it throws an error. You can then go back to ChatGPT and give details of the issue and it will refine the solution until you get what you need. You can go back as many times as you need and ask the most stupid questions and it will not care in the slightest. It is a non-judgemental partner which is perfect.
Low code vs No code
Of course, you have to know what to do with the code that ChatGPT provides you and that still requires a grounding in programming, although you can probably ask it about that too. What it does not do (yet) is to completely remove the need for a programmer which is what was promised to be back in the late eighties.
There is the No-code movement which promises to allow non-programmers to create apps using a GUI front end with, as the name suggests, no code required. I have no experience with these tools and, interestingly, the lack of media attention they are getting suggests to me that they aren’t fully baked yet. I guess that they may well only be around for a limited time before they are overtaken by AI tools.
I’ve been impressed with the quality of the output of ChatGPT and it has really helped me deliver code quicker than I could have before. You could argue that it is dumbing down the knowledge level required to be a developer but then wasn’t that what I was promised in 1988?