There's a lot of talk these days about "user experience" - how can we create great experiences that drive business results? How can we tie people emotionally to our software? What kinds of interfaces do people like to use? What's the common denominator for the best applications out there?
These questions have many answers, and the inquiry is certainly worthwhile. But sometimes, I think, we get too hung up on the details. We worry so much about technology choices and whether or not we can implement drag-and-drop/mashups/social networking/slick animations/3D that we forget about something pretty simple. That's right, kids: we forget about fun.
Not TypeRacer, though. They didn't forget an ounce of the fun (full disclosure: I'm a sucker for typing games. I remember my seventh grade typing class, and the inexplicable drive I felt to conquer the terrible IIgs typing game we played all class, every class. Years later, I became hopelessly addicted to PopCap's TyperShark). Not since iSketch have I been so hooked on an online game.
TypeRacer is dead simple: type in your name, wait for the green light, and type a pre-defined sentence as fast as you possibly can. The faster you type, the faster your little VW Bug moves across the screen -- hopefully fast enough to beat all of the other players competing against you in the same heat. I found myself playing over and over again -- "this is really my last game, for real this time" -- loving the feeling of waxing the chumps puttering across the screen at 25wpm (no offense, of course), and losing my cool when I get beat after mistyping strange words like "ultraviolence".
But I'll tell you what, I can't stay away: there's nothing like a little head-to-head competition, a simple interface, and an assault on my pride to keep me coming back for more. Yeah, I'd love to be able to play against my friends, and the leader board could use a better way of tracking scores (I'm not exactly sure when scores seem to randomly drop off). But these are small quibbles with a great app.
So here it is: you don't need the latest technology. You don't need whiz-bang effects. You don't need crazy, exciting, innovative new features. What you need is a good idea, boiled down to its core, and a great, accessible, fully-realized implementation of that idea with as much of the complexity removed as possible. It doesn't matter what technology you choose (remember how they shot The Blair Witch Project on tiny little camcorders?); let the zealots have the religious wars while you make a great piece of software. Use what you know. Make something people have a lot of fun using, and you'll certainly be a success.