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