The Adventures of Snowy

Ever since Alex let Tomboy see the light of day, I’ve been aching for some way to sync the catalog of musings and information that I’ve accumulated between the various computers I interact with on a daily basis. In particular, I’ve been complaining about this to various friends (especially Sandy) for years and, aside from boring them nearly to tears, I haven’t done anything about it.

Unlike many ideas that I kick around in my head, this one wouldn’t give up the ghost. When Sandy was in town recently for work, we turned whining into action and started scheming and hacking on a way for Tomboy notes to be synced and viewed on the web. We call this project Snowy.

What is Snowy?

Snowy is Tomboy’s best friend on the web. Snowy is an online service that allows you to view, edit and share the notes you create in Tomboy on your desktop computer.

Snowy leverages Django, a powerful (and pony powered) python-based web framework, and is based upon several powerful Django applications, among them: django-reversion, django-evolution and django-piston. This has allowed us to get a rough structure up in an incredibly short time (you can look at the commit logs for yourself!), and leveraging proven, scalable components like we have will hopefully allow us to continue at this breakneck pace.

Tomboy synchronizes with Snowy using the new Tomboy Web Sync Service Add-in developed by Sandy. We’ve defined a solid REST API to allow Snowy and Tomboy to communicate, and also to allow other folks to develop their own apps based upon the same kick-ass synchronization add-in.

Much like Tomboy, Snowy attempts the same innovative design ideas by starting you off in editing mode with an unobtrusive contentEditable-based WYSIWYG editor. Hate save buttons? No problem. Snowy will auto-save your note every 4 seconds so you don’t lose a word.

Everyone has a smart phone nowadays, so Snowy will feature an interface tailored to the iPhone and Android style of devices. This will likely be read-only as neither browser allows contentEditable divs.

And, in addition to allowing you to host your own instance of Snowy if you’re so interested, we plan on hosting Snowy as a service called Tomboy Online.

Caveat Emptor

Unfortunately for those of you who want to use this yesterday, much of what I’ve mentioned is still in progress. Snowy is currently under heavy development, and is not ready for production use. Like any good K9 companion, Snowy will file your taxes improperly, reconcile with your ex-girlfriends and burn risotto if not watched carefully.

If you want to teach Snowy some new tricks, we could use the help. Django experts and designers are especially welcome, but folks who want to provide input, test, document or translate Snowy are warmly invited.

Getting it

Getting in Touch

We’re just now setting up much of the infrastructure for Snowy, so you’ll need to bear with us. For right now, Sandy and I hang out in #snowy on irc.gimp.net, and I can be reached via email at brad (at) getcoded.net.

Ed: Unfortunately, I wasn’t able to get reCAPTCHA up this evening so that I could open up comments to anyone. I’ll try to do this for future posts though. If you have feedback, please shoot me an email or join #snowy.