Automatic Saving

Derek Atkins warlord@MIT.EDU
06 Jan 2003 13:41:43 -0500


linas@linas.org (Linas Vepstas) writes:

> > Hmm.. Then how often does gtt save its data? 
> 
> Every minute.  (and the archive consists of a copy of each of the 
> last four minutes, and then copies on 4-minute, 16-minute, 64-minute,
> etc. intervals.)

That could be a major PitA when you're on a distributed network
filesystem, your data file gets to be several-hundred kilobytes,
and the network goes down :)

> > I like the ability to
> > force it to save before I shutdown my machine (save early, save
> > often). 
> 
> gtt auto-saves if you ctrl-c it, or if you just quit out.

Yes, but I want to save _without_ quitting....  Why should I have
to quit to save?  I dont have to do that with emacs, or gnucash,
or any other app.  Why should I have to with gtt?

> > I'm not sure I like this.  While I acknowledge that avoiding UI
> > clutter is a good thing, the name of the data file is NOT, imho,
> > something that should be ignored.  Clearly you can/should provide a
> > default name, but the user should be able to easily say "I want to
> > look at _this_ data file".
> 
> I'm following the example of e.g. evolution, and some other newer
> microsoft-based apps, which don't allow you to do this.  The fundamental
> question is 'why would you want to look at other data files?'  I'm
> guessing that the only reason you want to look at other gtt files
> is because of a deficiency in gtt itself, and the 'right thing'
> is to fix that deficiency. 

Well, the real set of requirements (IMHO) is:
        1) I never want to "delete" data -- so I want all my data going
           back to the first time I used gtt
        2) I do not want a single datafile to ever get "too big" -- this
           means that I want my data files split over time
        3) I want to easily "hide" or "show" new/old data.  For example,
           usually I just want to be able to see my current projects, and
           indeed even the 'unbilled' portion of my time.  However sometimes
           I might want to go back and look at what I have billed, or see
           totals, or see what I did on a particular day.
        4) Deal in the face of a network failure where the user data store
           goes away.  Not everyone runs with a "local" home directory,
           so the application should deal well in the case of failure.
           One reason I want to be able to specify the file is if I
           lose access to my homedirectory and need to logout, I want
           to be able to email the datafile to myself.

> > Cool.  Unfortunately I'm still on a gnome-1.4 system so I can't
> > play with this (yet).
> 
> ?  If you're on debian, you can install both sets of libraries
> side-by-side.  (including the devel's).  I presume this is true for
> redhat, suse, etc.

I'm running a modified-Red Hat-7.3 system that has it's own system
integrity and upgrade sub-system.  For major pieces like gnome2, I'm
waiting for the release maintainers to upgrade to gnome2 (which is
in-progress).  It should be pushed out to new machines within about
4-6 months.

> > > > I'd also like to see gnotime interface into gnucash's invoicing system
> > > > and customer management system.
> > 
> > I dont know -- I think we'd have to agree on some interface to do so.
> > This was more of a pipe-dream kind of thing, but some way to script a
> > new invoice in gnucash would be a good thing, IMHO.
> 
> Some pipe-dreams are easy to realize, some are hard.  Won't know which
> till you try.

Indeed..

> Consider the problem of fetching customer info from gnucash.
> 
> plan z -- gtt reads gnucash files and picks out customer names.
> plan y -- gtt uses a gnucash libarary to read customer names
> plan x -- gtt fires up a gnucash bonobo gui componenent that allows
>           user to select customer, and then works with that customer
>           name.
> 
> Right now, plan x seems to be the 'best' plan.  But I know little about
> it.  The bonobo stuff is less than easy. 

I know nothing about bonobo.  We would have to write the gnucash
bonobo interface.  Another possibility is that gtt can output some
scheme that gnucash can read.

> > Well, I think we'll have to do that.  right now there isn't any way to
> > import invoice data into gnucash.  OFX wont help; OFX only inputs
> > transactional data, not invoice data (which is separate), and has no
> > way to tie it to company information.
> 
> Is this a deficiency of OFX, or of the importer?  

Neither.  The invoicing system is completely separate from the
transactional data.  You can have (unposted) invoices without having
transactions.  They are more like SX template transactions.

What I want to do is be able to feed the raw gtt time information into
gnucash and let gnucash generate the printable customer invoice and
then post it to the proper accounts.

> > Well, all I would think of importing into gnotime would be a list of
> > customers/projects.
> 
> I'm hoping to add a generic import, of things like ascii bulleted lists,
> of html <dl> lists, <ul> and <ol> lists, etc.  But this would only
> import lists of projects.  I don't really want to invent a customer
> management system.

That's fine; I think the only thing you'd need from gnucash are
        1) customer identifier (name/guid)
        2) project identifiers (name/guid)
        3) employee identifier (???)

I dont think you need to import anything else from gnucash in order to
have plenty of information to feed it back in.

> I sure wish the evolution coders were a little older/more experienced.
> The GUI looks nice, but its not configurable; we can't modify thier
> addressbook to act as a generic customer management system.    That's
> one of the things I'm looking for.

Well, have you looked at what I did in CVS/1.7?  Yes, it would be nice
to integrate into evo eventually, but until then I wanted to make
something usable.

> --linas

-derek

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available