Suppose you are building a web application that is going to be a packaged product one day, one that users will want to be able to extend and customize.
It comes with
I would implement hooks in the core, so users dont have to hack the core, but are still able to extend the core using hooks