I contend that although dotLRN has contributed much code, it also has caused many of the problems. We need to use OACS like it was intended when it forked off of ACS.
Don't add package dependencies to the core. If you can't code your package without affecting the core, don't add it to the core just because dotLRN needs it or whatever. It would be interesting to see how may OCT members don't work activly on dotLRN projects.
Also, there is no best practices documentation available at all. This has all been discussed before.