A few years ago, I was working on a job for a client that centered around providing information to their end-users using dynamically presented video and then testing them for comprehension. It was a Joomla! site, and we had some initial conversations about how they wanted to quiz there users. Originally, we discussed a custom solution, however I knew that there had to be some sort of prebuilt extension on the Joomla! extension directory that would most likely satisfy their needs and found one. I encouraged them to try using that extension first and if it didn't work for their purposes then we could look into the development of a custom solution. In this post, we'll explore some benefits and ramifications of utilizing Joomla!'s extensibility.
One of Joomla!'s core strengths is its nuanced extensibility. It provides a framework to make additions to existing content, respond to application events, or serve a completely custom application within the structure of the site. Because of this framework, the Joomla! extension directory is a rich resource for a wide variety of solutions. This enables organizations utilizing Joomla! to quickly build solutions in a very short time span and at very little cost. The solutions possible through Joomla! would have been obscenely expensive 10 years ago. By utilizing an extension, my client saved several thousands of dollars in development and weeks of waiting for a custom solution to be developed.
My client used the quiz extension for a couple of years and recently decided they weren't happy with it. Parts of it were buggy and it was not ideally suited for their needs. This is the drawback of using prebuilt extensions: in utilizing the work of many anonymous developers quality varies and the end result is not bespoke to your needs.
Even though our client decided in the end they weren't happy with the testing extension, it wasn't a total loss. They were quickly able to get something working together and utilize it in their field. In doing so, they gained a better understanding of their own needs. The importance of this should not be understated. When looking towards the future, it's hard to discern our true needs from our possible needs. Developing for every possible scenario we think we might need is expensive. By utilizing Joomla!'s extensibility we were able to bring the cost down and quickly move into the future and see what was actually needed. If the extension had proven ideal for the long term they would have saved quite a bit of money and time. Even though it hasn't, it has still advanced them towards their goals.