In my previous post, I mentioned I was working on an app for the iPhone. It's done and here it is. It's called CRbus and is an iPhone optimized view of the Cedar Rapids public transit schedule.

The app took about an hour from start to finish thanks to the great iUI framework. The data in the app took much, much longer. At the start I wrote a quick Perl script to take pasted data from the official PDFs and package it for inclusion in the app. That worked fine, other than there were a bunch of special cases in the data that I didn't want to spend the time handling in my code. I didn't think this would be a big deal, and it wasn't, until I got to those special cases and found I need a lot of hand tweaking of my data (boo). That's all done and the app is ready for use.

If you want to give this a try, you don't have to have an iPhone. Firefox and Safari will run it fine. Just hit the CRbus URL and then drag your window into the shape of an iPhone (hint: tall rectangle) to get the experience. You start with a list of routes. Follow a route to get a list of stops. Follow a stop to get the times. You can follow the bread crumb arrows at the top back up the tree.

This is just a bare bones version of what the app could be. Obvious features would include Google Maps and Transit integration, syncing with the clock in the iPhone, and even (currently disabled) next/previous stop jumps that you'll see at the bottom of the pages. We'll see if I ever get motivated to add any of those :)


Hello World - iPhone Style

I'm excited about mobile development again. I'm eagerly awaiting the iPhone SDK and while I wait, I figured I'd at least try some iPhone development in its current, web development, form.

I'll post about what I made in a future post. For now, I just wanted to link to some of the things that got me going.

Apple has some great developer resources, including the iPhone Dev Center. I'm not sure why they hide them all behind a login curtain, but they do. Once you create (or buy) an ADC login, you can access 2 hours worth of videos about iPhone development. The videos range from UI elements to how to simplify your app for smaller form factors. Even if you have no interest in Apple and the iPhone, you might enjoy the usability aspects of the talks. Most of the concepts apply to Windows Mobile, Palm, Symbian, and other mobile development. If you watch and it all seems like common sense to you, good, you are better off than most developers that build UIs.

If you're ready to start building right away, look no further than iUI. iUI is a great framework to build web based apps that look native to the iPhone. Within an hour, I was able to build a great looking, highly functional, app using iUI. I tweaked the included CSS a bit to include some further button samples I found at the iPhone Dev Center. Thanks go to Joe Hewitt for his work on iUI.

Finally, if you want to follow some discussion and get some links to other apps people have built for the iPhone, head over to the iPhoneWebDev Google Group.

Tick tock on the SDK clock.


Snob Check

It was filler there, and it will be filler here, but I figured it would be fun to comment on the recent TUAW post that tackles the thought that Mac users are snobs.

I'll list the characterization and how it applies to me.

  • to be perfectionists --- I have an eye for detail but I wouldn't say I'm a perfectionist (close)

  • to use notebooks --- Yes, I'm typing this post on one now

  • to use teeth whitening products --- nope, never, but I could probably use it

  • to drive station wagons --- my parents had a family truckster when I was a kid, but I drive an SUV

  • to pay for downloaded music --- yes, hundreds of dollars a year

  • to go to Starbucks --- I'm not a coffee drinker, but I'll have a hot chocolate or something if my wife wants to go. I've probably been to Starbucks 5 times in my life.

  • care about "green" products and the environment --- absolutely, in fact, I participate in a green blog

  • to own a hybrid car --- not yet, but I would

  • and last but not least ... to buy 5 pairs of sneakers in a year --- I'm probably close these days. I used to buy more than 5 a year, as I was a bit of an adidas freak

Am I a snob? Eh, I like to think of myself more as a self-deprecating elitist.


Learn a bit about how to give and take

This is the MacBook Air post. This won't be as funny or as provocative as Wil Shipley's MacBook Air post, but you might like it anyway,

If you've seen the commercial for the MacBook Air (who hasn't?), you might recognize the title for this post. Apple takes such care in their marketing that they even managed to find a cool song with lyrics that fit perfectly with what the MacBook Air is trying to achieve. You know, "new soul", "strange world", "give and take", "felt the joy and the fear". Some would say that the only relevant lyric in the song is "making every possible mistake". So let's take a look at those mistakes.

  • Sealed Battery - Yes, some folks carry around spare batteries and swap them during the day. I'm not one of those folks, and I don't know anyone who is. The only time I need to swap a battery is when it starts to hold less juice than a Florida orange. I buy a new one, swap it, and the old one pretty much sits around hoping the new battery will die and it can live life again. The battery costs $129 (same as the MacBook battery I just bought) and can be replaced with nothing more than a screwdriver. Sounds like this is more accessible than headlights on modern cars. Save weight and space on a battery latch daily, but require a screwdriver once every 1 or 2 years. Sounds like perfect give and take to me.

  • Too thin - Have the people that toss this complaint out ever been on an airplane? Are they the ones with dual rolling carry-ons? I like to travel light. A messenger bag is all that goes with me on the plane unless it is a really short trip and I don't want to check a bag. A nice thin laptop would be fantastic for me.
    Thin means less material. Apple used aluminum rather than plastic for durability. I think aluminum weighs more than plastic, right? (my material engineer friends will certainly tear me up in the comments if not). So Apple kept the screen and keyboard full size, used heavy construction materials, and still kept the weight at 3 pounds. My MacBook weighs 5 pounds. My work Dell weighs over 7. You can absolutely feel 2 pounds when you're travelling all day.

  • 1 USB Port - Who would use an Air? I'm guessing students, travelers, sales people, anyone on the go. How many USB ports do you use on the go? I use none. 1 USB still lets you plug in a thumb drive or a mouse. Any more than that and you can have a mini hub in your bag that you must be carrying to hold all of those USB devices you want to plug-in. I'm also wondering if the 1 USB port is a hardware limitation. We know that the external optical drive requires additional power from the USB port to run it. If they put more than 1 USB port on, they wouldn't know which port you'd plug the drive into, which might drive larger power supply requirements, which drives the whole product larger and heavier. The MacBook has 2 USB ports. I can't recall a time when I've ever used them both at once.

  • No optical drive - I already covered this one in another post. If you want an optical drive and removable battery, buy a MacBook.

  • Slow harddrive - This one gave me pause, but the Air is intended to be a secondary machine. Do the heavy lifting on your main box. The slower harddrive drove smaller size and weight, but it might have also been a cost saving issue. If the Air uses the same drive as iPods, they're saving a buck or more per drive, which translates to 10 bucks or more for you buying it at a price that people already think is too expensive.

  • Price - If $1800 is too much, how much should it cost? For a real rough comparison, let's start with an $1100 MacBook and make it into an Air. Start by doubling the RAM as the Air comes with 2GB. Let's say $50 for that. Lighted keyboard, another $50. LED backlight, another $50. Tight design, $100. Weight savings, $100. No optical -$50. Even smaller power supply $50. Multi-touch trackpad - $50. Aluminum construction - $50. Slower processor - $50. First gen - $100. I gave it $100 for the first gen because today's MacBooks give you a hell of a lot more than the first gen for the same price, so we're comparing a new product vs. an established one. Do the math and that comes to about $1600. Would anyone that wouldn't buy one at $1800 buy one at $1600?

It's obvious I'm a fan of the Air. I think it has a place. It won't be a huge seller, but that doesn't make it a bad product, or a bad investment for Apple.

It's not all good. I do think they made some mistakes. Firewire for one. Give it one FW port. Battery life needs to be better too. Could it be that the battery was limited to meet the aggressive size and weight goals? For as much as they seem to want this thing to be used on the go, it should beat the battery life of the MacBook. Finally, the video out options. Another connector Apple? Really? I've got a drawer full of adapters for the iBook and MacBook that already aren't compatible. If I ever did buy an Air, I wouldn't be happy having even more dongles.


Receipt for a Donut

As Mitch Hedberg used to say, "I don't need a receipt for a donut. I give you money and you give me the donut, end of transaction." This is so true, until you're traveling on business. Then you need a receipt for every last donut, steak, copy expense, and shuttle ride.

If you're anything like me, you get credit card offers in your mailbox daily. I have no need or want for another credit card. I'd change my tune in a heartbeat if a credit card company could solve my receipt problem. I don't want receipts, ever. I want a record of my purchase, sure, but I don't want that record to be a 2x6" piece of weak paper with survey offers printed on the bottom. What I want is Visa or Mastercard to build a transaction culture that allows merchants to email me PDFs or XML of my purchase information.

Do you realize how easy this would make filling out your expense report for business travel? Everyone hates expense reports. We only fill them out because if we don't, we don't get our money back. I can't stand tracking 4 days worth of crumpled paper so I can manually transfer the data to an Excel spreadsheet. I always lose one, they're hard to read, and they're just wasteful.

The Life Takes Visa commercials love to show people flowing through a shop, swiping cards and getting on with things. But you never see a receipt in those commercials. Maybe they've already built this magical receipt email system and forgot to tell us. The technicals have to be simple. They have an account number that is tied to my name, physical address, and many times, my email address. Get some nice business to business web services going and the data can flow to me. This won't be free to build, but you can build it with the money you save on receipt paper and wasted sales while the minimum wage cashier pounds on the jammed printer.

BTW, this isn't my first set of thoughts on receipts. I've complained about them before.

Edit: I forgot to mention that some retailers are already jumping on this. Apple retail stores have "line busting" handheld computers that allow you to buy equipment right on the store floor. They'll then email your receipt to the account in your Apple ID. This is slick, but I'd still like something that applies across all merchants.


The Private Button

The revolution is being televised, well, at least uploaded. Between the Eye-Fi card and its ability to auto-upload to Flickr and Facebook, and cameras from Casio and others with built-in YouTube modes, it has become easy, too easy to float your life on the web.

We've already seen that just about anything you put on the web can and will be made public. It doesn't really matter if you've tagged it private. The only real way to keep things private is to not put them on the web in the first place. So...how long before every new camera you buy has a big private button that you push when you just captured something that you don't want the world to see?


Check-in Challenges

My wife and I recently returned from a trip to Florida. As usual, we flew United Airlines. Our checkin process was a little interesting. It sounds like something you'd read on The Daily WTF. For starters United could use a UI overhaul on their automated kiosks. First off, you're given the option of employee/companion travel. I think that's for employees and companions of employees, but it isn't really clear. Second, you're given 4 options to identify yourself, the most common being a credit card swipe. Unfortunately the picture really doesn't convey that message and you have to read pretty close to know which option to pick. Other airlines just have you swipe your card (or passport) from the start.

It was also pretty funny to hear the guy next to me arguing with the United employee about how he didn't need to swipe his card because he'd already paid for the flight. It took them a few minutes to convince him the credit card was for identification only. Call me crazy, but couldn't they use the drivers license that they require as identification to start the identification process? It must be easier to read a credit card than 50 states worth of different data formats.

So, I swipe my credit card and it pops up my wife's name. No problem, we'll just check her in first. We're told that the FAA may delay our flight and we should look for alternates if possible. Ok, look for alternates then. It tells us none are available almost immediately. Why even bother to tell us to try alternates if it knows there are none?

We finish checking in my wife and I slide the card again expecting my info to pop-up. No, it's her again. Please note that the card I've swiped both times is the one with my name on it. Obviously the number is the same, but I'm pretty sure my name is encoded on the card as well because it shows up on the receipt at restaurants. Is this a common problem? Do related people not check-in to the same flight often? Being skilled in tricking crappy software (I write plenty of it myself), I pull out a different credit card which thankfully produces my name for check-in.

So now we are both checked in and waiting for the tags to print for the checked baggage. Why don't these print from the same kiosk? The helpful lady behind the counter asks us if we checked bags. We reply yes. She asks if we pushed the button saying we were checking bags. We reply yes. She tells us nothing is printing so we must not have. Well we did and we were sure we did and we went back and forth a couple of times. Eventually she decides the printer isn't working, but why did she have to even argue with us? If we had screwed up and forgot to tell the computer about our bag, there's nothing we can do at this point anyway, so she should just go about doing what needs done to make things right. That's what I hate about the automated kiosks. We've traded 5 knowledgeable ticket agents for 4 kiosks, 2 goofball agents that appear to be skilled in little more than sticker folding, and a knowledgeable agent that comes and cleans up when the goofballs don't know what to do. Questions like can you change our seats so my wife and I can sit together? stump the goofballs and require the roving expert. Before the kiosks, the ticket agent would just sit you next to the people you were checking in with. Hmm, progress.

Don't get me wrong. I love the kiosks when they work. If you aren't checking a bag and you aren't traveling with anyone, the kiosks are a breeze. When you need to change anything the kiosks just aren't up to the task yet.

Hey United, simplify please.