I’m still a firm believer that technology will make a programmer out of us all due to the “standing on the shoulders of geeks” principal (discussed here), this is where the collective intelligence/skillset of web users as a whole is easily leveraged by those less able through the creation of modularised cloud-based tools and massive simplification of those tools. It’s nice to see those steps are being made here by the Ubiquity plug-in for Firefox, from Mozilla Labs.

This plug-in adds a natural language (for now English) input to Firefox for performing a wide variety of tasks. These include updating your Twitter status, opening a map in Google maps, viewing/adding to your gCalendar and more. I imagine it’s also possible to leverage XUL when certain commands to add a drop target for services like Flickr. See the video below for a visual walkthrough.

In allowing a user to perform a task, there’s always a balance between how much the user needs to know in order to reach the goal (specifically, “commands”), and how quickly they reach the goal.

Mouse interactions like buttons and drag and drop are fantastic metaphors for simplifying certain tasks, but in simplifying what a user is required to do for an operation they can in-turn require a lot of individual steps, not to mention the extra design considerations and screen real-estate. In contrast, a command-line is perhaps the most venerable of user input devices, to many it is the fastest way to get a job done, yet it has suffered from the problem that the user must reach an expert level of knowledge over the commands available to become proficient.

Our collective skills evolve far slower than our technology, and so it’s down to the aforementioned geeks to bring the bar down to a more attainable level, of course that is what software aims to do on the whole. Step in natural language, which is a platform already familiar to most, and an application independent way of performing many of the “commands” we need to know in order to get by on the web today.

Let’s just hope the language engines have come a way since “dig ground with spade”… “ok, use spade on ground” 😉