Picking a Thread
Sometimes writing/developing software is like picking a loose thread on a sweater. At first you see it, it bothers you, then you try to fix it, usually by just yanking on it. This just makes it worse and turns into an even bigger job.
The GIF image format relies on the ex-patented LZW compression algorithm. So, while working on my GIF image format plug-in, I discovered that my LZW decompression code doesn’t work. I had originally written that code to handle text, or byte, compression. Well, image pixel data can come in bit sizes less than one byte. So now I have to take a look at the design of my LZW compression code as well as my other LZ dialect implementations.