Daniel J. Lacks, PhD wrote:
[...]  I
am interested to help, at this point I want to know what is the best way for me to do that.  For example, how to start: brainstorming, collaborating (hosting a meeting, chat channel, or opening an issue ticket), or just do it?   What format: Wiki, Word document, PowerPoint presentation, etc.?  How much research should I do: you mentioned client-side tool integration (TortoiseSVN, etc.) and other tools for comparison (Git, Perforce, etc.)?  My assumption is you are perhaps looking to take a step back from what is already posted about SavePoints and perhaps address a design that includes client side and server side use cases, scenarios, and approaches.  Then at some point I assume it is reviewed and versioned, then someone can decide what to implement now or in the future.

[TL;DR: Meta-discussion about how best to contribute.]

The reply you sent a few minutes before this one, in which you describe your real life use cases and wishes, is a fantastic way to make progress. Personally although I have used Subversion and other VCS in several different settings, I have not tried such a diverse distributed scenario as you are describing and so your description of that is really helpful.

Next I would encourage you to try sketching some possible UIs and, as much as possible, diagrams of how it all could work. (I find the visual approach extremely much more powerful than writing, and it is unfortunate that it is so difficult to do on computer. Attaching a photo of a hand-drawn sketch works much better for me.) I am currently doing this for local checkpointing and every little bit that I draw brings some previously un-thought-of aspect to my attention.

We don't have a standard process for collaborating on a medium to large feature beyond posting to this dev@ mailing list. Feel free to write up in other formats and attach (if small) or post links to them where that works better than plain text email, keeping in mind that open easy-to-transfer formats are strongly preferred so maybe not MS Word etc. The Wiki is a useful central place because its longevity is in our control (unlike third-party web sites) but I find the Wiki clumsy for anything more than a few paragraphs and a few links.

You are correct that I am looking to take a step back from what is already posted about SavePoints and Checkpoints and Shelving. In general, anything in our issue tracker and wiki is best taken as an idea to think about rather than a plan that has been decided. We would informally review the proposals (here on dev@) according to however much interest the current community can collectively bring to it. In the end, as an open source project, whoever steps up to do the work ultimately gets to decide what they are willing to do; the community as a whole gets to advise and guide and ultimately choose what goes into an official release.

In practice, though, it is extremely helpful to have a well thought-out design, and rationale, that somebody else has taken the trouble to prepare. This can make the difference between somebody ever or never stepping up to implement it.

At the same time as taking a step back to think about the wider picture, in order to get something done in the short term I am implementing a very simple initial version of local shelving and checkpointing, from which to get some experience and feedback from others about how they should evolve. That is the other direction you start from -- a simple implementation, e.g. scripts around the existing 'svn' commands -- to demonstrate what you want to accomplish and in what respects they lack important usability or capabilities.

Lastly I want to say thank you for bringing your enthusiasm and experience! This project only happens by people like you doing it, and it is heartening to hear from you. Please stick around!

- Julian

Reply via email to