KMyMoney vs Gnucash
Mike or Penny Novack
stepbystepfarm at mtdata.com
Sat Aug 16 08:56:54 EDT 2014
OK, maybe I need to be clearer and try to help people understand the
underlying issues?
It is essentially the debate between designing systems as "monolithic"
vs building systems out of independent components with clearly defined
interfaces between them. And of course in the latter case, deciding
where the boundaries belong. Please note that this is not just about
having pieces actually separate. For example, when designing a solution
to a difficult programming problem it an be of great use seeing that the
problem can be divided into pieces with a formal definition of the
connection between them.
Those of you who have worked on large systems know some of the benefits,
especially in testing, to have the parts separated by an interface that
has been formally defined. That I take such a strong stand on the
"separate part" side might be because of the size of systems in my
working experience. Up to half a million lines and to me a "component"
of ten thousand lines or so a modest program.
In other words, I am NOT necessarily suggesting that a "business system"
be distributed with separate parts meaning only some parts included
depending on what sort of business instead of one complete distribution
with all the components included whether a particular sort of business
needs them or not. Since we aren't talking about a commercial product
where there might be an advantage for the former (sell more than one
version) no argument against being inclusive.
BUT -- that says nothing about how the system should be designed and if
divided, what should be the responsibilities of each team. So I'll say
it again, gnucash at least started as an accounting system and could
work as the "accounting component" of a complete business system. People
who want gnucash (itself) to grow to include "inventory", "point of
sales", "commissions", etc. are taking a stand on the "monolithic" side
of the argument while in my advocating starting an overall project (no
name yet) for having an open source "business solutions" system
(gnucash) I am taking a stand on the "separate component" side.
Michael D Novack, FLMI
PS: Mind, that I take such a strong position is perhaps influenced that
my bread and butter was being called in to solve bugs that had the
programmers stumped when a change in a large system had mysterious
effects elsewhere precisely because there were not well defined
boundaries between parts.
More information about the gnucash-user
mailing list