The first example of this phenomenon that I can recall is ‘Forms for Joomla’ from Phil Taylor. Forms is a great extension, and during the installation process you’ll notice that the Phil’s Blue Flame framework is installed if it is not detected on your system. To my knowledge, the Blue Flame framework is not available as a separate download.
Next up is the jxtended library that appears to be required all the extensions from jxtended.com. In this case, the library must be downloaded and installed separately in Joomla.
Last but not least is the Nooku framework. Like the jxtended library, this is a separate extension that is installed in Joomla and is required for the operation Nooku-powered extensions (to my knowledge, no Nooku-powered extensions have been released publicly).
All of these libraries and frameworks speed up the application development process, but there is a cost to the end user. Joomla is famous for bringing content management to the masses, but the widespread use of library dependencies is a threat to Joomla penetrating even more of the CMS market.
In addition, it’s not clear what backwards-compatibility is offered by these libraries, or even whether they will continue to work with even minor updates to the Joomla core. Updating Joomla and ensuring compatibility with extensions themselves can already be a daunting task, and adding in library/framework compatibility makes this job harder.Somewhere we need a balance between rapid application development, ease of use, and compatibility. I don’t know what the solution is, but at least install the library or framework when the extension is installed, or upgrade the library if it already exists. This makes it easy for new Joomla users, and also should encourage the library developers to strive for backward compatibility.