feelin’ good

Dries Buytaert’s Vision of Drupal

According to Drupal’s founder Dries Buytaert, Drupal is shifting all gears towards improving its user experience. Developer features, which had been the #1 concern in the past, is now pushed back to second seat. The reason for the change in focus is this graph:

Google Trends of Drupal and Joomla

The number of keyword searches for “joomla” on Google engulfed “drupal” four-fold. This graph was populated in September last year, by Dries for his State of Drupal presentation in DrupalCon Barcelona. Today I re-populated the graph, just to see how things stand almost a year later, and it still looks pretty much the same.

The reason Joomla is much more popular than Drupal, despite the fact that Drupal is the best CMS, is that Joomla is much more user-friendly. It seems that people are willing to sacrifice the features, and go for what is easier to use. That said, we can safely say that non-coders has become a big factor, if not the biggest, in the CMS game.

Dries is all for this. He has chosen 7 end-user features, and only 3 developer features, to focus on for the next Drupal release, which he termed the “killer release”. In his words,

We need to compete on the user experience. That is where innovation will happen.

The 7 end-user features are things like “Better media handling”, “Custom content types (CCK) in core”, “WYSWYG editor”, “Better tools to structure and organize content”, and well, you get the idea. The 3 developer features deal with improving the node access system and APIs.

Developers who are looking forward to seeing Drupal as an MVC framework may view this as disappointing. Drupal is moving away in the direction which is directly opposite of being a framework. Instead of streamlining the core, Drupal is adding more and more stuff to core. Plus, Dries is trying to please non-coders. That’s pretty set in stone, because he’s got a commercially-supported Drupal up his sleeves.

One can still use Drupal as a framework though, if one understands the inner workings of Drupal – how to write modules, implement hooks, theme functions, etc. But that’s a lot to learn, compared to a framework like CodeIgniter, which comes with easy-to-read docs to further reduce its already low learning curve.

No further discussion is necessary now, since in my opinion, Drupal is leaving the prospect of being a framework for good. In his State of Drupal presentation, Dries spent the rest of his time convincing developers to embrace the change and calling for companies to contribute usability experts to the community. From the video, the change and calls seemed to be well received.

I am both happy and a little disappointed by this change. As a developer, I would like to see a framework, because I feel that being a framework would make Drupal easier to code for. But also as a developer, I like to see neat usability, because that’s the showcase to the thousands of lines of code worth of work underneath. Moreover, this vision of Dries’ fits the feature I’ve dreamed up for Drupal well. So this change is making me become more of a devotee. To me, Drupal is unmatched, because of the wealth of its contributed modules and the flexibility of its core. Despite the initial steep learning curve, It saves a magnitude of time in site development and maintenance. It is becoming indispensable for web development, and will grow even more so in the future.

9 responses

  1. mk

    Don’t expect too much. Drupal 7 will be just a so-so release. Everything will start on Drupal 8. Trust me.

    May 31, 2008 at 3:56 pm

  2. I had already read your Twitter messages about usability vs framework and I have to disagree, mameou. I’m committed to improving both the end-user experience and the developer experience. We’ve been doing exactly that for years.

    For example, Drupal 7, the next major release of Drupal will ship with a testing framework in core. We’ve spent weeks, if not months, working on this. Every self-respecting developer will applaud this because it makes Drupal 7 a fundamentally better development platform than Drupal 6. This is just one example of many changes that we have in the pipeline that will advance Drupal as a development framework.

    The reason I focus so much on usability (in my presentations) is because that is what I believe the community needs to get better at. I’m confident that the existing community can make Drupal a better platform, but I’m less confident that the existing community can make Drupal significantly easier to use.

    How would I not care about Drupal being a development framework? I’m a developer myself … I’ve always been focused, completely and utterly, on the aesthetics of Drupal’s code and APIs.

    In other words, we’re making Drupal easier to use _and_ we’re making Drupal a better framework. Be careful not to spread FUD.

    May 31, 2008 at 6:52 pm

  3. framework rules!

    May 31, 2008 at 8:35 pm

  4. I used to give Drupal a chance for being a framework for my little website project. I spent time on that about 2 days and gave up totally. At first, I thought Drupal can archive me a rapid development scheme, but apparently it’s not, at least for me. One reason is that I have quite a low-level skill in term of Drupal development. (I can install it as a blog, customize a theme, and manage a few features though — see my old blog) Another reason is that development style is totally not suite me. I’m a web developer for quite a long time and familiar to build things from ground-up perspective. Building things by hooking, customizing and writing modules made me furious many times when I spent hours figure it out how to do something. (It’s actually my bad, I know) After 2 days, it’s like I got nothing but Drupal knowledge (which I forget already)

    Right now, I’m using Django framework. Although it’s new to me too (I want to try something new), after I understand its MVC architecture, my development became what I can really call a rapid development. It actually made me furious sometimes too because I never code Python before (can you believe that? lol) but it’s far less than using Drupal. Using Django, everything is make sense to me. There’s no hidden operations lie between values in database and texts on webpage. (For Drupal, I have no idea how it work)

    Not because Drupal is an inferior framework. Not at all. But it’s me that Drupal architecture has quite a steep learning curve and it’s not a curve that I’m familiar to. Comparing Drupal and Django development style is like it comes from a different direction. Django has no existing operation and let you create everything from ground-up, while Drupal has many operation in place and let you reshape, trim down and decorate it.

    May 31, 2008 at 9:15 pm

  5. mameou

    Dries Buytaert: Thanks for your clarification. It certainly is good news and a relief. You and the community have done an awesome job with Drupal. I truly appreciate it.

    panuta: I understand what you’re saying, because I’ve been through the same experience. The only thing that kept me from giving up on Drupal is its overriding system and extensive list of contributed modules. For me, that’s worth the initial struggle.

    June 1, 2008 at 7:28 am

  6. tewson

    hi there
    just an opinion, i think you should put a link to Buytaert’s comment in the entry’s body since Buytaert himself is considering this entry as FUD.

    June 1, 2008 at 9:59 pm

  7. Dries for president!! \o/

    August 7, 2008 at 4:49 pm

  8. One other huge issue affecting Drupal’s usability is that, from a developer’s perspective, it is inherently unstable by design.

    I personally spent several months trying to get my head around the complexities of Drupal and eventually developed several sites using it.

    Then version 4.7 was released and it broke everything because it was deliberately not compatible with 4.6 at all. After much work porting to 4.7 and months of instability because all third-party modules had to be updated, 5.0 was released and it is not compatible at all with 4.7.

    That’s when I gave up on Drupal.

    I just recieved a request from a client to upgrade a site. It seemed a good candidate for Drupal, so I revisited it.

    A check of the Drupal website reveals that the situation is worse than ever. After 5.0, 6.0 was released. All totally incompatible with each other. Now most modules and themes are not available for 6.0 and many have never even been ported to 5.0.

    Whether true or not, anyone with past experience with Drupal would likely assume that 7.0 will once again break everything and most modules and themes will not work for a very long time and stay away.

    August 18, 2008 at 11:50 am

  9. What a stuff of un-ambiguity and preserveness
    of valuable familiarity regarding unpredicted feelings.

    January 15, 2013 at 6:19 pm

Leave a reply to mameou Cancel reply