Friday, October 2, 2009

Revision Control

One of the first Wave ideas I had, while watching Google I/O presentation on Google Wave was to use it as a revision control system, allowing for reverting through the playback mechanism of Wave, and for simultaneous editing if a Wave client was used as the code editor. Later in the presentation, they mentioned this idea, and I wasn't surprised that I'd be the only person to think of it.

It's still in mind though, because here at work, we have a host management system, written in XML/XSLT, created by me. This concentrated all of the various data associated with hosts (network addresses, hostnames, usernames, etc.) into a single place, instead of across a half-dozen files, in various directories, on various hosts. This system, too, lives under revision control, to ensure those who edit it aren't colliding their changes. Presently, I'm rewriting the system into a Python/YAML system, for reasons of speed, sustainability and readability.

But as Wave is opening up, I picture this system using it, where a single Wave contains all of the data about all of our machines: multiple users can be editing this data at the same time, seeing each others' "presence" in the Wave as we're doing it, and a robot could watch the Wave and crunch the data when it detects that things have changed, immediately.

Of course, I doubt I'll be able to push a Wave solution here at work, at least, not until Wave takes over the world, but it's a nice idea...

No comments:

Post a Comment