On Nov 7, 2013, at 5:42 AM, Alex Kempster <[email protected]> wrote:

> I would like to help develop source code for this project. From my research
> I understand that GnuCash is based on C and GTK+. I know that the code can
> be accessed at:
> 
> http://svn.gnucash.org/repo/gnucash/trunk
> 
> I looked through the FAQ but was unable to find a route in to helping
> develop for this project.
> Can anybody provide information as to a good starting point such as
> code tidying or minor
> 
> patches and modifications? I am a competent C programmer and I have
> dabbled a little bit
> on GTK, SDL and OpenGL. I also have a few years experience working on
> parallelization of
> programs using OpenMP. I realise that GnuCash only runs on a single
> processor core so
> 
> improving the performance of calculations such as large for loops is
> something that I feel
> 
> could enhance the project. Can I add support for using multiple
> processor cores using OpenMP
> 
> and if so, where would be a good place for me to start? Finally, I
> can't find any information on
> 
> setting up development under linux, is there a guide for this or
> general tool-suite that is
> 
> commonly used?
> 
> Thank you for your time!

Welcome!

The usual way for people to start getting involved with any open source 
project, Gnucash
included, is to work on bugs. We have an extensive and diverse collection on 
Gnome's Bugzilla at https://bugzilla.gnome.org/query.cgi. Select Gnucash from 
the project list and pick a subsystem to narrow the list a bit, then click on 
"search".

Before you start coding, you should familiarize yourself with our development 
environment, process, coding standards, and so on. Please read 
http://wiki.gnucash.org/wiki/Development and 
http://wiki.gnucash.org/wiki/Development_Process and the linked pages.

Some future plans -- modulated by our significant shortage of programmer time 
-- can be found at http://wiki.gnucash.org/wiki/Roadmap.

We are now in the final couple of months of releasing our next minor version, 
2.6, so any significant changes will have to wait for that to stabilize and 
branch, which we usually do about 3 months and bug-fix releases after the 
initial release. That doesn't mean you can't start on anything major until 
then, just that it has to live on a branch until then.

You found our subversion repository, but with the release of 2.6 we will be 
closing that and completing the transition to git, which the core developers 
are already using. You can clone the repository from 
https://github.com/Gnucash/gnucash.git.

As for MP, we need to get to multi-user access to the database backend first. 
This will unfortunately require a major rewrite, for which we're planning to 
use C++. Thread safety should certainly be a design consideration in that new 
implementation; the current one is stuffed with statics and utterly thread 
unsafe.

Regards,
John Ralls


_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to