Novell hack week, day 1

Novell’s hack week has started. For those of you who don’t know what a hack week is, it’s a work week where we, the programmers at Novell, get to goof around with more or less whatever project we find interesting.

I’ve chosen to start a new project called “Sterling”, the goal of which is to keep better track of my moneys. I’ve used GnuCash to do this for some time, but it’s clunky and overkill for my uses. I want to streamline the process of entering transactions and otherwise keep the complexity down, especially for people like me who know (and care) little about accounting. Indeed, I want the UI to resemble Tomboy’s in many ways:

  • Always running, with a panel applet interface.
  • Desktop-global “new transaction” hotkey.
  • Per-user database, no open/save dialogs.
  • Implicit save on edit.
  • Type-ahead completion of transaction description.
  • Suggesting details of transaction based on similar past transactions.
  • Tagging of transactions for easy cross-sectioning.
  • Simple search-as-you-type view of transaction history.
  • Multiple currencies recognized by their ISO 4217 codes.

Star Trek future features:

  • Currency conversion (use Google?).
  • Multiple registers (similar to books in Tomboy).
  • Export to XML, merge from XML.
  • Remote synchronization (by Zeroconf discovery or specific URI) allowing for shared databases.
  • Desktop search integration.
  • Drop-dead attractive graphs.

In order to make things as difficult for myself as possible, I’ve decided to learn something new and do it in C#/Mono. Of course, I’m already running into trouble…

MonoDevelop got stuck

Strange but true. I miss C, Emacs, Automake already.

6 Comments

  1. asdf35634 Says:

    Just be brave and do it in C then.

    Some users will be very grateful :)

  2. Michael Trausch Says:

    I have started a (probably very ugly) thing with a similar set of goals in mind. The idea that I was working on was to have an application that can work either completely locally, or as a client/server communicating with a central dæmon (for example, to handle workgroups or business level things). But the idea of using the tray is a must for me; I wind up having days where I put things in GC in batches because it’s too clunky to keep up with on a transaction-by-transaction basis.

    Kudos for starting it, and since you’re at least only choosing to learn a language, you should be able to whip something together far more quickly than I could. You can, by the way, use Emacs for C#—check out C# Mode: http://mfgames.com/linux/csharp-mode

  3. Marcus Says:

    Dude, you read my mind. I have been wanting something like this for a while. I was thinking of a web service, something like del.icio.us in terms of simplicity and tagging/completion. It was going to be my reason for learning Scala/AJAX/webdesign.

    If you can make Sterling portable, however (i.e. run on OSX), I’d be an early adopter.

  4. prokoudine Says:

    Any reason not picking existing C# project named Kurush that already does some stuff? :)

  5. Michael Hutchinson Says:

    If that’s the bug I think it is (toolbox component scanning) it was fixed a long time ago. If not… well, we welcome bug reports, and are happy to debug in #monodevelop on GIMPNet.

    If you don’t have MonoDevelop 0.18, I strongly recommend upgrading. Also, there are packages on the build service that approximate to the upcoming 0.19 (1.0 RC1) release.

  6. Tomas Says:

    Nice, I am also suffering with GNUcash.

Leave a Reply

Please copy the string ouhJQF to the field below: