Archive for the 'Web Applications' Category

How I Learned To Love Web Apps

Monday, 24 July 2006

I’ve been thinking about Web applications lately and in a U-turn worthy of an unpopular politician have revised my opinion of them. Regular readers may recall that previously I’ve bemoaned the poor user experience offered by Web apps in comparison to their desktop cousins. That’s still true—although not as bad as it used to be—but I just don’t think it matters any more, because Web apps are good enough for what most people want to do most of the time. Of course there are exceptions, for example I don’t think we’ll be seeing Photoshop rewritten using PHP (or even Rails!) any time soon. I don’t see computationally and GUI intensive software leaving the desktop whilst the way the Internet comes down the pipe is architected as it is.

Thanks to developments like AJAX (the widespread adoption of XMLHttpRequest, not the invention of the buzzword), we can now make Web applications that start to approach desktop-bound ones in terms of responsiveness and all-round slickness of experience. In fact, if we’re not careful there are a whole variety of ways now at our disposal that we as developers can break the user’s expectations of how things ought to work. By the way, AJAX should really just be named “A”, because you can use XMLHttpRequest from VBScript if you’re mad enough, and JSON or even text works just as well as XML for the response format. What’s more, the whole shebang can even be invoked synchronously. All of which goes to show that the AJAX moniker is entirely without merit apart from being catchy and widespread, and in the end that’s all that matters because it’s not important what the label is, so long as everyone has a common understanding of what it represents.

It’s been fascinating watching the growth over the past year or so of frameworks geared towards making Web application development easier, particularly in the A(JAX) arena. There’s so much stuff for developers out there now that simply wasn’t available this time last year. Kids today don’t know how lucky they are. And a lot of it is good stuff too, with decent documentation and testing behind it. Step forward the Yahoo! User Interface Library and probably the Google Web Toolkit too.

All this musing on Web apps is all well and good but I’m actually putting my money where my mouth is and paying monthly fees to rent the use of several online applications. Namely Backpack, Flickr, Strongspace and Wufoo in addition to the ones that I use for free: Basecamp, Gmail and Google Calendar. I know that I’m going to be hosed if my broadband goes down or if any of these apps disappears—is anyone else worried that 365 Main have a large data centre in San Francisco?—but I have more confidence in the ability of Google and 37 Signals et al to back up my data than I have in my own ability to do so on a regular basis. Besides, the sheer convenience of being able to access my data that’s held across these services from anywhere there’s a broadband Internet connection has so far outweighed any downsides. I’ve surprised myself by how I’ve gone for this in such a big way. It doesn’t bother me in the least that I don’t have a CD-ROM to show for my money. I’ve still got the installation media for software that I’ve bought over the years and all it does is gather dust and waste space. Also, I don’t consider my data to be interesting enough to get all paranoid about.

I think it’s interesting to take a moment to reflect on some of the ways that Web applications have no equivalent in the desktop world:

  • You get to them using URLs rather than by having your OS launch an executable file. URLs can be typed directly, bookmarked or linked to from somewhere else. They can also be mistyped and you might end up somewhere else entirely. Imagine how bizarre it would be if you thought you were starting Excel and you ended up running some program for browsing extra-large clothing!
  • URLs can be chopped about. Properly designed Web applications should support URLs that can be hacked. Getting around desktop applications is totally different in that you’re offered a finite number of things that you can click on to get to some place else. You don’t see the internals of how they’re stitched together.
  • If you’re not careful, users might bookmark your Web application when it’s in an inconsistent state. Short of doing something unspeakable to their browser, you can’t stop them from hitting Ctrl + D when you least expect it.
  • The entry point to commercial Web applications is also usually a Website that’s geared towards selling that application.
  • There’s no consistency within the user interfaces of different Web applications. Sometimes you click buttons for actions, sometimes an image made to look like a button and sometimes it’s a hyperlink. Having said that, consistency now seems to be a dirty word amongst desktop applications too. Office 2007 has a brilliant UI that’s totally non-standard and Apple just can’t decide how they want their bundled OS X apps to look.
  • There’s no desktop equivalent of a 404 error page!

In spite of all these oddities and potential problems, I think the model of letting software companies take the strain when it comes to not only developing applications, but also to installing, updating and securing them and of backing them up is a good fit for how most people want to use computers. Let’s face it, people like things that just work without too much thought being required on their behalf. We’re all busy enough already.

I didn’t believe Sun Microsystems when I first came across their slogan that The Network is the Computer, but it looks like they might actually turn out to be right to a large extent. Unfortunately for Sun they didn’t figure on most providers of Web applications doing so using commodity hardware and open-source software, but Sun’s loss is our gain as both developers and users.

Best Of Breed Web 2.0 App

Wednesday, 12 July 2006

I dislike using the term “Web 2.0″ because no-one really knows what it means, but nonetheless it has come to represent a certain type of Web application. Anyway, Wufoo caught my eye because it’s a brilliant idea, brilliantly executed but with a shockingly bad name.

Pimping Carson Systems: Bare Naked App

Wednesday, 10 May 2006

Sorry to pimp Carson Systems again, but they’ve just launched a new site that details the entire process of bringing their second Web application—Amigo—to market. It’s informative and interesting stuff, although I find it a bit odd that they don’t actually say anywhere what the application will do! I’m sure all will be revealed soon enough.

(Update: I’ve just read the About page and it turns out that it does say that the only thing they won’t reveal until launch is what the app does).

Qjump Train Wreck UI

Thursday, 27 April 2006

I booked some train tickets the other day using Qjump and was shocked by the colour choices in their user interface. They’re using some funky JavaScript in the text fields in the Quick Timetable section on the left of the page. It highlights the text you entered in light green on a white background! Check it out:

Qjump User Interface

—I’d hate to see the clothes worn by whoever was responsible for that!

Get Your Vits

Tuesday, 18 April 2006

Carson Systems have just launched Vitamin, which is billed as “a resource for Web designers, developers and entrepreneurs”. I’ve just had a quick look around the site and it looks like it’s going to be essential reading if you’re at all interested in Web design or the whole Web 2.0 thing (whatever that is!) There are certainly some heavyweights involved including David Heinemeier Hansson, Eric Meyer and Dave Shea, which bodes well for lots of high-quality content.

I’ve briefly met Ryan Carson and spent a little time talking to Gillian in the pub after the Rails workshop last month. I was struck by how passionate and approachable they both are, and also by how successful they’ve been at getting industry leaders to support their numerous projects. It’s great to see them adding Vitamin to the fold. Best of all, it’s free!