
I was keen on testing the Software-on-demand hypothesis advocated by OpenAI in their last keynote, but it took me a moment to see how to test it. Then, I realized that I could work with creating screensavers based on my ideas. Not the ones that change images, we don’t need AI for that. The ones where you actually have to write you own source code!
So, first I did a dot that would spawn at different places of the screen with different sizes and colors. Just two minutes later I got the source code in C#, which I compiled using Visual Studio Code and it worked. No errors, just save the code and compile.
Then, I realized that a dot is pretty basic, so no challenge for the AI. So, I decided to ask for a pong game, Atari-style, that would be my screensaver. That took maybe a few moments longer for the AI to think, but it worked. Then “I” changed the logic a bit, made it into a car, asked for a counter and a few minuted/iterations later – I got the nice screen saver. It’s in the first repo if you want to try. AI even generated instructions how to compile it and install it (as readme.txt).
Finally, I thought about a screensaver that would print its own source code on the screen. The same story – few iterations and cool ideas led me to the second repository. I got the screen terminal saver. Quite cool.
But then, something happened! If you go into the repository, you will see that it only has one large file with all the code. So, I started to use AI to refactor it – split into smaller classes (instead of the internal ones), add comments, describe the logic, etc. None of that worked! It extracted the classes, but “forgot” to use them in the main Program.cs – my screensaver was empty. It added the comments, but mostly one liners about the functions, no description of the logic.
So, Keep Calm and Engineer Software I say – AI is not going to take advanced software engineering jobs!