The basic premise of OS is that developers create software and might include software from other OS developers to generate a complete 'solution' for which they might charge a fee.
To do this, the software they use must be 'free' - not in terms of money, but in terms of access; a developer may take a code written by someone else and can modify it for his or her own purposes. The only rule is that the modifications should be published so that others can also take advantage of the modifications if it fits their needs. In this way, Open source software can be freely used, changed, and shared (in modified or unmodified forms) by anyone. How great is that?
In day to day use, we at Tapiochre don't normally need to worry about modifying existing code - it is normally quite unnecessary! This week though we had reason to celebrate the joy of Open Source in a real world, real problem scenario.
One of the applications we use has undergone several updates over recent months and, as a result of this, one particular 'feature' was deemed no longer needed and was simply 'removed'. The problem was that we used this feature extensively!
The feature related to the ability to choose how to sort files on a webpage; A to Z, by date, ascending, descending and so on. Now, that might seem dull but, when we work with schools, it is great if we can show Newsletters sorted in descending date order (so the most recent is first in the list) and on a different page we need to show Policies in A-Z ascending order. Oddly, this option was removed and so we were only able to show files in one order, across the whole site - and that was not much fun.
So, we contacted the developer, a great chap by the name of Jan who works out of the Czech Republic. The OS comunity is a truly 'Global Village' and OS developers appreciate others taking time to help, test and prove their work - Jan is such a character. Our request was placed late one evening and within 24 hours a suggestion was provided, but we had work to do.
Jan suggested we look at an example of a different requirement that he had provided in the past and that was enough for us to emulate and adapt his recommendation, applying a patch to an XML file in the web platform to remedy the problem.
The work took under an hour, including testing and documenting and we were able to feed back to Jan and the community what our process was and what the specific changes were that we had implemented.
Giving back to the community to allow others to use our 'code insertion' for their own benefit is what Open Source is all about and it was fantastic not only to learn from the experience of others but to offer an input into the big world of 'Open' in our small way.
Others might never use our technique but if they do - and they don't have to tell us or pay us for it - we know there will be a small part of the Joomla online webspace that is forever Tapiochre!