This is a problem I've been dealing with for a while now. I have a Lexmark printer which I've bought without checking for compatibility with Linux (I bought it when I was still using Windows), and as it turns out, this printer is not supported in Linux. I switched to Linux on my main desktop full-time late last year, so instead of to my desktop, I hooked this printer up to my bedroom Windows 7 media server/HTPC, and whenever I need to print, I just drop the file in question on this machine, and print form there. I need a better solution. Update: As it turns out, Lexmark has recently started releasing Linux drivers (good stuff). Still, the problem at hand stands, as there might still be other printers that suffer from the same problem.

Why cannot printers be like keyboards, mice, or pendrives? You just plug them in, and they work. They all work way. You don't have to install that crapware they give you - and in fact, they stopped giving it.
Why don't printer makers agree on some standard driver? In the end, they will save money on driver development, and users will be happier.

The problem is that a lot of printers don't support either one, especially the cheap consumer printers. The lesson here is "don't buy cheap printers," but it still sucks for all of those people who already have.

Would it be so hard to make even cheap printers support PCL or PS? No, not these days. But, I suspect it would take something on the order of an act of government to actually force the issue (they'd have to make it a legal requirement). This won't happen.