Apple Releases CUPS 2.0
kthreadd writes: 15 years after the release of CUPS 1.0, Apple has now released version 2.0 of the printing system for GNU/Linux and other Unix-style operating systems. One of the major new features in 2.0 is that the test program for ippserver now passes the IPP Everywhere self-certification tests. Also, they've made an interesting blog post looking at the past and future of printing. Since the first major release in 1999, printing has become much more personal. Printer drivers are going away, and mobile usage is now the norm."
If anything, printing has not become more personal, not mobile. All I see used in practice these days are huge office high performance machines, you know, the ones that can spew 100 pages per minutes, with documents being sent to them from real computers.
The mobile devices (smartphones and especially tablets) made electronic documents viable and portable, so nobody prints things from their phones or tablets - they already have a presentation of the document, a paper copy is not needed. Definitely there is no smartphone to printer workflow at homes.
I think the keyword there is companies. The main reason for CUPS is support for IPP, a particularly enterprisey protocol. I could tell that it's enterprisey because it's full of XML and I couldn't figure out how it's supposed to work. Once I got printing to work, I didn't bother to look further into it. Printing is just an occasional hassle for me.
Of course, once CUPS got the momentum, then CUPS got more support, more printer drivers, more GUI front-ends, so right now it's just easier to get a working system using CUPS than LPRng. I'm surprised that LPRng is still seeing development as late as 2012, and the web site apparently got tweaked in March this year.
Have a nice time.
...because web protocols are universal and easy to use.
Ask yourself this question. Should I use a standard protocol with tons of tools an an ecosystem to support it or should I use a totally custom protocol to handle everything?
Why you'd need to write custom complicated protocols from scratch for everything always riddled me.
Maybe you think because theres less overhead it's better. IDK, but I reject that premise.
Disclaimer: I work with a bunch of stubborn hardware engineers that sometimes refuse to give up their false permises about software.
CUPS was horrible then, but Linux printing in general was about 15,000x times more horrible with LPD/LPR being the standard and leaving you with pretty much the choice between a postfix printer (which was pretty pricey until the mid-'00s) or an Epson dot matrix printer. There were a handful of print solutions but they were either very expensive or totally sucked.
CUPS made printing on Linux mostly painless.
The Christian Right is Neither (Christian nor right). See: Matthew 23, Matthew 25, Ezekiel 16:48-50
OpenSSL is also incompatible with GPL, so projects like CUPS need to ship with an exception.
Because then you have to write a front-end GUI for every OS out there -- Linux (all 200 flavors of it, because, you know..), Windows, MacOS, Android, iOS, Blackberry, Canon DSLRs, etc., etc.
It turns out, writing your GUI on top of HTTP is really nice, and means you just have to expose it, and let the browser on the existing OSs take care of the hard work of drawing the button on the screen.
Our office has pretty much replaced laptops with iPads for 90% of the people. They didn't need a portable device for anything other than checking their calendar, email and basic web browsing (since almost all of our apps are now designed for the browser, we don't need custom, PC based apps anymore). It turns out, when you do that, those people start to demand to be able to print their emails, web pages, etc. from those mobile devices.
And this is a growing trend. Look at all the business people carrying around iPads / Tablets in favor of heavier laptops.