HP Touchpad + webOS

So yeah, I went and ordered a TouchPad (a few actually, as they look like they’ll be useful as web/input devices). If you’re interested in picking one up for cheap, the epic SlickDeals thread (11K+ posts) has the latest stock info. (for general info, there’s another thread w/ some useful links, and the PreCentral TouchPad forums). It’s not for everyone, but $100 for a tablet w/ a 9.7″ XGA IPS screen, dual-core 1.2GHz Scorpion SoC (APQ8060 + Adreno 220), and 6300mAh battery that has a clean embedded Linux (and can easily chroot Ubuntu) is a steal.

Of course, if you’re not gonna be hacking on one, it’ll be a decent web browser or photoframe, and I have no doubt that the homebrew guys will keep plugging away for a while, but I’d treat it more as a disposable $100 purchase. (My thinking is the upcoming Amazon tablets will split the difference in pricing, but ultimately have much better longevity).

Now, back to the hardware for a bit. While there have been a rash of articles blaming the TouchPad’s performance on the hardware, I think that’s baloney. For those that aren’t regularly comparing ARM specs, all you need to know is that in terms of raw power, the Scorpion should hold it’s own – equivalent to current-gen Cortex-A9/GPU combo like Apple’s A5/SGX54x or Nvidia’s Tegra2 (maybe a little less memory bandwidth/IPC, but it has a faster clock). There’s an Anandtech article that does a good job summarizing.

The Anandtech article has a SunSpider comparison, which mirrors the launch benchmarks. The TouchPad is slow because the web layer is slow. Luna, webOS’s GUI, runs entirely on web layer. QED. This mirrors my cursory prelaunch SDK testing (NDA lifted 6/30).

I mostly gave up on webOS back in the summer of 2010, pre-HP acquisition, and although I retain a fondness for the idea of webOS, the execution has always caused ambivalence for me, primarily because of performance. I think Dion makes a bit of an understatement, when saying they should have spent more time profiling. More than any other feature or app (well, Maps), lag, OOM erros, and unresponsiveness was the primary issue that drove me away.

Although a lot of it comes down to doing (hard) low-level optimization work (or dumb easy stuff like turning off logging), I think at least some chunk is just due to running on old software. Last year at the Palm Developer Day, the excuse given about why webOS software was so out of date was due to recertification issues, but w/ webOS 3.x being a tablet-only fork, this obviously didn’t prove to be the ultimate reason.

Based on the 3.0.2 SDK Emulator, here’s a rundown of some of the stack:

Linux Kernel 2.6.26 was originally released Jul 13, 2008. In comparison, Android Honeycomb runs 2.6.36 (Oct 10, 2010). There is in fact an active project that’s done great work patching the kernel (better schedulers, governors, compcache), although I’m not sure if all the modules required to upgrade vs backport are available.

webOS reports using AppleWebKit/534.6. WebKit was tagged Safari-534.6 on Aug 27, 2010. This might not seem too bad when comparing w/ kernels, but to give some perspective, Chrome 7.0.517 was released with AppleWebKit/534.7 in Oct 21, 2010. I’m currently running Chrome 13.0.782.112, which uses AppleWebKit/535.1 (tagged on Aug 11, 2011). Safari 5.1 is using AppleWebKit/534.48.3 (tagged Jun 24, 2011). webOS has ACID compliance and other standards issues, and is lacking in many useful HTML5 features, which is somewhat ironic considering.

Probably more relevant to performance, however, is the V8 version. webOS’s node.js is compiled against V8 2.5.9.22-2 (released Nov 11, 2010). The current latest version, released last week, is 3.5.6. Especially for JS runtimes, improvements have been coming at a blistering pace. Running V8 Benchmark v6 on Chrome 13/Canary 15 (V8 3.3.10.25 and V8 3.5.6) on my desktop gave results in the 9400/9500 range. An old version of Chrome 7 (V8 2.3.11.22) scored… 5400 on the same test. (There BTW is your 2X performance.)

webOS 2.x+’s services are based on a node.js layer. That’s great. The version of node.js they are using is 0.2.3, which was released on Oct 02, 2010. The current version is 0.4.11 (stable) and 0.5.4 (unstable). node appears to run standalone, so that can probably be upgraded (and the JS tested) without too much trouble.

The much bigger challenge for people sticking with webOS is how to deal with all the custom-compiled/embedded bits. The biggest pieces (at least memory-wise) are the WebAppMgr, LunaSysMgr, and BrowserServer, but updating any the luna bits are completely dependent on the whim of HP.

If they don’t open source webOS, hopefully whoever’s left can push out as many of the low-level performance optimizations and maintain some sort of robust build/update system.

Sadly, the most likely scenario is that in a couple months we’ll just all be flashing an Android port.

Mobile Data While Traveling

Over the next few months, I’ll be heading to a few different countries. Fred Wilson wrote a post the other day about his experience roaming with his family in Europe.  In my experience, having an unlocked world phone (quad-band GSM is easy, appropriate 3G unfortunately, not as much) and picking up local prepaid SIM cards seems to be the best strategy. (I care a lot less about number porting than having data access. If you’re more interested in the former, hop on over to Wilson’s blog and take a look at the comments there.)

For those interested in the details of the different 3G bands, in the US, AT&T is on band II (1900MHz) and band V (850MHz) and T-Mobile is AWS band IV (1700MHz/2100MHz).  Other popular bands include band VIII (900MHz) in parts of Europe, Asia, and across Australia and Band I (2100MHz) in Japan, and across Europe and everywhere else. Most 3G phones are dual or tri-band (a Nexus One for example comes in two flavors, one supporting 3G on band I (2100), IV (1700), and VIII (900) and another supporting I (2100), II (1900), and V (850)).  Nokia’s N8 was the first penta-band phone supporting bands all the aforementioned bands, making it a perfect world phone – well, except that it runs Symbian.  The iPhone 4 is also a penta-band phone; instead of band IV (used by a few carriers the US and Canada) it supports band VI (used by DoCoMo in Japan). The iPhone 4 has apparently been successfully unlocked, but the unlock hasn’t been released quite yet.  The best news updates for unlocks are probably directly from the dev-team blog.

OK, now onto some research (various useful links, some good for multiple countries referenced inline):

  • Argentina
    • I’ll just mention this since I didn’t ever get around to finishing up my Buenos Aires writeup, but I did do a fair bit of writing about my mobile phone experience there. The Prepaid Wireless Internet Access wiki page corroborates my experience – Movistar’s datos special at ARS$9 for 2 days/1GB access is pretty reasonable. At current exchange rates, that comes out to $1.15/day. PrePaidGSM is a good place to find rates.
  • Australia
    • Quite civilized with lots of options. Virgin Mobile has a great deal: 30 AUD ($25 US) gets you 28 days of 1.02GB/data and “$150” in credits (calls are 90c/min (167min of talk time), 25c/txt (600 texts)). Virgin Mobile is an MVNO on Optus 3G, which runs at 900MHz/2100MHz HSPA.  Optus offers super-cheap calling but no data. 3 offers a pretty great deal on an iPad microsim – if I’m reading it right, it’s 15 AUD ($13 US) for 1.7GB of data. Telstra has options as well, but is more expensive overall. The most useful comparison site I found for Australia was: http://prepaidplans.com.au/
    • Update: In Australia, I went with Virgin Mobile (picked up the SIM at a convenience store for $2 AUD and after some bumpiness setting up online (apparently their activation servers were having problems that day)) and it’s been great in Sydney. Will update w/ how it does in Cairns. Picked up a 3 microsim for my iPad at a 3 mobile shop – it comes w/ 200MB/30 days for free which I’ve yet to use up. You’ll need your passport number to activate the 3 SIM online. It seems to work ok except occasionally I seem to need to go in/out of airport mode to get it to start transferring data. I’ll be heading to Fiji for a couple days – a quick search online shows that only Vodafone roams there – I might just go sans-connectivity there.
    • Update 2: In Cairns, 3 was a bust – only roaming, so no cellular data on the iPad. Virgin Mobile (Optus) was a bit spotty. 3G worked fine in the Airport, downtown Esplanade, and (what!) by the reef, but only worked sometimes from my hotel (11th floor, just north of the Esplanade across from the Volleyball courts / skate park). I found myself breaking down and hanging out at the Macca’s (that’s Australian for McDonalds) one night, which had free wifi (although my 3G there was strong, and much faster – 1Mb+ down). There were a lot of Japanese backpackers hanging out there.
  • Fiji
    • I picked up a Vodafone FJ SIM (Vodafone and Digicell are your two choices). There’s no good data plans, you’re charged by the KB (something about $5/MB), although you can get m.facebook.com for free. Even with the proper APN setup and whatnot, was still more difficult than expected to get reliable mobile data.  Internet access is available for about $1/hr or so at Internet cafes and hostels. Once you’re headed off the main island, all bets are off for service.
  • France
  • Germany
    • Tchibo offers a montly rate of €9.95/30 days, throttled to 64 KBit/s after exceeding 500MB, or  €19.95/30 days, throttled to 64 KBit/s after exceeding 5000MB.
  • Japan
    • There are conflicting reports about prepaid SIMs. You can rent one, but the data rates look pretty ugly (charging by the packet!!!). Here’s a post with some more information on using a SoftBank SIM w/ an unlocked iPhone. There’s also a company renting Android phones/iPhones for $85/wk. Weak sauce, Japan. Weak sauce.
    • Update: While in Taiwan, I’ve done some additional research. The Softbank SIM rental comes out to $1.20/day, which doesn’t seem bad, however, mobile data is charged at an extortionate rate of $31/MB. The iPhone SIM has a $426 charge cap for the month of data (gee, thanks). The regular data SIM… seems to not to have a cap at all. A company called Pupuru rents data cards (mobile broadband) for about $120 for 11-20 days. This is about the best I can find (unless you get a used b-mobile card – it’s a decent deal, but sells as $480 for 150 hours of usage). JCR corp now has iPhone4 rentals ($160 for 2 weeks). A SIM card rental is $235 for 2 weeks. (special note: most of these you need to reserve days/weeks in advance) Hey Japan! Get with the program. Your mobile data pricing sucks.
    • Update 2: The JCR rental ended up costing about the same with all the fees added in, but was still worthwhile. I’d definitely recommend it. I also went and picked up the b-mobile U300 microsim @ Bic Camera. No one knew what I was talking about, but I got it (about $150) and it worked great, if somewhat slowly after a brief trouble with setup. Having data on the iPad was a real lifesaver quite a few times (booking hotels, etc), so if you have a budget, I’d also recommend it.
  • Taiwan
    • This Singaporean forum thread was useful in getting started.  It looks like you can pick up data SIMs from any of the major phone companies at the airport for about 400 TWD ($12.46 US) for unlimited data for 5 or 7 days.
    • Update: Getting set up was easy breezy. Just turn right after exiting customs at the airport to get to the mobile kiosks. I bought a Dageda (Taiwan Mobile) 3G SIM (they also offer a MicroSIM) which provides voice and data. Data cost is 350 TWD/5 days (~$2.20/day) for unmetered 3G. I also bought a Chunghwa 3G MicroSIM. Their voice/data SIMs for prepaid only have expensive metered usage, but the data-only SIM was a good deal: 850 TWD (~$27) for one month, unmetered 3G.  Speed tests gave me a reliable 1-2MBps download speeds.
  • UK
    • I’ve had a decent experience with T-Mobile UK (have picked up SIMs at Carphone Warehouse). They used to have a day rate, but it appears to be even cheaper now. Unlimited internet for the month for 5 pounds. (Double take on that, but looking at 3’s rates, which comes with 150MB free per top-off, and maybe those rates are just what happens when there’s decent competition.)

Perhaps of interest may be to comparing these rates to the US.  If you’re interested in prepaid mobile data, there’s Virgin Mobile’s Broadband2Go, which is data only $40/mo for unlimited data 1GB or $60/mo for 5GB (Virgin is a Sprint MVNO (and subidiary now), so it doesn’t have SIMs), Simple Mobile (T-Mobile MVNO) that has a $60/mo plan w/ unlimited voice, text, and data (“unlimited” data apparently = 1GB), and AT&T offers 100MB for $20 as an addon option for their GoPhone SIM. T-Mobile has no contract data-only plans as well, their best being $40/mo for 5GB, but it’s a bit unclear if signing up is more involved than regular prepaid solutions. Still, overall, it seems pretty grim.

I’d love to hear experiences people have had w/ prepaid 3G data in other countries. My next three countries are Australia, Taiwan and Japan.

KIN Lessons

There’s been a lot of recent reporting on the complete failure of the KIN (and Microsoft in general). Of these, I think that this comment from a Danger employee posted on Mini-Microsoft both sums things up, and serves as an object lesson for anyone in tech, and is worth reposting in full:

To the person who talked about the unprofessional behavior of the Palo Alto Kin (former Danger team), I need to respond because I was one of them.

You are correct, the remaining Danger team was not professional nor did we show off the amazing stuff we had that made Danger such a great place. But the reason for that was our collective disbelief that we were working in such a screwed up place. Yes, we took long lunches and we sat in conference rooms and went on coffee breaks and the conversations always went something like this…”Can you believe that want us to do this?” Or “Did you hear that IM was cut, YouTube was cut? The App store was cut?” “Can you believe how mismanaged this place is?” “Why is this place to dysfunctional??”

Please understand that we went from being a high functioning, extremely passionate and driven organization to a dysfunctional organization where decisions were made by politics rather than logic.

Consider this, in less than 10 years with 1/10 of the budget Microsoft had for PMX, we created a fully multitasking operating system, a powerful service to support it, 12 different device models, and obsessed and supportive fans of our product. While I will grant that we did not shake up the entire wireless world (ala iPhone) we made a really good product and were rewarded by the incredible support of our userbase and our own feelings of accomplishment. If we had had more time and resources, we would of come out with newer versions, supporting touch screens and revamping our UI. But we ran out of time and were acquired and look at the results. A phone that was a complete and total failure. We all knew (Microsoft employees included) that is was a lackluster device, lacked the features the market wanted and was buggy with performance problems on top of it all.

When we were first acquired, we were not taking long lunches and coffee breaks. We were committed to help this Pink project out and show our stuff. But when our best ideas were knocked down over and over and it began to dawn on us that we were not going to have any real affect on the product, we gave up. We began counting down to the 2 year point so we could get our retention bonuses and get out.

I am sorry you had to witness that amazing group behave so poorly. Trust me, they were (and still are) the best group of people ever assembled to fight the cellular battle. But when the leaders are all incompetent, we just wanted out.

(On another note, every time I read the minimsft comments, I just can’t get over how fucked MSFT’s corporate culture is. There’s just so much wrong on every level, it’d pretty much be impossible to succeed.)

And an interesting follow-up comment from another insider on project particulars:

Microsoft is a large enough company that experience in one part of it may not be applicable to other parts. (Duh). In PMX, there was no backstabbing or people out to get people. There was only poor management, a poorly designed and implemented product, and an insane delivery schedule.

Some random thoughts:

PMX was said to be a risky project. You don’t fire people who fail at risky projects, because if you do, eventually nobody will be willing to take a risk. Nobody will get fired and whatever accountability there is will happen behind closed doors.

PMX was very poorly run. One HR manager involved with the Danger onboarding actually described the failure as a ‘cluster f***’. Danger was lied to about the reason for the purchase and that set the tone of the relationship between ex-Danger people and PMX. It would only get worse as the project continued. The onboarding was typical of the quality of management. The MS-Poll results, some of the worst on record, were accurate, even though they were written off as “influenced by disgruntled Danger people.”

The Verizon deal was made by business development folk before engineering had been consulted. There was no way a phone capable of selling in the marketplace could have been developed using Microsoft software management process in the time frame.

In addition, between inception and delivery, the market place changed dramatically but Microsoft was unable to move agilely enough to compensate.

The phone should never have gone to market. It is too poorly designed, too buggy, too incomplete, and too overpriced. When Microsoft became aware of the data plan pricing that Verizon proposed, the project should have been cancelled, saving a couple hundred million in development and advertising.

It did sell more than 500, but I doubt anyone is going to argue against the Wall Street Journal assessment that it sold fewer than 10,000.

The number ‘2 billion’ is floating around as an estimate of the cost of PMX over its life. That number is too high, but ‘1 billion’ is too low.

The Future of Leonard’s Computing

For the past few months I’ve been meaning to put some of my thoughts down about what I’m looking forward to in my next computing device. My needs are somewhat specific, and influenced by the fact that I type a lot, I stare at screens all day, and for almost a year now, have been semi-nomadic.

My primary computing device (and what I’m typing on right now) for the past couple years is a 13″ 2008 Aluminum Unibody MacBook. This is about the longest I’ve had a laptop in the past decade. In between, I’ve had an incarnation of just about every generation of PowerBook/Macbook (Pro) since the earliest Titanium G4s (I may even have some of these still in storage). It has a few niggles (fidgety headphone jack, bad magnetic latch, non-backlit keys), but on the whole this MacBook is the best-built laptop I’ve ever owned – and even two years later, the unibody construction still impresses me as much as the day it arrived. Also, with 4GB of RAM and after putting in an SSD last year, I can honestly say that I feel no need for anything more powerful for my daily use. That being said, I’ve become increasingly frustrated with my Mac. Over the years, it’s become too big and heavy, less portable (especially for use outside and on the go), and the battery life, much too short (even after buying a brand new battery last week).

A lot of these frustrations are probably magnified because of the other devices that I’m now carrying around. In my bag now, I have a Kindle, and iPad 3G, an HTC EVO, an iPhone 3G, and (for a little bit) a Nokia N900. None of these are laptop replacements, but all of them point to the future in a way that my MacBook doesn’t.

Of course, the most talked about of these is the iPad. I don’t think I have much to add to that well trodden ground. I’ll just preface by saying that I’m not a hater. The iPad is not only a great lean back device, but it’s also a valid, and pretty darn compelling vision of the future of personal computing (except for the syncing w/ iTunes part. That’s just archaic). For most people, it lets them do everything they would want to do with a computer easier, better, and more socially. (My personal favorite commentaries on the iPad include Alex Payne’s and Fred Wilson‘s.) So, with that being said, although I’m now carrying one around (thanks Music Hack Day!), and I’ve poked and prodded extensively (see project here), it’s not the future of my computing.

For me, the laptop replacement I’m looking for is the smartbook. For those unfamiliar with the term, the simple description is that these are ARM-based smarphone guts stuffed into a netbook form factor. They are fanless, have 10″ screens, full-size keyboards and hover just under 2 lbs (800-900g) in weight. More importantly, they have ridiculous battery life (8-12hrs actual), days of standby, and like smartphones have 3G, GPS, quick wakeup and active-network standby. They are all Linux-based (Android or Meego), and provide a decent browser, vim, terminal, and keyboard – the things I actually need to stop carrying my laptop around.

Unfortunately, with all the tablet excitement, the smartbook form factor seems to have taken a bit of a backseat. Although prototypes have been shown by ODMs since Computex 2009, the only smartbook that has been released so far is the HP Compaq Airlife 100, and even then, only in Spain via Telefonica. Devices like the Mobinova Beam and Lenovo Skylight both have been delayed (without solid release dates) as they’ve been retooled to run Android, and ODM designs from Compal, Pegatron, Quanta etc have yet to show up anywhere besides the occasional trade show appearance.

Right now, the most promising up and coming smartbook looks to be the Toshiba AC100/Dynabook AZ. It’s scheduled to launch in August, and has gotten some fairly detailed hands-on reviews. Here’s the German English promo video that gives a decent overview:

The last piece of the puzzle for me, one that’s actually referenced (but not addressed) by the video above, is that my next computer should really be daylight readable. After some production delays, Pixel Qi (Mary Lou Jepsen‘s company spun off from the display technology she originally designed for the OLPC) has finally started selling its displays in kit form. Here is a video showing the Pixel Qi display compared to the iPad display outdoors:

And here’s a description of how the technology works:

There are other daylight readable technologies, CPT’s transflective display, Qualcomm’s Mirasol displays, and Liquavista’s electrowetting-based displays, but none of those have release dates yet. The Mirasol and Liquavista displays are very interesting, being color and bi-stable, but they’re currently being targeted primarily at e-book form factors/applications, so probably won’t be showing up in 10″+ screens anytime soon.

Qualcomm seems to be making good progress in releasing 5.7″ Mirasol-based e-readers by the end of the year, which would be darn nifty. Still, I won’t be holding my breath.

For those of you interested in following along, especially in the whole whole slightly weird world covering MIDs, tablets, and ultraportables, I recommend:

And, to sum up, there’s no product in the pipeline with quite these specs, but here’s what would make me a happy camper:

  • Good keyboard (Acer’s flat keys are my current favorite of the netbooks I’ve tried) w/ backlit keys
  • Large, multitouch trackpad
  • 8-12hrs of active battery life, several days standby
  • 2 lb weight, 0.5″ thickness
  • 10-12″ 720p+ daylight-readable screen (capacitive touch bonus)
  • GPS + Location aware OS
  • 3G WWAN (penta/hexband for bonus points)
  • Active network standby, notifications
  • Fast boot, instant resume
  • DisplayPort or HDMI output

Evo: Initial Thoughts

I’ve spent about a week living with the HTC EVO 4G, so I figured I’d write down my initial impressions. First of all, on the whole, I’m pretty happy with the phone although there are some rough edges. The physical device is pretty solid and it’s quite capable. It’s definitely good enough (and in some cases, best of class) for day to day use. I’m also having a lot of fun poking around with it, although in some cases I find that I’m able to push things too far.

Second, before proceeding, I’ll also mention that the iPhone 4 looks great. The industrial design and overall capabilities are impressive and I believe that overall, it edges out the EVO. While I’m less enamored w/ iOS these days, iOS 4 both adds some much needed capabilities (fast task switching, backgrounding for specific services) and maintains a huge lead over the competition in terms of polish and “just workingness.” That being said, I’ve been digging Android a lot more these days. It’s amazing how far it’s come in a year. It’s definitely crossed the “actually usable” bar and it’s strengths are really coming into play. Most notably: a great security model and APIs with full access to the system allowing developers to create a much larger variety of interesting and unique apps, and its web-native paradigm (syncing to the cloud instead of the being forced to plug into a USB port and a desktop application).

Now, onto some observations. First a look at the hardware/form factor:

  • The phone feels super solid. It’s got a good heft to it, but spread over a larger area, it’s not too bad.
  • The size of the device is, of course, big, but because it’s relatively thin, it feels pretty good in my hands, so no real complaints there.
  • There’s only 2 physical buttons: a power button on the top, and volume rocker. Both have good actuation and and very little play. I’ve noticed that when turning on the device initially, the power button is a bit fussy, but for waking up, it’s fine (well, the location could be a bit better, finger feel-wise, I have to hunt a bit even after a week). Because the buttons don’t give, I am running an app called No Lock that both gets rid of the lock screen and allows me to use the volume buttons to wake the phone.
  • There’s a charging LED on the left side of the top speaker, but it doesn’t seem to be used for notifications (?). Rather, an LED lights up the bottom row of capacitive screens, which is pretty neat.
  • The camera is pretty good in decent lighting. I may be convinced to carry around a macro lens
  • The capacitive button row on the are sometimes overly sensitive – I seem to accidentally trigger something fairly often. I don’t know if this is related to my specific phone
  • While the build quality overall feels good (no creaks, etc), I’ve noticed (as have some others) that there’s some backlight bleed at the bottom – which in my unit is actually accompanied by some flex on the bottom corners of my unit. They’re actually very slightly elevated (not flush) with the edge and seem like they’re “popping out”, for lack of a better described. I may be annoyed enough to check if this is normal and if not, exchange it soon.
  • Update: an additional caveat is that apparently, like the Incredible, the EVO touchscreen is improperly grounded. This means if you are only touching the screen (say putting it on a table or dock w/o a USB cable), it doesn’t respond to input. (I just tested it and it appears to be the case. Boo-urns.)

Some standout points:

  • Battery life is so-so. About 10-12 hours with regular usage (shorter when using lots of GMaps nav, but not as bad as Sprint Navigation on the Palm, which just chewed through battery). Idle drain is about 4-6%/hr. I think it can be better (others have reported much better life), so I’m currently monitoring with JuicePlotter and SystemPanel although what I’d really like is to be able to export stats (linked w/ say the detailed battery/app use stats built into Android). I have JuiceDefender and Tasker installed, but have yet to set those up. So far, I’ve been able to be near a plug, but when I’m traveling/out and about, I tend to need 15-16hrs on a charge. There are some replacement batteries that claim 1750/1800 mAh, but those claims may be suspect. Instead, I picked up 2 generic batteries + charger for $11.49 shipped (from HK). Hopefully they aren’t too weak (still, that’s just an insane price).
  • Google Maps is really good. Beyond the features, traffic and transit overlays, transit, biking, and walking routing, and of course navigation, It all navigates super smoothly, with lots of great touches (the 3D angle changes as you zoom in and out, for example). Constantly impressed using this (which I’ve been using in LA pretty much every day this week for real time traffic). If you use maps a lot, this is the gold standard.
  • The voice keyboard is surprisingly useful in LA.
  • Because the Android API/security model is more flexible, there are much more interesting apps. From things like call and SMS schedulers/bouncers, call graphs and analysis tools, to apps that replace default functionality, there’s just a lot of really cool stuff that integrates into the phone much more organically. Even with regular apps, thanks to intents, they extend the system functionality much more organically. I’m very impressed. Of course, w/ 2.1, app space is still limited. The EVO only has 400MB of space, and it seems to start freaking out if you start getting down to the low memory warning (40MB)

OK, and now onto general experience, etc:

  • Initial setup (well, after getting the phone, after getting through Sprint’s overloaded activation system) was completely painless. My Palm Pre and Apple address book were already synced to Google’s address book, which populated on setup. Facebook, Twitter, and (an HTC addition) Flickr logins were similarly trouble free. One other note: my Sprint rep did the initial activation without taking off the factory plastic. I totally approve – the customer should get the privilege of laying first fingerprints (or screen protector) on.
  • ZOMG there’s a metric crapload of bloatware on the phone (Sprint “Zones” and lots of other Sprint apps are set to load on boot). I’d also put most of the HTC Sense widgets/components in this category, although I will make an exception for their Flickr sharing add-on. It’s seriously slick. That being said, it doesn’t keep me from looking forward to installing a clean 2.2 ROM ASAP.
  • It also pushed me to get a task killer. After trying out a half dozen of them, I ended up with TaskPanel. It has a fairly clean design, lets you set up an ignore and auto-kill list and has a “kill all” widget, and can be set to auto-kill on phone sleep. I also installed Startup Manager and have been removing things as I’ve been bored (it’s slow and there may be something better, but it seems to work. The latter requires root to work.
  • Rooting the phone was just about the first thing I did when I got it. It’s a somewhat involved process, although relatively straightforward (alternatively, there’s a dead simple way for running root apps, but it doesn’t let you boot into recovery).
  • Root also allows wireless tethering (use the latest build). This works perfectly for me on my Mac (it currently only provides sharing in ad-hoc mode, which is problematic for some devices/computers), but is also being actively made better. For example, infrastructure mode should be coming soon.
  • Overall, the phone is pretty responsive, although much less smooth than the iPhone (apparently the EVO is worse in this regard). The default zoom animation also much too slow.
  • The overall combination of using long-presses as a convention for menus and apps often makes functionality hidden and requires hunting, but once you get used to it, it becomes just a very low-level annoyance.
  • The notification windowshade seems easier to drag, although I do admit to being a bit spoiled by being able to bring down options from the top right. Most of that functionality is replaced by the default Power Bar widget. The global notification focus stealing problems I had w/ 1.5 seem to have been fixed (at least I haven’t noticed problems while typing emails, etc. yet), but the test case I use (searching for an app while in the Market and waiting for a previously downloading app to finish installing) does still trigger this problem (causes the search box you’re typing in and everything you’ve typed to disappear). This may be localized to a single app, or single app notifications, but definitely happens.
  • I dig the multiple desktops (and the expose-style viewing), although having to long-press the Home key to switch to recently used apps is much less satisfying than Palm’s cards (I would rather have an expose-style view for running apps).
  • I replaced the Sense Launcher almost immediately, first with ADW.Launcher, and then with LauncherPro – both of these are much cleaner than the Sense Launcher. ADW has better (page-based) dock, and LauncherPro lets you have 5 rows on the desktop. They also both let you easily uninstall apps from desktop (hold icon over the trash can for a second), which is awesome. The dock is still fairly ridiculous, as it’s alphabetical, making it much more difficult than it needs to be to find apps you’ve just installed. What I’d really like is a way to re-order icons by recency or to have a recent bar or something. At least it remembers your scroll position now.
  • While I’m on the complaining about Sense train, the call answering screen is also strangely unresponsive. While I have missed any calls, it is very disconcerting, as it doesn’t update immediately when you’ve pressed “Answer Call” so you can’t see if it’s detected your pickup or not. Not very happy with that.
  • Also, being able to do your own customization means that most of the horrible Sense applications can be replaced. The keyboard I’ve replaced with Swype (the only negative being that it doesn’t have a “voice” button – Google’s system-wide voice recognition system really is magical), and there are plenty of other choices. Also, I’m using Handcent as my SMS app – it’s great, and if you follow the link, you’ll see the screenshot for what the quick response popup looks like.
  • There are many options for most categories, I’ve been downloading “all” of the apps in certain categories and then culling. I had a max of about 270 apps installed, which Android just didn’t like. Trying to “manage” the apps from the system settings took forever, I was hitting the aforementioned app storage limits, and both ADW and LauncherPro started going into conniptions and frequently force closing. After some culling, I’m currently at 237 apps, and things seem to be OK. I’ll probably be only retaining one or two apps in each “category,” but worth mentioning that Android is quite happy to let you shoot yourself in the foot.
  • To help manage those apps, I’m using AppBrain, which, while not perfect, at least makes installation a little less painful by allowing you to queue up items. Still, I’m basically just ignoring updates until 2.2 (auto-updating, update all) – it’s just too painful in the 2.1 Market. Also, I’m using Smart Shortcuts instead of folders on my desktop – it’s not as slick as iOS 4’s system of auto-naming, but it gives a fairly easy single interface for organizing apps. I’m not entirely happy with it as again, it sorts alphabetically, so as you add apps you lose positional muscle memory of app locations, and it’s popup animation is about 100% too slow.
  • DoubleTwist is a pretty decent music player (no widget currently), but I’m most impressed by the streaming options. Here’s what my music desktop looks like currently. And of course, it’s so nice to have Shazam again.
  • While I’m mentioning apps, I wanted to also mention twicca – after going through the top Twitter app contenders and spending some time with it, I have to say that (if you use a single account) it’s probably the best Twitter app I’ve used on any mobile platform. I’m very happy with it and also impressed by some of the unique features, like being able to assign actions to hard buttons (I’ve set volume up/down to jump to the top and bottom for me).

OK, in the interest of actually publishing this and getting some real work done today, I’ll stop here. I’m sure that after a couple months of usage, I’ll have some more to say. Hopefully by then, I’ll be on an AOSP 2.2 ROM. I’ll see if I can easily export an App List as well, and will probably create an EVO page to aggregate all this.

In conclusion, if you’re on Sprint and looking to upgrade, the EVO is a no-brainer. It’s far and away the best handset Sprint offers. I’ve been very happy with Sprint the past year, and their pricing, even with the $10 EVO fee remains competitive. That being said, there’s basically almost equivalently spec’d Android phones coming to all of the carriers in the next month or two (although I’m not a fan of Samsung handsets, and on GSM carriers you’re only option may be the Galaxy S). I’m actually a bit sad that Motorola is only on Verizon, as the Droid X actually looks better to me in just about every way, but them are the breaks. And of course, there’s the iPhone 4.

If AT&T works for you (that’s a big caveat in my experience if you’re in SF, NY, and to a lesser degree, LA), the iPhone I think still give you the most complete and seamless experience, and if I were making recommendations (again, with the caveat of the network), I’d continue to recommend the iPhone. On the other hand, if you’re willing to deal with a slightly rougher UX for some unique capabilities (or if you’re on a network that doesn’t have an iPhone), the Android is a perfectly serviceable competitor at this point. Some of the apps aren’t as good, but some of them are better (voice input, maps).

If you’re a geek on the fence, I would say that the choice is much more obvious. Forget jailbreaking. Apple doesn’t want you on their platform, and honestly, Android is a just lot more fun. (Palm does want you on their platform, but unfortunately just isn’t keeping up.) From all the system-twiddly apps and plugins you can get, to really compelling programmable environments like ASE, Tasker, and Locale, to all the customizations that can be done, and the vibrant modding/dev community, Android is a geek wonderland. It’s the equivalent of the hot-rod (with constant free engine upgrades) that is also now a pretty good daily driver.

Palm Pre Post-Mortem

Yesterday morning I went and picked up an HTC EVO 4G (post forthcoming). Like I did for my Iliad (inspired by Bunny’s exit reviews), here’s my (probably) last post on my Palm Pre (see earlier ones). This will be a bit long and rambly, and will be as much about the webOS platform as the device. You’ve been warned. 🙂

My Palm Pre

As you can see from the photo, physically, my Palm Pre hasn’t fared so well. I’m not gentlest owner – gadgets are meant to be used is my philosophy, but the Pre has fared much worse than my past few phones. Not only was plastic screen was a huge step back from the glass screened iPhones in terms of picking up random nicks and scratches, but in general, build quality left a a lot to be desired. Like all early Pres, mine suffered from light leakage (especially as it got warm) and a wobbly/not so nice feeling slider mechanism (the Palm Pre Plus is much better in that regard). In terms of wear and tear, the center button’s frosting/paint peeled off very early on. Hairline cracks developed at the corners seemingly of their own accord, and after flimsy USB/charger door finally snapped off, a huge crack started (continues?) growing on the side. Basically, it the hardware itself felt like it was on its last legs and over the past few months, really made me antsy about getting a new phone.

Last year, after giving up on AT&T and then spending a few weeks comparing an iPhone, Google Ion, and a Palm Pre, I went with the Palm Pre as my main phone. At the time, the Ion (HTC Sapphire) was running Cupcake, and for a variety reasons (no 3.5mm headjack, focus stealing bugs, and general UI wonkiness and incessant lag/chugging), really turned me off (I can still remember my disbelief how bad orientation changes were). In comparison, the Palm, while being the least mature, was obviously a better user experience.

Overall, I’ve continued to be a fan of Palm’s webOS, and it’s been a bit sad to see the lack of traction they’ve had in the market, especially considering how much of it they “do right.” That being said, it’s not exactly surprising. Besides some pretty huge strategic marketing and distribution missteps early on, there were/are a lot of technical/real reasons that it hasn’t been that successful.

First though, what Palm does right. I went to the Palm Developer Day for a variety of reasons: as a Pre owner/webOS developer (w/ interest in what was going on w/ the platform APIs, also a bone to pick w/ the state of their HTML5 support), a former developer event organizer (running Hack Days and such), and a long-time Palm fan (I had a USR Pilot! and I wanted to check out PalmHQ before they went out of business (or as it turns out, were acquired)). And… it turned out to be an awesome event. Just super-well done on every level.

I believe that what Ben, Dion, et al are doing w/ the Palm Developer community are spot on, and the APIs they’re rolling out are pretty exciting. As a web developer, the vision for webOS is pretty compelling, and the technology stack is pretty sweet. (The last talk of the day on the “secret” history of webOS by Rob Tsuk, was also pretty great, especially for anyone that’s poked around in the guts of webOS).

And of course, there have been plenty of people poking into the guts of webOS. One pleasant surprise, is that webOS has the cleanest/easiest to work with Linux I’ve seen on any phone (yes, it beats out OpenMoko). The second pleasant surprise is that Palm has been downright benevolent, nay, welcoming of the tinkering and hacking community (see also: WebOS Internals). There’s no “rooting” or “jailbreaking” and system modifications don’t require flashing ROMs, but rather with simple patches. In fact, since almost the beginning, there has been ipkg-based package management apps available (the current state of the art, Preware, makes all this downright civilized).

Because most of webOS is JavaScript based (basically, a WebKit/V8 instance sitting on top of Linux w/ a D-Bus service bus and some Java processes (being phased out)), there are many patches available that directly modify the system UI and included apps. I currently have almost two dozen patches, including those that change how the launcher is laid out, how the date and battery usage are displayed, text counting in the SMS app, how apps can be deleted, what the power button does. Just about any aspect of the system can be modified. (Heck, one guy, Jason Robitaille, has written tons of useful patches that have just made things so much more pleasant this past year. Thanks Jason!) The flip side, however is that the number of people that have installed these mods is almost certainly <1% of the installed base. Which isn't to say that there aren't things about the webOS that aren't inherently great. Both the notification system, and the "card" view for multitasking, are the best implementations of any mobile OS I've used. The UI is by and largely very well thought out. Unknown_2010-05-06_201514.png govnah_2010-05-06_202230.png govnah_2010-05-06_201502.png

However, even with all these pluses, there are issues that both have kept me from being very active in evangelism, and also leading to my recent switch. The rest of this post is critique. Since this is already too long, I’ll be moving to bullet points:

  • While Palm has a competitive platform, their hardware and overall rate of innovation is inadequate. At a friend’s suggestion, I loaded a CyanogenMod version of Donut on my Ion while on my Buenos Aires trip the end of last year. This was leaps and bounds better than Cupcake, and 2.1 and 2.2 are better still. What Android lacks in UI polish is made up for in performance, capabilities, and in sheer velocity, both of software and in the breakneck pace of newer and better hardware releases. Apple has been able to successfully fend off this relentless drumbeat thanks to its huge lead/install base and total UX superiority, however Palm obviously doesn’t have the former, and is hampered in the latter. Even still, come next week, Apple will have a next-generation hardware refresh that will bring it inline w/ current expectations (WVGA+ screen, HD capabilities), while Palm … just doesn’t.
  • webOS suffers doubly from not having any new hardware in sight because webOS is less optimized than Mobile OS X and Android, being both laggier and often running out of (and leaking) memory. It took probably half a year or so to get webOS to a good level. Even now, basic animations (CSS transforms) have yet to be GPU-enabled. And even after using an overclocked kernel (which clocks the OMAP3430 from 550MHz to 800MHz), my Pre suffers from enough intermittent performance issues (lag) to make me wish for something better (I actually like the keyboard and form-factor of the Pixi more than the Pre, but it’s even more under-powered)
  • Now admittedly, the worst of the issues has to do with the browser… all the WebView instances are actually shared, so when one runs out of memory, all of them end up getting kicked in the head (blanking out and reloading). Where this really hurts me is that webOS’s Google Maps app is really a WebView, not a “native” app. Beyond being grossly less featured than the Android or iPhone versions, it also inevitably loses state at the worst possible times while I’m navigating. I travel *a lot* and this has been one of the banes of my existence.
  • Speaking of the web browser, one of the other painful truths is that (ironically), webOS’s HTML5 support is worse than iPhone 3 and Android 2’s browsers. webOS is just using an ancient build of WebKit and it doesn’t have support for W3C Geolocation (good luck trying to use the NextMuni site), touch events, session storage, or web workers. ARGHULURHRHRHHH
  • There are a few other annoyances, like 2 minute boot-up times (I got an extended battery early on, which turned my Pre into a boat, but also meant that I almost never ran out of batteries unless I forgot to charge it, but I ended up rebooting a fair amount due to memory errors or other glitches – like with the radio or GPS), not being able to load things on boot (say launching the Govnah, or Brightness Unlinked, two must have homebrew apps) or not being able to upload to Flickr from the camera/gallery app (unfortunately, this couldn’t be implemented through the standard sharing framework because it required implementing account stuff through the palm bus, which won’t be available for developers until later this fall)
  • On the topic of APIs/software – having a recording API (again, coming by the fall) will open up whole classes of apps (voice recorders, Shazam/Sound Hound), but even with the APIs coming, there are still basic gaps (like a proper permissioning system, or stats/usage recording)…
  • I get it, it takes time to build – as a developer (and if I were primarily a mobile developer) this also makes it an exciting opportunity. With HP’s backing, presumably, webOS will continue to grow. However, as an end-user, it’s clear where the momentum is, and the apps/capabilities really speak for themselves. And I guess, more than any complaints about webOS specifically, it’s that it just that it just doesn’t fare well against the competition. I’m still avoiding the iPhone (mostly AT&T, a little bit customizability, a little bit principle), but even against Android… in terms of apps (now actually useful desktop widgets, offline news readers, wireless scanners, call analysis programs, SMS autoreply/scheduling, geofencing actions, Last.fm, Pandor, Slacker, Rdio, and Spotify, Shazam, and a host of navigation apps (including compasses, OSM offline maps, and Google Maps)) and hardware (touch focus camera, front-facing camera, microSD storage, etc, etc) there’s just no contest.
  • Competition is a good thing and I’ll be keeping tabs of what happens in the webOS world, but for now, I’m hopping on the Android train.

Paul Graham Nails It

I’m not always in agreement with Paul Graham, but he’s absolutely spot on with his essay on how broken the Apple App Store is and how it’s disastrous.

So I bought it, but I bought it, for the first time, with misgivings. I felt the way I’d feel buying something made in a country with a bad human rights record. That was new. In the past when I bought things from Apple it was an unalloyed pleasure. Oh boy! They make such great stuff. This time it felt like a Faustian bargain. They make such great stuff, but they’re such assholes. Do I really want to support this company?

This essay is just chock full of good stuff and worth a full read.

How would Apple like it if when they discovered a serious bug in OS X, instead of releasing a software update immediately, they had to submit their code to an intermediary who sat on it for a month and then rejected it because it contained an icon they didn’t like?

By breaking software development, Apple gets the opposite of what they intended: the version of an app currently available in the App Store tends to be an old and buggy one.

If your company seems evil, the best programmers won’t work for you. … But the real problem for Microsoft wasn’t the embarrassment of the people they hired. It was the people they never got. And you know who got them? Google and Apple. If Microsoft was the Empire, they were the Rebel Alliance. And it’s largely because they got more of the best people that Google and Apple are doing so much better than Microsoft today.

App Store Discoverability

While I have some angst about what the app store model means in terms of platform control and openness, it’s clear that Apple’s App Store implementation was a quantum leap improvement in terms of user experience, allowing end-users to finally easily install useful apps on their fancy “smart” phone. Solving that “install” problem has resulted a panoply of apps, which has in turn spawned the new (well, the standard infoglut/attention-scarcity) problem of “discoverability.” This problem is particularly acute for finding the good stuff from the crap (quality), or finding the thing that will make your life better that you didn’t even know existed (serendipity).

This is a problem that affects Apple more-so than it’s competition at the moment primarily because of it’s scale (almost a magnitude greater # of apps than Android’s Market), but one that any successful app store will need to address. I believe that it does affect Apple a bit more because of the lack of a trial or easy refund path, which basically makes the cost of trying out an unknown paid app, well, the cost of the app. Android’s Market, in contrast, has a trial period, which somewhat lowers the bar there (although that’s offset by the insane lack of “Update All” functionality and cumbersome uninstall procedure). In terms of browsing, however, both the Android Market and Palm App Catalog basically otherwise ape Apple’s browse functionality: lists of apps with filtering by category and ordering by recency and global popularity.

This is somewhat surprising to me because it seems that there are tons of pretty trivial ways to make apps more discoverable. This week saw the launch of First & 20 – which is on the right track – but this type of functionality should really be built into the marketplace, and should allow you to see the most popular apps that your friends are using (no offense, but I kinda don’t give a shit about what Dan Lyons has on his home screen). This of course, could be built as a third party app – just recently, I was discussing something similar with a friend about automatically slicing and parsing Home Screen screenshots to programmatically determine popularity (err, someone with some spare time go do that, OK)?

Now granted, social has never been something that Apple has been any good at (or even understood, really), but hey Palm, isn’t Facebook sync BUILT INTO YOUR PHONE ALREADY? (yes yes, having a working store and err, enough apps for discoverability to be a problem probably takes priority). (Note: even if you don’t have a social network, you could do something clever w/ opt-ins based on analysis of your active address book or something like that – it doesn’t have to be invasive, just a one time click to opt into the system either as an individual or even as an anonymous/aggregate fashion.)

The attention network aspect is just one potential solution (albeit, the one that to my mind gives the most bang for the buck). Along the social lines, there are two other paths to explore – the activity stream – having a view to see what your friends have just installed, starred, reviewed, etc. and on the other end, aggregate stats of usage – you’d probably get a pretty good ideas of which apps were worthwhile if you could see what apps were most used during the day (either in opens or in minutes). This could also be applied to other aggregates, like the global population, or to clusters (recommendations: people who used the apps you use also use these apps).

The last low hanging fruit (off the top of my head – I’m sure there’s more but I’m headed to bed now) is in how badly reviews and ratings are collected. Apple beats the competition here by both allowing the easiest removal of apps (by comparison, app removal is pretty painful in both Android and WebOS) which has a rating (but no review) roadblock. While better than nothing, the uninstall review roadblock is still fatally flawed. Because the ratings are only collected on uninstall, and reviews multiple clicks away (also after a search step, since there’s no list of installed apps), you inevitably end up with both skewed ratings (of primarily the people who by definition didn’t like it enough to leave it installed) and skewed reviews (those that loved or hated it enough to go through the huge pain of writing a review).

You could try to mitigate these issues by including options to rate/review whenever you’re updating, or even with an opt-in that might bug you say on the 10th time you opened an app. Hybrid solutions with the previously mentioned approaches could involve having active recommendation/rating requests through your network (to my friends that have installed this app, do you like it?) or, probably more simply by getting rid of manual ratings and switching to showing the aggregate metrics that actually matter: retention rate, opens and minutes used (per day, totals, graphs) as “ratings”. These have the bonus of also being enormously useful to developers and being completely passive to end-users, which is good both for the data quality and for the user experience. (The self instrumentation potential is also interesting.)

None of these ideas are rocket science, but I haven’t really seen much written along these lines, which is just been a bit surreal to me because it seems like no one has been really acknowledging how sub-optimal the current app discovery experience is. (I can’t be the only one that feels this way, can I? Does everyone just discover news apps through NYTimes ads and Lifehacker posts? We’re thankfully past the “have to show all my friends this (not really) awesome new app” phase, right?)

Lessons from Android: Unintended Consequences (or How to Kneecap Your Developer Community)

An interesting clusterfuck has been brewing within part of the Android Dev Community – how serious of a long-term effect and what ultimate spillover it will have remains to be seen, but I thought it’d be worth gathering some notes about this as it develops. It started yesterday as something, that on the surface, only effected an important, but miniscule percentage of Android users, but that over the course of a day, has blown up into something may actually have potentially long-term consequences on the Android platform as the open mobile platform of choice.

Yesterday, Cyanogen, an Android community developer who maintains the most popular (and arguably best) alternate Android firmware, CyanogenMod, mentioned receiving a cease and desist from Google Legal.
Alternate firmwares (or custom ROMs) are along the lines of the custom WinMo firmwares that enthusiasts have been putting together for years (and in fact, there is at least some community crossover, including some shared forums). I only recently discovered CyanogenMod after complaining to the one Android superfan I know about how slow the Android phone I had was, and it was to me a night and day improvement over the stock firmware – performance went from unusably laggy to downright zippy.

Now, while Google is obviously within their legal rights (the C&D was specifically about redistribution of their closed source components), honestly, I’m rather baffled by this. It just doesn’t make any sense from a practical perspective – these apps are distributed with all the phones that the Cyanogen firmwares can be installed on, and are mostly used by a small set of the platform’s most dedicated enthusiasts (low tens of thousands at most, less than 1% of the Android userbase) – and of course, by a select few hobbyist developers putting in an inordinate amount of time in maintaining the firmwares and supporting those users. Not only is there no upside in attacking this community, but I can’t picture any scenario where there would be a net-positive outcome for Google.

As you can imagine, once word spread about the C&D, a community reaction was inevitable. A petition app was quickly put on the Marketplace (not the worst idea, honestly), and there were a few mentions in the more general tech news, although I haven’t noticed a big splash (say on Techmeme)… yet. That may change soon, I believe, as the fallout is now much bigger than inconveniencing a few “modders.”

Earlier today, Dan Morrill posted an official position statement on the issue. His statement about redistribution of closed source components seemed straightforward enough, but the implications are still unfolding. It turns out that by explicitly outlining the legal boundaries for closed-source components, we learned that not only core parts of the Android experience (like the Google Mobile services and Marketplace app), but also parts of the SDK and other base components are also protected. This news doesn’t just kill custom ROMs, but potentially makes Android as an open source project not viable at all. From Cyanogen’s Twitter stream:

@crazywizdom it’s pretty much like a bare bones linux install without the google bits. no contact sync or anything like that. #

From what they explained to me, you are not even allowed to copy the proprietary applications from your device. #

@gacktoh but you can’t distribute the market app. And it relies on the Google Mobile services anyway. #

I’m trying to get clarification now on what can actually be included. There are things in the SDK that aren’t in AOSP. Very confusing. #

Oh yeah, one last tweet before I violate the don’t-tweet-while-drunk rule. Nandroid is probably illegal. Awesome huh. #

All this woe (that’s counterproductive towards Google’s interest even if weren’t a PR, and now full on developer community nightmare – the custom firmware releases brought steady streams of improvements to tide over the true believers to what has been thus far, a somewhat lacking software product), probably set in motion because some PM got wind of the v1.6 Marketplace app being on the phone and got in a snit, setting the legal wheels in motion. And poof, over the course of a day, a cascade of events leading… who knows where.

Which is not to say that this can’t be fixed. The Google folks (even the legal teams) are smarter and more agile than most – if this is a priority, there are many ways to patch things up, from offering some sort of non-commercial redistribution terms, or having the Android team announce that they’re working with the community to make sure that they’re making it a priority to make sure that custom firmwares can be installed w/o touching the proprietary APKs, or that the AOSP is useful as an end-user installation (both of which jbqueru at least appears to already be moving on).

As it is though, it appears that Google has just shat on it’s biggest enthusiasts, and has given a good cause for those who are supporting Android as an “open” alternative to actively consider how far that openness extends (and realize how ostensibly “open source” Android really is). And of course, it’s a shame that there won’t be any more CyanogenMod builds. Still, this has been pretty fascinating to watch unfold, and should be of interest to anyone managing developer communities or trying to create an “open” platform…

(If you’re interested in following the conversations moving forward directly, the Twitter streams of cyanogen and Android developer jbqueru seem worth following.)

UPDATE: To some degree, this will probably blow over, since over the weekend Cyanogen announced he will continue w/ his work (after developing a new backup procedure to allow backup and re-installation of Google apps and with the inclusion of an alternate marketplace). Still, these are the types of incidents that chip away at social capital and reputation (until suddenly one day, the public no longer gives you the benefit of the doubt and any action taken gets looked upon in the worst possible light) – not to mention the amount of ultimately, pointless (or at least, repeated) man-hours that will be spent engineering a technical workaround to a policy problem.

Palm Pre: Two Months In

I’ve been catching up recently on the Android switching (you can read the weeks where I tried out a Palm Pre, Google Ion, and iPhone 3G)… As for me, I ended up switching to a Palm Pre, and after taking it around the country for a two months as my primary device, I thought I’d give an update…

  • Reception – having carried the phone around in SF, LA, NY, Portland, and Boston, I’ve been extremely happy – it’s an amazingly huge improvement over my AT&T service- my only dropped calls happen with friends on AT&T, and the data connection is very good – I even get data underground on BART throughout SF.
  • Voice Mail – I’ve remembered how much I hate voice mail. I have Google Voice… my initial reading seemed to be that call-forwarding for Sprint was an all or nothing proposition, but there might be some options for that… I’ll be trying to get that setup (even at 20 cents per minute, it’d be worth it to not have to listen to VMs).
  • Maps – my original hope was that the GMaps app would be decent, but really it’s pretty pathetic. It’s worse than the Android version, and far inferior to Apple’s Map application. It’s been a bit surprising to me how much better Apple’s implementation is (they write their own app, they just use Google’s tiles). You’d think that Google would be able to do a better job. On the other hand, I’ve found myself using TeleNav’s Sprint Navigation app more and more – it’s not ideal, as it’s hard to get out of turn-by-turn mode (I often find myself wanting to see the next turn) and sometimes it loses (or just won’t acquire) a GPS fix, but I’ve been a lot happier with its behavior in general (no problems w/ map tiles, or forgetting what it’s doing – it also has a history and interacts with my contacts) – it is however pretty battery intensive and takes a while to load up
  • Battery Life – this was my biggest complain when I first got my Pre. And for the first month it remained a huge problem – it just couldn’t last a day, which since I’m not office bound, means lasting at least from say 10am until 3am – even when I didn’t make any calls or even wake it, it’d run itself down just from its syncing. This was improved somewhat by the 1.1 update, but the main reason that it’s no longer a complaint is that I bought an extended battery – this thing adds an extra 5mm (it looks and feels like a lot more) of depth, and makes my Pre creak like no tomorrow, but it also comfortably gives me over a day no matter how much I use it (it seems to last just under 2 days in regular usage). If you’re getting a Pre, I’d say you pretty much are going to want to get either a spare battery or an extended battery.
  • Performance – My new top annoyance is now the intermittent lag/lack of responsiveness with the phone. When it’s working well, it’s really quite nice, but I find the Pre lagging out quite a bit. The dialer and autocomplete are particularly bad (not to mention that the autocomplete doesn’t have any sort of learning algorithm – no matter how many times you send to an address, you’ll never have to type less letters and it’ll never move up). Apps that have listings are also quite slow – i.e., while the 1.1 update sped up photo rendering, when you jump into the photos from the camera, it takes you to the folder list, which renders incredibly slowly. The same thing holds true for listing MP3s when jumping into the music app. But it’s not just limited to that – sometimes the launcher lags out, or app launching, or any number of things. I can’t explain why these things aren’t cached or why responsiveness isn’t made a higher priority. My biggest gripe is that when the phone lags out, it isn’t just a rendering issue, all response just grinds to a halt. I haven’t tested whether reboots do much w/ performance, but since despite using Upstart, the Pre still takes almost 2 minutes to boot (what’s up w/ that? when Ubuntu boots in 10s, I’m not sure what excuse the Pre, running on a fixed hardware platform, really has)
  • Copy and Paste – oh the irony. The iPhone now has superb copy and paste support, and it turns out that the Pre’s copy and paste is completely useless – time and time again I need to copy something from an email, web page, or text message. And I can’t! Also, the few times I can, only serves to show how awkward Palms copy and paste command/gestures are.
  • Other UI – It’s not all bad though – I remain impressed w/ the cards implementation, and the notifications just plain rock. Every time an alarm goes off, or something else pops up and I can keep typing through what I was working on, I get a nice warm fuzzy feeling. This is how it’s supposed to work people!
  • Apps – The official app store remains pretty anemic – I find myself missing some apps, like a decent Yelp app (Where is pretty substandard) or a Midori/Shazam equivalent, but the homebrew scene has been just plain making me happy. There are hundreds of homebrew apps that have been filling in the gaps (include a homebrew app “store”, scientific calculator, timers/stopwatches, a terminal, and yes, a great tethering app).
  • Headset/Microphone – one thing that is maybe a bit esoteric for some, but is actually up there with my biggest niggles, as I use this all the time is that there are some strange things with how the Pre interacts with my wired headsets. I use Ultimate Buds as my primary headset. They’re great for music and they conveniently have a remote and microphone – which the Palm Pre actually supports, with both the single click play/pause, and the double-click next track. That’s great! Unfortunately, after pausing for 5 seconds, the Pre “goes to sleep” and stops responding to the TRRS signal – to unpause, you’ll need to hit the power button or otherwise wake it before it’ll respond again. This is took a while to figure out, and is somewhat maddening – it also makes pausing somewhat useless and makes me wonder if anyone bothered to test this feature. The second big annoyance is that unlike the iPhone, which gives no microphone feedback, the Palm Pre gives you lots of microphone feedback – in fact, much more feedback than the other side of the line receives – so much so that it becomes impossible to hear the other side when there’s even moderate wind or traffic noise. This doesn’t happen without the headset and is downright retarded.

Now, while the list looks a bit weighted towards complaints, and while there are definitely some issues that well… verge on total brokenness (I’ve submitted the worst problems to Palm), most of these issues seem like they can be fixed via software updates, and on a day-to-day level, I’ve been mostly satisfied with my Pre.

The experience is absolutely not as good as the iPhone, but I guess at the end of the day, it’s still much more usable than the Android, and for me, it’s worth supporting an alternative because well, despite Schiller’s outreach, the the App Store really is abominable, not just in its practice/actuality, but also, after having given it some thought, and reflecting on its implications, as a general model.

Mobile devices are the next generation general computing/network access platform and having a device manufacturer as a post-facto gatekeeper is just not right. Getting rid of end-to-end not only reverses the freedoms that spawned the innovation on the Internet, but also creates a bottleneck on software development/distribution that I’ve never seen in modern general computing…

Oh, also: AT&T can suck it.