Gregory M. Turner wrote:
But encoding is inherently harder to implement than decoding (there's a lot more "to do", and usually no single right answer, so you never know when you're done).
Ah?
Every book, software and piece of common knowledge tells me that decoding is WAY more difficult. "Be restrictive in what you produce, and permissive in what you accept" means that, when decoding, you need to accept broken encodings too, as well as encodings that took a different path than the one you would take (different algorithm, different paramters, optional parameters, etc). When encoding, you need to select a single path and go that way.
I own a nice book on compression, and I could do this code, but also I would be implementing from scratch instead of borrowing from others... so if these percents measure man-hours, we very well might be at more like 15%!
I think there is no definite answer, but the general gist is that we measure usability.
Shachar