Is there anything *enjoyable* about our development process?
Martin Preuss
aquamaniac at gmx.de
Sat Oct 15 07:30:50 EDT 2005
Hi,
On Saturday 15 October 2005 10:31, P. Christeas wrote:
> > On Fri, Oct 14, 2005 at 08:51:12PM -0400, Josh Sled wrote:
[...]
> c3. I agree that Scheme is not the best choice. It may fit the
> functionality best (I cannot judge that at the moment), but potential
> programmers will not know it. You have to use what programmers know; it's a
> matter of making the development process attractive.
[...]
I very much agree. Heaving read the other opinions it may very well be that
scheme is the best language ever, that every "Real Programmer" (tm) should
know it well, and it may be the best solution for the problems it handles in
gnucash, but it *is* - at least for myself - a barrier for new developers.
I don't think that it needs to be removed completely to attract developers (as
it seems it is the best solution for reports, but I don't know enough about
Gnucash to decide). But for normal plugins it shouldn't be required to learn
scheme just to implement them.
For instance I was trying to understand how the MT940 importer is invoked in
order to maybe implement a more generic way to provide *all* importers of
AqBanking. But I still can't see from where the init function of the module
is called :-)
Implementing the importer code itself - e.g. the import module selector etc -
isn't too much pain (provided it is implemented in the G2 branch), but it
isn't easy for me to see where I could glue it into gnucash without knowing
scheme.
And for the extension argument: I don't think that scheme is the only good way
to provide extensibility. I think the plugin interface itself should be
completely in C.
However, what type of language the plugin itself uses doesn't have to matter
to gnucash: A report plugin could still use scheme, but that would be the
choice of the plugin developer (and for that matter plugins could use
whatever language their author sees fit).
Hmm, I don't want to be annoying, I just want to present what kept me from
actively contributing to gnucash.
Maybe I have quite a strange attitude in these regards, but then I'm just a
free-time developer who tought himself Assembler/C/C++ (anyway, Z80 assembler
is the only real language :-),
Of course programmers with academic degrees might find my opinion ... well ...
discussable :-)
Regards
Martin
--
"Things are only impossible until they're not"
AqBanking - http://www.aquamaniac.de/aqbanking/
LibChipcard - http://www.libchipcard.de/
More information about the gnucash-devel
mailing list