The objective of Apple's iPhone and Google's Android operating system may be similar--providing a rich mobile Internet experience--but the philosophy behind the two are just about as far apart as you can get in the technology realm.
That divide was illustrated Tuesday not just by Google's release of the open-source Android software but perhaps even more starkly by its gleeful horn-tooting that even before the day ended, five Android patches from outside programmers had been accepted.
"It's a small start, but knowing that we accepted our first patch from a contributor external to the Open Handset Alliance just 4.5 hours after unveiling the code reinforces to me why open-sourcing this is exactly the right thing to do," Jeff Bailey of Google's open-source team said in a blog post.
Open-source project members often pride themselves on the vitality of outside help--not just in the form of patches, but also detailed bug reports and feedback about developers' ever-changing cutting-edge releases. And with the broad base that contributes to Linux, there is no such thing as "outside" developers.
Apple has some open-source ties, to be sure. For example, the Safari browser used on both the Mac and iPhone are built atop the open-source Webkit project. Google chose the same technology for use in its Chrome browser for PCs and the one built into Android.
But mostly that's the exception that proves the rule. Apple's iPhone is about as locked down as possible.
The App Store, while thriving, is a walled garden compared with the user-ranked, self-governing free-for-all that Google aspires to build with its Android Market download site. Google launched its Android software developer kit before launching Android to encourage people to write applications for the phones, whereas Apple only released its SDK much later and, only recently, partly lifted a nondisclosure agreement that muzzled developers from so much as sharing programming tips. And perhaps most clearly, the first Android phone, the T-Mobile G1 built by HTC, comes with a USB debugging mode to let programmers peer into its inner workings.