Part 1 of 3 - I got to spend a half a day with Drupal Project Lead, Dries Buytaert, in Antwerp recently. This was a rare pleasure, given the success of Drupal and Acquia in recent years and how busy we both are. In between shots for some professional video material, Dries and I sat down in front of my tiny cameras and microphones to talk about Drupal 8. In parts one and two, we touch on how we got here and lessons learned along the way, what Drupal 8 brings to the table, and more. If you don't normally take the time to watch the video version of the podcast, this week is the week to do it. Parts one and two each have a couple of nice visual moments, but part three is something very special. It's all "behind the scenes" video of us driving back to the dorm room where Drupal was invented and Dries seeing it for the first time in 15 years.
Interview video - 21 min.
Why does Drupal 8 matter?
Dries attempts a generalized elevator pitch: "Drupal 8 matters because, if I think about all the features, I really feel that we're at the right time, at the right place, in a world that's getting more mobile, in a world that's getting more personalized, in a world where content modeling becomes more important, pushing content to different channels. If I think about all the things we did in Drupal 8, from the authoring experience, to adding Views in core, to adding fields in core, improving the content modeling, to RESTful services and being able to output content to multiple devices or multiple channels, I really, really feel that from a features and functionality [perspective], Drupal has grown up quite a bit and that we will be able to be at the core of digital experiences. I really believe that we're at this point where we're going to move from just building websites to building much more than websites. That's what I am excited about and that's how I pitch Drupal."
Drupal 8 is a milestone, not the end of the road.
"We've worked on this for so long. The idea that it is going to be released," we were speaking in the lasst week before Drupal 8.0.0's release, "is a huge relief, a huge milestone for everybody in the community that has contributed to Drupal 8. I'm very excited for that." But of course, the work doesn't stop there and Dries's job as Project Lead is to be planning and thinking several steps ahead of the rest of us. "In my mind, the most important thing after Drupal 8 ships is the contributed modules. I really believe that the adoption curve of Drupal 8 will depend on the availability of these modules. If people want to help, I think that's the best way to help."
"As it relates to core, we're probably going to go into a period where we're going to focus on shaking out more bugs. We're going to find things once Drupal 8 hits production, bugs, maybe some performance optimisation, things we can tweak. And dot more i's and cross more t's. That's also going to give us a little bit of a breather, versus starting to build big new features the day after we release."
Semantic versioning in core
Historically, Drupal releases were always "big bang" releases. Drupal 8 was in development for almost 8 years before its release. "But that meat we haven't actually innovated in [the Drupal 7] core in almost five years. We want to change that with the release of Drupal 8. The idea of semantic versioning is that every six months, we can put out new versions if Drupal: 8.1, 8.2, 8.3 ... and then these versions will have new features. We'll do bug fix releases as well, which would be 8.1.3 or something. That enables us to keep innovating at a faster pace. We can add new things. At the same time, we've committed to trying our best to maintain backwards compatibility between these minor version of Drupal, so that it's a stable environment for organisations, and they can very easily move from one version to another and get new features. In turn, we believe this will help accelerate the pace of innovation. From a contributor's point of view, it's much more rewarding to contribute to a project if they can see their contribution in production within a reasonable time frame."
Will we ever refactor this much again?
"The success of Drupal has been thanks to the fact that we have made these sweeping changes and that we have reinvented ourselves many, many times. And that we have kept up to date with where the web is going." Systems that have not had Drupal's longevity were "stale" according to Dries, they didn't keep up with the pace of innovation on the web. "For us to stay relevant, we have to keep moving. We have to make sure that we are the latest and the greatest."
"If I think about the future of the web, I think it will look very different than how it looks today. I imagine experiences going more omnichannel. How would the future look? I think about aural devices, even tactile devices. How does Drupal play in a world where you can talk to a website? Or where a website can buzz your wrist? If I think about how websites or experiences become more push-based; they push information or services to you at the right time ... something that I've talk about a lot. To make that possible, you need to be data-driven, so how does Drupal play in a world where there's a lot of data? The best experiences will be proactive. And to be proactive, you have to think about how does Drupal play in a world with machine learning? I feel there's big changes to come. These changes may come fairly quickly. They may happen in the next three years, or maybe five; I don't think we have the luxury of kicking back and waiting or not changing anymore.
As things accelerate, we have to find ways to keep up with that. But--and this is important--it doesn't mean people have to work twice as much. We have to find ways to scale our community so it can be done in a way that's healthy for everybody involved."
Is Drupal 8 only better for enterprise websites?
"It is definitely better for enterprise websites, but it's also much better for small websites, even for bloggers. If you think about what they struggle with historically is usability, the authoring experience, obviously they also want to have a great mobiles experience. All of these things are much improved in Drupal 8 and so everybody will benefit from these features."
What new markets are there for Drupal now?
When I asked this question, supplied to me by Gábor Hojtsy via Twitter, I wasn't expecting this. "Drupal is the ideal tool to help any kind of market or vertical or industry with their digital disruption. In my mind, it's not driven by Drupal, it's just about which industry is being disrupted. If I think about media & entertainment, their digital disruption started 15 years ago when people couldn't sell CDs anymore. It changed the way music works. You can see publishers being disrupted. So for these kinds of industries, their disruption started [many years ago] and is still happening and Drupal has been very useful for them--so many large media companies use Drupal."
"If I think about other industries, say Higher-Ed, their digital disruption only started three, four, five years ago--the way classrooms work, the way teachers and schools engage with students. It's very different or it is going to be. TherE's no reason to believe Drupal couldn't be at the heart of that. In fact, that's already starting to happen. Other industries: the financial services industry, the pharmaceutical industry, [and others], they're only on the verge of being disrupted. Different industries are at different stages in a digital maturity model and I think Drupal can help each of those."
What's a bad fit for Drupal 8?
Larry Garfield asked this useful question and after pausing a moment to think about it, Dries suggested,
- "I think we still have room to grow when it comes to solving transactional problems. Like putting an eCommerce transaction at the core of Drupal can be a challenge. We can do eCommerce websites really well, but we have to integrate with a transaction engine. There is a set of problems that are very transaction-oriented that we are currently not a good fit for."
- "Another set of problems that come to mind is things that are very data-heavy, like where you have to crunch or manage gigabytes of data, terabytes of data. These problems you typically solve in a separate application that you integrate with Drupal. It doesn't mean we can't solve real use cases there, just that we have to integrate with other applications."
- Dries also agreed with me that neither of us would want Drupal driving our self-driving cars. :-)