I have acquired a Googlephone — a brand-new T-Mobile G1 to replace my eight year old and on-its-last-legs Sprint phone.
I’d say I had to get one of these because it’s got some of my software in it, but as a one-time maintainer of GIFLIB (not to mention named contributor to libpng) just about every cellphone has some of my software in it. (And every browser. And the Microsoft X-box. I am become
Shiva, destroyer of worlds ubiquitous and omnipresent.) No, this one is special because it’s got Linux inside. And open source is part of the branding, though the look of polite incomprehension on the face of the perky blonde T-mobile salesbeing I dealt with suggests that there is no danger of imminent mass enlightenment from this campaign, alas.
First impressions: Pretty good, stacked up against the iPhone better than I expected. Well-designed user interface, I was flying through it within three hours of familiarization and think less technical users would too.
Hardware: The keyboard, predictably, sucks — zero-travel chiclet keys. Display very nice, crisp 320×480 with good luminance contrasts. Charges from any USB port — what a cool idea, I might never actually use a dedicated charger again. Speakers suck too but no blame attaches; in an enclosure this size, non-suck is not a physical possibility. Wider and longer than the decrepit Samsung 660 it’s replacing but thinner; it fits comfortably in a pocket. The trackball works nicely but worries me a bit because it feels fragile, a potential failure point.
Interface bugs: In the Favorites editing screen, the entry for “Name” stops accepting characters well before you get to the end of the box — screwed-up font metrics, or a silly length limit, or both. You can choose from a palette of icons for your five favorites, but contacts outside that group have to be iconfied with a picture. Why is that?
Other bugs: The OS apparently crashed and rebooted once in my first four hours of operation. Hasn’t done so since.
Omissions: Where is my fetch-ringtone-from URL function? Where is my fetch-wallpaper-from URL function? I wanted to make my default ringtone the Star Trek communicator sound; had the MP3, needed to figure out how to get it onto the phone’s ringtone list.
This turns out to be easy by a slightly different route. Plug the G1 into your Linux system; it (or rather the SD card in it) will present as a removable disk with a subdirectory. Drop your sound file in there; open your music player; click Menu and select “Set as Ringtone”. Voila! Oddly, you may have to unplug the USB cable to make the music file visible in the phone.
Setting wallpapers isn’t too tricky either. The SD will have a directory called dcim/Camera; drop the image in there, and it will become visible as a Picture under Settings->Wallpaper. My G1 now shows a nice astronomical photograph of M33. 640×480 images work nicely as all it has to do is a 2:1 scaledown in the Y direction; to save space on your SD card you may want to pre-shrink them.
Finally, a cellphone I can hack! Just superficial stuff, so far, of course, but the relative ease with which I sussed all this out within a few hours of acquiring the device is very promising. I like it. And apparently a lot of other people do, too; we had to canvas three T-Mobile stores to get one, they’ve apparently been selling like crazy
Overall: No, this isn’t quite as polished as the iPhone and lacks the cool multitouch gestures. But it’s seriously cheaper, almost as good already from a purely functional perspective, and the open-source stack will mean it gets better fast and will add value from third-party apps at a rate Apple’s walled garden won’t be able to match. Especially given that multiple cellphone vendors will be shipping Android phones; this means a broad-based, stable market sure to attract lots of developers and service providers.
Even the first-out-the-gate G1 seems perfectly designed and positioned to disrupt the iPhone’s market from below. If successors feature hardware with an even slightly slicker presentation, Apple better watch its ass.
Bonus karma points to the first commenter to correctly explain why, when I figure out how to telnet/ssh into the underlying Linux, the only possible thing for me to change the hostname to will be “moogly”.
UPDATE: and here’s an astronomical wallpaper I made which happens to fit the default placement of the clock and icons perfectly; NGC7331 gets the unoccupied center of the display.