Hacker News new | past | comments | ask | show | jobs | submit login

I only know of one reasonably open cell phone at the time the iPhone came out: Open Moko (these people seriously had scroll bars in their mobile UI, and their hardware was clunky, expensive, and unreliable). Some of the Palm and Windows Mobile devices had been hacked (a friend of mine managed a port of Debian to the iPaq, "Familiar"), but I do not remember any of these devices having "you are allowed to reflash us" as a feature.

After the iPhone came out, I got involved with the G1 for a while. I made a few code contributions to Android; however, most of my patches, even with one of them being a possible security issue, took six months to get into AOSP... it wasn't a really open process. By the time they got back to me I had forgotten what I had learned about the things I was fixing, and never really looked back on the idea of contributing more.

Additionally, the G1 wasn't actually an open hardware platform: we had to hack it. Someone figured out the "telnetd is installed and the keyboard is attached to an open root console" trick, but then the "real work" started getting a bootloader exploit; it was on a mailing list I ran (g1-hackers) where the bootloader was first dumped (possibly even on my phone, actually, although I did not do the hard part: I just did the labor; I feel like the guy who did it was named Edward).

The "open" Android device, the ADP1, was expensive (you couldn't get it subsidized, only unlocked), and frankly: it was a G1... the G1 was not a good phone. If you had an iPhone, especially one you already had root access on, the Android devices at the time simply were not interesting.

Since then, Android has become more open in some ways (more pieces of hardware from better manufacturers allowing you to unlock the bootloader), while more closed in others (the source code becoming more and more locked down: right now 3.x is still a closed branch; even when it opens, Google has promised longer delays between releases to AOSP).

Meanwhile, Android's quality has continued to trail the iPhone: despite sometimes even having a faster CPU, the fact that it has a low quality JIT backing the entire system causes the experience of the phone to be "slow"; worse, it is incredibly laggy due to the high latency IPC that is used to interface rendering things in Java to the incoming touch events... until 3.x it didn't even have hardware accelerated UI compositing.

In comparison, despite being "closed", thanks to the work of people working on jailbreaks, I have always had a playground where "the phone is mine"; and, thanks to the work that I do with MobileSubstrate and Cycript, I've never actually felt that limited by the fact that the source is closed, as I go to make modifications to things: I just do it anyway; frankly, Objective-C ARM binaries are very easy to read ;P.

In fact, while looking at Android, I feel like the key problem with the people who work on hacking the ecosystem is that they have become reliant on the source code being available, which has not only led to work slamming to a halt while 3.x is behind closed doors, but also has meant a poor experience for users: people have to install entire replacement ROMs (compiled from AOSP), rather than just installing the specific modifications they want (as people do from Cydia).

Finally, we can look at "what hardware would I use if I could install either operating system on the device", and the answer right now would be the iPhone 4S, and even without that device (as I have no jailbreak for it currently), the answer would be the iPhone 4: the reason is, primarily, the high resolution and high quality screen.

It is for this reason that I am anxiously awaiting the Nexus Prime, which I have heard will actually have a reasonable screen: supposedly, it will be 1080p, which is even a higher resolution than that on the iPhone 4 (but watch the entire device be ludicrously larger). Unfortunately, (for what I think was probably a good reason,) its launch has been delayed for a bit; we will soon see.

It will also, supposedly, not be Pentile, which makes the Nexus S that I carry around with me even worse than the Droid I had previously. However, I hear that it will still be AMOLED, which has a really really bad problem with burn-in (on my Nexus S, just a few hours at the lock screen is enough to have a noticeable shadowing where the unlock slider is; even for normal users, the status bar is up constantly).

So, I guess those are my reasons: 1) history (iPhone was the first to market), 2) equality (frankly, these devices are all closed), 3) quality (the iPhone hardware and software continues to be hands down the best). That said, I am doing a lot more on Android recently, as its devices and operating system have started to become reasonable, but certainly not because I consider Android to be "open".

And with that, I will leave you with a failing command (and yes, I realize that kernel.org was hacked, but Android didn't even care about finding a replacement), straight from the Android lead himself. (Note: this definition doesn't even capture the key "make install" step that Android devices are hit and miss at; and don't even get me started about how the result isn't even a complete system.)

@Arubin: the definition of open: "mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/manifest.git ; repo sync ; make"

-- http://twitter.com/#!/Arubin/status/27808662429




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: