Part 1 – Larry Garfield and I had a long chat in front of my camera at DrupalCon Amsterdam. Part of the idea was to help Larry prepare his thoughts for writing the blog post that has turned into "Building Bridges: Linking Islands" in the Future of PHP guest blog series on Acquia.com. In this part we cover Larry's start in Drupal, some project history, what Drupal can teach (and needs to learn) about contribution and community ("celebrating the newbie" and the power of "thank you"), The New PHP, fuzzy project boundaries and inter-project collaboration.
Larry explains, "The PHP ecosystem is coming together. The web ecosystem is coming together. It's a lot more integrated. It's a lot more collaborative. So projects that are collaborating need to ask themselves 'What is our value-add?'. Drupal's value-add over the PHP baseline is not that it does dependency-injection. It's not that it can serve HTML. It's not that it has forms. It's value-add is entities, views, and the community. We are a content management system and a very good one. By that I mean a structured system to manage content, not a tool for building pages. And we have a community behind it that has your back, that you can rely on, that is not going away any time soon. That's Drupal's value-add. So put our emphasis and effort there; on building a really solid, flexible CMS platform with a community that can support it."
"Those other things that get us there? That's not our value-add. People don't use Drupal for hooks. They use Drupal for nodes. They use Drupal for Views. The more we can outsource our irrelevancies and focus on core competencies, the more we can say, 'The important things that make Drupal worth using, let's focus on those.' And the things that are not the reason people come to Drupal, we can save time by outsourcing that. It may not be perfect ... Could we write something better [than the Symfony routing component] ourselves? Probably. Would it be done right now? Not even close. But we brought in all this code and got 3/4 of the way we wanted to be by adding one, single library."
I proposed one more aspect to Drupal's value-add, "Drupal is architected in a way that is extensible and flexible. You get some more baggage, but its advantage over a specialized system is when your next requirement comes in, we're ready to incorporate it or communicate with it." Larry adds, "That goes to the whole framework versus application debate we've been having since there's been a Drupal. In Drupal 8, in some ways, we became more of a framework, in other ways, more of an application." Pointing to himself, "As one of the framework people for a long time, I think the [framework side] actually lost that battle and we lost it to modern PHP."
"Meanwhile, the application has evolved to being a platform and we should focus on thinking of Drupal as a PHP-powered content management platform. And think of it not in terms of, 'What is the canned user experience we can offer?' But [rather] how can we make a toolchain that let's you build a great user experience. How can we build a toolchain that let's you do all the content modeling shenanigans for whatever site or task you're doing and have reasonable defaults. Look at it as not an application, but as the core of a platform ecosystem. That means designing things and planning things in different ways than you would a pure application. You need to think about extensibility in a a different way between a framework and an application and a platform. I think at this point platform is the right way to think at the high level ... with some framework stuff alongside it."
- Building Bridges: Linking Islands" – Larry's post in the Future of PHP guest blog series on Acquia.com.
- If Larry and I are thinking of the same top ten open source projects list that he mentions, it is this one from 2010.
- Getting of the island in 2013 – Larry's blog post from December 31, 2012.