Abraham Lempel has died (the L in LZW compression)
ynetnews.com
ynetnews.com
It's always seemed surprising to me that variable-length codes (Huffman, Shannon, etc.) are conceptually more complex than replacing repeated sequences (LZ family), yet the former were "discovered" first. Even RLE, which is like a very limited subset of LZ, came after Huffman. If you compare the amount of code needed to decode even simple static Huffman vs. a common LZ variant like LZ12/4, as well as the typical compression ratios of those schemes, it's clear that the latter is a huge win in efficiency and simplicity. Maybe the lesson here is that if you take something that seems almost like common sense or trivial and turn it into an invention, you just might get lucky and become famous?
Edit: Arguably language itself uses uses variable length codes of letters / phonemes but that might be a more difficult parallel to spot.
For example, there's a correlation between the numbers of vowels/consonants in a language and the length of each syllable, time-wise. Languages like English form slow complex syllables, and languages like Japanese have fast simple syllables. Each English syllable conveys more information but takes longer to do so. In the end, English and Japanese have about the same effective number of distinguishable states in the same amount of time -- the same effective bitrate.
There is an uncanny parallel to the trade-off between the symbol constellation size and baud rate with modems.
If you have a sequence of symbols emitted by a known source, it's often easy to compress the sequence optimally. But if the properties of the source are unknown, optimal compression becomes much harder. The key part of the LZ77 paper was showing that a simple algorithm is asymptotically optimal for a wide range of sources. That the algorithm is a universal compressor rather than a mere heuristic that seems to work pretty well with some test inputs.
Also, GIF runs on LZW.