Fine. How about this: To recover data from an SD card, I wrote a Python script to read each sector and dump them into an SQLite database. I'm not publishing the script, so it's not open source. But I made it for myself and can do anything I want to it, so it's free software.
Free Software has always been about freedom, not the price tag. You don't need to go to the Church of Programming to get software. You don't even need to dodge the malware on C|net. You can make your own software. The GNU Manifesto is about coming together and making an entire operating system that ensures individual freedom.
Why not do away with English class after the students have gotten to the point that they can write a good paper and require that students write more papers for other classes like science.
The trouble is...in HS and below, we pretty much no longer fail or hold kids back if they don't learn their subjects. There is a reason so many colleges have so many remedial classes for incoming freshmen...English being one of them.
The lack of skills of many incoming Freshmen is atrocious.
A problem here is that the useless English Department administrators somehow managed to make 4 years of English a requirement for graduation. Doesn't matter if you already have skills in English; doesn't matter if you graduate without any skills. You're all getting stuck in the same class, which for lack of anything relevant to learn, ends up being a discussion about whatever fits the fancy of the teacher. Who majored in English for Teachers, so knows nothing useful.
It also doesn't help that a lot of science teachers don't care about language. They majored in Science for Teachers, and don't understand the importance of communication.
If running Linux is the goal, then I would be tempted a lot by the Purism Librem laptop. Finally, a high-spec laptop that's actually built with Linux in mind.
Of course, I would not get the base configuration. Hard drives are for suckers. And at this point, I would wait for actual hardware to ship so reviewers can touch on the other stuff, such as keyboard, trackpad, build quality, battery life, and fan noise.
Why would she need anything specific ? Any entry level laptop will have more CPU and GPU capability to do whatever she's gonna be asked.
So buy based on other factors. In my experience, the entry level laptops are driving people into getting Macs, because they suck so much.
Screen, keyboard, and trackpad. Does she need to squint, because some random application doesn't do HiDPI correctly? Do the color shifts of a cheap TFT give her headaches? Are they still making 15" 720p screens, where you can't show much content on screen because it's all too blocky? Is the keyboard reliable? Does the trackpad make her want to go on a murder spree? All these questions and uncertainty go away when you get a Mac.
And then the waiting. All the cheap laptops have hard drives. Bad choice. Especially on a development system, seeking all over the place to touch the headers or other important files.
I guess aesthetics and battery life are important. Especially fan noise.
Of course, if you have an opinion about Mac vs Windows, then Apple's the only vendor selling Macs. I feel that MacOS is nicer, but that is always open to change.
That's because there's close relationships between "free (as in freedom) software" and "open-source." Neither is a proper sub-set of the other though.
Bolded part has me curious. What sort "free software" would not fall under the looser defintion of "open source" at the same time?
I can think of a couple edge cases.
First, software that you make for yourself and don't let others use. Not even through services. Google and Facebook are considered non-free in that regard. But if you make it for yourself, then you're exercising your freedom and not hurting anybody else.
Second, software that is isolated in a coprocessor and cannot be modified. Then it can be considered part of the hardware, and Free Hardware is not a priority of the Free Software Foundation. That's the approach being taken for the GTA04 OpenMoko phone.
I ran into this problem when I was trying to upgrade Windows XP computers to Windows 8 a couple years ago, while simultaneously upgrading from HDD to SSD. The download program wouldn’t allow this uncommon upgrade pattern. And, evidently, Microsoft is too poor to afford the bandwidth to provide the ISO (sarcasm).
The solution was to download from the kindly strangers who have volunteered their bandwidth via BitTorrent. The retail RTM ISOs are readily available, with checksums to ensure that they haven’t been tampered with. The installer was still ornery; I had to install a dummy copy of Windows XP onto the SSD so the program would deign to reformat and install Windows 8, but otherwise it worked fine.
The apps either didn't exist or were featureless, including Microsoft's own ones. Needless to say, I was happy to go back to Android
Then you'll be pleased to discover that Lollipop's new Material Design aesthetic also aims to eliminate all visual features. And just so you don't miss out, most of the Google apps in KitKat have also been updated with Material Design.
I see plenty of English speakers learning Chinese. A lot of them never learn "proper" English. But I work in San Francisco with the children of Chinese immigrants. Even the elected mayor is a child of Chinese immigrants, now.
Going back to the OP, the current entrenchment is no guarantee. 100 years ago, everybody who wanted to do science learned German. 300 years ago, everybody learned French. 600 years ago, everybody in the West learned Latin. 2000 years ago, everybody in the Mediterranean learned Greek. For most of that time, everybody in China learned Chinese.
Resolution though is largely irrelevant to most usages - it's the physical size of the screen real estate that matters.
Let's compromise: Both physical size and resolution matter. You're not getting a lot of work done on an old-school 240p Apple II screen, no matter how big it is.
There are many limits against low resolutions. I can totally read a 14-pixel-tall 'a' much faster than a 6-pixel-tall 'a' and more pixels would be even better. You can see a lot more content when your icons, that need to be at least 12 pixels tall to be recognizable, use 1/100 of your screen instead of 1/20. I used computers in the 1980's. I remember what they looked like. Using more than 50 pixels for 'a' is a bit silly, though.
Resolution makes a difference when you're working with stuff that is laid out like pages. Ever tried to read a PDF in less than 1000 horizontal pixels? I did. It's illegible. On the typical 1080p widescreen monitor, you split that 1920 pixels horizontally between 2 windows, and you get only 960 pixels per window. That's not enough resolution to see an entire page reasonably.
I have a 20-inch 1600x1200 monitor that I run in portrait mode with 1 program on screen at a time. 1200 pixels is frequently not enough, unless I'm doing work in classical terminals. 2560x1440 would allow me to show multiple programs at the same time, less need for portrait mode, and 3840x2160 would be great.
For me, the biggest issue is that most videos still require Flash.
Google is the biggest hypocrite here. One part of the company paid a lot of money to promote patent-free video on the Internet, but the YouTube team won't use it for music videos and prefers to use Flash even when HTML5 <video> is available. The Chrome team not only backpedaled on removing patent-encumbered <video>, but also partnered with Microsoft and Netflix to bring DRM into the HTML5 standard.
My practice is to use Google Chrome when I really do need Flash or some other Google monstrosity, but otherwise keep that browser closed.
Oh, come on, it's not just that. It's also PulseAudio, also from Poettering, and udev, from RedHat's Kay Sievers, and how glibc emphasizes performance over security, from (formerly) RedHat's Ulrich Drepper, and possibly some of the silliness around RedHat-funded KVM, and the NIH silliness around ZFS vs (Oracle) btrfs, and dtrace vs strace/ftrace/whatever, and the performance of NetFilter and its proposed replacement nftables vs BSD's pf...
systemd might be the straw that breaks the camel's back, but there are many areas where someone might have issues with Linux. Personally, I'm not that invested in it either way, so I'm most swayed by software and hardware compatibility, where Linux wins really, really big. Though, I wonder what sort of reality distortion bubble RedHat is projecting around their developers, that so many of the issues are with RedHat stuff.
> I refuse to support PowerVR outside of iOS, so I'm going to sit this one out.
Somebody on maemo.org quoted a Jolla employee from IRC as saying, it will be an Intel GPU.
Even better, The Register found somebody from Intel to claim that it's an Atom 3700 series device, meaning Bay Trail. Now I'm much more interested in this device, but I'm still inclined to wait until firm confirmation.
And ONLY 2 GB of RAM? What's the fucking point of including a 64-bit processor?
A couple points that come to mind:
Better performance per clock, due to instruction set simplification and larger working set of registers.
Slightly better security, because of more address space to do ASLR.
Finally enough address space to mmap everything. If your memory usage is dominated by static assets like graphics, this would allow you to use the operating system's virtual memory paging to handle which assets are in RAM at any time.
They don't explicitly say, but it looks very much like they're using a Moorefield system, like the Nokia N1. The PowerVR graphics in the Moorefield benchmark well on Android, but it's no good.
The PowerVR drivers are closed-source, the company is hostile to open source, and even on Android the performance is inconsistent. See page 2 of Ars Technica's review of the Nexus Player. And in Jolla, the device driver is not native to the operating system, but goes through libhybris.
I refuse to support PowerVR outside of iOS, so I'm going to sit this one out.
Honestly, every year, twice a year, the DST haters come out of the woodwork, because apparently adjusting your clocks twice a year is soooooo difficult.... And if you're one of those people who uses their smartphone as their alarm clock and pocket watch, you never have to worry about the adjustment; smartphones and computers make the adjustment automagically, *and* they even alert you that this happens.
You're an idiot (from Greek: "idios," meaning someone thinking only of yourself). Just because you find it so relaxing to change your clocks on cue like an animal in a circus, doesn't mean I want to do that.
There's nothing magic about the clocks in smartphones and computers. Those things take a lot of human labor to build and maintain, and frequently the humans make mistakes. Which you can't fix because with all that "magic," they leave out the manual controls. Or have you forgotten how iPhones sometimes make people late to meetings, or how Zunes used to die completely, or how every new program that deals with local time acts weird during the time switches, or how your unpatched system would show you the wrong time for about a month ever since this latest time switch?
I hate experiencing anxiety every time I get a new gadget that has a magical networked clock, wondering whether the clock will change correctly, or whether I'll unnecessarily wake early in the autumn or come to work late in the spring. That's on top of the general misery of changing my biological clock, and knowing that all this hassle is scientifically proven to be wrong and counterproductive but still it continues.
I don't mind having more sunlight in the afternoon. I hate changing the clock.
I don't care whether it's DST all year or standard time all year, but I hate switching back and forth. It's responsible for so much loss of life and productivity. I feel that DST switching is a twice yearly reminder that our "betters" in Congress are in charge and easily capable of messing with our lives. Until it's eliminated, I'll continue voting against my local Representative and Senators.
Yours wouldn't be the first software that has become abandonware. Users may appreciate the stability of an unchanging release. If it's distributed under a Libre license, then it can be forked and redistributed, but chances are that kids would rather make their own mistakes than work on your program.
I notice Apple protocols such as AirPlay and AirPrint, the whole Designed for iPhone licensing system, and how Apple is going out of their way to avoid any GPLv3 software such as Samba 3.
Oops, I meant Samba 4. Starting in MacOS X 10.7 Lion, Apple has used the closed-source SMBX instead of Samba to provide SMB service, and Apple's SMB client is licensed under APSL 2.0, which is not compatible with GPL. Apple's SMB software has also been slower and buggier than Samba.
I think Apple's aversion to GPLv3 is wrongheaded, as is Google's avoidance of GPL in Android other than the kernel. I'm not saying that it's evil, just a mistake.
No. If Apple had developed it, it would not have had any command-line interface except for XML files and the "defaults" program, its interfaces would have been proprietary to Apple,
Yes that's why LLVM, Clang, OpenCL, Zero-Configuration, and WebKit only works on Apple machines.
Wait, what? Where'd all this hostility come from? I've used Macs for 25 years, and I'm using a Mac to type this. I like parts of Apple and MacOS X, but I recognize some of its shortcomings. In my opinion, nothing is perfect.
I didn't say that Apple does not do open source. CUPS, LLVM, Clang, and KHTML (predecessor of WebKit) were not invented at Apple, and Apple complies with the license terms of the original projects. ZeroConf and OpenCL are examples of basic infrastructure that Apple decided would be in their interests if they were widely adopted. Apple has some surprisingly small teams for some projects, and I think of ZeroConf as a Stuart Cheshire project more than a faceless corporate project. Even so, Apple initially did their open-source releases under the Apple Public Source License, which is not compatible with GPL, and the existing OpenCL kernels are all proprietary. Or did you not notice that Mesa had to reimplement OpenCL from scratch?
In contrast, I notice Apple protocols such as AirPlay and AirPrint, the whole Designed for iPhone licensing system, and how Apple is going out of their way to avoid any GPLv3 software such as Samba 3.
CUPS was widely used before Apple bought it. Apple can't turn it into an Apple-like program without causing a user revolt, so it's still very much like how it was before Apple bought it.
Yes Apple is EVIL for not completely changing the software they own to be proprietary and they are also EVIL for forking software they didn't own (WebKit). Face it folks, Apple can do no right.
I don't see how you got that conclusion from what I wrote. I said that CUPS was not developed at Apple, so its peculiarities are not typical to Apple.
Apple is not the developer of CUPS. Apple bought CUPS back in 2007 and hired its main developer.
So... the guy that works on it is hired by Apple, and the project is owned and financed by Apple. Isn't that essentially the same as Apple develops CUPS?
No. If Apple had developed it, it would not have had any command-line interface except for XML files and the "defaults" program, its interfaces would have been proprietary to Apple, and it would have been even more confusingly documented. It would never have become widely adopted across the Unix world, partly because Apple would not have chosen GPLv2. Instead, Lennart Poettering would have been so in awe of it that he would have created his own unstable version of it, which would immediately have been adopted across the Linux distributions to the exclusion of any other printing system, because Lennart is the best programmer and all crashes are everybody else's fault. It would have stabilized when he got bored and started copying another Apple innovation. Like, say, launchd.
CUPS was widely used before Apple bought it. Apple can't turn it into an Apple-like program without causing a user revolt, so it's still very much like how it was before Apple bought it.
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.
Apple is not the developer of CUPS. Apple bought CUPS back in 2007 and hired its main developer.
CUPS is an example of the sort of hairy mess that open-source developers don't like to deal with, like OpenSSL. It was the inspiration for Eric Raymond (the main guy of the Open Source movement) to scold the OSS community back in 2004. I think Eric Raymond's ire is misplaced; CUPS was uniquely horrible back then. But printing in Unix has always been bad, and CUPS made it much better than before, so everybody standardized on it.
Being unreleased, it doesn't have any distribution license, so one else can do anything with it, so it's not "free software."
No, you are ignorant of What is free software. I repeat: It's about freedom.
The users have the freedom to run, copy, distribute, study, change and improve the software.
You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist.
(Note that such a rule still leaves you the choice of whether to distribute your version at all.)
I think this applies to my script, for which I am the only user and the only person who has a copy.
Fine. How about this: To recover data from an SD card, I wrote a Python script to read each sector and dump them into an SQLite database. I'm not publishing the script, so it's not open source. But I made it for myself and can do anything I want to it, so it's free software.
Free Software has always been about freedom, not the price tag. You don't need to go to the Church of Programming to get software. You don't even need to dodge the malware on C|net. You can make your own software. The GNU Manifesto is about coming together and making an entire operating system that ensures individual freedom.
The trouble is...in HS and below, we pretty much no longer fail or hold kids back if they don't learn their subjects. There is a reason so many colleges have so many remedial classes for incoming freshmen...English being one of them.
The lack of skills of many incoming Freshmen is atrocious.
A problem here is that the useless English Department administrators somehow managed to make 4 years of English a requirement for graduation. Doesn't matter if you already have skills in English; doesn't matter if you graduate without any skills. You're all getting stuck in the same class, which for lack of anything relevant to learn, ends up being a discussion about whatever fits the fancy of the teacher. Who majored in English for Teachers, so knows nothing useful.
It also doesn't help that a lot of science teachers don't care about language. They majored in Science for Teachers, and don't understand the importance of communication.
If running Linux is the goal, then I would be tempted a lot by the Purism Librem laptop. Finally, a high-spec laptop that's actually built with Linux in mind.
Of course, I would not get the base configuration. Hard drives are for suckers. And at this point, I would wait for actual hardware to ship so reviewers can touch on the other stuff, such as keyboard, trackpad, build quality, battery life, and fan noise.
Why would she need anything specific ? Any entry level laptop will have more CPU and GPU capability to do whatever she's gonna be asked.
So buy based on other factors. In my experience, the entry level laptops are driving people into getting Macs, because they suck so much.
Screen, keyboard, and trackpad. Does she need to squint, because some random application doesn't do HiDPI correctly? Do the color shifts of a cheap TFT give her headaches? Are they still making 15" 720p screens, where you can't show much content on screen because it's all too blocky? Is the keyboard reliable? Does the trackpad make her want to go on a murder spree? All these questions and uncertainty go away when you get a Mac.
And then the waiting. All the cheap laptops have hard drives. Bad choice. Especially on a development system, seeking all over the place to touch the headers or other important files.
I guess aesthetics and battery life are important. Especially fan noise.
Of course, if you have an opinion about Mac vs Windows, then Apple's the only vendor selling Macs. I feel that MacOS is nicer, but that is always open to change.
That's because there's close relationships between "free (as in freedom) software" and "open-source." Neither is a proper sub-set of the other though.
Bolded part has me curious. What sort "free software" would not fall under the looser defintion of "open source" at the same time?
I can think of a couple edge cases.
First, software that you make for yourself and don't let others use. Not even through services. Google and Facebook are considered non-free in that regard. But if you make it for yourself, then you're exercising your freedom and not hurting anybody else.
Second, software that is isolated in a coprocessor and cannot be modified. Then it can be considered part of the hardware, and Free Hardware is not a priority of the Free Software Foundation. That's the approach being taken for the GTA04 OpenMoko phone.
I ran into this problem when I was trying to upgrade Windows XP computers to Windows 8 a couple years ago, while simultaneously upgrading from HDD to SSD. The download program wouldn’t allow this uncommon upgrade pattern. And, evidently, Microsoft is too poor to afford the bandwidth to provide the ISO (sarcasm).
The solution was to download from the kindly strangers who have volunteered their bandwidth via BitTorrent. The retail RTM ISOs are readily available, with checksums to ensure that they haven’t been tampered with. The installer was still ornery; I had to install a dummy copy of Windows XP onto the SSD so the program would deign to reformat and install Windows 8, but otherwise it worked fine.
Do. Not. Want.
The apps either didn't exist or were featureless, including Microsoft's own ones. Needless to say, I was happy to go back to Android
Then you'll be pleased to discover that Lollipop's new Material Design aesthetic also aims to eliminate all visual features. And just so you don't miss out, most of the Google apps in KitKat have also been updated with Material Design.
I see plenty of English speakers learning Chinese. A lot of them never learn "proper" English. But I work in San Francisco with the children of Chinese immigrants. Even the elected mayor is a child of Chinese immigrants, now.
Going back to the OP, the current entrenchment is no guarantee. 100 years ago, everybody who wanted to do science learned German. 300 years ago, everybody learned French. 600 years ago, everybody in the West learned Latin. 2000 years ago, everybody in the Mediterranean learned Greek. For most of that time, everybody in China learned Chinese.
Resolution though is largely irrelevant to most usages - it's the physical size of the screen real estate that matters.
Let's compromise: Both physical size and resolution matter. You're not getting a lot of work done on an old-school 240p Apple II screen, no matter how big it is.
There are many limits against low resolutions. I can totally read a 14-pixel-tall 'a' much faster than a 6-pixel-tall 'a' and more pixels would be even better. You can see a lot more content when your icons, that need to be at least 12 pixels tall to be recognizable, use 1/100 of your screen instead of 1/20. I used computers in the 1980's. I remember what they looked like. Using more than 50 pixels for 'a' is a bit silly, though.
Resolution makes a difference when you're working with stuff that is laid out like pages. Ever tried to read a PDF in less than 1000 horizontal pixels? I did. It's illegible. On the typical 1080p widescreen monitor, you split that 1920 pixels horizontally between 2 windows, and you get only 960 pixels per window. That's not enough resolution to see an entire page reasonably.
I have a 20-inch 1600x1200 monitor that I run in portrait mode with 1 program on screen at a time. 1200 pixels is frequently not enough, unless I'm doing work in classical terminals. 2560x1440 would allow me to show multiple programs at the same time, less need for portrait mode, and 3840x2160 would be great.
For me, the biggest issue is that most videos still require Flash.
Google is the biggest hypocrite here. One part of the company paid a lot of money to promote patent-free video on the Internet, but the YouTube team won't use it for music videos and prefers to use Flash even when HTML5 <video> is available. The Chrome team not only backpedaled on removing patent-encumbered <video>, but also partnered with Microsoft and Netflix to bring DRM into the HTML5 standard.
My practice is to use Google Chrome when I really do need Flash or some other Google monstrosity, but otherwise keep that browser closed.
Oh, come on, it's not just that. It's also PulseAudio, also from Poettering, and udev, from RedHat's Kay Sievers, and how glibc emphasizes performance over security, from (formerly) RedHat's Ulrich Drepper, and possibly some of the silliness around RedHat-funded KVM, and the NIH silliness around ZFS vs (Oracle) btrfs, and dtrace vs strace/ftrace/whatever, and the performance of NetFilter and its proposed replacement nftables vs BSD's pf...
systemd might be the straw that breaks the camel's back, but there are many areas where someone might have issues with Linux. Personally, I'm not that invested in it either way, so I'm most swayed by software and hardware compatibility, where Linux wins really, really big. Though, I wonder what sort of reality distortion bubble RedHat is projecting around their developers, that so many of the issues are with RedHat stuff.
> I refuse to support PowerVR outside of iOS, so I'm going to sit this one out.
Somebody on maemo.org quoted a Jolla employee from IRC as saying, it will be an Intel GPU.
Even better, The Register found somebody from Intel to claim that it's an Atom 3700 series device, meaning Bay Trail. Now I'm much more interested in this device, but I'm still inclined to wait until firm confirmation.
And ONLY 2 GB of RAM? What's the fucking point of including a 64-bit processor?
A couple points that come to mind:
They don't explicitly say, but it looks very much like they're using a Moorefield system, like the Nokia N1. The PowerVR graphics in the Moorefield benchmark well on Android, but it's no good.
The PowerVR drivers are closed-source, the company is hostile to open source, and even on Android the performance is inconsistent. See page 2 of Ars Technica's review of the Nexus Player. And in Jolla, the device driver is not native to the operating system, but goes through libhybris.
I refuse to support PowerVR outside of iOS, so I'm going to sit this one out.
Honestly, every year, twice a year, the DST haters come out of the woodwork, because apparently adjusting your clocks twice a year is soooooo difficult. ... And if you're one of those people who uses their smartphone as their alarm clock and pocket watch, you never have to worry about the adjustment; smartphones and computers make the adjustment automagically, *and* they even alert you that this happens.
You're an idiot (from Greek: "idios," meaning someone thinking only of yourself). Just because you find it so relaxing to change your clocks on cue like an animal in a circus, doesn't mean I want to do that.
There's nothing magic about the clocks in smartphones and computers. Those things take a lot of human labor to build and maintain, and frequently the humans make mistakes. Which you can't fix because with all that "magic," they leave out the manual controls. Or have you forgotten how iPhones sometimes make people late to meetings, or how Zunes used to die completely, or how every new program that deals with local time acts weird during the time switches, or how your unpatched system would show you the wrong time for about a month ever since this latest time switch?
I hate experiencing anxiety every time I get a new gadget that has a magical networked clock, wondering whether the clock will change correctly, or whether I'll unnecessarily wake early in the autumn or come to work late in the spring. That's on top of the general misery of changing my biological clock, and knowing that all this hassle is scientifically proven to be wrong and counterproductive but still it continues.
I don't mind having more sunlight in the afternoon. I hate changing the clock.
I don't care whether it's DST all year or standard time all year, but I hate switching back and forth. It's responsible for so much loss of life and productivity. I feel that DST switching is a twice yearly reminder that our "betters" in Congress are in charge and easily capable of messing with our lives. Until it's eliminated, I'll continue voting against my local Representative and Senators.
Yours wouldn't be the first software that has become abandonware. Users may appreciate the stability of an unchanging release. If it's distributed under a Libre license, then it can be forked and redistributed, but chances are that kids would rather make their own mistakes than work on your program.
Argh! No! CUPS did not originally come from Apple, and Apple did not own CUPS back in 2000. Apple bought CUPS and its main developer in 2007.
I notice Apple protocols such as AirPlay and AirPrint, the whole Designed for iPhone licensing system, and how Apple is going out of their way to avoid any GPLv3 software such as Samba 3.
Oops, I meant Samba 4. Starting in MacOS X 10.7 Lion, Apple has used the closed-source SMBX instead of Samba to provide SMB service, and Apple's SMB client is licensed under APSL 2.0, which is not compatible with GPL. Apple's SMB software has also been slower and buggier than Samba.
I think Apple's aversion to GPLv3 is wrongheaded, as is Google's avoidance of GPL in Android other than the kernel. I'm not saying that it's evil, just a mistake.
No. If Apple had developed it, it would not have had any command-line interface except for XML files and the "defaults" program, its interfaces would have been proprietary to Apple,
Yes that's why LLVM, Clang, OpenCL, Zero-Configuration, and WebKit only works on Apple machines.
Wait, what? Where'd all this hostility come from? I've used Macs for 25 years, and I'm using a Mac to type this. I like parts of Apple and MacOS X, but I recognize some of its shortcomings. In my opinion, nothing is perfect.
I didn't say that Apple does not do open source. CUPS, LLVM, Clang, and KHTML (predecessor of WebKit) were not invented at Apple, and Apple complies with the license terms of the original projects. ZeroConf and OpenCL are examples of basic infrastructure that Apple decided would be in their interests if they were widely adopted. Apple has some surprisingly small teams for some projects, and I think of ZeroConf as a Stuart Cheshire project more than a faceless corporate project. Even so, Apple initially did their open-source releases under the Apple Public Source License, which is not compatible with GPL, and the existing OpenCL kernels are all proprietary. Or did you not notice that Mesa had to reimplement OpenCL from scratch?
In contrast, I notice Apple protocols such as AirPlay and AirPrint, the whole Designed for iPhone licensing system, and how Apple is going out of their way to avoid any GPLv3 software such as Samba 3.
CUPS was widely used before Apple bought it. Apple can't turn it into an Apple-like program without causing a user revolt, so it's still very much like how it was before Apple bought it.
Yes Apple is EVIL for not completely changing the software they own to be proprietary and they are also EVIL for forking software they didn't own (WebKit). Face it folks, Apple can do no right.
I don't see how you got that conclusion from what I wrote. I said that CUPS was not developed at Apple, so its peculiarities are not typical to Apple.
Apple is not the developer of CUPS. Apple bought CUPS back in 2007 and hired its main developer.
So... the guy that works on it is hired by Apple, and the project is owned and financed by Apple. Isn't that essentially the same as Apple develops CUPS?
No. If Apple had developed it, it would not have had any command-line interface except for XML files and the "defaults" program, its interfaces would have been proprietary to Apple, and it would have been even more confusingly documented. It would never have become widely adopted across the Unix world, partly because Apple would not have chosen GPLv2. Instead, Lennart Poettering would have been so in awe of it that he would have created his own unstable version of it, which would immediately have been adopted across the Linux distributions to the exclusion of any other printing system, because Lennart is the best programmer and all crashes are everybody else's fault. It would have stabilized when he got bored and started copying another Apple innovation. Like, say, launchd.
CUPS was widely used before Apple bought it. Apple can't turn it into an Apple-like program without causing a user revolt, so it's still very much like how it was before Apple bought it.
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.
Apple is not the developer of CUPS. Apple bought CUPS back in 2007 and hired its main developer.
CUPS is an example of the sort of hairy mess that open-source developers don't like to deal with, like OpenSSL. It was the inspiration for Eric Raymond (the main guy of the Open Source movement) to scold the OSS community back in 2004. I think Eric Raymond's ire is misplaced; CUPS was uniquely horrible back then. But printing in Unix has always been bad, and CUPS made it much better than before, so everybody standardized on it.