Tobias Ivarsson
Tue, 19 May 2009 10:17:59 -0700
On Tue, May 19, 2009 at 6:50 PM, Peter Ferne <pe...@jivatechnology.com>wrote: > > > At the risk of being a pedant and/or teaching you to suck eggs I have > to point out that the idea of design patterns is that they codify > existing best practice, they document tried and tested solutions, and > so talking about wanting to "to come up with ... a design pattern" is > perhaps a little sloppy. No offence intended.
I'm sorry for that, I am aware that "design patterns" are something that captures existing best practices. I was lacking a better term for describing a suggestion for a pattern for designing something and sloppily misused an existing term. Perhaps I should have just said "pattern", or "pattern for structuring a graph layout representing versioned entities". Thank you for correcting me in any case. > Anyway, to answer your question, there is of course a substantial > existing body of work on how to do versioning: namely version (or > revision) control systems such as subversion, bazaar, darcs etc. One > of the most successful at the moment is git. And there is a very nice > short introduction to git, called 'Git for Computer Scientists' [1], > which styles itself: "Quick introduction to git internals for people > who are not scared by words like Directed Acyclic Graph." A VCS is one of the most simple cases of versioned entities, simply because it is a DAG. The problem with the system I am designing at the moment is that the versioned entities here are not structured as a DAG. There *will* be cycles in between entities. > > [1]: http://eagain.net/articles/git-for-computer-scientists/ > > I would suggest that this is probably exactly what you are looking > for. Should you write any code for implementing such a pattern in > neo4j I do hope you will consider making it available under an open > source licence, and publishing it on github! The specific code I am working on is proprietary to a customer, so I cannot publish that. But I can extract the pattern and publish that separately. I will probably do so on svn.neo4j.org though. It was interesting to get your ideas, and the article you linked to was an interesting read. Thanks for your input, -- Tobias Ivarsson <tobias.ivars...@neotechnology.com> Hacker, Neo Technology www.neotechnology.com Cellphone: +46 706 534857 _______________________________________________ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user