[HN Gopher] Show HN: Three Emojis, a daily word puzzle for langu...
___________________________________________________________________
Show HN: Three Emojis, a daily word puzzle for language learners
I'm in the process of learning German and wanted to play a German
version of the NYT's Spelling Bee. It was awful, I was very bad at
it, it was not fun. So I built my own version of Spelling Bee meant
for people like me. Three Emojis is a daily word game designed for
language learners. You get seven letters and a list of blanked-out
words to find. When you discover shorter words, they automatically
fill into longer ones--like a crossword--which turns out to be
really useful for languages like German. Each word also gets three
emojis assigned to it as a clue, created by GPT-5 to try and
capture the word's meaning (this works surprisingly well, most of
the time). If you get stuck, you can get text/audio hints as well.
It supports German and English, with new puzzles every day. You can
flag missing words or suggest additions directly in the game. The
word lists include slang, abbreviations, and chat-speak--because
those are, in my opinion, a big part of real language learning too
(just nothing vulgar, too obscure or obsolete). Every word you
find comes with its definition and pronunciation audio. If you want
infinite hints or (coming soon) archive access, you can upgrade to
Pro. Feedback is very welcome, it's my first game and I'm
certainly not a frontend guy. Happy spelling!
Author : knuckleheads
Score : 17 points
Date : 2025-11-07 19:36 UTC (3 hours ago)
(HTM) web link (threeemojis.com)
(TXT) w3m dump (threeemojis.com)
| zaene wrote:
| Really crazy seeing this -- I've been working on my own multi-
| lingual spelling bee clone as a personal project for the last few
| weeks. You don't have share any trade secrets if you don't want
| to, but I'm wondering how your experience has been coming up with
| "playable" sets of letters? For Italian I found that a lot of
| 7-letter sets have relatively few words you can make with them,
| and for the ones that do it's been a fun challenge trying to
| curate the actually "fun" boards by looking through word lists of
| a language I'm not yet fluent in myself. I'm working on a blog
| post about it that I was thinking of sharing here sometime soon.
|
| Some feedback on the UI - at least on desktop Chrome, the title
| part of your scoreboard area is being cut off and the "How to
| Play" section has the text totally flush with the top, so you
| might want to look into your margins or padding there to give
| everything some breathing room. There's also a bug in your
| shuffle algorithm -- the letter in the top right cell never
| changes when you shuffle the letters. The cell buttons are also a
| little unresponsive. It seems like there are some dead zones
| where the hover animation doesn't get triggered and clicking the
| cell doesn't actually input the letter.
|
| I like how you've added some features to make it easier for
| language learners to find words. Are you yourself studying
| German? And if so have you found it fun/useful?
| knuckleheads wrote:
| Great minds think alike ;) Some rambly thoughts off the top of
| my head about picking games:
|
| I am still nailing down how many words to put in and therefore
| how long the game is. Right now somewhere between 30 and 75
| feels good, I had it at 100 and friends complained that it was
| too long. To get a sense of your data, make a histogram of
| total number of words per letter set. This is different per
| language and does give you sense of what's up, as well as how
| good your word universe is. Conjugations/inflections help pad
| this out a lot as well.
|
| Get the word frequencies for each word, wordfreq is helpful.
| Then, do a greedy algorithm, start accumulating the list of
| letter sets, one for each day. For first day, take the letter
| set that maximizes the sum of the squares of the zipf from
| wordfreq and has the number of words that you want for that
| day. For the next day, remove all the previous words from the
| words for your possible letter sets and repeat the sum of
| squares of zipfs. Then just keep running that, and it will
| maximize the most common words that haven't been seen yet.
|
| Additionally, I tried to filter out a lot of words out front
| before running the game covering algorithm. No vulgar, nothing
| obscure or too obsolete. It's relatively cheap to run a very
| large word list through GPT-5 and ask a couple questions about
| each word. Do that once and you have filtered out a fair
| portion of the list. Build in a system for ad hoc blocking and
| it gets you most of the way there.
|
| That is very helpful about the buttons and formatting. Thank
| you so much! I have that fixed up soon. Big lol on the shuffle
| algorithm, I hardly ever use it so I hadn't noticed. Thanks! I
| am in the middle of studying German, yes. What I've found is
| that it is very helpful for introducing me to new words for
| sure, that I am not sure I could have seen otherwise. It also
| helps me see the patterns within how the words are formed, just
| trying to puzzle out things. I have to take a lot of guesses
| and I feel like I am getting better at guessing which letters
| will ended up going where, even if I have never heard the word
| before.
| zaene wrote:
| Really cool! Thanks for sharing!
| fwip wrote:
| Cool idea - I could see playing this daily.
|
| Some of it was a little frustrating, mostly the acronyms.
| Labeling them as such might help, because I was going mad trying
| to figure out "NNW" and "WWOOF.". Also, performance was not great
| on my older Android phone - the app would sometimes miss letters
| that I was sure I'd clicked.
| oneeyedpigeon wrote:
| How old's your Android? Performance was fine on my Pixel 3a.
| fwip wrote:
| Good point - I should have specified. Looking it up now, the
| CPU my phone uses is the Helio P22 - a budget chip released
| in 2018. So performance might be fine on more reasonable
| phones. :)
| knuckleheads wrote:
| I do want it to work for everyone though! It might be the
| emojis falling in the background. I also realized there's
| no way to turn that off. For a while, I had them piling up
| at the bottom of the screen which was very cool, but the
| physics engine would make my recent iPhone overheat. So,
| I'll make a note to add a setting to turn that off and that
| might take care of it.
| knuckleheads wrote:
| Nice, thank you. I have removed both NNW and WWOOF as well now.
| I have a flagging system, so people can request to have a word
| removed or added and they get removed/added on the spot. I like
| some of the acronyms, but I am in the middle of working my way
| through all 3 letter words in english (many thousands of them)
| trying to weed out the weirdos. And, damn, I haven't been able
| to test on older phones. I'll try and pick one up and see what
| I can do there. Thank you for playing!
| why_at wrote:
| Nice work! That was pretty fun.
|
| There were definitely some words in there which I had never heard
| even as a native English speaker. One suggestion I would make if
| the intent is to teach people a new language would be to limit
| the word list based on how commonly used the words are. I don't
| think it helps non-proficient speakers to learn extremely obscure
| words that nobody uses.
|
| You could make it so that the X most common words are needed to
| win and the rest are bonus points or something.
| knuckleheads wrote:
| Thank you! And yes, taming the word list is a constant battle
| and a matter of taste. I haven't tried to draw such strict
| lines yet for the entire language as to what definitely will
| and won't be in there, beyond nothing vulgar, too obscure, or
| too obsolete. There's a ton of flowers in there for example,
| which is interesting, but also, eh. I wanted to get it in front
| of people and hear what they thought, so thank you for this!
| oneeyedpigeon wrote:
| I liked it, but a couple of bits of feedback:
|
| 1. I thought there were a few too many clues of various types.
| The emoji, combined with the word list in alphabetical order, the
| part-filled words, AND the infinite guesses. I'll admit, I ended
| up guessing quite a few times, which slightly soured the
| experience.
|
| 2. Some of the words are _really_ weird. I 'm not sure all of the
| onomatopoeic words should be in there. And I don't think the
| acronyms (e.g NNW) should be in there.
|
| Other than that, though, I thought it was a great version of the
| NYT equivalent. Loved that there were so many words -- it's a
| shame that #2 would mean fewer, but I still think it would be
| worth being a bit pickier on balance. My partner didn't quite get
| the emjoi clues until I explained an example, but I thought a lot
| of them were quite clever!
| knuckleheads wrote:
| 1. This is interesting. It's definitely made with language
| learners in mind, so there's a copious amount of hints. There's
| also a ranking system, where you do get penalized if you guess
| so much. That's not so forward, it used to be up front and
| friends didn't like it so much. One way of making it harder is
| taking out the 2 and 3 letter words, which really reduces the
| number of hints you get via word fill ins. I was thinking of
| something like Three Emojis++ as a name for that mode, but I
| haven't gotten around to testing it out so much.
|
| 2. I've removed NNW now. I've got a todo list to start playing
| a day ahead and doing a final pass over such things so that not
| as much weird stuff gets through. I do like having onomatopoeic
| words, because in German, it is really interesting to me to see
| them. I would like to known the German equivalents to Eh, ow,
| oh, ew and so I leave such things in. But have five different
| versions of ewwww, yes, that'll get fixed.
|
| I have scripts that tune it to specific numbers of words each
| day by selecting different letter sets based on my curated word
| list, so removing words doesn't have such a big impact. And the
| emojis are hit or miss, but when they hit they are very funny
| and helpful. I would never ask a human to label 75 words a day
| with emojis, but GPT-5 will happily do it for a $1 a day.
|
| Thank you for playing!!! And writing this comment!!
| knollimar wrote:
| Doesn't filter out all acronyms.
| knuckleheads wrote:
| Some acronyms a language learner needs to know (i.e. OOO, CEO,
| COO). The others I am hunting down with extreme prejudice.
| knollimar wrote:
| All cardinal directions need to go unless they're already a
| word otherwise; I just had WNW
|
| edit: also I'm a native english speaker and I don't know what
| OOO means.
| knuckleheads wrote:
| Ah, WNW is out now. I've made a note to track all those
| down, there's a bunch of them hiding out in there. And OOO
| means Out of Office and it's pretty common in English
| workplaces, to the point that people learning English in a
| business context have told me that they had to specifically
| look that one up.
___________________________________________________________________
(page generated 2025-11-07 23:00 UTC)