{"id":61,"date":"2026-04-24T16:54:52","date_gmt":"2026-04-24T16:54:52","guid":{"rendered":"https:\/\/llama.gs\/blog\/?p=61"},"modified":"2026-04-24T16:54:52","modified_gmt":"2026-04-24T16:54:52","slug":"the-forgotten-art-of-crossword-creation","status":"publish","type":"post","link":"https:\/\/llama.gs\/blog\/index.php\/2026\/04\/24\/the-forgotten-art-of-crossword-creation\/","title":{"rendered":"The Forgotten Art of Crossword Creation"},"content":{"rendered":"\n<p>It is Friday and the Mecca of AI is bracing for the soap opera of the year: <a href=\"https:\/\/apps.cand.uscourts.gov\/CEO\/cfd.aspx?7145\">the Musk vs. Altman et al. trial<\/a>. One can only hope that the lawyers won&#8217;t use again the bespoke AI tools to generate <a href=\"https:\/\/www.theguardian.com\/technology\/2026\/apr\/22\/ai-hallucinations-found-in-high-profile-wall-street-law-firm-filing\"><s>the legal arguments<\/s> hallucinations that embarrassed Wall Street<\/a>.<\/p>\n\n\n\n<p>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 &#8220;comrade&#8221; and start using the &#8220;Mr.&#8221; and &#8220;Mrs.&#8221; honorifics.<\/p>\n\n\n\n<p>I was going to school and my computer was a <a href=\"https:\/\/paskov.vmsoft-bg.com\/restoration-of-pravetz-16-turbo-ibm-pc-xt-compatible\/\">Bulgarian clone of the IBM XT<\/a>. 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.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image.png\" alt=\"\" class=\"wp-image-62\" srcset=\"https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image.png 1024w, https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-300x225.png 300w, https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-768x576.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>So, I did. Today I dug it up compiled it, and <a href=\"https:\/\/gitlab.llama.gs\/attic\/puzzle\">put the sources in my GitLab server<\/a>, 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.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-1.png\" alt=\"\" class=\"wp-image-63\" srcset=\"https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-1.png 1024w, https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-1-300x225.png 300w, https:\/\/llama.gs\/blog\/wp-content\/uploads\/2026\/04\/image-1-768x576.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>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.<\/p>\n\n\n\n<p>At the time I didn&#8217;t know that the problem is <a href=\"https:\/\/ai.stanford.edu\/~jduchi\/projects\/crossword_writeup.pdf\">NP-hard<\/a> 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.<\/p>\n\n\n\n<p>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.<\/p>\n\n\n\n<p>Repository of this post:<\/p>\n\n\n\n<p><br><a href=\"https:\/\/gitlab.llama.gs\/attic\/puzzle\">https:\/\/gitlab.llama.gs\/attic\/puzzle<\/a><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>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&#8217;t use again the bespoke AI tools to generate the legal arguments hallucinations that embarrassed Wall Street. Today journey back in time is going [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,25,17],"tags":[42,43,44],"class_list":["post-61","post","type-post","status-publish","format-standard","hentry","category-computer-science-and-philosophy","category-engineering-archaeology","category-projects","tag-ancient","tag-crossword-puzzles","tag-teenage-projects"],"_links":{"self":[{"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/posts\/61","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=61"}],"version-history":[{"count":1,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/posts\/61\/revisions"}],"predecessor-version":[{"id":64,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/posts\/61\/revisions\/64"}],"wp:attachment":[{"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=61"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=61"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/llama.gs\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=61"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}