First of all, Apple really made a huge mistake in terms of scheduling. In one day, they pushed out 1) iPhone OS 2.0, 2) the first non-beta release of the iPhone developer tools, 3) the new App Store, and 4) the 3G iPhone which required in-store activation. That's a huge amount of network demand. Throw in the changeover from .Mac to MobileMe, and they were just begging for trouble. The software items should have been planned for at least a week before iPhone 3G.
It's worth noting that the first non-beta release of the developer tools was released the SAME DAY as the store opening. Know what that means? Essentially everything available on the store was developed with beta code and/or tools. Know what that means? Bugs, and lots of them. Also, the development program has been under such a tight NDA that the developers have nowhere to go to ask questions. This is not a formula for success. Considering the emphasis that Apple has placed on maintaining the stability of the iPhone user experience, this approach seems curious, if not outright doomed to fail. I have no doubt that things will get better in the coming weeks, but this is a rough way to start.
I eagerly rushed home after work to download the OS update. After reading about the turmoil and pain during the day, I had hoped the problems would be mostly sorted out by the time I made an attempt. And it turns out I was right. The download and install went off without a hitch. While I was waiting, I perused the AppStore, and download some items. In doing so, I discovered the first area that needs improvement:
Software that isn't free should be placed in a shopping cart just like if I was buying music.
I was zipping through the freeware, downloading anything that looked curious. Somewhere along the line, I apparently got sloppy with my navigation, and only too late noticed that the item I just downloaded actually had a price. Oops. Fortunately, that particular app was only $1, but then I was forced to wonder how many other apps I had accidentally purchased. A receipt was emailed to me later, confirming that I had only purchased the one application, so I got lucky. I could have inadvertently spent a lot of money.
Freeware, sure, download it right away. No harm, no foul. Payware, put it in the shopping cart so that I can review one more time before I buy. That's how the rest of the iTunes store works, I don't see why this should be any different. Heck, even free songs get put into the cart.
Remember what I said about buggy? Yeah. I started poking around at the various apps I downloaded. The one I was most interested in was a simple list manager, and turned out to be the one I actually paid for. This is a very basic, few-frills application (and that's just fine), but it happened to include a pre-populated list. I went to reorder the items, and it presented the usual draggy widget to do so. But if I attempted to drag beyond the current limits of the screen (it was a long list), the item being dragged would get stuck into drag mode, and just slooooowly work its way to the end of the list. It was unresponsive as it slooooowly moved, and I could not drop it into the correct place. After the 3rd time this happened, I got frustrated and gave up. I'm only out a dollar, oh well.
I wanted more features than this app offered anyway, so I went back to the store. I found a couple more, and decided between a $5 one and a $10 one. I can be cheap, I went with the $5 one. That decision lead me to the next area that needs improvement:
There needs to be a way to try before you buy.
Reading the description of the software, it contained pretty much exactly the features I wanted. After about an hour and a half of futzing, I still was not able to figure out how to do what I consider to be a very basic function that was explicitly mentioned in the description. I'm guessing this particular developer is a one-man show, and I'm also guessing that English is not his first language. This lead to some interesting paradigms that I never quite sorted out. Either the developer described things he has not yet implemented, or I just plain did not get it. Regardless, it cost me $5 to figure out that I didn't really like the program. It has promise, but needs a lot of work.
Back to the store for the $10 program. This developer, judging from the web site, is a well established organization producing software for other handheld devices. This program is a port of an existing product. Feature description is pretty close to what I want. Download it, give it a try. The amount of difference between professional and amateur development can be striking. The program started with sort of a walk-through, and then finished with a reasonably nice looking interface. But as I started digging through it, I was amazed at how poorly thought out some of the design choices were. Some choices were very good, some choices were very bad. Overall I found it to be functional, but still a rather frustrating experience.
So let's review: I spent $16, paid to three different developers, and still didn't find a program that I like.
I'm deliberately being vague about certain aspects here, because this experience is motivating me to finally get off my butt and develop some software. I have been kicking around some ideas for a program of this nature anyway, and now that I see there is some room to offer improvements over the current offerings, I guess I haven't missed the AppStore boat. So, watch this space in coming weeks. The wife and I are doing some planning now, and then I'm going to finally dive in and make this happen.
I did discover a kick ass game, though: Aurora Feint. It is a freebie, which is just shocking. This program has amazing graphics, a fantastic soundtrack, and an entertaining game that takes advantage of the touch screen and the accelerometer in clever, innovative ways. Go download it. Your only regret will be the loss of productivity. The developer really should be charging money for this.
I don't know exactly how a try-before-you-buy system could be implemented, but it seems to me that if Apple can keep track of how many systems a song has been played on, they ought to be able to provide an app for free that quits working after 5 days. This wouldn't even need any effort on the part of the developer. There are some developers providing ad-supported freeware, and then ad-free payware. That might be a useful model for some, but that puts a lot of effort back on the developer.
Remember what I said about buggy? Yeah. At some point on Monday, I decided to play a game. It would launch, and then almost immediately quit. I did not have any kind of network connection at the time, so I started to wonder if that was a requirement. I quickly ruled out that notion because A) that would be stupid, and B) even if it is true, it should be more graceful about handling no-network situations. Through more trial and error when I returned to network coverage, I discovered that network had nothing to do with it, apps would still crash upon launching. I rebooted the iPhone, still no joy. More trial and error, and I realize that NONE of my 3rd-party apps would launch. The built-in ones worked just fine; none of the add-ons. A few more reboots, nothing solved the problem. Well that's disappointing. At least the iPod app kept working, and that's what is really important.
The only thing left I could think of was a complete restoration of the OS, which I did after getting home. Everything seems to be working just fine since. I hope that isn't something I'm going to need to do every three days or so. Stability issues are why I did not leave my phone jailbroken in the past for very long. The 3rd-party developers all have an excuse. This is now a 2.0 release of the OS - and given the across-the-board problem I don't see how this could be anything other than an OS issue - and I expect better from Apple, especially considering that individual built-in apps didn't receive a whole lot of apparent attention.
I was expecting to see a flurry of 3rd-party updates over the weekend, but so far I have not found an update to a single program that I downloaded. I'm starting to see grumblings that developers are having a hard time troubleshooting user problems, so that is probably slowing things down.
I figure after another month or two, things should get sorted out. Hopefully Apple is hard at work on 2.1 and will get it out soon. Maybe by then I'll have my new app ready and available for other unknown bloggers to take potshots at.