[tomboy-list] Local Tomboy Hackfest

Sandy Armstrong sanfordarmstrong at gmail.com
Tue Sep 30 10:46:58 PDT 2008

Arun Chaganty wrote:
> Hey, We are trying for the first time in our college to conduct a
> Hackathon during our college's technical festival [1][2]. I wanted to
>  introduce to Tomboy as a "hackable" to our participants, mainly
> because I like it, but also because it's simple, cute and C# is
> pretty good language to code in. We expect about 40 people to turn
> up, out of which, I'd like to convince maybe 7-8 to work on Tomboy.
> All of us are n00bs. I'd be grateful for any guidance and
> suggestions, not only on how to hack Tomboy, but on how to manage a
> Hackfest all together.
> The general plan is that I will go and introduce Tomboy as an
> application, and give a overview of the different components of
> Tomboy, where what goes (for example RemoteControl.cs takes care of
> all the DBus functionality. Watchers.cs is doing the Wiki-fying
> (right?), etc.). And then proceed to describe some simple bugs and
> maybe one or two larger projects that people can work on once they've
>  gotten comfy with the code (and hopefully fixed a bug or two). Most
> of the participants would not have worked on FOSS code before, so
> despite our numbers, we will be terribly inefficient and slow.

Your plan sounds good, and it should be an exciting event. 
Unfortunately I cannot promise any time to this activity due to work
commitments.  But I do hang out in #tomboy on GIMPNet all day, so I
should be able to answer some questions and chat a bit...I just can't
devote time to leading/organizing the hackfest.

> Some of the ideas I had to work on (most taken from the wiki) are: *
> UI Addition: Add a sub-menu for each notebook, listing all notes
> under that notebook. I really really need this to organize my notes.

I think we address this pretty well in the Search UI, actually.  Since
people could have a very large number of notebooks, listing each in the
regular note menu could be excessive.  The feature would have to be
configurable, and might be best implemented as an add-in.  This could
potentially require adding place holders in the note menu as a hook for
add-ins, but I think Boyd may already have done that when working on the
experimental Tasks add-in.  That code may be useful to you (it's still
in SVN though we don't build it).

> * Adding custom links: From my greppings of the code, this looks like
>  it shouldn't be unduly difficult, except for making the UI really
> simple. How does selecting a block of text and then entering
> Ctrl+Space or right clicking to throw up a dialog sound?

This one will take a lot of experimentation, but I'd be interested to
see any work you guys come up with.

> * A Web
> frontend: I certainly expect a lot of Web 2.0 guys coming, and I
> thought this might be something right down their lane.

In my opinion this would be the most useful thing to work on in the long
term.  The hard problem here is all the maintenance and infrastructure
work, making sure people don't abuse the service, etc.  So deploying it
might take some time.  But I would really LOVE to see a working (open
source) web frontend with these sorts of features:

1. User can connect via existing WebDAV sync add-in (or some HTTP API,
but that's more work for you at first).
2. Web service can read the notes stored for each user, and show them to
that user when they are logged in.  Existing ExportToHTML code
(including an XSL stylesheet) could be useful here as a starting point.
3. User can mark notes as public so that others can share.  User can
have friends, email updates, RSS feeds, and all that other lovely social
web crap.  ;-)
4. Editing would be cool, but is a lot of work.  :-)

The nice thing about this is that almost all of the work is new code,
which might be more "fun" for some of the participants.  Also, it
doesn't require knowing much about Tomboy code at all.

Please check out prior discussion on this:

(long thread about integration with GNOME Online Desktop that never
really went anywhere)

> Bugs (way too many): * I'll try and assign most of the gnome-love
> bugs and if the participants enjoy it, they can probably move up to
> bigger and badder bugs.

I will try to find time to mark more bugs as gnome-love.

That would be really helpful, but I understand that it's hard for a new
developer to just dive right in.  There is a lot more "low-hanging
fruit" in Tasque bugzilla, if that is interesting to your fellow
students.  Tasque SVN should build fine in Linux, Windows, and OS X, and
is a pretty small and simple code base.  Getting patches in is a bit
easier because there's less paranoia about messing up user data or
ruining the user experience (because it's so young and most of its data
is actually kept online).  I'll be in #tasque on GIMPNet, as well.  ;-)

> The event is on the 2nd and 3rd of October from 1700hrs UTC. We will
> all be on IRC, and I hope we can seek some guidance online.

Yes, feel free to ping me, and I will try to help as much as I can...I
just can't guarantee that I will be very available!

Good luck and happy hacking,

More information about the Tomboy-list mailing list