Skip to main content

Premise

One saturday, my 6 roommates and I decided to settle accounts. It took more than 2 hours to enter all the expenses in a spreadsheet and do the maths to know "who owes whom". During these 2 hours, we argued once again about the way we should settle accounts : a spreadsheet shared on our local network versus a simple sheet of paper with a calculator. I was for the spreadsheet : no calculations mistakes and you can add a forgotten expense without doing all the maths again. Those in favor of the paper thought the spreadsheet was too complicated.

This afternoon decided me to create a small project that would just answer the question "who owes whom" without installing any software, nor managing a shared spreadsheet, nor having to figure out the best debts repartition. At that time, there were not so many web services for that purpose, few in french and none satisfying our needs.

I used my recent skills with GWT, learnt Python and developped that :


Welcome screen

The simple spreadsheet where I enter my expenses

Finally the results

It took time : almost one month for that simple application, working evenings and week-ends. I learnt a new programming language and solved the mathematical problem of debts repartition, but what took most of my time was the user interface. It looks very simple but it's all "ajax" and the spreadsheet is real! (I mean you can use it with your keyboard almost like a desktop-app spreadsheet.)

Maybe by the time you're reading this post, this litte app is still running here.

Geek section

  • Client: GWT 1.5, 2400 lines of Java
  • Server: Apache + modpython on Ubuntu 8.04, 275 lines of Python
  • Database: sqlite

Popular posts from this blog

Version 3 release for anonymous usage

Kidanki exists in two versions: the "anonymous" version where one can create and share an expenses sheet without signing in; the "connected" version where one signs in and can manage several expenses sheets and several groups of people. Today, version 3 for anonymous has been released! It works on mobile, tablet and desktop screens, it's fast and it couldn't be any simpler. Here are some screenshots: Creating a new expenses sheet List of expenses on a mobile screen List of expenses on a tablet screen List of expenses on a desktop screen List of debts on a mobile screen Expenses sheet settings on a tablet screen