Interview with Dries Buytaert, Creator of Drupal

Drupalcon San Francisco — last week, David Peterson (@davidseth) caught up with Dries Buytaert (@Dries), the creator of Drupal, to discuss where Drupal is heading, what challenges are ahead and what keeps him going.

Dries Buytaert: What do you want to talk about?

David Peterson: I wanted to talk about where you see the big shifts happening — touching on Tim O’Reilly’s keynote address where he talked about the future of devices and cloud data. Also, I was in the Warner Brothers Drupalcon session and they said the biggest problem they were facing is not music piracy. It’s actually the fragmented way that people access content. The website is no longer the focal point; it’s actually the Nintendo Wii’s, the Xbox, PlayStations and mobile phones. So with that in mind, where do you see things going and how will Drupal facilitate that?

DB: Right.

DP: So let’s start with a very basic question. When do you think a stable beta version of Drupal 7 might land?

DB: So, Drupal 7 has about a 100 critical bugs left as of this morning. So we’ll do a release when that number is zero. But, I don’t really know when that number will be zero. It’s really up to everybody in the community to help fix it.

If we do some analysis on the current big fix rate, looking at our history of successful bug fixing, it looks like it could be anywhere between early June (best case) and the end September (worst case).

DP: What about a beta release? Drupal 7 is in alpha right now, will there be a certain point that you were looking to release a stable beta?

DB: We’ve released the third alpha. There’ll be a beta when we feel the upgrade path works.

DP: Like the upgrade from CCK to the new Fields API?

DB: The upgrade path from Drupal 6 to Drupal 7.

DP: So essentially a core 6 to core 7 upgrade?

DB: Well, yes. CCK is no longer a part of Drupal 7 so a migration path has to include taking what was CCK and upgrading it to Fields. That’s what we are thinking right now. It’s still some thing which we need to discuss a little bit more because the CCK people actually think it might be better to keep the CCK update as a contributed module, for a little while, for technical reasons.

But the bigger picture of a Drupal 7 release, the big goal is to get the upgrade path to work in a way that everybody agrees with and then we’ll switch to beta releases.

DP: In your keynote you mentioned distributions as being a really important aspect of Drupal and a real point of differentiation. Why do you feel it’s such a driving part of what makes Drupal unique and how will that help the uptake of Drupal in the wider community?

DB: To answer the first question, which I think was why is it important, when I talk to people, usability is still the number one issue. And not just usability but, “Can Drupal do this?”,  “Can Drupal do that?”, “How do I do this?”.  There’s a lot of barriers to get people started, that starts with installation, module selection and usability. There’s all of these things and I think distributions are a great way to solve that. These are packaged solutions instead of a framework with a big box of building blocks.

DP: And a scary learning curve (laughs).

DB: So I think it helps with the learning curve which I think will help with Drupal’s growth. If we can remove some of those barriers with new distributions then I think Drupal will succeed in growing a lot more.

DP: Kind of along a similar vein, what do you think are Drupal’s biggest challenges in terms of the future? In your keynote, you mentioned WordPress is now moving towards a more open model along with Joomla and other systems. What challenges does Drupal face within a more homogeneous group?

DB: The big threat, sort of an ugly word, but is of course that if Joomla and WordPress are coming from the bottom up, if you will, then that could replace part of our install base. So that’s a threat. And I think distributions could help protect ourselves against that because it means distributions could do many of the things that WordPress does. Just to be clear, I’m not super competitive with WordPress or Joomla. I don’t want to come across as fearing those projects.

DP: Yeah. I suppose maybe “threat” was not the right word. It’s more like ‘how do you keep Drupal relevant in a world that’s homogenising?’

DB: My long term concern is staying relevant. How do we keep the level of agility and innovation and stuff that we have today that allow us to be leading edge and to be all the things that make us so successful.

DP: So what are you doing to address that? Currently, I guess it’s a great community, lots of contributions and things like that. But I mean one of the things you addressed in the keynote again is you want more people to give back. How are you going to maintain that Drupal will always be at the forefront? How do you do that?

DB: It’s very much a cultural thing. I don’t think there’s technical solutions to these problems. Just a desire that people have to be innovators and for the project to be state of the art compared to other projects, but also to maintain the way that we work.  I’m not saying that we should adjust the way we work. We have to keep the project  healthy, but keep our core values, our base principles that we have had for many, many years.  But I think the ingredients are all there.  I think everything works pretty well the way things have been working and so trying to stick with those I think is key.

As it grows it’s always easy to apply rules.  Its one of those things that sometimes adding rules is much, much easier than removing rules, so once you’ve added a rule or a new process it’s very hard to get rid of it.

DP:  Things are developing at a fast pace now. Facebook has just announced the Open Graph protocol, essentially it’s a protocol that enables integration of web pages into a graph, a social graph.  And I know in the Boston Drupalcon you talked about that and you’ve been talking Linked Data and the Semantic Web multiple times since. In Monday’s keynote you again talked about Tim Berners-Lee’s Giant Global Graph. Previously it’s always been a bit more academic and a bit more techie, but I guess with Facebook’s rubber stamp this morning its finally getting real and exciting.

DB:  Yeah, I haven’t seen it yet but it sounds exciting.

DP:  I have just just barely read it myself (laughing).

In Tim O’Reilly’s keynote he talked about the future of the web in which the browser becomes less important but portable devices and inter-operating with the cloud becomes the dominant medium.

How is Drupal going to lead in the era where the web browser and the web interface is actually on the decline and the rise of the cloud and devices?

DB:  Right. I think it’s putting more focus on import and export, web service APIs and those kinds of things instead of just HTML. In Drupal 7 there are some significant improvements. We are starting to make the HTML renderer basically abstract away from the system a little bit so that we make it easier to generate other formats like JSON, XML or whatever. So I think evolving that sort of to the next level where there is much more web service integration and things like RDF and RDFa will help.

DP:  So in some ways I guess kind of treating a Drupal page more as a data layer rather than a traditional static HTML page. Something that could act like a possible layer in a transaction.  Something like that?

DB:  For example it’s sort of related — like in Drupal 6, we basically generated snippets of HTML and that’s how a page was generated. In Drupal 7 we still do the same thing but before we start generating all of those snippets we first build a big data object of the entire page. A big nested structure which is sort of like a page object.  And that actually makes it very cool because you capture the structure of the page and can perform operations on the page.

Also, by capturing the annotations around a function we could automatically generate a web service API for that function. If we can do that for the functions as well as for data types then I think Drupal becomes super hackable in a good way (laughs). We can start using it as a mash-up platform, start doing all of these things.

DP: That sounds Great.

Microsoft’s announcement at Drupalcon of a native SQL Server driver for  PHP was really cool. Are there any other tricks up Drupal’s sleeve? Are there any other things in the works or strategic partnering with these previously less then Open Source friendly groups?

DB: I know there’s a lot of companies looking at Drupal right now trying to figure out how they can leverage Drupal. Ultimately that’s what they want to do.  I know Dreamweaver recently got a Drupal plugin I think from Adobe. It’s another small example of how big companies are starting to take notice of Drupal, starting to build software for it.

DP: What other areas of technology interest you? What excites you? What keeps your brain ticking to the next step?

DB: A lot of different things. A Drupal specific one for example, I think the next thing that we need to look at for the enterprise is staging. I spoke to a lot of enterprise customers and staging and configuration management is a problem that we need to solve. It’s a difficult problem but at the  same time that’s sort of what makes me excited about it. It’s not like a small problem. It’s actually a big problem which could require some significant engineering potentially so that keeps me excited.

I think cloud computing and software as a service are exciting me. Not only from a technical point of view but also from a business model point of view. I think cloud computing and software as a service actually bring new monetization opportunities to open source which is something that we didn’t really have before. I mean, some people did it before but we’re starting to better understand the possibilities of cloud computing and open source and how we can leverage it to monetize open source project. Which I think is healthy. Because we can still give everything back, but at the same time organisations will be able to make money off of open source which I think is very important for a project to be successful.

I think a good example of this is distributions in Drupal. It’s really cool. It would be really great to have many of them. And I think we’ve solved many, but not all, of the technical problems. And I think there’s going to be revisions of the technology that we’ve built in distributions. But I think the big challenge is still the business model around distribution. We need to figure out how people can make money by building distributions, because building a distribution is time consuming and it takes a lot of effort and I think that cloud computing and software as a service provides that opportunity to distributions.

DP: Yeah.  So kind of on that same vein but maybe extrapolating out another few years… do you have a picture of the next big thing in store, Drupal 9, or a fairly long term 3 or 4 year goal with Drupal or just with your own developments or things in general.

DB: Umm… I don’t think… I do, but I’m not sure it’s a picture I can describe.

DP: Okay (laughs) probably a good thing.

DB: Yeah, I don’t know, it’s not like those four features or something.  It’s like, for example I believe people’s expectations from web applications are rapidly changing.  People expect them to be very easy to use.  Very intuitive to use.  There’s a lot of very specific applications being developed which are exactly that so I strongly believe that we should make Drupal easy to use

So if I think ahead I see something which is easy to use that’s as good as I can describe it.  I also see mobile being much more prominent so I also see something which can be easily accessed from mobile websites or devices.

DP:  We were just talking about the good hackability of Drupal and your interest in the cloud and how those things can combined. What you are describing looks to allow for that mobile, more ease of use and multi-device capability that is already upon us.

Lastly, what keeps you motivated.  I mean you’re traveling a lot and you’re a fellow father of young ones, what keeps you moving and dreaming.

DB:  That’s a really good question.  You know for me as long as I can learn I’m having fun.  Actually, it’s really having fun.  I’m having a lot of fun and the fun comes from being able to learn — from being surrounded by people I can learn from. Just working with the people that I work with, you know all of the people in the community. Working on the projects that I work on, it keeps me really excited. So excitement and fun are it.

DP:  Great, well thank you very much for your time.

DB:  You’re welcome.

DP:  It’s been an absolute pleasure talking to you.

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • http://www.lunadesign.org awasson

    Cool… I would have liked to have made it to Drupalcon this year and I had intended to but due to our mad Drupal skillz we’ve been bogged down with too many projects ; )

    Next year for sure!

    I’m sorry to hear CCK isn’t part of core 7 but I suppose that isn’t a huge deal unless it would have reduced server overhead by having it more tightly integrated.

    Dries seems very excited about distributions and I think that might be a really great way to get more web designers or developers on board. I’ve gotten to the point now where if a web enabled option can be conceived, it can be achieved with Drupal through an existing module(s) or a custom module. It’s taken years to get here and I wasn’t a fan during my first project but if there were distributions back then, I’m sure I would have had a much better experience getting my feet wet.

    When he was speaking about Staging and configuration management. Can you elaborate about that? Is that more load balancing and streamlining the platform for performance?

  • http://davidseth.net/ David Peterson

    @awasson Well, if you are going to miss the conference it is good to be too busy with paying work!

    CCK isn’t a part of Dupal 7, but that is a good thing :) CCK has been renamed to Fields and it has grown immensly in its flexibility and power. Now everything (Nodes, Comments, Users, Taxonomy) can have fields attached to it and this can be done with a base install of Drupal 7.

    The other cool thing is that you can create your own Content Types that *don’t* inherit from Node. For instance, the new version of Ubercart for Drupal 7 (called Commerce) has a new entity type called Product that has the appropriate fields attached, and it is NOT a node! I love it. But it acts like what you woud think a node is.

    Of course you can still create your own content types that are based off of Node (just like with CCK).

    When he spoke of staging and config management, he was talking about Drupal in large organisations where a lot of users are working on content and editors and publishers are in charge of the actual publication of the content.

    Config management relates to keeping more of the configuration of Drupal in code so that it can be better managed with Source Control tools and rolled out for staging and live servers. Right now Drupal mixes config and content in the same database and it is a bit of a mess for staging and live servers.

    • http://www.lunadesign.org awasson

      David, funny that you would mention the issue about config & content mixed in the database… A Drupal developer I work with and I were discussing that exact issue the other day when we were thinking about things in Drupal that we aren’t necessarily crazy about.

      It will be interesting to see what they come up with regarding config management for large organizations… I’m working on several Drupal sites with large user bases. One has thousands of users who don’t need authoring permissions but do need authentication to access information. We’re using a custom app to manage the members and a web service as a conduit that talks to a custom Drupal module to handle the authentication. Another has between 1500 and 2000 members with the same sort of considerations (no authoring required but authentication to view information). We’re using civiCRM with Drupal and some custom modules to manage authentication. The other one has about 1600 members who are also members of a national organization (with a authenticated website) which I’m hoping has an API I can tap into with a web service for a centralized login. With these larger user bases it gets a bit difficult to manage all of the members. It’s certainly not Drupal’s fault; I suppose we’re just using it in ways it wasn’t originally intended to be used.

      I sure hope I’mnot too busy for next year!