revjim.net

iphone

Photo Caller ID: is it really that hard?

Mobile phones have been doing Photo Caller ID since the day after mobile phones first got cameras. To know that even one of the major players in mobile phone operating system software gets this wrong is a tragedy. But to know that it is, in fact, all but one that get it wrong is almost unbelievable.

First, let’s point out the only OS to get it right: iPhone. Right out of the box iPhone displays your contact’s photo beautiful with no additional software required. It crops, resizes, scales, and gives you the best looking photo possible displayed very largely on the iPhone’s display.

Android tries. But it has quite a few issues. First of all, it only uses about 1/4 of the screen’s display to show the photo. Since there’s nothing useful on almost all of the remaining 3/4 of the display, why not fill the screen? Even worse, however, is when you activate your contacts for Google Sync. You see, almost everyone activates their contacts for Google Sync, because it’s easy and awesome. Except for when it comes to Photo Caller ID. You see the phone saves a nice large image to use for the Photo Caller ID. Even lets you crop it square yourself to decide what to show. Then your phone Syncs with Google. Well, Google only supports a 96×96 pixel image for a contact photo. So, when the sync is finished, that’s all you’re left with on your phone. The end result is that Android does the best it can to scale a puny little 96×96 pixel image up to fit the space reserved for contact photo display. You get a nasty looking, pixelated photo that barely resembles your contact at all.

Windows Mobile requires a 3rd party app to get this right. At least, however, once you have it it works well enough. Of course Windows Mobile is dead, so who cares.

Symbian Series 60 requires a 3rd party app as well. Lame.

When it comes to non smart phones, Nokia’s Series 40 is king. The phone does a pretty good job of displaying the photo in as much space as it can acquire. However, it doesn’t maintain aspect ratio, doesn’t give you the option to crop, and really only displays a chunk out of the center of the photo due to other onscreen display items being present. I’ve yet to find a template that shows exactly what size the image should be and which parts of it are completely obscured by onscreen text.

Can all the handset OS developers all just sit down and fix this problem already? And if someone has a template for Series 40 phones, can you send it my way so I don’t have to send myself 100 photos to reverse engineer it?

weekend recap

Sometimes I have to go back and read my last entry just to remember where I left off. I have more to say than I have time to write. That’s probably for the best.

Friday

So, as I mentioned last time, Friday was filled with swimming at the lake, Fireworks, and good friends.

cousins

Saturday

Saturday morning we went to the McKinney Farmer’s Market. We had so much fun eating blue berries looking at beautiful produce and walking under the trees. I really like McKinney in general. Maybe I should move there?

Celeste passed out on the way home, which I hadn’t intended to happen until we were on the way to my dad’s. I got her out of the car, put her in bed, did some chores, packed some bags, put her back in the car, and got her 10 minutes away from my dad’s house before she woke up. I must have taken my Daddy-Power pill that morning. Either that or the LuckyLayla‘s Drinkable Strawberry Yogurt C and I shared at the farmer’s market was responsible.

We got to my dad’s and did the birthday thing: mine, my mom’s, and my brother-in-law’s. Birthdays are way different as you get older. Presence becomes far more important than presents, which is as it should be, I think.

the end of the tunnel

After birthday fun, C and I met some friends at Central Market for live music, a way-too-big-for-Celeste playground, and dinner. I let C climb one thing that was just too big for her. She sees all the other kids doing it and she wants to do it too. She did surprisingly well. If it wasn’t for the fact that she just didn’t want to finish and tried to come down the thing backwards, I don’t think I would have had to help her at all.

After dinner, we went over to play with our friends until well after 10 o’clock. Then back to my mom’s house for sleep.

Sunday

I got up before Celeste, played with an Eye-Fi Card (cool product which could be SO much better if they’d hire some decent programmers. more later?), and tried to fight off a headache. Once Celeste got up, we went to the park, went for a nice walk, played on the playground, and had some oranges for a snack. My nieces and my nephew came with us. It was HOT, but, we still need some outside time. A few hours later we went back to my dad’s for a nap.

interesting light

My Dad, who really should open a restaurant, made some awesome slow cooked pork fajitas, then I helped my brother get his iPhone working on T-Mobile (more later?)

For dinner, we met some friends at Cafe Express in Southlake, but not before Celeste and I played for a bit on the big hill just across the street. After dinner we went to the Fritz Park Petting Zoo with our friends. We got rained out and a lot of the animals were not available, most likely due to the coming rain, but we had a great time anyway. It’s awesome how kids can make the most fun out of something so simple. In this case, it was a set of red stairs and a red painted deck. I forgot my real camera at my dad’s, and it was a bit too dark to get anything good with the point and shoot. But I tried.

a blurry TADA!

Driving home took a while as we got stuck in a huge downpour. It’s good though, we need the rain. Hopefully, today will have a bit cooler temperatures thanks to it. Once we got home, C and I fed the cats, watered the plants, went for a walk, took a bath, and went to bed.

Today

I’m going to call C’s doctor this morning and see if I can move her 18 month checkup from tomorrow to today. She’s got a bad cough and some kids at her school have had bronchitis, one of which developed into pneumonia. Other than that, C is in daycare, I have to work, and at some point this afternoon I need to get cat food. We haven’t gone swimming in a while, maybe that’ll be tonight’s plan.

iPhone OS vs. Android, Part I

These are my first impressions of the iPhone OS 3.0 versus Android 1.5.

I’ve been using Android for 3 months now and Android 1.5 for about 3 weeks.

I’ve only had 1 day with iPhone OS 3.0.

I’m running Android on a T-Mobile G1. I’m running iPhone OS on an iPod Touch 2G 8GB.

In comparison to iPhone hardware, I’m lacking the mobile network, the camera, and the built in microphone. Specwise, the Touch 2G is faster than the iPhone 2G and 3G but slower than the 3GS.

OnScreen Keyboard
iPhone

iPhone gets this right. The Android keyboard works, and even has some features that I prefer. For instance, when hitting “shift” the keys all change from upper to lowercase letters making it obvious if you are capitalizing or not. I also like that the word changes/choices appear above the keyboard (where my eyes are) and not up in the text (where my eyes only go sometimes). But, in the end, I can type A LOT faster on the iPhone keyboard and make fewer errors. And That’s only after 1 day of use. I’m sure, in time, I’ll get even better.

Physical Keyboard
Android

Since iPhone doesn’t have one, Android wins. If you want physical keys, then this is a good thing. If you don’t need them, then you don’t care. As it stands now, I can type faster on my physical Android keyboard than I can on the iPhone OnScreen keyboard. As I get better at iPhone, that may change.

Browser
iPhone

The iPhone Browser is FAST and easy to use. It still stalls now and then, but not nearly as often as Android. Plus the multi-touch hardware really excels here.  Android seems able to display everything it can and in every case I tested it does so just as well in the end. But it typically takes longer to get there.

Photos
iPhone

Android photo browser sucks. It’s slow and complicated. Replacements available in the Market aren’t much better. iPhone is fast and easy, as it should be.

Mail
iPhone

Despite the fact that the Mail app on Android is native to gMail and that I use gMail, I still find the experience better on iPhone. Deleting and sorting mail is fast and easy. Despite the fact that some things I use are harder to get to, the speed of the app makes up for any difficulty.

Push Mail
Android-ish

My mail doesn’t seem to push at all on iPhone OS. But that may be because push only works with iPhone hardware and not with Touch hardware. Perhaps the mobile network is required for push? Regardless it doesn’t work. And Android does. But only for gMail.

Push / Pull
Android-ish

Android doesn’t implement Push. Individual apps do. Therefore, the apps must be running in the background to accept pushed content. When this happens, it typically works well, though each implementation is different. Other apps Pull content at regular intervals. This also works well but is more battery consuming, network consuming, and still requires the app to be running in the background.

iPhone has real Push. However, I’ve not seen many apps that use it. I tried AIM, because it was free and supported push. I found the Push interface to be obtrusive at best. I’m not sure if that method of operation is required or is simply how AIM chooses to implement it. Looking for other Push enabled apps to try.

I had hoped it would work similar to Android’s notification bar. A pushed message causes something to happen. Usually, a notification of sorts in a common place to inform the user of pending interaction. However, ideally, it would also allow for an action to take place without user interaction. For instance, Loopt might push a request for location. I don’t want to have to acknowledge that then fire up the app to update location. Ideally, the pushed notification would cause the update to happen and then the app to die. Apps requiring user interaction would notify in a common location and not with an annoying popup for each event. Then again, part of that may be AIM’s implementation. Perhaps all that I desire is possible and AIM just used it poorly.

General Use
iPhone

iPhone is smooth. Everything works almost exactly as expected with only a few caveats. On Android, when scrolling around on a webpage, for instance, I often accidentally click links. This never happens on iPhone. The UI programmers have put a lot of thought into when users are scrolling and when they are clicking and how to tell the two apart.

The same is true for all of the menus. Everything is fast, and pops, and is consistent with very few exceptions. 

3rd Party Apps
iPhone-ish

iPhone has been around longer. There are lots of good solid apps available for iPhone. Especially in the “games” arena. It’s shocking, really. However, Android is catching up. And the Android apps that are available (General Use issues mentioned above aside) work just as good if not better (because of Push/Pull features) than the iPhone counterparts. 

Hardware
iPhone

The iPod Touch screen is bigger and nicer looking. I don’t have a camera to compare or anything like that since I’m working with the Touch. The Touch is lighter than the G1 and I believe the iPhone is as well. It also feels more solid in the hand.

Development
Android

The Android SDK is free and available on Mac, Linux, or Windows. The iPhone SDK requires a membership and is only available on Mac. iPhone apps can only be distributed through the App Store, The same memebership for the SDK is required. Prices run $99-$299 depending on use. Android apps can be distributed outside of the Market. Placing an app in the Market requires a $25 developers membership.