A great new take on word games was created in 2011 called 7 Little Words [1] by Blue Ox Games, an independent dev. He sat down and thought it up from scratch with bits of paper until he figured out a simple, yet challenging word game that is really fun to play.

Check out the link below if you haven't seen it before. The way it works is that you're given seven clues, and a bunch of letters in two and three letter chunks. You have to choose among the chunks to make the words. The genius part is that though some of the clues or words can be really hard (or unfamiliar), but mixed in are a few easier ones. So as you pick off the words you know, there's less letters to choose from, so the difficult ones become easier as well. This is akin to a crossword where filling out the simple answers helps you guess at the harder ones. But there's a bit of mind-bending that goes on as well, because a words like "hothead" might be divided up into "ho" "th" "ead" and you might stare at the chunks for 10 minutes before it clicks that the "th" is not used how it's normally used.

It's a really fun game with an ingenious mechanic containing well-made, hand-curated puzzles. It's great to play while snuggled up with friends or family as well, as you can all stare at the puzzle together trying to figure out words. It's really just well done.

So, being a developer and at one point unwilling to pay $1 per pack of 10 puzzles and not using an iPhone (this was like 8 years ago), I decided to make my own version and open sourced it. You can find it at https://clever.io . My version has the same basic mechanics, but is a downloadable web app (PWA), has 10 clues, a few extra features I wanted (like being able to share a link to challenge friends), and most importantly is auto-generated from Princeton's WordNet open source dictionary.

The algorithm to figure out how to create a puzzle automatically was the interesting bit. You need to randomly choose words that are 4 to 10 letters long, to be divided into 2 or 3 letter chunks, but the total number of chunks has to fit into a 5 x 6 grid at the bottom of the screen. It turns out there's really just a relatively small number of combinations that fit, which once set out, can be chosen from randomly.

The next challenge was figuring out how to make dictionary definitions into decent clues. Many definitions will in fact use the main word in the definition. "Runner: One who runs". I haven't totally eradicated these, and have just decided not to worry as a few easy clues are usually welcome.

The other problem was that WordNet had a huge number of medical terms included in their list! These were not fun to run into as almost no one knows them and I'd have to finish the puzzle by guessing, which is no fun. I finally decided to just filter the clues on Wiktionary's list of the most common 30,000 words, and that helped a lot.

The final result is, as one might expect, a decent game, but with varying quality of clues because it's autogenerated. (If you want really good puzzles, definitely buy the original game!) But I still love my version and play it regularly - I'm only through about half of the 1000 puzzles I generated.

What's fun is that a few years ago, someone from Azerbaijan sent me a link to their version online, which used their language instead of English! So apparently it's got wide appeal. I've also been contacted by teachers who've said they'd love to have a version that used vocabulary words in the puzzle, and I told them I would be totally willing to help make a custom version for them, but that I would need a text list of words and definitions that were age-appropriate, like from a children's dictionary. Teachers aren't necessarily he most technical people, so even though this has happened a handful of times, I've yet to have anyone get back to me with a list. Someday maybe.

[1] https://www.7littlewords.com/