On Saturday 02 December 2006 18:11, Andrew N. Shrosbree wrote:
> Yes, this does argue in favour of allowing the code to be branched so that
> hackers can use (abuse?) the code as they see fit, but this would
> necessitate ArgusConnect's washing its hands of responsibility for such
> branched code. No, I am not being sarcastic or petulant: this seems like a
> good solution, IMO.

I agree. The techie community at large (including me) is mostly interested in 
fixing their own problems and making things work for themselves. That it may 
help others too is a positive side effect that is not guaranteed.
(That said, I could not find anything wrong with Syan's patches - what bits 
exactly do you object? He did it alone, in very little time, with very 
limited documentation, and my guess would be without any lengthy discussions 
with you regarding the general philosophy of the project, possibly without 
being exposed to the coding guidelines of your project - if these assumptions 
are true, I find it rather marvelous what he did)

But yes, such process often (but not always) leads to "hacky" code that is 
difficult to maintain, and often not compatible with commercial grade code, 
at least not initially. I studied medicine as my second career because I 
found it terribly boring writing commercial grade code - always was only 
interested in getting the problem solved, not in honing and refining the 
solution; I am eternally grateful to those who have the patience and 
endurance to do it.

Branching from a stable commercial grade code base is usually an evolutionary 
process, where most of those projects which succeed first spit out some code 
that does what is wanted, but has still problems - leading to several 
generations of code rewrites, until towards the end (if the project survives 
evolutionary selection) beautiful and highly maintainable code emerges.

Examples where this happened: Interbase -> Firebird, Netscape->Mozilla, 
StarOffice -> OpenOffice

Very few projects start with high quality code from the beginning - the KDE 
core project, Python, and Tridge's works (Samba, rsync) come to my mind as 
notable exception. Having looked at the KDE4 code base I must say I am not 
aware of more beautiful and maintainable code anywhere - a pleasure to read, 
as easy as a Python script, despite being C++. And yet, entirely anarchic 
community driven work since 10 years, without any commercial input.

Would be nice to have such a branch of Argus where ease of mutual patching is 
kept in mind (major changes wherever possible isolated into modules, well 
documented), so that both versions can benefit from whatever the other side 
is doing, without either side being able to mess the other side's code up. If 
that would happen, I would even brush up my Java skills again...

Don't think Argus would loose anything by doing it: the small minority that 
would go for the branching would all the more work towards widespread use, 
and as I said - if it does what I want, I am happy to pay

Horst
_______________________________________________
Gpcg_talk mailing list
[email protected]
http://ozdocit.org/cgi-bin/mailman/listinfo/gpcg_talk

Reply via email to