One year before my first iPhone, there was the Nokia 770
I think people forget what life was like before the iPhone landed. I know that the finer points have slipped away from me. Fortunately, I took notes about what it was like to deal with then-new technology at the time, and can revisit it now to see how things have changed.
The iPhone landed in the summer of 2007. Let's back up one year to the summer of 2006 and see what things looked like at that point. A friend at work had been telling me about this little Nokia 770 device he had just picked up. It was a portable machine with a touch screen which supported both Wifi and Bluetooth access through a cell phone. You could just pull it out and start using it, and it would Just Work.
I was excited about this possibility. I had been getting into a mode where I'd roam around the support floor helping people work tickets, and it was a pain to carry my laptop around. Having a small device which would let me look things up on the web and check my mail while at their desk would be great. One afternoon, we ran down to CompUSA and I bought one. It cost $500 for the device and memory card.
What I got was a hand-held tablet type thing which ran Linux with a strange little GUI on top. It did some interesting tricks involving "reading" the state of the removable solid sliding cover. Apparently it "knew" when you slipped it over top of the display and would lock the device. It could also tell when you put the cover on the other way which didn't block the screen. I thought that was a clever and helpful detail.
What I didn't realize was how half-baked this thing was. I couldn't be sure, but it sure felt like it was trying to "swap" at times. Certain tasks would visibly lag just like when my "real" Linux boxes were pushing the edges of their physical memory. I can't imagine where you'd swap to on a portable device with only solid-state storage, but it sure looked like it!
It was possible to overload it without really trying, and it would clearly strain under the load. Sometimes, programs would just die -- presumably, the OOM-killer at work. It was a bad joke of an experience.
While the wireless Ethernet support worked fine, the Bluetooth stuff never did. The first warning sign was that you had to tell it what kind of phone was attached. Well, it didn't have a precise match for mine. I had to pick something approximate and then poke around at the settings. There were all sorts of ridiculous things to put in there, and my cell company sure wasn't going to know anything about making it work.
It's important to note at this point that I had explicitly added "data service" to my phone. The so-called "Cingular MEdia Net" cost a few more dollars a month and let me do things like run horrible Java versions of Google Maps and look at web pages with particularly horrible rendering. It also supposedly would let my phone extend data service to devices which paired with it.
Well, it never worked. At no point did I get the "connect via BT" GUI stuff to work from my 770 through my phone and out to the Internet. It would always just sort of sit there, twist around in the wind for a bit, then throw some error and fail.
About six weeks later, I decided to throw caution to the wind and "rooted" the device. I found a document which had a series of steps which explained how to get root access on there. You had to do some strange things involving tethering it to a "real" Linux box while running some magic software on there.
Anyway, once you had root mode and a rudimentary ssh server running, you could jump in from another machine over the network. Then you could start twiddling chat scripts and configuration files for pppd. If you managed to pair the devices by hand and finally came up with the right config files, then yes, it would eventually come up.
It was incredibly ugly and completely useless while out in the world due to the need to jump in from another machine first. I gave up, and relegated the device to the realm of "highly expensive, mostly useless, definitely disappointing, occasional toy". It wasn't even very good when being used for entirely local applications. I brought it with me on my trips to the Bay Area and tried to use it as an electronic diary.
These devices had two input modes: tap on a keyboard with the stylus, or use actual handwriting. Well, the handwriting recognition was terrible, and tap-tap-tapping with the keyboard was also awful. It took a serious amount of work to write anything. I can't imagine writing the equivalent of a post like this on that stupid thing.
The biggest problem with input on there was that it was just too slow. I could get whole sentences tapped out before it would finally catch up and deal with all of the "keystrokes". The way it would ebb and flow suggested poor memory management and that the UI was failing to be scheduled consistently. I'll never know for sure, but it sure felt like it.
I sold it to a friend less than a year later. A few months after that, the iPhone came out and nailed all of those things which mattered to me, and it did it in a single device. Nokia had the opportunity to grab the market by doing it right a year before Apple got there. They failed. Look where they are now.
Sure, the first year or so with the iPhone brought tons of crashy Safari action, but at least the thing actually did data over cellular! That was the holy grail back then, and they nailed it. It made no sense to me that a Nokia tablet couldn't figure out how to do GPRS-via-BT reliably given their cell phone experience, but that was the situation. Apple came in out of nowhere and blew them away.
Also, whereas the iPhone was patched and eventually stopped crashing due to sketchy web pages and most OOM conditions, the 770 just seemed to be orphaned right away. Looking at it now, it seems they came out with a few more releases after that, but it was too late.
Maybe it was a great little toy for people who wanted a highly portable and hackable Linux box. It totally failed as a device for people who wanted it to just do what it promised on the box, however.