Looking to develop: introduction and tip request

Derek Atkins warlord at MIT.EDU
Fri Jun 4 17:21:51 EDT 2004


Hi,

"Erich Enke" <twilit77 at fastmail.fm> writes:

[snip]
> This being my first OSS project to _really_ contribute to, I had some
> questions as to how to get started.  Answer me well, and I'll write it up
> in a "Getting Started Developing HOWTO".  Some of the questions I have no
> idea on; some I have a clue about and want to hear a confirming answer.

I'll try to do what I can...

> 1. What do you use?  (Basic development tools -- code browsers and
> validators mostly.  Uber-tools (e.g glade, lxr, cbrowser) that help get
> the work done.)

Uhh.. I use emacs for code editing, glade for glade editing, and then
just use standard command-line tools for everything else (cvs, make,
gdb).

> 2. How do you play safely?  That is, how do you go about running CVS
> versions and maintain the integrity of your data?  
> * Obviously regular backups are in order (of all Accounts, log, xac).  Am
> I missing anything to back up?

The .xac and .log files are already "backups", so no need to back those
up.  Yes, I suggest you backup your main data file, and possibly the
contents of ~/.gnome/GnuCash, and ~/.gnucash/*

> * Do you usually run Current on live data, fake data, or blank data?  

Depends on what I'm doing.  I'll run CVS HEAD on live data for read-only
purposes.

> * Do you keep two versions of GnuCash installed -- one stable and one
> current?  

Actually, three:  HEAD, 1.8-branch, and g2-branch

> * Do you keep a local CVS repository to tag with stable builds?

HUH?  What do you mean?  Do I rsync CVS?  No.  I just keep sandboxes.

> * Anything else I missed?

One easy way to keep the versions separated is to run with different
HOME directories.  E.g.:

  HOME=/home/warlord/gnucash-cvs /opt/gnucash-cvs/bin/gnucash

> 3. Do developers individually unit test?  Is there any interest in unit
> testing?

They should.  There's the "make check" test suite which should
unit-test as much code as possible.  Additional tests are always
welcome (and encouraged).

> 4. In doing web development, are the sources for web development
> available for download, in CVS, or do I need account access?  Even just
> for documentation and content?  Is there a CMS-style user login type of
> thing set up?

I'm not sure what "web development" you mean.  The sources to
www.gnucash.org content are not available in CVS, and access is
extremely limited.  For the moment, send in patches and the few people
with access will try to apply them.

> 5. Is there a wiki available?  If not, is there a perceived need for one?

Uhh, did you even peruse the gnucash website?  Read the FAQ.
Then look at the URL of the FAQ.  Then engage those synapses.  :)

> 6. What's the general process for gaining CVS commit access?  What
> percentage of developers working on GnuCash have commit access?  Do I
> just prove myself over time with quality of patches?  Do I ask a certain
> person?  Do I just do what I'm doing now?  Or is there some secret
> handshake that I have to divine from the source?  I only ask because it
> makes development that much easier (takes out the whole diffing/upload
> patch/describe how patch is applied step).

Generally it's a prove yourself over a period of time.  Generally
there's little need to describe how a patch is applied -- they are
usually fairly self-describing.  And if your patches are that
complicated that they need directions then you're probably doing
something wrong ;)

> 7.  How do you communicate (primarily)?  Is the main forum gnucash-devel?
>  IRC?  IM?  wiki?  bugzilla?  all of the above?

gnucash-devel, irc, and bugzilla are the top methods, depending on
what you're trying to do.

> I apologize if these are "stupid" questions.  I wouldn't ask them if I
> didn't have need and hadn't searched for answers already (and I have a
> fault for over-researching a topic).  I realize that some of them are
> probably just learned by experience, but whatever answers I receive will
> be helpful.

-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 at MIT.EDU                        PGP key available


More information about the gnucash-devel mailing list