You are here

Opinion

Code freeze, module maintainers and veggies

Besides working on Drupal core, I help maintain one contributed module: the Mollom module. It reminds me what it’s like to maintain a contributed module and to depend on Drupal core, what it’s like to develop a module with a constantly and sometimes rapidly changing core. It is healthy.

I was involved in maintaining the Mollom module throughout the entire life of Drupal 6, while Drupal 6's API was strictly frozen. We ran into a number of Drupal 6 bugs and limitations, but worked around them as best as we could in less than elegant, but in creative ways. The Mollom module may seem simple, but I can assure anyone that it’s not. For example, to insert a CAPTCHA it dynamically alters the forms in a way that pushes the limits of Drupal's Form API and implements advanced client-server communication over XML-RPC.

We began the Drupal 7 port of the Mollom module in January 2010, roughly 9 months ago, shortly after we put our pencils down on Drupal 7 development and started working towards the final Drupal 7.0 release. We have maintained and improved the Drupal 7 version of the Mollom module ever since. We even added features not available in the Drupal 6 version of Mollom, and we're using it to protect thousands of Drupal Gardens sites. Of course, this meant that we had to keep up with last minute API changes in Drupal core. But, in the end I think the energy and time we expended were justified.

Not only is the Drupal 7 API much improved and we were able to throw away large chunks of code, we were also able to make both Drupal core and the Mollom module better along the way. Through our work on the Mollom module, we were able to fix bugs in both Drupal's Form API and XML-RPC backend, to name two examples. This includes the kind of bugs that we would not be able to fix after Drupal 7 has been released. The result is not only a better core, but also a better module that is easier to maintain. To me, this approach is well worth the extra effort it takes to make some Drupal core API changes.

So I wonder why so many module maintainers wait to upgrade until Drupal 7 is released. We've learned important lessons from the Drupal 6 release cycle, but we can still do better; only 10% of the Drupal 6 modules have some sort of Drupal 7 release at this point. Code freeze is an ideal time for module maintainers; it provides a chance for module maintainers to catch up, fix problems and to make their modules shine.

Upgrading modules early during a code freeze is like eating vegetables; you should do it!

Clickability FUD on Open Source versus SaaS

Clickability, a proprietary SaaS platform for content management, has compared SaaS to Open Source. Not only is the comparison inaccurate, it omits the downsides of SaaS and frankly, they are comparing apples to oranges. Open Source is a licensing and development model, SaaS is a software delivery model. Either they are distorting things on purpose, or they don't understand Open Source at all. In other words, time to look at some good ol' FUD and to share my take on Open Source versus SaaS.

To give you a sample of their comparison, take Clickability's take on integration:

Clickability integration

Screenshot taken from <a href="http://www.clickability.com/SaaS_versus_Open_Source.html">Clickability's SaaS vs Open Source comparison</a>.

One of the biggest advantages of using Open Source software is that there are no limits on what services you are "allowed" to integrate it with. Given the number of sites that Drupal powers and the size and strength of the Drupal project, official integrations with other software and service vendors are abundant for Drupal. If you need integration, for example, with a highly specialized, niche product or web service, it may already exist among the 6,000 contributed modules for Drupal. If it doesn't, you are free to create it yourself. The same is true for other Open Source projects. Good luck getting that into the development cycle of a proprietary SaaS platform.

In many ways, Open Source is actually less risky than putting all your eggs in a single proprietary-software-basket. If you are unhappy with a particular Open Source company or service, you can take all the code and go to the next company.

Or take their section on hosting and performance:
Clickability performance

Screenshot taken from <a href="http://www.clickability.com/SaaS_versus_Open_Source.html">Clickability's SaaS vs Open Source comparison</a>.

I won't even begin to debunk what they write on self-hosting -- it doesn't have anything to do with being Open Source. Suffice to say that the great thing about FUD is that it validates our work in the Open Source community. They wouldn't have such a comparison page if they weren't worried about Open Source disrupting or slowing down their business.

My take on Open Source versus SaaS?

It is true that SaaS enables organizations to save money on hardware, configuration efforts and avoid hosting and maintenance hassles. However, proprietary SaaS vendors like Clickability need to ask themselves what happens when we start building SaaS solutions based on Open Source values. Open Source SaaS offerings, like Acquia's Drupal Gardens offer the convenience and support of SaaS multiplied by the benefits of Open Source.

State of Drupal presentation (April 2010)

Two weeks ago at DrupalCon San Francisco I gave my traditional state of Drupal presentation. A total of 6000 people watched my keynote live; 3000 were present at DrupalCon, and another 3000 watched the live video stream. Nonetheless, a lot of people asked me for my slides. So in good tradition, you can download a copy of my slides (PDF, 48 MB) or you can watch a video recording of my keynote on archive.org.

Keynote backstage

Picture taken backstage while waiting to go on stage for my keynote.

Keynote view

Picture taken after my keynote just before packing up my laptop.

Drupal 2009 retrospective and 2010 predictions

It's that time again. Time to look back at 2009, and to look forward to 2010.

In my 2009 predictions for Drupal, I was pretty much spot on -- except for the Drupal 7 release date. I predicted that the two most exciting features in Drupal 7 core would be custom content types and radical improvements in usability, that a number of important contributed modules would move into core, and that core would embrace the semantic web. I hoped that our community remained strong, and it did. Our community is our biggest asset and Drupal 7 wll be our best release yet, and I'm very proud of both. We accomplished much by working together in 2009, and I'm very confident of what we can -- and will -- do in 2010.

On a personal level, 2009 was a very busy Drupal year. I posted 3,269 comments on drupal.org (up from 1758 comments in 2008), and committed 1,567 patches (up from 1,031 patches in 2008). I accepted many more speaking engagements that evangelize our work, wrote more blog posts (215 blog post in 2009, up from 183 in 2008), and more.

My two personal Drupal highlights for 2009 include Whitehouse.gov switching to Drupal and the automated testing that we deployed on drupal.org. In fact, having now experienced its benefits, I'm not sure how we ever developed without automated testing in the past. The current Drupal 7 development snapshot feels more stable than the initial Drupal 6.0 release (minus obvious exceptions like no working upgrade path). Automated testing improved our development velocity as we committed many more core patches than any previous year. Other highlights include the many Drupal books that were published, and of course, the first Drupal tattoo -- both strong proof that Drupal is here to stay (or, at least, that tattoo is ;-)).

My personal low for Drupal in 2009 is that we didn't get the Drupal.org redesign implemented -- fortunately, we have that back on the fast lane.

2009 was also the year that Drupal started to get noticed by CIOs as illustrated by the fact that Gartner put Drupal in the visionaries quadrant and the number of Fortune 500 companies that started using Drupal. While Drupal grew in all dimensions, it probably saw the most relative growth within the enterprise. I think this is part of a bigger trend, because it feels like Open Source became almost generally accepted in 2009. Many more businesses realized that Open Source is a viable alternative, and as a result, I don't recall many Open Source "battles" in 2009 like those of the past. It is a little sad because I enjoyed fighting the good fight, and because it provided a healthy competitive edge. Reality is that, for the most part, we have won the Open Source battle. Open Source matters more every day and is changing the software industry -- already Microsoft is working on an Open Source blogging platform. These industry changes will also likely reflect, and even change, the Drupal ecosystem. In the years to come, expect competing software vendors to adopt our Open Source techniques and licenses, and expect large consulting organizations to have their own Drupal teams.

While we didn't see a major Drupal release in 2009, it was a great year nonetheless. We've used 2009 to position ourselves for continued success in 2010 and beyond. In 2010, I predict a number of stars will align: (i) the release of Drupal 7, (ii) the launch of the new Drupal.org redesign, (iii) at least a dozen of specialized Drupal distributions gaining momentum, (iv) test-driven development for contributed modules and (v) Acquia's Drupal Gardens and Buzzr (but only if they have a free tier) that will positively impact Drupal adoption. All of these initiatives are in different stages of development, but I believe there's a big chance that their combination will translate into breakout growth by the end of 2010. It also implies that 2010 will see some big changes, which is never easy.

Going forward, it is important we keep up with the larger market, which is evolving faster and faster with dozens of cool new services and APIs being launched almost every day. As a large Open Source community, we are better positioned to keep up than any proprietary vendor. We have many more people contributing to Drupal than proprietary vendors would ever be able to hire. However, proprietary vendors excel at focus and execution. There is nothing we can't do, but it is important that we're focused on the right things, and that we continue to be execution-driven. Let's remember our oldest mantra: "Talk is silver, code is gold".

As people start to build more products on top of Drupal, it is important that Drupal doesn't get in the way, and that it provides the flexibility and ease of customization that Drupal site builders demand. The winning platform will be the easiest platform to build on, not necessarily the platform that has the most flexibility. Over-generalization hurts both discoverability and adoption. Drupal's power vs. flexibility vs. ease of use is a tough balance to manage, but in general, our success in this balance has created Drupal's success. Our ability to maintain that balance is key, however, I hope and predict that for Drupal 8, we'll be very focused on improving the developer experience and lowering the barriers to participation (while maintaining Drupal's power and flexibility).

In general, I think content management systems have matured to a point where, for most people, they have relatively few differentiators at their core. That is why user experience is becoming perhaps the most important differentiator for non-niche users. The Drupal 7 usability project was a bold move but I hope we learned that bold moves aren't all that disruptive as they sometimes appear at the beginning. As Benjamin Disraeli, former British Prime Minister, put it: "Action may not always bring happiness, but there is no happiness without action.". I hope that, like 2009, we all continue to focus on user experience in 2010 because the single biggest barrier to the success of Drupal will continue to be ease of use as an end-user tool.

Mentally, it feels like we've surpassed Joomla! already, but it will take a number of years for that to trickle down and sink in, and even longer for the numbers to start reflecting that. I don't think we'll surpass Wordpress any time soon, but I do think Wordpress will continue to approach us from the bottom up. But, as Open Source goes mainstream, it won't matter all that much. In 2010, we'll start to compete against proprietary vendors, some of which will start to adopt Open Source strategies themselves. If they succeed, it could change the game because they'll bring focus and execution on top of the Open Source value proposition. Whatever happens, we'll benefit from the extra competition in 2010.

Thanks for 2009! It's been an honor to be a part of the Drupal project, and it remains so today. We have plenty of work to do in 2010 so let's all focus on making change happen.

On Microsoft's anti-Drupal ad

Microsoft's anti-Drupal ad

Yesterday, an anti-Drupal ad by Microsoft was spotted in the wild; see the image on the right. The news spread on Twitter like wildfire. I said this was "interesting", not because Microsoft isn't allowed to compete with Drupal but because Microsoft is also promoting Drupal. In fact, I was flattered by the idea that Microsoft considered Drupal worthy of competition. However, it left many of us confused about the fact that Microsoft decided to both partner with Drupal and compete against it.

For me, the interesting part is not whether Microsoft is allowed to compete or not -- of course they are allowed to compete. What is interesting to me is the way Microsoft reacted. Within hours, Microsoft had noticed the small Twitter-tsunami, picked up the phone to talk about it, pulled down the ad and publicly apologized for confusing the Drupal community.

This means a lot. It is hard proof that social media like Twitter works, and that Microsoft can be great at listening and responding. It is proof that the web has changed to be more humanized, and that Microsoft understands how to build relationships online. By being transparent and human, and by publicly apologizing, they built some trust with the Drupal community (as reflected in the comments of Mark Brown's blog post), and that might actually influence people's experience with Microsoft. Plus it looks like, at least for now, Microsoft decided to promote Drupal rather than compete with it.

At the end of the day, this was the act of one Microsoft employee in India who was out of sync with the rest of Microsoft. This inevitably happens in big companies. All is good now.

Pages

© 1999-2015 Dries Buytaert Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.
Drupal is a Registered Trademark of Dries Buytaert.