View Single Post
johnkzin's Avatar
Posts: 1,878 | Thanked: 646 times | Joined on Sep 2007 @ San Jose, CA
#20
Originally Posted by attila77 View Post
even though essentially they are not all that much more linux or free (libre) than EZX was
Except that they DO give you the source code to pretty much everything except the application market program, allowing anyone (not just OHA members) to do what they want with it (such as random people porting it to netbooks, someone porting the application layer to run on top of desktop linux, etc.). That's definitely more liberty than EZX was ... by a LONG shot.

((Warning, long rant about open/free(libre) slanders against Android))

There are a lot of parallels, IMO, between what Google is doing with Android, and what Apple did with OS X, for OS X's first couple years. Take a unix kernel (Mach for OS X, Linux for Android), only instead of putting a crappy windowing layer on it (X Windows), and dragging along all of the albatrosses that that brings with it, go in a completely different direction with the GUI layer. And, early on, lots of narrow minded critics said "Lack of X Windows means it's not really Unix!", but over time everyone grew to see that that was pretty much a pointless and hollow criticism -- *nix platforms have NEVER been limited to the kernel + binutils + X windows model, and anyone who knows what they're talking about knows that. OS X on the desktop, for various reasons, did preserve your access to the CLI layer (with Terminal.app), but LOTS of OS X users never use it (many don't even know it's there). I don't think it was a poor decision on Android's part to not include that functionality -- while I may like that functionality, it's no where near being necessary to the device's purpose (just like that functionality isn't included in the mobile version of OS X -- Android and mobile OS X are pretty much identical there). And, Apple (inheriting the decision from NeXT) correctly saw that X windows is more of a liability to a solid GUI environment design than an asset, so they ditched it in favor of something MUCH better. Android, similarly, realized that they don't need X windows in order to deliver a Linux platform, and eliminated all of the liabilities that go with X windows.

And, early on, Apple gave away the source to the lower levels of OS X (except for the GUI and application runtime source). Android goes a step further by giving you those things Apple didn't. The question in my mind isn't "is Android open/free" -- it is. Anyone can download it, modify it, redistribute it, do what they want. And people have shown that you can even load other versions of Android onto the devices (hacked versions of Android, pre-releases of Android installed manually, etc.). Things layered on top of Android (the HTC Hero's advanced UI) aren't open/free, but that's not any different than Gnu/Linux. From an openness and freedom point of view, Android isn't any different than Gnu/Linux. From an openness and freedom point of view, there isn't anything you can do with Gnu/Linux that you can't do with Android.

Do you have easy access to the CLI? no. But that doesn't mean it's a closed platform. It means that the platform isn't intended to be a CLI based platform. It's intended to be a GUI platform. This isn't new, nor unique, to *nix platforms. ATMs in the 1980's and 1990's, for example, were often *nix boxes. The pizza order and fulfilment computers in Pizza Hutt restaurants, in the same era, were also built on top of *nix software. In neither case was the CLI exposed to the user, only the actual application that mattered was exposed to the user. That's not draconian closed software, that's "building a platform that has a purpose, and managing the scope around that purpose" (ie. "good software design"). The fact that something has a Unix or Linux kernel doesn't mean that it must fit some generic legacy model of "it has a sh/bash/csh/tcsh/ksh interface with access to binutils type utilities (sysv, bsd, or gnu based), and a GUI based on X Windows". An Android handset is no different from an ATM in this regard: there's no reason why it should be designed around giving the user a CLI running bash or tcsh.

A CLI, or X based GUI, is not a requirement of openness nor freedom, it's just another sacred cow (and sacred cows, and those who cling to them, deserve to be tipped (in the "cow tipping" sense, not the financial sense)).

Further, there's nothing stopping anyone from distributing CLI applications for Android (there are Terminal programs for Android, for example). There's also nothing stopping anyone from making an Android variant that has a more full CLI environment (ie. something comparable to Maemo, at the CLI level). And, you should take note that while Apple takes steps to close access to "jailbreaking" techniques every chance it can, the only similar things that Google has closed were legitimate security bugs. With each release, they haven't been closing the known-at-that-time "rooting" methods on Android. Unlike Apple and the iPhone, which ARE closed, Google doesn't have an arms race with the Android Hackers, where each new software version requires a new version of rooting software to match it.

So, back to the question of Apple vs Google. The question isn't whether or not Android is free/open: it is. The question, to me, is whether or not Google will pull an Apple, and stop distributing the source code, later on. The reason Apple was able to do this was that OS X isn't built on a GPLed core. BSD and Mach are under the BSD license. Android, on the other hand, is built around a GPLed core. As long as that remains true, Google will have to at least make that core available. That's the difference between Apple+OSX and Google+Android. In order for Google to stop giving it away, they have to challenge the entire notion of the GPL, the ownership of Linux, and essentially de-emancipate the linux kernel, and the GNU software that Android utilizes under the hood. (or stop using those software components entirely)

I haven't seen anything that would indicate that Google would go down that path. Am I aware that they could? Sure. So could IBM, which has an ACTUAL history of evil business practices, and deep pockets to try to make the legal fight work. But we don't see people screaming about "I don't want to use IBM's Linux products!" (at least, I haven't). I'll wait to see if Google actually does it before I start calling Android a closed platform (and wait/hope-for things like Maemo, Mer, and Ubuntu to make it to the phone market, making it less important whether or not Google goes in that direction).

But, as it stands right now, there's no rational basis for saying that Android isn't an open and free(libre) software platform.

((end of rant))


Back to EZX:

The other big difference is that because the core Android team isn't a handset maker, they have no reason to be guarded about it like Moto was. And the various handset makers don't view it as giving control of their handsets to a competitor. Thus, it's spreading beyond a single handset maker, and it's gaining more mindshare than EZX ever had.
__________________
My Personal Blog
 

The Following 4 Users Say Thank You to johnkzin For This Useful Post: