If you are a .php developer or designer involved in Joomla!, or any other good open source content management system, the future is bright for you. You won't hear this from everyone but do yourself a favor and don't forget what I just said. Don't cave to the naysayers. They are wrong. If you are a Microsoft Certified developer who is near the end of your career you don't need to change. There's lots of business for you. However, if you are young and talented, early in your career and want to make a name for yourself, then you should get involved in open source.
A couple of years ago I was involved in the implementation of a major enterprise system for a national association. It was a large membership based project, feature rich, with very complex access levels. The financial component was designed to work with Canadian banking systems. It had to communicate, interact, and transact, with other international entities that were similar but not identical in their business structure. This was a very expensive project. The developers of the system were senior .ASP and .NET developers. The main architect of the system was hightly experienced with a Microsoft background and stellar track record. In previous ventures he headed projects that involved thousands of developers for major American financial institutions.
During that project I was the only person in a management position who was a fan of open source technologies. I had built open source cms web sites with bulletin boards mostly for personal projects. I had also just discovered the Joomla! community. The core developers of Joomla! had only recently split from Mambo and were just settling into their new name. When I brought up the topic of open source with the enterprise crowd that I was working with it was met with disdain. I was given a long list of reasons why I should not even consider open source for any piece of an enterprise system. Among them were things like unreliability, insecure code, amateur approach to development, and such. Open source simply had no place or future in business environments. I was told that the world had an abundance of highly qualified and proven Microsoft certified developers who would always be able to deliver what business needs. The opposition to open source was insurmountable.
I continued to be involved with Joomla! and other open source projects on a personal level. Many websites were built for friends and smaller associations that didn't have the means to spend large amounts of money on commercial content management systems. These open source systems were doing a good job for which they were being used for and they looked great. They were every bit as good as the commercial systems and in some cases had superior functionality to them. When I suggested implementing similar features and functionality that I saw available in Joomla! with it's components and extensions, the path to achieve them was arduous and the price tag was prohibitive for the enterprise system.
The enterprise system was far from perfect. It wasn't handling certain things very well. Multilingualism was really clunky. The administrative back end of the enterprise system was causing grief for the staff that were trained to work with it. For the most part it was accepted that this is the way it is. At the same time I could see that the open source community was handling multiple languages much better with their projects. The backend of Joomla! was much nicer to use than the enterprise system. The speed of improvements happening in the open source community was impressive. It wasn't perfect either but it was looking pretty good for its age.
I began using Joomla! for some micro sites in the workplace and also put together an Intranet system using Joomla! for the office staff separate from the enterprise system. This exposed the value and worth of open source to everyone. The rapid deployment of a Joomla! site done with low cost, managed and maintained by less technically qualified staff, got everyones attention. Time went by and I moved on from this position and went out on my own. Then something really interesting happened.
I was invited to the United States to speak to some Microsoft developers who have plenty of experience in the enterprise world. The object of the meeting was to bring attention to open source and show that it is a coming force to be reckoned with, and that it will not fade away. They heard that there are many very talented open source developers doing great things. My position was that open source is a game changer. They asked a lot of questions and brought up all their objections regarding open source. It was a good discussion. Did it change their opinion of open source? Perhaps not. Issues about earning a living as a developer were where the dicussion concluded.
There are not a lot of things that can't be done using open source technologies. In the areas where open source is lacking, someone will come along and make it strong. All that it is going to take is for the developers of open source to be supported financially, just like the .NET guys. Right now the .NET guys have the advantage and clout with the business community by virtue of the volume of their accomplishments. That's no small advantage but as time goes by it will be met with the achievements of the open source community.
It won't be long before open source is a viable alternative to traditional enterprise system development. The business community has lots to gain by supporting open source systems like Joomla. The payoff in business will be huge. So if you are contemplating a future as a developer then open source warrents your consideration. I'm sure you'll also find lots of Joomla! there too.
Toronto skyline photograph courtesy of David Sonne