Archive for June, 2010
This was actually a comment to a Robert Scoble Buzz thread discussing pros and cons of Androids and iPhones. The comment got way too long and well, it looked like it fits being a blog entry.
========================
My perspective on using the Android isn’t really so much of a comparison, mainly because I’ve never actually owned an iPhone before. But I still like, even love, the HTC G1/Dream that I first bought and the Nexus One that replaced it.
When I first got my G1, I thought it was the ugliest, nay, fugliest phone ever. But I chose it still because, being my first touchscreen phone, I wanted a physical QWERTY keyboard to help me ease into the new environment. Back then, Android didn’t even have a soft keyboard yet (Android 1.0). I used it and was happy with it for a while. Didn’t like some quirks, such as the limitation on only one GMail account to sync with and the fact that I had to flip out the keyboard to do the simplest of typing tasks.
The Cupcake (Android 1.5) came out and I got my soft keyboard. I found myself enjoying the keyboard very much but didn’t like the fact that Cupcake made my G1 (with its severe hardware limitations) run as slow as molasses. After reading around, I realized that 3rd parties were actually taking the Android Open Source Project (AOSP) source code and releasing their own home-brewed rooted releases. So I selected the most popular 3rd party (CyanogenMod), read up on a couple of tutorials, rooted the phone and installed CyanogenMod. And then the world started opening up.
Immediately off the bat, I got tethering and A2DP, plus CyanogenMod’s speed screamed on my G1. And we got our Donut (Android 1.6) upgrade earlier than any one else waiting for official OTA updates too. When Google Navigation was introduced, it was locked to everyone but those using it in USA, but some cool dude by the name of Brut hacked it into supporting the rest of the world. That was really nice and enabled me to enjoy the full benefits of Android without having to be in the states. But at the back of my head, I was always thinking “this is nice, but I wouldn’t recommend it to my non-techie friends; I really wouldn’t want to end up being their tech support for this”.
However, at the same time, there is one thing that I would point out as an Android, even at this time: the fact that an Android phone is a complete peer to the PC and not a slave to it in any way. The iPhone is a peer in most aspects, but for major work such as upgrading of the OS, I believe you still need hook it up to a PC with iTunes installed. Unfortunately, this is a no-go for me as I’m a Linux user and iTunes is not available for that platform. With Android, I download the update (whether OTA if you’re not rooted or as a zip file if you are) and flash it with no necessity for it to be hooked up to a PC whatsoever. My experience with Apple devices is limited to the iPod that I bought for my girlfriend, and for every OS update thus far, I’ve had to hook it up to iTunes.
Then, the Eclair (Android 2.0 and 2.1) devices came out. By that time, I felt comfortable enough with the soft keyboard so I ordered the Nexus One instead of the Motorola Milestone (the GSM version of the Droid). And when I got my Nexus One, that’s when something “magical” (as Jobs likes to put it) happened. I merely switched off my G1, switched on the Nexus One, signed in to my Google account and:
- My contacts were populated
- My mails were populated
- My calendar was populated
- All the applications I was using on my G1 were installed automatically
It took all of 5 minutes for the migration from one Android phone to another. No need for any hooking up to a PC, backup software or anything! Really, I could do this all day long. No matter what phone you’re using, you have to admit that this is really one heckuva cool feature.
Now that leads to one double-edged sword of using any Android phone: you need to buy into Google’s vision of the cloud if you’re going to derive the best of the platform. This means that you need to have a Google account, use their mail services, their calendar for your organizational work etc etc. I have a friend who insisted that his smartphone must sync from his MS Outlook and not from any server-side service. He got a Milestone and to date, he’s still complaining that the included software to sync to Outlook isn’t working very well. I sympathize, but I don’t think he should have gotten an Android phone in the first place. The desktop sync software was probably developed by Motorola themselves and I can hardly expect the manufacturer of a phone with a shelf life of less than 2 years to do a good job of it compared to the core developer of the OS whose aim is to make the best OS it can in the long run.
But Google just isn’t interested in making the phone a slave to the desktop. In their vision, the desktop and your phone are peers, and both of them are slaves to the cloud. Google’s cloud, to be specific. Now, whether you buy into that vision or not is a personal decision. I made mine.
Now, back to the Nexus One. By this time, I had found a community of Android users in Kuala Lumpur. And get this, over half of them are not particularly tech-inclined. Most of them just like playing their games (there isn’t many of them, but the size is growing), switching home screen launcher apps to see which fits their usage profile better, using it to increase their productivity and getting around town with Navigation.
Personally, I’m constantly watching out for the day when Android becomes full-featured enough to satisfy my needs without having to root the device. As l33t as I feel by having a rooted phone, I’m very conscious of its downsides (would you pass your rooted Android phone to a toddler to play around with? I did, and I had to restore the bloody phone after he managed to wipe out half my system apps). Froyo (Android 2.2) made a couple of long strides towards this end. I love the inbuilt tethering, and as soon as they sort out the installation of applications on the SD card, we’re really almost there.
And more importantly, I can do all this and enjoy using my Android phone without having to put down any iPhone user. You can enjoy your phone, I’m definitely loving mine.
Oh, and do note that I’m ignoring all carrier-related factors in my evaluation. I don’t live in the states, and the fact that stateside users have to factor in carrier concerns when choosing a phone is just an indictment of how screwed up your telco industry is and that’s unrelated to the phone. Over here in Malaysia and Singapore (and probably many other countries as well), we choose our phones and network separately. Telco contracts in exchange for subsidies are available, but mostly optional. Life is just so much better for it.
With Google Voice coming out of invite-only beta status, anybody can sign up for it (with a few notable caveats). I spent a couple of days attempting to sign up for it and made some notes from my efforts, in the hope that it’ll help any of y’all in Malaysia (and other countries outside of US) use it as well.
There are actually numerous tutorials and howtos giving tips on how to sign up for Google Voice from outside USA, but quite a few of them are outdated and most are lacking in details. Most of what I’m writing here is basically expanding on the information given in a help page in wifitalk.ca.
Essentially, when you sign up for Google Voice, Google will provide you with a USA phone number. However, this number can be best be described as a “virtual” phone number. It is not meant to replace your current phone number. When you sign up, you will need to provide a USA phone number which will be used as forwarding number. What this means is that when someone calls your Google Voice number, Google will route the call to your own phone number. It’s essential to understand this: your Google Voice phone number is virtually useless on its own. You still need an actual phone number for it to function. Honestly, Google’s help pages do a rather poor job of explaining this upfront so when Alfred and myself realized this, we couldn’t help but feel disappointed.
The steps to be taken are essentially the following:
- Get a USA proxy or setup TOR with exit nodes forced to USA IP addresses only. I won’t go into details about this here. Maybe I’ll put up a separate howto, but in the meantime, there should be plenty of search hits if you Google for it.
- Sign up a SIP account. I signed up for IPTel.
- Get a free phone number from IPKall, which will be routed to your IPTel SIP account.
- Set up your SIP phone with your IPTel signon information. Here, I’m using Android’s SIPDroid.
- Set up and verify your Google Voice account with your IPKall phone number.
Sign up for a IPTel SIP account
- Point your browser to the IPTel registration page.
- Fill up the form. Most of the fields should be easy to understand except for “phone”. I felt a bit confused by this but turned out that they just want to collect your phone number. Just key in any phone number that belongs to you. I have yet to be contacted by them at my number so far.
- Submit the form and you should have your SIP account.
Sign up for a IPKall phone number
- Make sure that your USA proxy or TOR is configured correctly when you do this. You won’t even be able to open the registration page otherwise.
- Visit the IPKall registration page.
- Choose the account type “SIP”.
- Select an area code. All of them are from Washington State so it should not matter much to us non-Americans which one we choose.
- Key in your IPTel user ID in the “SIP Phone Number” field. You must not key in the “@iptel.org” postfix.
- Key in “sip.iptel.org” in the “SIP Proxy” field.
- Key in your email address.
- Key in a password for your IPKall account.
- Key in the Captcha code and submit the form.
- You’ll get an email with your phone number in a matter of minutes. Note down this number.
Set up SIPDroid with your IPTel account
- On your Android phone, go to Market and install SIPDroid. If you’re using a Barcode Scanner, you can get the QR code here.
- Set up SIPDroid and go to Settings -> SIP Account Settings.
- Key in your IPTel user ID without the “@iptel.org” postfix in the “Authorization Username” field.
- Key in your password.
- Key in “iptel.org” in the “Server” field.
- Leave the rest of the fields as they are.
- If your Android phone is on WiFi, SIPDroid should attempt to connect immediately. You will know that you are connected when you see a green dot in your Android notification status bar.
- If you are on 3G or Edge, go to Settings -> Call Options and check on the “Use 3G” and “Use EDGE” boxes accordingly. You should see the green dot then. If you see a red dot, it means that there was a problem and you should check the status error.
- Once this is done, you should be able to receive calls to your IPKall number on your Android phone (as long as SIPDroid is signed on). Try this out by calling your US number from another phone. If you hear your phone ringing, you’re set.
Register and verify your IPKall number in Google Voice
- Fire up your browser and sign on to Google Voice using your Google account. Once again, your USA proxy or TOR must be active.
- During your first login, Google Voice will ask you to select a GV phone number. Key in an area code and Google will display a selection of numbers available. Choose one that you like and proceed.
- Google Voice will then prompt you for a forwarding number. Key in your IPKall number here.
- Now here’s where things got a bit sticky for me. IPKall numbers are recycled if they are inactive for 30 days. The IPKall number that you get may very well be a recycled number. If the IPKall number that you got has previously been registered with Google Voice, Google Voice will not allow you to re-use that number. When that happens, you have nothing else to do but to login to IPKall using your phone number and password and clicking on the Cancel link and then registering another number with the same details. Then you will need to register your new phone number with Google Voice. Repeat until Google Voice accepts your number. I got mine through on the 2nd attempt.
- Google Voice will then inform you that you need to verify the phone number. You will be give a 2 digit number. Click on the “Call My Phone” button and your SIPDroid should ring. Answer the call and pull out the number pad to key in the 2 digit verification number. Once your phone has been verified, your registration will be complete.
So, was it worth it?
Up till now, I’ve yet to really use the service. I’ll post up more findings as I learn more, but right now, I fail to see how Google Voice beats Skype.
The wifitalk article provides other methods of getting your phone number. But the other methods such as using SkypeIn needs money and given the US$’s relatively strong value compared to Malaysia’s local currency, it may not come cheap.
It would be nice if we can discard our original phone numbers once we sign up for Google Voice but this is not so. However, Google had recently bought up the Gizmo5 SIP service and it’s quite possible that it will be added in Google Voice’s feature list. That may serve to relieve ourselves of the need to signup for a separate SIP account.
Lastly, it would be great if Google Voice were to allow forwarding to international phone numbers. I’m in no position to say how easy or hard this is, but it certainly sounds easier than for Google to start giving out Malaysian phone numbers.
Won’t bother to post about where it came from since everybody’s writing about it already anyway, but if you’re using Paul O’Brien’s no-prerequisite rooted FRF50 Froyo, you can upgrade it to FRF72 here.
I’ve also mirrored the file here (40MB MD5: e52c58021ffa31e8e87d1e9e7d7fdb66) since he allowed it.
First up, let’s get a common misconception out of the way: Google Map Maker is not the My Maps feature in Google Maps. They’re 2 separate things altogether.
Now that we’ve cleared that up, what is Google Map Maker? According to the intro page:
Google Map Maker allows you to contribute, share and edit map information for certain regions around the world.
Sounds generic enough. There must be a hundred other services all around the world offering this service. But wait, what’s this “certain regions” thingie in that sentence? Turns out that this service is not available to all countries. For example, it’s not available to Singapore and US map users, but it is available to Malaysian users! “Wow”, you say, “finally something we have that they don’t!”. Well, don’t be too happy. If you look at the FAQ:
Question #1: I live in (MyCountryName) and am not able to add a place/road/point of interest in Google Map Maker. Why not?
Answer: At present, Google Map Maker is open for mapping in 174 countries and territories. These are mostly places that are not already well-mapped by commercial services, like those we use to provide data for Google Earth and Google Maps.
Whoah. Bit of reality check there. Turns out that they’re offering Google Map Maker to us (along with other “privileged” countries) because we’re f***ed up. Google is unable to get sufficient quality information about our terrain from the official channels to give us good maps. Unlike, for e.g. Singapore, where traffic information is already being fed from some government agency to Google live so they’re all prepared to re-route Google Nav users in case of jams and such. If you’re using Brut’s hacked version of Google Maps for turn-by-turn navigation, you’ll notice that there’s a real lack of good POI information about our Malaysian roads. Petrol kiosks, banks etc etc. There’s nothing there.
Well, nothing that we don’t already know, that’s why MalSingMaps and MalFreeMaps are so popular here. The community has taken it into our own hands to make things better for us.
So here’s what Google has given to us for us to help ourselves get a good quality set of maps in the Google eco-system. In Map Maker, Google has provided us with a fairly (I use that term loosely here) recent set of satellite pictures and road maps that they have procured from their partners (I think it’s TeleAtlas, iirc). It is for the community to share POIs and provide road updates that Google may expose in the official Google Maps later on.
Note that this is not the only way POIs can be created in Google Maps. Businesses should always be encouraged to add their business listings in Google Places and information submitted there will naturally show up on Google Maps too (and if you’re a business owner or know any, you really should tell them about this). But that mee rebus stall that’s still being run by a septuagenarian at the 5 foot corner of OCBC down in Uptown? Fat hope getting him to use a calculator, much less a computer hooked up to the Internet.
That’s where we (the community) come in. We can easily add on information to Google Maps and we can also actively moderate the information that has been submitted by others. The moderation bit is important: I had personally fell victim to misinformation that was posted via Google Map Maker. Some idiot created a POI called “Kuala Lumpur International Airport” right next to Jalan Kuchai Lama and I almost went off on a wild goose chase into the heart of KL when I should have been headed to the airport. After that, I went on to Map Maker and requested for the POI to be deleted and it was, after a few days.
Why should we support Google Maps?
I know that some of you prefer to have offline maps rather than using Google Maps/Navigation. But IMHO, online maps are the future. I really don’t buy the reason that you fear your data usage going over the top if you use Google Navigation to drive around town. Most of us using Android already have data plans (for me, Android is useless without data). And I have driven the entire day using GPRS/EDGE to feed Google Navigation, it was loading smoothly the whole day and I didn’t even notice a spike in data usage when checking against 3G Watchdog.
And yes, there’re other competing options too. I personally know that Waze, for example, is a competing service that relies on community-driven data. But I’ve used Waze and I’m extremely pessimistic about it being able to get off the ground. It relies on user to contribute basic things such as roads and paths and when I tried to edit the data I collected while driving back to Batu Gajah (hometown), I found myself staring at a huge path of barren land without even a reference point as to where I can start from. Whereas, Google Map Maker has a solid starting point with the commercial maps that they licensed. Building structures, roads, they’re all there.
I’ve started using Map Maker actively to populate POIs in my own neighborhood. It’s an impossible task to do alone so I hope I’ve done a good enough job of selling the rest of y’all on this as well. And get this: you don’t have to be an Android user to take an interest in this. Google Maps is available for iPhone, BB, Symbian and yes, even Window Mobile. It’s relevant to all smartphone platforms available in Malaysia! So please, spread the word. Adding POIs and doing some moderating in an area you’re familiar with is really not too much trouble. With enough contributions, we might even take over some “1st world countries” right south of us
Some links:
Google Map Maker
Map Maker Forums
Map Maker Forums for Malaysia!!
Tutorials on using Map Maker











