Skip to content

Thank you GNOME!

The GNOME Foundation was kind enough to sponsor myself and five other hackers from all over the world to head to Boston, MA for a weekend of coding, designing, and fun. We worked on Snowy, a really clever way to sync tomboy notes between different devices and computers.

Brad Taylor was nice enough to let us use his sweet pad for our first day of the hackfest. My task was primarily to work on note sharing and a user interface for making private notes public.

After thinking the plan was to implement the mockup from Jeff Fortin (referred to as Jeff^2) that looks like this:

Brad had a better idea and suggested a more gmail-ish interface. His idea was to make a “Share this note” button like the gmail add label interface. The tricky part for me was going to be the find as you type dropdown box. While the idea sounded great, I am not the javascript guru him or Sandy Armstrong are as litl-ers.

jQuery to the rescue! This problem is mostly solved with the help of jquery-uitablefilter, a nifty plugin for filtering tables. The problem was that it took me 2 full days to create a usable prototype. Integrating the uitable filter plugin wasn’t too difficult, but getting it to work with a popover menu (css’s z-index property / position: absolute) was a bit problematic. I do plenty of back end stuff at work, but front ends and javascript are fairly new to me.

After a rough ui prototype was done, we all worked together on how to tackle note sharing on the backend. The original plan was changed to use a separate “Share” model instead of a special NoteTag for simplicity. K.I.S.S., it is a good thing.

Current Status

I’ve gotten all of the hard code written. The rest is mainly implementation details and cleaning up what is already there. The likely to be rebased and futzed with before being merged into master code is a hackfest/sharing branch on github.

  • Hook up an onclick handler for the “Share this note with all users” entry for marking a note Public.
  • Hook up an onclick handler for unsharing a note with one of your “friends”.  $.post() will rock your socks!
  • Send emails to users ala google docs when a user wants to share a note with you and types in your email.
  • Get this all working well enough to make everyone happy and get it on http://edge.tomboy-online.org

Sandy wrote an html5 snowy client so we can run on mobile devices. Leon Handreke worked tirelessly on markdown support for mobile note editing. Brad Taylor worked on a javascript markdown convertor appropriately named bitenuker. Between the three of them, we’ll eventually have rocking mobile device support and editing. Paul Cutler (as usual) cracked the whip and kept us focused on the task at hand while Jeff^2 gave things the pretty with his hand carved css wizardry and new-layout branch.

Paul, Owen Taylor, and myself also had an impromptu GNOME SysAdmin team meeting. The times, they’re a changin’.

I’d like to give a special thank you to Paul Cutler and Sandy Armstrong for herding cats and making sure we stay on task. Without their tireless effort, things wouldn’t have went nearly as smooth as they did. This was a great hackfest overall and expect to see great things coming to Tomboy Online as a result.

So long, and thanks for all the fish!

Categories: Open Source, Planet GNOME.

Tags: , , ,