Brad, as you know writing good documentation is not a simple matter... it takes time and considerable effort (at least for me) to write something that is correct and readable. My experience is that few people actually read documentation anymore, so the incentive is low. There are still some important features of Gambit that are not documented in the user manual. The reason is simply that the time I can devote to Gambit is mostly spent adding features that users request, fixing bugs, evolving the system, simplifying distribution, setting up and maintaining the wiki, mailing list and source code repository, etc. Internal documentation is not on the critical path!
I agree that it would help if more people were involved in sharing this workload. I do not believe the best place for (most) people to contribute is modifying the source code. I am ready to put more work into documenting the code and its organisation to make it easier to contribute to the code, but the time I can put on this will greatly increase if people can also take on some other tasks.
One thing that might also help is to have one or more experimental branches on the source code repository in addition to the master branch. The experimental branches would be under the control of individuals or groups of developers with a specific interest. When a feature has matured on an experimental branch it could be merged with the master branch.
Marc
On 28-Dec-08, at 9:16 PM, Bradley Lucier wrote:
I've had a draft e-mail sitting in an IMAP folder for about 8 months with the subject line "The future of Gambit", but with an empty body. Today I still don't know precisely what to put into this body, but at least I found a blog entry that explains a bit of my feelings.
I'm not exactly thrilled about the level of "outside" participation in (core) Gambit development. In fact, graphing the Gambit git commit log would be a parody of the argument in
http://www.gnome.org/~michael/blog/ooo-commit-stats-2008.html
that the lack of non-Sun developers working on OpenOffice.org is an indicator that it is not a healthy project. For there is only one committer to Gambit, and the best that can be said about getting other developers to develop code for Gambit is that a very few times Marc has committed code he hasn't written himself.
I've studied the Gambit source code a bit, and even made some contributions over the years, but Marc's programming style is something I have not seen elsewhere---highly macroized and layered, there are patterns in the coding techniques but not ones that I've been able to unravel in general. Perhaps one way to help new developers get into Gambit would be fore Marc to take a subsystem and write down an explanation of how the macros and layers of code for types, exceptions, constructors, functions, ... of that subsystem work. (Christian Jaeger seems to have had some success in doing this, but it would be good to have an explanation of how Marc sees the construction of subsystems of the runtime.) Just to get an idea of Marc's programming style would allow others to divine more easily the structure of the code.
And happy holidays to everyone!
Brad _______________________________________________ Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list