Saturday, April 21, 2007

Enhancing the User Experience

Federico is the business. Why? Because he is working on removing some of the annoying things about interacting with computers. This projects excites me more than almost any other that I can think of right now.

That is all.

Thursday, April 19, 2007

Branding

So, Elijah brings up an interesting point about GNOME (or Gnome) branding. I suppose I shouldn't really have opened that particular can of worms (the literal meaning of the acronym) in a post that was essentially about something different. But it is telling that most of the feedback I've had has been about this, rather than the whole "the Network is the Computer" idea.

It seems that anyone who has an opinion believes that we shouldn't take the meaning of GNOME literally. And many other people believe that because that is so, we shouldn't capitalize it, so it should be written Gnome.

I don't really care about these issues, except that from a branding perspective:

  • consistency really helps
  • if there is no compelling reason to call it Gnome, why do we call it Gnome?
This is not meant to be a troll. It has been said in the past that it's kind of a dumb name (because of the meaning of "gnome" in English), and that we could probably survive a name change without too much grief.

What would happen if we changed the name? All the people who currently use Gnome would either say "great" or bitch and moan. I doubt that current users and developers who would bitch and moan would then abandon Gnome because of a name change.

But all the people who do not use Gnome (or had never heard of it) would now have a (hopefully) more attractive and meaningful word/symbol to attach to this very abstract concept ("What is Gnome?").

What are your opinions on Gnome branding? When Gnome 3.0 is released, should we call it something else? What's wrong with Topaz? ;-)

Monday, April 16, 2007

The GNU Network Object Model Environment

I was initially attracted to GNOME because of the meaning of its acronym. Wouldn't it be great, I thought, if my "Desktop" was an interface to the network? This was around the time where I first heard the phrase "The Network is the Computer". I want to explain a bit more about that.

The Network is the Computer

I don't know what was originally meant by this slogan, but I take it to be about distributed computing, rather than the client-server model. Note that this concept is not just about thin clients or mounting users' home directories over NFS. That is multi-user Unix, or client-server computing, and has existed for as long as Unix has. The "Network is the Computer" is something else entirely.

Dude, Where's My Stuff?

Distributed computing in this sense means that some of your apps and data are on the computer you happen to be interacting with at the moment, some are on some server somewhere (possibly belonging to a company or other organisation that you have some affiliation to; and possibly behind significant security barriers) and some are on (possibly many) other servers. Think of it like this:
  • The Unix way: everything is a file
  • The GNOME way: the Unix way, plus every file is on the network (everything is a "Network Object")
I know that that's not the GNOME way now, but that's what I thought it was when I first heard about it, and that's what I still wish it could be in the future.

My Stuff Follows Me Around

Many people interact with more than one computer, and many people spend significant time using that computer as an interface to the Internet. I suppose the largest number of people who do this use a computer at work or school and another at home. This leads to duplication of effort, and worse, duplication of data (and revisions of data), meaning that data synchronisation becomes important.

The "network is the computer" is all about (insofar as is technically possible) device-independent access to my stuff. If you can run the GNOME on a device, it should (screen and input device limitations aside) look and act the same as on any other device. The same data and apps should (device limitations aside) be available. Google apps on mobile phones show some ways in which this can happen.

The GNOME Online Desktop

There are a number of GNOME or Freedesktop.org projects underway that go some way to addressing the issues faced by the type of user described above. They inclu
  • Conduit: file sychronisation and conversion
  • Telepathy: abstract interface for messaging (not just IM)
  • Mugshot: Keeping up to date with what your contacts are doing on the network. Also application usage statistics (and "Click to install" functionality of apps, across distributions)
  • Galago: presence of people on the network
  • Big Board (in its current version) and/or Gimmie (in future versions?): GNOME GUI to the above functionality
These are projects that seem related to what has been called the "GNOME Online Desktop", which seems to be not so much a focused effort but rather an emergent theme. Also, I am just learning about these projects, and may (actually, probably) have got the sound-bite descriptions of the projects wrong. If so, please correct me.

The Future

Where to from here? It seems to me that if the projects listed above reach maturity and are fully integrated with one another, then we be much closer to true "Network is the Computer" functionality and could probably call the resulting version of GNOME 3.0 (or ToPaZ?).

What are your thoughts? In particular, are any of the pieces of the GOD missing? In particular, if you are a developer involved with one of the projects discussed above (or one that I've missed) would you be interested in participating in an interview (or helping write an article) about all this stuff for The GNOME Journal?