moya
Open Standards and Free Software are making me OS-agnostic
I use three different operating systems on a daily basis - Windows, Mac and GNU/Linux - yet my data is always the same and I often use the same applications. Here's what I use on a regular basis:
| Task | Open Standard(s) | Free Software Application(s) |
|---|---|---|
| IMAP | Thunderbird | |
| Calendar | iCalendar over WebDAV | Mozilla Calendar |
| Contacts | LDAP | Thunderbird address book |
| Documents | OpenDocument | Open Office |
| Music | Ogg & MP3 over HTTP | VLC Media player |
| Pictures | SVG, PNG, JPEG | The GIMP, Inkscape |
| Code | Subversion | Eclipse & Subclipse |
| News | OPML, RSS, Atom | Thunderbird news reader |
| Chat | Jabber & IRC | Gaim |
Sometimes I'll use an OS-specific app if it provides a better experience, but still uses open standards. For example, I use iCal, iChat, iTunes and Address Book on the Mac with iCalendar, Jabber, MP3 and LDAP respectively (I know, MP3 isn't entirely open). I can easily chop and change which application I use, or even use different ones at the same time because my data is stored in such an accessible way.
Although I believe that desktop Linux is very important and Ubuntu is my first choice of OS, what's more important is the open standards it uses for managing data. Free software won't fend off proprietary software by building a better desktop, it will win by making the operating system a user is running almost irrelevant.
What I'm working towards at the moment is hosting all of my data across web servers and having a web application to manage each type of data. That way I can access my data on any device with a web browser - including my phone and Internet tablet. I've had a web server at home for a couple of years now which I store some of my data on.
Web applications I've been using include:
- Horde IMP
- GMail
- PHPiCalendar
- Google Calendar
- Google Docs & Spreadsheets
- Ampache
- Flickr
- Gliffy
- Trac
- Gregarius
- Google Reader
Some of these are hosted by companies, some are hosted on my own server, but what's important is that they use the same open standards.
One of the aims of Moya is to create a home server which manages all of these types of data and provides a web interface, making the client operating system irrelevant.
Introducing Webscope and Moya
I don't know if anybody noticed but my homepage and Twisted Lemon's homepage have been down over the new year period. We're back up and running now because Moose Computer Services have moved our hosting from the old virtual machine to a new, real server. Hopefully now we've got rid of our noisy neighbours we won't have the problem again :)
While tola.me.uk has been down I've been busy working on hippygeek.co.uk. Hippygeek now has subversion repositories and trac projects working (I've been playing with the Subclipse plugin for Eclipse. It's a bit clunky but a very useful feature.)
In particular I've started two new projects, webscope and moya. They are two projects I've been planning for a couple of years, but I've decided to make the thought process a bit more open in the hope that I'll make some progress towards implementing them. There's no code yet.
Webscope
"Webscope is a unified interface for managing your information with multiple modes of interaction. It is a web resource manager - a hybrid web browser, web server, media player and window manager replacement."
I'm hoping to write the front end using XUL, running on XULRunner, but the back end will include lots of other bits including an HTTP server.
You can click the link above for more information, or see the draft specification and UI mockups (which I created in Inkscape).
Webscope is an implementation of design concepts from my web site, including:
Moya
"Moya is software for a home information appliance, a central computer for the home. Features will include a media centre, social software and home automation with a minimalistic and multimodal web interface."
Moya will be a combination of lots of existing projects in lots of different programming languages, loosely coupled with APIs. Any new components will probably be written in Python, which I'm learning at the moment.
You can click the link above for more information.
Moya is an implementation of some design concepts on my web site, including:
- Home Information Appliance
- Device Independent Web Server
- Multi-tier Architecture for Distributed Information Systems
