Sunday, December 09, 2007

iPhone update - annoyances and tricks

Now that I've had iPhone a few months, it's time for a list of more subtle issues and a few workarounds I've found.

Calendar/Address book modality is broken - I have often lost calendar appointments I thought I created or lost new contact info in a situation where I needed to switch contexts and I assume I've finished creating a new item but the iPhone software disagrees.

Repro steps:
1) turn on the phone and hit the big button for an app list.
2) tap the calendar icon to launch calendar
3) tap month, find December 2007, tap the 15th day of the month (December 15, 2007)
4) tap the "+" icon to make a new appointment.
=>you're at the "Add Event" form
5) tap the title/location area, tap "Title", type "Big holiday party!"
6) tap "Location", type "someplace obscure"
7) tap the prominent "Save" button.
=> you've hit "save" once, and the form shows an event with a default time.
8) tap the starts/ends field, set the event to start at 8pm.
9) tap the prominent "Save" button.
=> all the details of your new appointment are correct, and you've hit "save" twice.
10) tap the "Notes" area and add a long, carefully thought-out note describing what you need to bring or wear or who you need to remind about the party. Hit "Save" again.
11) Tap the big physical button to switch to application view, then tap Calendar again.
RESULT: Your new appointment is gone. Everything you typed has been lost. The only status remembered from your prior session is that "December 15" is still selected in the month view.
EXPECTED RESULT: Either the new entry has actually been created from the first time you hit "Save" and has been modified each time thereafter, or it fully maintains your state and returns you to the Add New Appointment form (with all the fields just as you left them) the next time you launch calendar.

What happened? You forgot to hit "Done" on the new event window. You thought hitting Save three times should be sufficient to preserve all that typing, but "Save" really meant "Done" (with a temporary subform) and "Done" really meant "Save" (the whole appointment).

The address book logic is similarly broken - you can enter a lot of data and lose it because a call came in and you needed to switch contexts or the screen powered off and the next time you turned the phone on you hit the app button before noticing you were still in the middle of something. Save should mean save. Workaround: Always be sure to hit "Done" after you enter any new info on an iPhone, because "Done" really means "Save" and vice-versa. If you write a big note, hit Save and Done and then come back to it just to be safe.

Notes Reordering. A physical paper notebook is sorted by note creation time - it preserves the history of when you started to write each page entry. When you go back to review an old note you wrote a few weeks ago and make a correction, that page doesn't spontaneously leap to the front of the book, does it? It does on the iPhone! I like to take lots of notes and then go back later and delete trivial parts or fix typos. On the iPhone, that means my notes are in a random order. I can't use my temporal memory of which events came before what to find something in the sheaf.
The only way to be sure your notes stay ordered is to take notes attached to calendar appointments. Then you can find them by scrolling though the List calendar view but this is tedious and has the previously mentioned failing-to-save risk.

There's no general searching or filing. I have categories of information I want to record and then find later. The iPhone is of very little use in that regard. But I've found a limited workaround: The Contacts application sorts entries by name and lets you quickly scroll by first letter; I use that feature to simulate filing categories. When I enter a restaurant's address into my contacts, I prepend the filing category "Food:" to the name, and also append the most salient subdetail I might want to search for. So now if I'm trying to find the info for a restaurant whose name I don't recall I can scroll to "F" then browse through such names as "Food: Chanto (sushi/fusion)", "Food: L'asso (pizza)", "Food: Taim (falafel)". Better still: when I'm in "looking for a restaurant" mode I can go to the Maps application and type one of the subdetail words in the search box - it bring up a list of the names from the contact book with their addresses. If I type "food" I get all the restaurants, and if I type "sushi" I get all restaurants with sushi in the name/description area - even if it's in the parenthetical part.

Software updates are handled quite badly. What it ought to do (and what I assumed it would do) when you ask to update the software is:

(1) sync up with the phone, backing up the current state
(2) install the update.

If it did that, then when the update fails and you have to erase/restore the phone's entire memory, you wouldn't lose any data. However, in practice it skips step (1). Workaround: if you ever plug in the phone and are asked if you want to install a new version, the correct initial answer is "No" - you want to sync up first. I've installed three software updates, and I had to reboot my iPhone (losing all data since the last sync) during two of them. Once I lost over two months of notes and contact info.

There's no Copy/Paste. In practice, that means a fair bit of manual retyping - I can't write something in the notepad and then copy it later to a contact or datebook entry. Nor can I move paragraphs around in the notepad. Something as elegant as the Newton's gesture-based copy mechanism would be lovely, but at this point I'd be willing to accept any clumsy hack to get this feature in.

Safari's multi-page issues. I'm using bloglines (currently in the non-beta iphone flavor: http://i.bloglines.com ). I have it set to open a new tab when I click a link. So I click a link; a new tab opens with the new page request. This new page is taking too long to download so I give up on it, hit the bottom-right "pages" icon and hit the "x" to dismiss this new tab. One might think that would return me to where I was in bloglines, but what it actually does is return me to bloglines and immediately request the new page, the one I was trying to dismiss, in place of the page I had previously been reading.

I don't have good general-purpose repro steps on this yet, but it does seem to happen quite frequently that if I dismiss a page that is still being downloaded, I lose the prior page I was still reading. Multi-pane browsing feels fragile. Also, I'd like a general "open in a new pane" gesture. Tap-and-hold on a link would probably work.

I still love my iPhone, but it often feels tantalizingly unfinished. It needed a few more good QA people on the job.

So what's your biggest iPhone gripe?

Performancing