Hacker News new | ask | show | jobs
by jballanc 5281 days ago
Out of curiosity, would you call OS X "open"? You can find enough of the source for OS X to create a booting OS here: http://opensource.apple.com/ . Obviously, this isn't all of OS X, but then not all of the Android OS is "open" either.

I'm not trying to be contrarian, but I think the people criticizing Adroid for not being "open" are primarily picking on precisely the vagueness that you have highlighted. There are ways that Android is "open" that really matter...to you. For other people, there are ways that Android is not "open" that really matter. Just ask Stallman, for example.

3 comments

You cannot build and sell / distribute your own devices with OS X on it. Apple has been very aggressive with companies that tried that, in particular with Psystar, the first company that sold "hackintosh" computers [1], which they sued into oblivion.

So no, OS X is not open and there's nothing vague about it.

[1] http://en.wikipedia.org/wiki/Psystar_Corporation

Hold on there. Psystar was attempting to sell copyrighted software in violation of a EULA by breaking encryption, which is specifically prohibited by the DMCA. I'm not saying that I agree with that specific case, but I think a great many open source advocates would take issue with you comparing the actions of Psystar with the desire to have a fork-able OS (which, BTW, OS X is).

Had Psystar sold computers with OpenDarwin running X, Apple wouldn't have batted an eye (couldn't, even, since it's all BSD).

You cannot compare OpenDarwin + X with OS X. Come on ... none of the polish and mostly none of the applications working on it. It would be completely useless and it wouldn't be OS X.

Your argument is like saying Windows is open because ReactOS exists [1] or that you could say a Linux distribution + Wine is Windows. It's not.

And comparing to Android, you can distribute / sell Android devices, even with your own modifications to Android and Android is also "copyrighted" btw.

That's what open-source has always been about - the right to fork. You cannot fork OS X. You cannot fork iOS. You can certainly fork Android.

     in violation of a EULA by breaking encryption,
     which is specifically prohibited by the DMCA
You mentioned 2 separate issues here btw - is it either violation of an EULA, or breaking encryption? And how are these issues separate from the freedom to distribute it or from the freedom to fork it?

[1] http://www.reactos.org/en/index.html

Android is much more open than OS X. No argument there.

But Psystar was never interested in a "fork". They merely wanted to make a profit by selling Apple's software on commodity hardware. Doing so was both in violation of the EULA (which forbade redistribution), and in violation of the DMCA which prohibits breaking encryption for the purpose of making a copy of copyrighted material. The EULA clause has not been tested in court (to my knowledge), and may not be valid. However, the DMCA prohibition on breaking encryption is well established. There is even a list of what encryption you are specifically allowed to break: http://www.loc.gov/today/pr/2010/10-169.html

no, OSX is not open. you can't take the published source code and compile it into a useable copy of OSX.

you can take the published android source code and create a useable copy of android from it. the entire operating system is there. android is open source. the people criticizing android for not being open are either lying, or have forgotten that we have moved on from the 3.0 branch which was not open.

You can take the published source code and compile a useable copy of OS X. In fact, for many years the OpenDarwin project did just that. What you could not do is run the Aqua GUI or many of the default applications that come with a Mac bought in the store.

But that's the point. Sure, you can compile and run "Android", but is it the same as the OS that runs on a phone I buy from Verizon? Android phones sell with proprietary software that is most definitely not open. Macintosh computers sell with proprietary software that is most definitely not open. But enough elements of both are open to the point that you can boot a device and accomplish real work.

What you could not do is run the Aqua GUI or many of the default applications that come with a Mac bought in the store

Which isn't very useful at all. Android on the other hand allows you to run Market, Apps, Amazon Apps, your own in house apps on your device of choice by using the provided source code. You will have to write your drivers may be but that's not nearly the same as write your CF or Aqua or OpenGL implementation plus a ton of other things to make stock OS X apps works. That goes into practically impossible category.

So in other less terse wording - you can call Darwin open source but you cannot really call OS X open source.

Sure, that's essentially my point: Parts of the Android stack are open and parts of the OS X stack are open. Whether or not the important parts are open depends on who you are. Take, for example, the other story on HN today about HTC finally opening their bootloader. That, to me, is much more important than any other part of Android being open.
"Open", in this context, means open source. HTC's bootloader has always been open source, as far as I know. It's been set up to only boot signed kernels, but that's "open" as in, "customers can modify their devices" not as in, "customers can view and modify the source code we put on the device."

HTC's locking the bootloader isn't exactly an issue with Android's openness. It's an issue with the openness of HTC.

>Android phones sell with proprietary software that is most definitely not open. Macintosh computers sell with proprietary software that is most definitely not open.

Ubuntu comes with proprietary software that is most defnitely not open...

Just because OEMs and carriers ship versions of Android that contain closed components does not mean that Android itself is somehow "less open". You can download and compile the source and throw a vanilla, open version of Android on any device that will allow it. It's not Android's fault that OEMs lock you out of their devices, any less than Linux would be responsible for UEFI.

>But that's the point. Sure, you can compile and run "Android", but is it the same as the OS that runs on a phone I buy from Verizon? Android phones sell with proprietary software that is most definitely not open.

Yes, the image of AOSP that I built for my Nexus is identical to the shipping image, minus the Verizon apps (Voicemail and My Verizon). I'm running CM9 now. Motorola/HTC/Samsung all have their custom overlays for skins, but that's not really the point. The stock ICS is a pleasure to use and is ages about Blur/Sense/TouchWiz in usability.

No, the drivers are generally not open. Wait, they're almost never open.

So, you can make a useable copy of Android that run in.. an emulator. Woot.

That's the major "Android is not open" gripe I have.

Besides, we might have "moved on" from the closed source Android 3.0, but that doesn't mean much. Android 5 could be closed for all we know. In fact, it could be forever closed, at any given time.

And now, Google has history were they actually have closed it. Which changes, well, everything. They won't be afraid to do it if they have an interest into doing it.

The gripe that you have is other people are not providing free, open drivers that you can use the way you want. The point of Android being open is you can have your own hardware, write and publish your own drivers and take the Android code to create Android compatible device which is fully open. That cannot be said of other successful Mobile offerings.
Darwin + X Windows is Open Source (ie, you can fork it etc).

OS X isn't.

For other people, there are ways that Android is not "open" that really matter. Just ask Stallman, for example.

No, Stallman argues that Android isn't Free Software (according to the FSF definition)[1]. He's correct in that. He also argues that the hardware for Android isn't open enough. He is correct in that too, but fails to note that most of what he says there also applies to the x86 PC platform (assuming it is using binary graphics drivers, which is how most Linux desktop boxes are deployed).

[1] http://www.guardian.co.uk/technology/2011/sep/19/android-fre...