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
