It is Friday and the Mecca of AI is bracing for the soap opera of the year: the Musk vs. Altman et al. trial. One can only hope that the lawyers won’t use again the bespoke AI tools to generate the legal arguments hallucinations that embarrassed Wall Street.
Today journey back in time is going to take us to 1993 in post-communist Bulgaria. It was only a few years after one day at school we were told to stop addressing the teachers as “comrade” and start using the “Mr.” and “Mrs.” honorifics.
I was going to school and my computer was a Bulgarian clone of the IBM XT. I think at some point I had 20MB hard drive but I am not sure about that. Doing what many of the happy generations did, I was hanging out at computer clubs while one day somebody challenged me to write a computer program that generates crosswords.

So, I did. Today I dug it up compiled it, and put the sources in my GitLab server, for no other reason but to entertain the reader. Sadly, I lost the knowledge of Bulgarian Cyrillic code tables, so there is a nice little project for when I have time.

I remember that CPU power was same expensive during the years and I often left friends PCs with the state-of-the-art blazing fast at the time 80486 Intel process overnight to generate the crosswords that I was selling to the local Varna newspapers. It would take an hour or so to make a moderately small crossword puzzle. I ran the program yesterday and it took a few seconds to fill the grid of the crossword shown above.
At the time I didn’t know that the problem is NP-hard but I designed my algorithm to be sound and complete and I am a bit proud of my teenage self given that the OpenAIs and Anthropics of the Mecca seem to have forgotten this exact type of human knowledge. I guess Altman or Amodei were too busy fraternizing to take CS 101 or logic.
Expect next week: more on using real computer science and algorithms for EDA and hopefully on Friday VmWare images generating crossword puzzles with Windows 3.1 and a small digression to a clone of Wordle.
Repository of this post: