In a fit of masochism, I decided that I’d carry only an iPhone 5 for some undefined period of time, to see how the other half lives. (I’ve previously done this with Windows Phone 7.5, and found the experience to be interesting and enjoyable.)
After 5 days with just iOS 6 on an iPhone 5, I have a few positive observations:
iPhone 5 is a magnificent piece of hardware. It is easily the nicest phone I have ever held. I’ve used faster phones, phones with bigger screens, and phones with better operating systems, but from a whole package perspective, iPhone 5 is very, very nice.
iOS6 is very nice. I’ve been mostly away from iOS for several years, and am pleased to say that the notification changes that iOS5 made are a huge improvement in usability.
As one who is pretty firmly ensconced in Google’s ecosystem, I have to say that life with an iPhone is pretty significantly better these days with regards to getting done all the things I need to. Chrome, GMail, Calendar, Contacts, Drive, Voice and even Latitude “just work.” Hats off to Google for doing this work, and hats off to Apple for not being a dick about letting them do it.
I can say unquestionably that iOS’s approach to multitasking here is far superior to Android’s in about 95% of cases. For nearly every app I use, having the state suspend and then wake back up on demand is sufficient, and battery life is indeed quite a bit better for normal usage as a result. (Of course there are some classes of app that just have to run in the background, in which case Android’s mechanism is better, but I’ve yet to feel like I needed to have an app like that here in iOS Land.)
Webapps on iOS are fantastic. This is easily the best platform I’ve encountered for making web applications seamlessly integrate into the “native” experience.
As expected, I do have some negative observations, but even I am surprised at how few they are:
Inter-app communication is effectively impossible. If you want to, for instance, open a link a friend sent you in Chrome, it requires copy/paste gymnastics. If after seeing the link, you want to share it on Google+ or LinkedIn or myspace or Friendster, it also requires complicated copy/paste gymnastics. Android’s approach here is to allow any app to send content to any other app, fostering a much more interaction between users. iOS’s seems to be focused more on making deals with Facebook and Twitter to foster more money changing hands.
The app update cycle, while fostering the idea that developers release more polished functional apps in the first place, makes rapid iteration pretty impossible. Google’s iOS apps are some of the best around, but the fact that their Google+ client is at least 3 functionality releases behind Android’s seems pretty squarely to blame on the hassle of getting updates approved.
All in all, I’m pretty pleasantly surprised at how easily this die-hard Android (and Google experience) user has been able to transition into using iOS, and how little pain the transition has actually caused.
Hey Internet. Sorry to disturb you, but it's been quite a while, hasn't it. Sorry I haven't written, but there's been a lot keeping me busy.
How about a recap by way of quick reviews of a few of the gadgets I've acquired since last we spoke?
HTC EVO: Pretty nice Android phone, but too darn big for my tastes. The 4.3-inch display made for a device that was just too cumbersome to use as a phone, but not quite large enough to be a tablet. If you have big pockets, it's a nice choice.
Samsung Galaxy S Captivate: really nice hardware, but it's a shame that Samsung screwed up the software so badly. Android 2.3 is just about out and Samsung still hasn't managed to release Android 2.2 for it yet. (It's a good thing some nice Samsung engineer leaked an early build of 2.2 about 3 months ago, or I'd be having serious 'behind-the-curve' withdrawals.) The 4.0-inch screen is a much nicer size than the HTC EVO's, making for a much more comfortable pocket phone, and easily my favorite of the various phone form factors I've used.
Sony Blu-ray GoogleTV box: really nice hardware, but it's a shame that Sony screwed up the software so badly. The Blu-ray player application feels like it was made by a completely different team than the rest of the system, which makes sense, since Google didn't make that part. The one area that this device shines, incidentally, is actually the one everyone made fun of when it was first released: the remote control. People laughed, but I can honestly say it's the single greates remote control I've ever used. I really miss it after returning the whole package to the Sony store. If you don't care about Blu-ray, I say save $100 and get the Logitech.
Logitech GoogleTV box: hardware's cheaper than the Sony, but some of the software is better. The built in Harmony universal remote system is really slick, and being $100 cheaper than the sony is a nice perk. The bundled Bluetooth keyboard is way too big to make for a comfortable control device, but as we've been using a vintage SGI Indy keyboard on our various computer-television-hybrid devices for a number of years (have you ever seen then length of the cord on those SGI Indy keyboards?? Not sure why SGI thought they needed that long of a cord, but I for one am glad they made that decision.) it is a step up. GoogleTV has some pretty neat potential, but it's a real shame Google hasn't released the SDK for it yet, or, at the very least, just allowed access to the existing wealth of Android apps in the Android Market. Apps will be where the platform shines, so it seems kind of crazy that they're trying to sell them prior to that. I guess it has Twitter, so what more could people really want, right? Also, it's a shame all the TV networks have blocked the damn thing.
Samsung Galaxy Tab: really nice hardware, but it's a shame that US carriers have the phone functionality disabled. (The one I've been using is unlocked and has full phone functionality, which is awesome. However, being a prototype, it's also got a really rickety housing that feels very fragile.) Darn fine device; great form factor. Goes great in my cargo pants, and after using it for a few minutes, using an iPad now feels like driving a boat. I'm not, however, completely sold on Android as a tablet OS just yet. This hasn't stopped me from using it all the damn time, I'm suspect that a web-based platform might make for a better experience.
ChromeOS: nice hardware but -- wait. I haven't actually seen hardware yet. But I've been running ChromeOS on one of my netbooks for a few months and really, really like it. I tend to use web-based services unless I absolutely have to use a native application, so a web-based OS is a natural fit for me. Combine that with yesterday's Chrome Webstore launch, and it's now an attractive platform for people who are far, far less nerdy than me. If you're having trouble imagining a web-based OS, take a look at the Chrome Webstore and install a few apps. Then imagine your computer is faster with longer battery life and not encumbered by nonsense like virus checkers and printer drivers; now you can start to imagine what ChromeOS is like.
Apple 13" Macbook Pro: really nice hardware, but it's a shame Apple screwed up the software. OS bitching aside, the Macbook Pro is easily the finest piece of computer hardware I've ever owned, and nearly a year of living with Windows 7 made making the switch to OSX far less painful than it would have been going straight from Linux. I'm not completely sold on OSX, but for my usage, it's pretty shocking how much more productive I am than I was on Windows. Having a real UNIX system under all that shiny bounciness is something I didn't realize I missed until I had it back. I think I may write a post about my (most recent) Mac switch instead of going into detail here, as this quick little post has gotten kind of out of hand.
Hopefully it won't be several months before we speak again. Don't be a stranger.
Google I/O was amazing, and I'd like to share the most important things I took away from it. Well, except for the free Motorola Droid and Sprint EVO 4G that I took away from it -- I'm not sharing those. :)
The big news was Android 2.2, which in addition to amazing stuff like wirelessly streaming your iTunes library, also leverages a clever bit of behind the scenes magick that enables a 3x-5X speed increase on the same hardware running 2.1. They demoed this a few times with very dramatic results. It is way, way faster. This huge performance gain shatters one of the main reasons I've been maintaining that Flash on Android is simply not going to be usable; in fact, much to my chagrin, I have to report that Flash works very, very well on Android.
Speaking of Flash, there was a demo of what I believe to be the fabled "Flash killer" everyone has been hoping will come along to eventually put us out of our miseries. Many have tried (and failed) to come up with a Flash killer, but this time they have -- in my opinion -- actually done it. The surprising thing to me isn't that someone has managed to do it, but, rather, that it's Adobe themselves that are responsible. Adobe demoed the new integration between Illustrator and their new CSS-editing powerhouse version of Dreamweaver, effectively creating a very "Flash-like" experience of animating and interacting with elements using entirely open HTML5 and CSS based technology. In a couple minutes they created some remarkably interactive animated stuff with just a few clicks in Illustrator and Dreamweaver, outputting web content that will work in any modern browser without any annoying plugins/runtimes. Adobe has seen the benefit of making open tech take the place of proprietary black boxes, and are embracing it head on rather than fighting it off. Kudos, Adobe.
All that nerd stuff aside, the big exciting thing is GoogleTV. Many have tried to merge the web and television in the past, with downright comical results, so any additional attempts to achieve it are going to have to really 'wow' people. Google has now taken up the challenge, and I think they're really onto something.
Without going into too much detail, here's what they've done: searchable television. No more annoying guides showing you what's on right now; with GoogleTV, you can search for stuff to watch just like you search the Internet. You get a search bar, you type something into it, and you get results. Those results could be things that are on right now, they could be things that your DVR recorded for you, they could be things that are on in the future (and clicking them will make your DVR record them for you) or they could be things that are available to stream right now via Netflix, Hulu, YouTube or any site that you can stream from in your computer's desktop browser. Because GoogleTV is a browser, complete with the Flash plugin required to view most of that streaming content today. In addition to watching television content like this, GoogleTV has access to the Android Market, giving you access to the same thousands of applications you can run on your Android phone -- on your TV.
There are a lot of other cool things that GoogleTV can do, but the main selling point is that you no longer have to care where your television comes from. It could be live TV, something from your DVR, something from Hulu -- it really doesn't matter, and you don't have to think about it. You just know you want to watch 30 Rock, so you simply type "30 Rock" into your fancy GoogleTV remote and get a list of episodes to watch.
There were many other exciting things, but many of them may still be too nerdy to be interesting to most people, so I'm just hitting the points I think people will care about. Android is now really, really fast and can deliver a fantastic Flash experience (if that sort of thing is your bag), which could be a viable alternative for those who want an iPhone/iPad but complain that they can't view Flash. GoogleTV may well change the way television is watched -- and maybe down the road be able to help shake up the control cable/satellite providers have over bundling content we don't want with the content we do.
Lest everyone think I'm a total Google Fanboy, I'd like to suggest a really, really simple tactic folks like Cyanogen can take to continue Android innovations while complying 100% with the licensing of Google's "experience" apps.
The crux of the issue is that, without the proper license, it is illegal for Android ROM developers to distribute these apps as part of their ROMs. It'd also be illegal for someone like me to host them myself so that people can simply install them after installing a custom ROM. "Ok," you might say. "Then how am I supposed to get these applications if it's not legal for anyone to give them to me?"
Ah, but there's the catch. There are organizations that are licensed to distribute them. T-Mobile, for instance, is probably the most widely-known, as all our phones will download updates containing the apps whenever a new Android release comes out. Usually there's a bit of detective work involved, though, in determining the URL for these updates. But you know who else is licensed to distribute them, and makes them extremely easy to find/download? HTC.
What would need to happen is that the user could themselves download the relevant firmware update file from HTC's website and save it on their SD card -- which is perfectly legal. The user could then update to a Google-free firmware from someone like Cyanogen. If this Google-free firmware update happened to check for the existence of the official Google-app-including firmware image as part of its setup procedure, and extracted the Google bits out of it, everyone could have the best of both worlds.
The ROM developer would not be distributing the apps. The organization that is distributing the apps is licensed to do so. Everyone wins.
If you haven't heard, there's been a bit of a dust-up today between Google and its throngs of Android phone users. If you have heard, chances are you heard it post-spin, where Google is painted as being this horrible evil dictator, violating the 'spirit of open source.'
That couldn't be further from the truth. Here's what's actually going on.
Google's Android phone platform is, in fact, an open source operating system. Any phone manufacturer who wants to license Android for use on their handsets can do so, completely free of charge -- but there are a few caveats. Anyone deploying an Android device has to choose between a few different Android packages, including the "with Google" option, which allows the manufacturer to use Google's good name to promote their device. However, the "with Google" package requires that you deploy all the software the way Google demands. No deleting GMail and including Hotmail instead, for instance.
If the manufacturer does want to remove GMail and include Hotmail, they can still totally do that -- they just can't use Google's name to advertise their product. Oh, and they also can't include some of Google's popular apps.
While the operating system is open source, some of Google's applications are not, and are rather restrictively licensed, giving Google a bit more control over how they are used. The idea is they don't want someone's crappy modified Android install soiling their good image.
Very soon after the first Android device's release, clever hackers figured out a way to bypass the security T-Mobile included on it, allowing them to install custom installs of Android, based on newer, better code than what the devices were originally shipped with. Sure, that newer code would eventually be handed out to all devices, but many of us nerds are rather impatient, and would rather use it now. Crashes and all. So a sort of "community" of hackers was born, eventually culminating in several really popular Android distributions that included all sorts of really awesome functionality that was either not "prime-time"-ready -- or was flat out barred from inclusion by the carrier. (In this case, T-Mobile.)
This has been going on for roughly a year now, and several people have risen and fallen as the de facto "ringleaders" in charge of assembling the components into updates that mere users can apply to their phones. Many of these updates happened to include all those applications that Google has specifically licensed to be only distributed by those that comply with their licensing demands, and today finally caught the ire of Google.
Google has sent a Cease & Desist letter to the maintainer of arguably the most popular of these Android distributions, citing his inclusion of applications to which he does not have the proper license for distribution as the activity that needs to be ceased. He's no longer able to include GMail, Google Maps, etc., in his releases, which arguably makes his builds extremely undesirable for most users.
As you might expect, people understand this licensing issue, and completely realize that it's not good to be in blatant violation of an application's distribution license. Just kidding! In actuality, people are going "ape shit," threatening to buy iPhones, yelling obscenities at Google, and being all-around poor sports about the whole thing.
"Google is violating the spirit of open source!" cry many.
Online petitions have been made. There's an "app" in the Google Market which is currently the most popular Market download of the day, that essentially demands that Google re-license these apps so that people can continue to use them however they want. Facebook groups demanding the same thing are thriving. Twitter has gone nuts.
There's a funny thing about the "spirit of open source," though: many, if not most, open source projects are licensed in such a way that the code cannot be used in commercial applications without following the requirements of the license. It is never OK for someone to violate the license. When, as invariably happens, some company does violate the license, people go nuts. Likewise, nobody ever expects to be able to include someone else's proprietary functionality in their open source app. Yet, in the "spirit of open source," Google should just throw out their licensing altogether so that these whiny, entitled, whineyfaces can continue to use them on a distribution of Android that won't, and cannot license them properly?
That's a bunch of crap. Google is in a bit of an awkward position, having angered a significant amount of its Android user-base, but they are completely in the right here. Does it suck? Yes. But should Google be expected to give away everything for free just because people have been using it illegally for a year? I'll leave answering that as an exercise for the reader.
(If you'd like to check your answer against the correct one, here it is: "No.")
UPDATE: Some are suggesting that Google's inclusion of proprietary apps in an open source environment is a bad thing. This may well be the case, but you knew about it before you bought an Android phone and/or started developing for the Android platform. You chose to accept that fact, and now you have to live with it. Google didn't suddenly remove the apps from the source tree and 'closed source' them; they were closed source from the start.
UPDATE: Someone made this silly Hitler-meme-video, effectively illustrating the attitudes of these whinyfaces:
Like most of the stuff I've done on android, my most recent app, "Send RSS to Google Reader" came out of being frustrated that Google's Mobile Browser wasn't smart enough to detect RSS feeds, and also wasn't smart enough to allow you to subscribe to them in Google Reader's Mobile interface, except by doing some cut-and-paste gymnastics.
The first version required that you actually display an RSS feed (or find the link to it yourself), and then use the Android Browser's "Share this page" functionality to pass the url on to Google Reader by way of my little app. This was incredibly cumbersome.
Now, thanks to some Yahoo Pipes magic behind the scene, you can be viewing any web page, hit the 'Share this page' menu item, select "Send RSS to Google Reader" and it will auto-detect any RSS feeds that happen to be part of the page. If there is just one, it sends it over to Google Reader Mobile where you can subscribe with a single click. If there are more than one, you are presented with a list of them, and can click any one of them to send it over to Google Reader Mobile.
I pretty frequently monitor what people are saying about Android on Twitter, and something I've seen recently is people lamenting the imminent death of Android now that Google's apparently shifted their interest over to a newer, shinier platform that might directly take on the behemoths in more oft-used hardware platforms, namely 'netbooks.' I've got a few thoughts.
1) Android is not under any threat of extinction as a result of this. One of the common things people are saying is variations on the theme of "Android hasn't had a chance to become successful, and now they're replacing it." That's just silly.
Android is, by practically every metric, a rousing success for the little time that it's been on the market. Worldwide, there's like 3 different phones available running it, most available for fewer than 3 months to date. The oldest Android phone is like 6 months old. Already a variety of carriers have committed to 18 different Android devices on the market before the end of 2009.
Has there EVER been a year that 18 different handsets have been released running Blackberry, Windows Mobile, MacOSX, or ANY other 'smartphone' operating system? Even if you combine all those operating systems together?
The relative clunkiness of HTC's first Android phone (the HTC Dream, which T-Mobile sells in the US as the 'G1') hasn't stopped it from being amazingly successful, outselling any other T-Mobile device. (I know, faint praise...) The HTC Magic (or T-Mobile 'myTouch 3G') is poised to more directly compete with the likes of iPhone in form-factor, sexiness and speed, and it comes out in like a month. It's already been successful on other carriers outside the US. Also, HTC's been making waves with it's new 'Hero' device, featuring a significantly sexier new 'Sense' UI [youtube] atop Android, and Sony Ericsson just released a peek at their new 'Rachel' UI [youtube], also running atop Android. Both of these UIs are eliciting squees of praise on Twitter, many people declaring that they'll ditch their iPhone for them in a second. (Check out those linked videos, maybe you'll see why.)
The Android world is just beginning to heat up, but it's already pretty hard to say that it's not a success, and that there aren't people dying to get their hands on devices.
The preponderance of dedicated apps to read the content from popular sites like Digg, Reddit, MetaFilter, etc., in both Android and iPhone's application stores, is testament to this. It's simply faster to pull down a limited feed containing only the data and render it using a native applicaton than to try to let a web browser display the whole page. Even iPhone specific pages are often slower and more cumbersome to use than a native iPhone application dedicated to the same purpose. That's just the way things are now.
3) In even the best case scenario, adoption of ChromeOS is going to be extremely slow, at least to start. I mean, how many people do you know that have even installed Google's Chrome Browser, let alone an entire new operating system? I just don't see the average Google user -- fanboy or not -- completely switching to a OS that only runs all the web apps they're already happily using on Windows. It's just not going to happen.
4) Where ChromeOS stands to make waves, however, is preloaded on hardware. Low-cost netbooks and laptops that are already installed, already configured, without having to include the cost of a windows license, or worry about viruses or any nonsense like that will benefit greatly from having Google's name attached.
There's been much talk of netbooks pre-loaded with Android, but at the current state of things, that's just not really feasable. Most of the Android applications in existence are designed for use on small, touchscreen devices without keyboards. The web browser is a RELATIVELY capable browser for a MOBILE browser, but you're not going to want to run Google Docs in it.
My netbook currently runs Linux, I'm using Chrome right now, and I do all my work in Google web apps. It works fantastically well. Except for one little thing:
5) The Linux version of the Chrome browser is a LONG-ways from ready for general use. It's very fast, does many things very well, but can't do most of the things you'd expect from a browser. You know, like bookmarks, printing, stuff like that. Looking at the state of things now, there's simply no way they're going to parlay the Linux version of Chrome into a full fledged operating system any time soon, let alone tackling the other things people are going to want to do, be it printing, scanning, etc.
Android is a full-fledged operating system RIGHT NOW, and there will likely be 20+ devices -- not even limited to phones -- on the market by the time ChromeOS even begins to be seen by the public. So don't go abandoning your Android development any time soon; there will be plenty of need for your apps for a long while to come.
Today, after some tinkering, I accomplished something of which I've long dreamt: placing a Voice-Over-IP call, from a real phone number to a real phone number, from my Android phone, using only my 3G/EDGE data connection. No plan minutes or hosted PBX phone service involved.
Here's a brief how-to (that's not even dependent upon having an Android phone):
1) Get Google Voice. (This step is going to be kind of a buzzkill for most people, as Google is still in some sort of indeterminate closed beta with the Google Voice system. I'm not exactly sure how I ended up with access, so I don't know what to tell you to do to get it too.)
3) In your Google Voice settings, add the 'SIP' address that Gizmo gives you to your Google Voice account, selecting 'Gizmo' as the type of number. (Detailed instructions.)
4) Install a Gizmo-compatible client on your phone. The folks at Gizmo have written clients for many popular phones. You can get one at http://gizmo5.com/pc/products/mobile/. If your phone supports 'J2ME,' then chances are they've got you covered.
(On Android, I installed 'sipdroid,' which isn't a Gizmo-specific application, but one that can handle any Voice-Over-IP service. (You can find sipdroid in the Android Market, but that version only works via wi-fi. Get the full version which supports 3G/EDGE calling via their site.) Configure it using the info from the Gizmo support page.)
5) Use Google Voice's web interface to tell it to call whatever number you want, selecting your Gizmo number as the one to ring when connecting. (Gizmo offers incoming calls for free; telling Google Voice to initiate a call and ring your Gizmo is technically an incoming call, even when you're calling a friend.)
6) Tell the Gizmo client on your phone to answer the call. You're now connected, and you're not using any minutes.
A nice side-effect of this Gizmo compatibility is that you can run Gizmo clients on any computers you have around. When someone calls your Google Voice number, all the computers will 'ring' as well as your cellphone, so you can answer it from one of them instead. More minutes saved.
Now, in addition to sharing your location with your contacts via your phone's maps app and your iGoogle page, you can embed your Latitude location into any page, enabling ANY CRAZY PERSON to stalk you with near-realtime accuracy. The neat thing is it defaults to automatic zooming, using your positional accuracy to determine how detailed the map is. With GPS turned off, using cell towers for location info, it zooms out to a city view with a blue "somewhere in here" circle. Turn it on and it zooms down to street level. Very awesome.
It looks like this:
The map atop my blog has long been non-functional due to the hassle involved in keeping it updated, but IT LIVES ONCE MORE, thanks to the fact that my phone is always updating positions with Latitude. Thanks, Google!
If you're interested in using Latitude in this way, head on over to http://www.google.com/latitude/apps to get your embed code. Assuming, anyway, that your phone is compatible.
Here's a handy list:
* All Android phones.
* Most Java-enabled (J2ME) mobile phones.
* Palm devices with Palm OS 5 and above.
* All color BlackBerry devices.
* Windows Mobile devices with Windows Mobile 5.0 and above.
* All 3G Symbian devices.
* Not iPhones. Pbbt. (I'm guessing the 3.0 update will have Latitude support. Still -- suck it, iPhone.)
Unlike the first one, this app will be beneficial for most Android users. Like with iPhone, Android lacks Flash capabilities, and thus handles YouTube by using a stand-alone player app. When a user clicks a YouTube link, the YouTube application fires up and immediately begins playing the video, full-screen. (If you can really call a phone's display "full-screen.") This means you don't have the luxury of seeing any information about the video before you play it.
My app solves this problem rather handily. Instead of sending YouTube links immediately to the YouTube app, they go through my app first, causing a popup with title, description and thumbnail image. And then a button at the bottom which will send the video to the YouTube app if you really want to watch it. If not, just hit back or the 'ignore' button. No more Rickrolls.
Like with my first app, this one is available both as a paid app and as a free app for the cheapskates. My logic is that the more people actually get benefit from an app, the more likely they'll EVENTUALLY be to throw me some cash. If they have to pay upfront, very few people will even try it.
(For the interested, this logic has proven to be very, very flawed; after 48 hours in the Marketplace, the free version of youtube Sleuth has well over 1,000 users. The $0.99 version has 9, and one of those was D. (Unlike on iPhone, you can "refund" apps you don't like within 24 hours of purchase -- but the catch is you can only do it once. If you install it again you are stuck with it. I was testing it and accidentally "bought" it from myself using D's phone one too many times.)
My first foray into Android app creation has come to fruition. NZBdroid is live in the Android Marketplace, both for $2.00 $0.99 and also COMPLETELY free. It's up to the user whether they want to buy it or not, which seems to me to be a pretty cool way to do things.
What NZBdroid does is allow the user to click on .nzb files in the Android browser (or in any app, really) and have that .nzb file sent off to your 'net-connected instance of SABnzbd+, where it will be downloaded and ready for you to access it when you get home.
Spent today's meager amount of free time on IRC conspiring with several of the best minds in the game when it comes to the sort of cat-and-mouse activities we seem to revel in playing.
We're a strange breed, us mice; for most people a new phone means freedom and mobility. When people like US get new phones, however, the first thing we do is spend days online in chatrooms, our USB cables running betwixt handsets and computers, ideas, schemes and crazy things to try typed furiously to the mice on the other side of the chat window. Hours and days spent so that we can do things from our phones that we are already at home doing from our computers.
This irony is something that I'm perfectly OK with.
So Android isn't QUITE the magical open platform i had imagined. As it turns out, T-Mobile and Google are doing all they can to ensure that the specific types of things I want to do with it stay impossible. It's early in the game yet, but it could easily be characterized as "cat-and-mouse." Unfortunately for them, these mice are always a few steps ahead of the cat. Plus, the fact that the cat made some really stupid mistakes out of the gate makes things a bit nicer for us mice.
MY Android phone is completely open to all the sorts of things that I want to do now, with some particular clever mice having compromised Google's latest update and used thier own security against them, but if you've got a T-Mobile G1 and want to have the opportunity to do some of the more awesome stuff we mice are working on, it's extremely important that you don't update to the RC30 update. There's nothing new and exciting in the update anyway.
After discovering that the G1 had a hidden proxy configuration that allowed all internet traffic to be routed through a proxy of your choosing, I decided to dust off the old Internet Junkbuster, an Adblock predecessor from 1996 or so.
Like Adblock, Junkbuster allows one to specify via regular expressions a list of URL conditions to treat as advertisements, replacing them with 1-pixel transparent gifs before they get to your browser, effectively blocking any sort of unwanted intrusion into your web experience.
I tracked it down, compiled it from source, and got it running on my Dreamhost account. After configuring the G1 to use it, I found that it worked amazingly well. I fed it the current snapshot of the community-maintained "filterset.G" blocking rules, and banished ads virtually entirely from my phone. Awesome.
Until, that is, Deamhost's Abuse Department dropped me a line asking if I was aware that copious amounts of spam were being sent by my account, and notifying me that they were able to track all of the spam messages to my running Junkbuster installation.
I haven't yet investigated to determine whether Junkbuster itself has been compromised by spammers or whether it's just badly coded so as to allow this sort of abuse, but the discovery of my active installation and subsequent spam messages that were resultant from it happened within hours of me turning it on. Startlingly fast, in fact. I'm not sure there's really any explanation other than Junkbuster itself now containing malicious code, but I'll be looking into that shortly.
Either way, finding that the tool you're using to remove the spam from your web surfing is, in fact, resulting in spam showing up in the email of strangers is delightfully ironic.