Budgeting prototype

Darin Willits darin at willits.ca
Tue Sep 2 23:55:44 CDT 2003


Stewart,

On Tue, 2003-09-02 at 22:07, Stewart V. Wright wrote:
> Hi Darin,
> 
> > Although I personally prefer the workbench style approach there might be
> > a better way to tackle this.  I personally think that separating the UI
> > (as well as the data) would make for a better user experience.  I agree
> > with the sentiment that budgets and account trees should be separate
> > entities.  One *is* an essentially imaginary, pie in the sky concept
> > while the other is concrete (often depressing...) reality.  They are
> > definitely linked (categories have related accounts) but are not one and
> > the same.
> 
> I have to disagree with what you have done unfortunately.  It looks
> (and correct me if I am wrong) like you are budgeting for a $200
> credit card bill per month.  I (and I get the impression a number of
> other users) want a different sort of budgeting.
> 

Actually, the $200 budgeted for the credit card in this example is not for
a single bill but rather the amount that this account should change over 
the designated period (monthly in this case).  The intent is to show that at
the end of the month I want my credit card balance to go down by $200.00.  

Say I started out with $1000.00 balance on my visa.  In my budget I want to
show that each month I am going to decrease that amount by $200.00  It may 
be that I spend $100.00 for a (posh) dinner out and use my visa to
pay for it but I would expect to pay that bill at the end of the month 
and tack on $200.00 to decrease the outstanding balance and meet my budget.

> 
> I want to specify that I will spend $X on groceries each month, but
> without specifying that it is done as cash, cheque or on my credit
> card.  I want to be able to see that I spent a certain amount on a
> subset of expenses, NOT that I have a certain amount to spend on my
> credit card.

You would budget for groceries using the Expenses:Groceries catagory. 
Where the money to pay for groceries comes from doesn't really matter.
I don't want to model _how_ the money gets from one account to another, 
only that at the end of the period things should have changed by the
designated amounts.  Maybe I need a better nomenclature to explain
this... or maybe some sleep. ;-)

> 
> The point of my virtual accounts idea is that I want to be able to
> have multiple budget categories for any expense/asset account.  For
> example, I buy a number of books.  I want to specify whether a book
> was bought for work purposes, or for fun.  These are two different
> budgeting categories in my world that I want GnuCash to handle...
> 

I would have thought that you could set up two sub-accounts for each type of
book purchase as such:

-Expenses
     -Books
          -Work
          -Fun

Then set up related budgeting categories, one for each book account and 
set up your targeted spending amounts.

It seems to me that we are talking about very similar concepts ideas in
using different terms.  From what I understand the categories with related
accounts is a form of the virtual account method.  We just separate the 
data into its own structures.  Then again, I could be wrong... it happened
once I think.
 
> 
> 
> > However my hope is to create a set of data which could be used in other
> > parts of the application hopefully enabling a wealth of financial
> > planning features down the road.  But for now we have to start
> > somewhere.
> 
> Exactly.  A laudable goal.  Is your approach for budgeting code
> consistent with the other approach I outlined above?
> 
>  
> > I am hoping to flesh out some ideas for the data structures over the
> > next couple days and then get to the business of spewing out code.  I
> 
> You should read Linas Vepstas' message from earlier today.  He said:
> 
>   "in terms of programmer effort, its usually almost the same amount
>    of effort to implement it 'the right way' as it is to implement it
>    'any old way'.  The hardest part of programming is figuring out
>    what 'the right way' is."
> 
> Do we know that we have found 'the right way' yet?
> 

I happen to believe so. ;-)

> 
> > After that I will be back to part time work on this as I will be
> > moving house across the ocean and doing some hard core job hunting!
> 
> Ahhh...  Moving across the world.  Been there, done that, doing it
> again soon.  Oh, joy!!!
> 
> 
> > Thoughts/criticisms/concerns are as always welcome. :)
> 
> Damn, and here was I thinking that I would start a flame war!  :-P
> 

Robust debate can only help the cause!


Cheers

Darin




More information about the gnucash-devel mailing list