Arthur Liu

-- --- .-. ... .

An app game to teach you Morse Code.

Back in high school, the chairs in one of my English classes were set up so that there were rows parallel to every wall bar the front. The intention was that everyone could face the teacher, but looking straight ahead from my seat, I would instead have a perfect line of sight to another student. This setup might have lend itself to some somewhat random and awkward eye contact, but it happened that right across from me was a guy called Max. During the ocassional lull, he would blink furiously, pretending to send me a message in Morse. It’s obligatory to play along of course, but I was never the one who could hide a smile, and the teacher would often ask, “What’s so funny?” I’ve always wondered what it would be like to actually learn Morse, so I downloaded a Morse code app (with a similar idea to this one) to try to learn. The premise was cool–ships labeled with letters would sail down the screen, and you would have to type the appropriate Morse code to “destroy” the ships before they reached you. But the game never taught any Morse, and it just expected that you already knew the answers so I would die immediately.

Ultimately, I didn’t really care for Morse. (After all, not only would I need to have mastered both Morse and the art of blinking, but I would need another willing participant with the same rare credentials). What was more exciting was that I had a silly, and somewhat useful, app idea that I could make myself. So, I stashed the idea away in a growing list of project ideas, and this last summer was when I dusted it off and made it happen.

Well, mostly made it happen.

Right now, it’s a functional game that you can try for yourself at expo.io (And see the source code). Since it’s built with Javascript using React Native, it can run on both iOS and Android! (Well, kind-of on iOS but Apple keeps cracking down with its regulations. Currently, if you want to run it on your own iPhone, you’d need to be logged in to my account, which I’m not quite at the liberty of sharing… sorry) Additionally, you can run it on the provided Android emulator on expo! It’s rare however that I’m ever fully satisfied with the UI, and this project is no exception. (And in my opinion, it looks a bit worse on Android since there are still some native elements in it. Again, UI could always use work.)

Overall, it was a fun project, and I got to learn a few more tools. Namely, React (Native) and more familiarity with Javascript. I’ve also been playing it myself and picking up some more – (M) — (O) .-. (R) … (S) . (E)

Potential TODOs for a future me: (I’ll cross them off if I ever get around to it)