The sharing layer went through a similar process this year.  For the
most part syncing was working, although with some performance,
maintenance, and extensibility issues.  With pje's guidance, we came
up a new model that much more modular, testable, and extensible with
some killer features (like conflict management and the syncing of
diffs) that were impossible with the old framework.  On top of this we
ended up with performance improvements.  One of the biggest takeaways
for me was how important testability is for ongoing maintenance.  We
were able to make occasional changes to the merge algorithm, for
example, and still remain confident we hadn't broken something else.

I think it would be a big win for the project if we were able to apply
the same philosophy to other parts of the system.  We probably have
enough engineers on staff to have some focus on rearchitecture while
others continue the 0.7.x track (adding features such as Contacts,
etc.)

~morgen
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "chandler-dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/chandler-dev

Reply via email to