A classic by James Hague entitled A Spellchecker Used to Be a Major Feat of Software Engineering.
Writing a spellchecker in the mid-1980s was a hard problem. Programmers came up with some impressive data compression methods in response to the spellchecker challenge. Likewise there were some very clever data structures for quickly finding words in a compressed dictionary. This was a problem that could take months of focused effort to work out a solution to.
Reminded me of when I used to program with disk, CPU and memory constraints back before I had gray hair. And how much our tools have progressed since then.
See Also: Things That Turbo Pascal is Smaller Than - it was my first CS language at university.