graph-tool maintenance sustainability
Yet another benchmarking article reminded me of how pretty damn badass graph-tool is: https://www.timlrx.com/2019/05/05/benchmark-of-popular-graph-network-package... It got me thinking about the future of the module and that's why I'm writing in the forum. Without a doubt, Tiago has pulled off something extraordinary for a one-man-band. The only thing troublesome with this is that if anything should ever happen to him the project would probably slowly die off - that would be an enormous waste. It seems like the community has established itself good enough to start participating in active development. I personally have developed a series of extra tools that I would like to give back but the integration with the main repo appears to me to be too much of a daunting task. This is obviously based on ignorance and I'm sure that if the documentation could be extended with a 'developers' section containing examples on how to extend graph-tool / a bird-eye's of how graph-tool works, I reckon we could get more people engaged with the inner workings of the module and assure maintenance in the long term. In order for the transition to be smooth, ideally we should come up with this type of documentation in workshops/hackathons/meetups (would really like to get some feedback about this). P.S.: Should these ideas get any traction from other committed users, I'll go ahead and nominate Tiago Peixoto for Benevolent Dictator for Life. -- Sent from: http://main-discussion-list-for-the-graph-tool-project.982480.n3.nabble.com/
Hi Juan, Am 05.12.19 um 02:14 schrieb Juan D-M:
Without a doubt, Tiago has pulled off something extraordinary for a one-man-band. The only thing troublesome with this is that if anything should ever happen to him the project would probably slowly die off - that would be an enormous waste.
This is hopefully not a very pressing concern!
It seems like the community has established itself good enough to start participating in active development.
Graph-tool is the workbench I use to do my own research, which I also happen to put out for wider use. While I'm happy to take suggestions, improvements, and bug fixes, the library reflects very strongly my way of doing things, and has never been setup as a very collaborative project. This does not mean I object to a wider participation, but it does explains why this is not in the DNA of the project. (In addition to the fact it's written in C++ with templates, BGL, etc.)
I personally have developed a series of extra tools that I would like to give back but the integration with the main repo appears to me to be too much of a daunting task.
Integration with the main repository should not be stopping you from making your contributions public. You should put them in your own separate repository, with documentation, etc. If it proves interesting and widely useful, it can be integrated at a later point.
This is obviously based on ignorance and I'm sure that if the documentation could be extended with a 'developers' section containing examples on how to extend graph-tool / a bird-eye's of how graph-tool works, I reckon we could get more people engaged with the inner workings of the module and assure maintenance in the long term.
Some of this already exists. In order to understand the internals, a good place to start is the C++ extension howto: https://graph-tool.skewed.de/static/doc/demos/cppextensions/cppextensions.ht... After you are familiar with the patterns there, you will then realize that this is how the rest of the library is written.
In order for the transition to be smooth, ideally we should come up with this type of documentation in workshops/hackathons/meetups (would really like to get some feedback about this).
This seems premature, as it is any talk about a "transition". The level of organization you are describing only makes sense for very large projects.
P.S.: Should these ideas get any traction from other committed users, I'll go ahead and nominate Tiago Peixoto for Benevolent Dictator for Life. Usually, no nomination is required for this sort of thing. :)
Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>
Am 08.12.19 um 18:29 schrieb Tiago de Paula Peixoto:
I personally have developed a series of extra tools that I would like to give back but the integration with the main repo appears to me to be too much of a daunting task.
Integration with the main repository should not be stopping you from making your contributions public. You should put them in your own separate repository, with documentation, etc. If it proves interesting and widely useful, it can be integrated at a later point.
Let me add here that *by far* the biggest complaint I get is that graph-tool is hard to install. So, if people want to contribute, this is the best place to start: providing more detailed instructions for particular systems, packages for popular OSs (there is nothing for RPM-based OSs, for example). I cannot provide installations for every single system out there, so help is always needed and appreciated. Best, Tiago -- Tiago de Paula Peixoto <tiago@skewed.de>
participants (2)
-
Juan D-M -
Tiago de Paula Peixoto