PiSquared Blog
Blog about geeky stuff, computers, physics and life.
Morse
Tags: English, learningCreated on Thu, 25 Feb 2021
Yesterday, out of nowhere, I decided to try to learn Morse code.
In general, I hate learning languages - I can express something already in one language and learning how to do that in another seems useless with very little added benefit.
But Morse is a different type of language - it's a different communication medium, an almost universal human-binary protocol that can be communicated through timings in different mediums including wires, light or sound.
It can be argued that is is actually a tertiary protocol because it actually uses 3 types of signals - Dots are short signals, dashes are longer ones (3 times as long by standard) but then you also put silence between the letters (which is by standard the length of a dash or 3 beats). However if we think in binary representations - i.e. high and low set of signal - then a dot is a 1
, a dash is a 111
and silence depends on where it should be. A silence between individual dots and dashes is a single 0
. So for example letter P
which is represented as .--.
in binary would be 10111011101
- three one-bit silences between the dashes and the dots. When it's between letters you put a three-beats silence so Pi
which in morse would be .--. ..
in binary would be 101110111010001010
- notice the 000
between the letters. So it's a binary protocol and can be implemented in a any medium that supports an unambiguous high and low.
The binary protocol kind-of-follows the frequency of the letters in English language - the most frequent letters are represented with a single character - E
is .
, T
is -
- while the less frequent ones require more - e.g. Q
is --.-
. It's not perfect but it's International and that's better than anything else we have.
So I found this video that proposes two techniques: a more visual and a more audible version:
{% rawhtml %}{% endrawhtml %}
The first one draws on the idea of a binary tree. You construct all the characters in a tree structure that starts from a root node. Every time you go left, it's a .
, every time you go right, it's a -
:
The other one is associating words or phrases that can be roughly translated to the stresses and the lengths of the dots and dashes. For example the phrase Dog did it
can be pronounced with a loong Doog
which represents the dash and then with short did it
which represents the shorter dots:
The person in the video says that most professionals recommends this audible method for learning instead of the more visual binary-tree one.
So I found another raw video from youtube that represents the sounds in triplets...:
{% rawhtml %}{% endrawhtml %}
...and then tried recording my own cringy voice in almost a singing fashion at the middle repeat:
{% rawhtml %}{% endrawhtml %}
What I found out is that this mnemonic method really helps in one direction - if I know the letter, I can get the sound. I almost learned these already because the phrases are phrases I know, easy to associate with the letter and stresses make sense (mostly). So let's say my access in this direction (letter->sound
) in programmatic terms is now O(1)
. This direction corresponds to the writing operation - so if I have a word or a sentence I can now (almost) translate it already to sounds.
However the other direction (sound->letter
) is much harder. Listening to this long training video for single letters...:
{% rawhtml %}{% endrawhtml %}
... I find that my association with the letter when I hear the sound is almost linear (O(n)
) in speed - I try to go through each of the letters I know in order to get which one I am at. After I hear the correct letter, then it's easy to hear it the second time with the mnemonic I have. This would be the "reading" direction (or more like listening).
So I'm now looking at a way to speed up the reading direction. I'm really trying to hear the sounds as the phrases but I'm still struggling.
Anyway, it's day two and just a fun side thing. Whenever, whatever :)