Editor’s Note. Today, we have a very special guest Michael Babker – a member of Joomla Production Leadership Team, the person deeply involved with this CMS, who has worked in virtually every area of the project – from helping the users out at forums to developing patches, extensions and finally the Joomla code itself.
In his interview, Michael shares his insights on Joomla strengths and weaknesses, provides us with a quick glimpse over the new features of the highly anticipated long-term 3.5 release, and gives tips for those new to Joomla community. So, why don’t we get to the gist right now and help ourselves to the interview?
1. Michael, you’ve been involved with Joomla for quite a while now. Please, tell us briefly about your way up from the Bug Squad to the Production Leadership Team. Why did you choose Joomla? What was the major attraction for you back then and what you love most about this CMS now?
I started working with Joomla in 2010 as I was building a website that I would need to be able to provide others an easy method to update content on. We were using Joomla for my workplace’s intranet, so I was already somewhat familiar with the features it provided at a user level. My first install was Joomla 1.5.15, and though it took me a little bit to get comfortable with the admin area, I learned very quickly that I had an extremely powerful and flexible tool on my hands. Ironically, this was about the same time that the first 1.6 beta was released, which I took some time to try out. By that point, I’d been interfacing with the Joomla community by way of the forum and bug tracker for about 3 months and had no real development experience yet, just some familiarity with basic HTML, CSS, and web design as a whole.
After submitting a few bug reports for the 1.6 beta, several folks had encouraged me to try and contribute patches to fix the issues I was reporting, which at the time were very basic things. I was pointed to some documentation that others had written on setting up a local test environment and after a few days of downloading, installing, and familiarizing myself with the new tools, I had started offering patches for many of the simple issues I had seen reported on the bug tracker and began my experience with learning web development and PHP.
I’ve always had a passion for IT related jobs and enjoy challenges, so learning to code PHP and in the Joomla environment came somewhat quickly and naturally to me. Over the years, I’ve expanded on that initial skill set to learn how to understand the full Joomla structure and how each individual piece fits with the others and how other tools such as PHPUnit can help to improve our code standards and ensure we maintain a stable code base. Through all of the learning I had done within the Joomla community, including the several hundred hours I’ve spent working on improving the core CMS code and developing my own extensions, I was asked to join the Production Leadership Team (PLT) in November 2012, which I considered an honor and acknowledgement of my contributions over the previous years. I’ve essentially been with the PLT or working alongside the team during the full 3 series lifetime and I’d like to hope that my efforts to improve code quality and standards have helped make for a better user experience for our end users and the developers supporting the community by providing a more mature product with improving quality assurance.
2. What is the secret of Joomla popularity all over the world, in your opinion? As they say, “nothing is perfect”, do you see any weaknesses in Joomla and the way they could be strengthened?
To me, there isn’t a secret to Joomla’s worldwide popularity. As a whole, we develop the core framework of the CMS to be easily extensible and make it fairly simple to set up sites in non-English languages (partly evidenced by the over 50 accredited translations of the CMS). Add to this the thousands of Joomla community members who contribute in some form; answering forum posts, patching bugs in the core code, developing extensions to make a site more powerful, or writing documentation. We have a strong and friendly community with a lot of interaction.
This year, there will be 30 Joomla!Day events worldwide, most of them attended by members of various leadership teams or well known developers throughout the community, and two larger international conferences (J & Beyond in Europe and the Joomla World Conference in the US). These events provide great opportunities for users and developers to come together, share the tricks they’ve learned over the years, learn something new about the software, and make some new friends along the way.
With any product, there are strengths and weaknesses. Over the last few years, I feel Joomla has done a great job at addressing many of the weaknesses that started turning folks away in the 2008-2009 timeframe (ref. Google Trends) and we need to continue on building new strengths while patching up the weak points in our foundation. I’ve personally spoken with some folks who stopped using Joomla in that timeframe and have only very recently started following its development and they’ve been impressed with the strides that have been made.
With the efforts in place to modernize our infrastructure (remember that Joomla 1.5 supported PHP 4.3 up), we’ve been able to slim our code base, develop a better framework to build the CMS on, and introduce newer code that developers can use to build new tools and interface with various third party APIs with ease.
3. Michael, you’ve worked in different areas of the huge Joomla project, and you must have dealt with lots of users’ requests and issues. What are the most frequent ones and how do you recommend to cope with them?
A lot of questions or issues I look at can usually be categorized as bugs in someone’s code (either the core CMS or an extension installed on a site) or a lack of user understanding or documentation. For the bugs, especially with my own extensions, I’ll get reports about warning messages that are seen with my extensions enabled but aren’t necessarily caused by my code. For those instances, I usually point out to users what the error message is actually saying and that it’s caused by another extension and try to point them in the direction of the correct developer as needed. Of course, I do my best to understand each issue I’m looking at to make sure it isn’t something I’ve done wrong before basically deflecting them away.
For core CMS bugs, again I do my best to understand the issue and try to reproduce it in my own local environment. I don’t have a full array of PHP versions or different database versions set up, so issues specific to early versions of PHP 5.3, for example, I’m not able to reproduce on my own. This has gotten me to be aware of different code standards between PHP versions, having a better awareness of what is available in what versions and what needs to be worked around as needed, and overall has helped me be able to quickly go to the code and review the lines where the issue could be coming from. Rarely do I close bug reports on our bug tracker without providing clear guidance on what my investigation found and whether the issue the user is experiencing is in the core code, caused by a developer’s extension, or something we’d categorize as a known issue or expected behavior.
For me, I would always advise users to ask questions if something doesn’t seem right versus not reporting an issue and tracking to hack a solution themselves. It could be what they’re experiencing is an issue that needs to be addressed but not something that was immediately noticed because they run with an unique server configuration. Or in terms of workflow, how items are displayed makes no sense and we can work on fixing up the interface if need be. Or, it could just be the user is trying to do something but they’re missing an enabled plugin or configuration value and someone can guide them on that task.
4. Lots of Joomla users are looking forward to the new major version of Joomla – 3.5. As a member of Production Leadership Team, could you shed some light on how the work is going now, when the release can be expected and what are the most exciting features to be introduced?
We have actually just finished up 3.2, which will be released on November 6, and this is our last “short term support” release before pushing the long term 3.5 release, currently scheduled for March 2014. Users coming from 1.5 or 2.5 will be in for quite a shock as several new features have come into the CMS over the last year and several other improvements have been made in the underlying code structure. Two things users will notice immediately is that 3.2 is styled using Bootstrap and the software stack is actually a bit faster compared to 2.5 (some of this is because of our code improvements, some of this is from server software). Going from 2.5 to 3.5, some of what users will see includes:
- A core tagging solution for all content related items (since 3.1)
- Core templates and layouts styled with Bootstrap 2.3.2, making Joomla one of the first CMS’ to be mobile friendly out of the box (since 3.0)
- Content versioning (since 3.2)
- Security enhancements including improved hashing mechanisms and two factor authentication (since 3.2)
- Core APIs for easy access to Facebook, GitHub, Google, LinkedIn, Mediawiki, Openstreetmap, and Twitter
- Microdata library (since 3.2)
- TinyMCE editor updated to 4.0 (since 3.2)
- Enhanced template manager (since 3.2)
With the end of the 3 series coming close, obviously this means it’s time to focus on the 4 series. We already have several goals in mind for what we want to accomplish over the next couple of years, we just need to prioritize our efforts on what we want to see accomplished when as well as continuing to encourage users to submit their ideas and code for future releases.
5. When Joomla 3.5 is finally here, users will surely want to upgrade. But it’s known that upgrading Joomla 1.5 to 2.5 is actually a migration. Will there be any mechanisms to ease the process of 1.5 or 2.5 transition to 3.5 version? What’s your view on using automated tools like CMS2CMS for upgrade or data migration?
The transition from 2.5 to 3.5 will for the most part be a smooth upgrade that can be done with Joomla’s built in core update system. There are some hiccups for folks who migrated from 1.5 to 2.5 using some migration tools, but as the 3 series has matured, we’ve learned ways to work around these issues to help prevent a bad upgrade and the tools have gotten better. Definitely take a backup of your full site (file structure and database) before beginning any upgrade just to be safe.
On using automated tools to do your upgrade versus the core upgrade process, at this point I would say that sites being upgraded from 2.5 would fair better using the core update system. Knowing when 1.6 was released that the transition was not simple and required third party tools, we’ve enhanced the core install and update code to better support these updates. Since 1.6’s release in January 2011, we have enhanced the core update system to handle file system changes and database upgrades all within the CMS, whereas the upgrade for 1.5 was essentially unzipping a new package over the file system and database changes were not possible. This is one example of Joomla’s leadership listening to its user base and addressing its shortcomings, and I hope that these efforts have paid off and made things simple for the majority of our users.
6. Michael, lots of our readers are planning, migrating or have just migrated their websites to Joomla. Please, share the tips to help them feel at home with Joomla as fast as possible and avoid pitfalls on the way?
Michael, lots of our readers are planning, migrating or have just migrated their websites to Joomla. Please, share the tips to help them feel at home with Joomla as fast as possible and avoid pitfalls on the way? You’ll find that Joomla has a very welcoming community with plenty of folks who will help with the initial growing pains of using a new software or setting up a website. Don’t be afraid to jump on the Joomla forum to ask questions or share advice from what you’ve learned in your own setup or get involved on various social media outlets. I’d encourage you to also check out your local Joomla User Group if one of the 158 worldwide is in your area and share an evening with them as you will most likely make many new friends and professional contacts in doing so.
We’d like to express our gratitude to Michael for taking his time to share his thoughts with us. If you’ve got further questions on the topic, we’d be happy to see them in the comments below and respond.