I think that a framework needs to have 80%+ of the basic packages most application frameworks have. (Cache, Database, Email, Log, Http, etc.).
I don't think it's important that each package is the best there is out there. For Logging, for example, I wouldn't try to give Monolog a run for it's money, I'd have a nice basic log package for Joomla -- then -- interfaces in place that make it easy to swap out the basic package for a more sophisticated version.
In many ways, Monolog is way too much for anyone, it would be good to see plugins for those various options. Meaning more isn't always better. It's more code to carry around and hope doesn't have security issues, and so forth. Basic, general purpose packages that do simple tasks in simple ways honestly is best for many/most people.
I kind of disagree with the notion that Joomla should get rid of a package because so-and-so has one with more bells and whistles. Makes more sense that Joomla keep it's pages aimed at general purpose use with high quality, excellent testing coverage, and then focus on flexibility at swapping out the standard package for other, using interfaces, bridges, whatever.
In all honesty, I see a lot of NIH finger pointing by projects who are saying "You should be using our code." I've asked, and I am not seeing many examples of packages they have thrown off the ship so that they can use that from another project.
IMO, a better way to look at avoiding a NIH complex is to make certain your core packages can be swapped out -- while, at the same time, you are providing for your core developers and dependent applications. That's the best of both worlds, I think.
Over time, I imagine projects will specialize and there will be some shedding of weaker offerings.
Anyway, that's my ramblings. Interested in hearing what others think.
On Tuesday, March 12, 2013 4:36:34 PM UTC-5, Andrew Eddie wrote: