GNUCash as a maintenance project?
jralls at ceridwen.us
Thu Jul 27 10:35:56 EDT 2017
> On Jul 26, 2017, at 8:13 AM, Keith Gallagher <kgallagher at fit.edu> wrote:
> Keith Gallagher here, software engineering faculty at Florida Inst. of Technology. This coming term I am teaching an advanced course in software maintenance and evolution; upper division undergraduates and graduate students are enrolled. (10-12 at this point)
> I'm looking for a course project, something I can set the whole class on to work on as a team. I am looking for something that is mature, with lots of releases, has a large and ongoing user community, and, of course, has lots of "issues" that need to be addressed! I have contacted Brad Kuhn, and old student of mine, and he suggested GNUCash as a possibility.
> All of the students in the class are familiar with open source rubrics and guidelines and use of appropriate repositories.
> But before I send a collection of people to meddle in the work, I would like to have the approval of the community, and any guidelines or suggestions (or help) that you might have or wish to offer. For instance: should we do this is a group? Should we do this is a collection of individuals? Etc? Etc.?
> The caveat is that once the term is over, it is highly unlikely that any of the individuals involved will continue to contribute. But I can guarantee, yes guarantee, that we won't leave it worse than we found it ;-) and that every issue that is tackled will be = thoroughly= vetted and approved before a merge is requested.
> thanks for listening.
This sounds like an interesting project. There are a couple of obstacles to work out before you decide to engage with us:
* GnuCash use GObject, Gnome’s attempt to support object-oriented programming in pure C, and Guile, GNU’s scheme-based extension language. Both are used extensively (and not always correctly) in GnuCash and while we have a long term goal of replacing the former with modern C++ and reducing the use of the latter they are very much intertwined throughout our present code base. Neither is particularly easy to learn.
* The core development team is very small and we’re currently trying to get a major release ready. We won’t have much time to support your class. We could easily be overwhelmed by pull requests from 12 students working 6 hours a week. Your students would undoubtedly find the resulting delays frustrating.
Aside from that we could certainly use the help and we do enjoy working with capable students.
This discussion is more appropriate on the developer list, gnucash-devel at lists.gnucash.org <mailto:gnucash-devel at lists.gnucash.org>. I’ve added it to the CC, please subscribe and reply there.
More information about the gnucash-devel