Interview: Angela Byron, Top Drupal Developer and Evangelist
Angela Byron is one of the lead developers and a community manager for the open source content management system Drupal, which OStatic is based on (along with sites such as The Onion and Fast Company). Few people have more influence on and knowledge of Drupal than she does, including working directly with Dries Buytaert, founder of Drupal. We caught up with Angie and she weighed in on the future for Drupal, and what the open source movement needs.
What is Drupal, as you see it?
The normal definition I go with is that Drupal is three things: a) a content management system, which is essentially a web form-based tool for building and managing a website; b) a content mangement framework, which provides robust APIs which can be used to add or modify any of Drupal's native functionality; and c) a thriving development community, always coming up with new and interesting innovations to ratchet up the power and flexibility of websites Drupal can build.
How did you come to be involved with Drupal? Are you involved in Drupal on a full-time or part-time basis, and how much time would you say you spend on Drupal?
I first got involved in the Drupal project as a Google Summer of Code student in 2005 working on a quiz add-on module. This was a tremendous opportunity, because it finally poked a hole in that seemingly impenetrable "you must be THIS smart to participate in open source" wall I had built up based on my misconceptions of how open source worked. I ended up getting completely sucked in to the community and proceeded to contribute with a frenzy, making up for years of lost time when I thought open source was only for geniuses who were born clutching man pages.
I had originally thought this Drupal thing would just be a 3-month gig during SoC, after which I would go and get a "real" job. However, community members kept throwing a little money at me here and there to do odd jobs and sooner or later I was self-employed as a Drupal developer. I now work full-time with a Drupal consulting company called Lullabot, doing training and helping architect Drupal sites for big companies such as Sony BMG and Popular Science magazine.
In terms of the amount of time spent working on Drupal in some shape or form, it's literally pretty much every waking hour. I'm a wee bit... obsessed.
Tell us about your specific involvement with Drupal. What is your role?
I wear many hats in the Drupal community, as a developer, a community manager, and member of the documentation, security, and site admin teams. I also organize various initiatives to help get new contributors involved. Most recently, I was given the position of co-maintainer of Drupal 7, which means that along with Dries Buytaert, the project lead, we set the vision and help shape the next release of Drupal.
What are some of the other projects you are involved in, if any? In what capacity?
Drupal takes up the vast majority of my time, so there aren't many other projects I'm involved with, although managing Drupal's involvement in programs such as Google Summer of Code and the Google Highly Open Participation contest has me interfacing with members of other open source projects on a fairly regular basis.
A lot has been said about the reasons people contribute to open source. What are your reasons for getting involved? What motivates you to participate, and then freely give your work away?
There are basically two things that motivate me to keep working in the Drupal community: the community and the relationships that I've developed with various members over the years, and the constant innovations and challenges which keep me from ever being bored. I thrive on the open, collaborative nature of the community development process, I learn new things constantly from some of the brightest individuals I've ever met, and I really enjoy seeing my work out there being useful to other people.
What comes next for Drupal?
Drupal's roots are in a project that was written by developers, for developers. The extensible architecture and rapid community website development thing we've got pretty much down; what we've traditionally lacked is a really slick user experience around the whole thing out of the box. There is work ongoing in Drupal 7 to ramp this up with improved user interface and design, along with user testing along the development cycle to confirm that the decisions we're making actually make it easier for people.
How do you stay competitive and relevant?
The Drupal project has an unconventional philosophy on backwards compatibility. During each major version of Drupal, developers are highly encouraged to think up crazy new things that Drupal can do, without fear of breaking legacy APIs. While users' data will always be preserved throughout the ages, if we come up with new standards we want to support, or a much better and more performant way of doing something, developers are given free reign to go off in that direction.
What products are your closest alternatives?
Drupal is in a funny space because it's sort of a framework like Django or a Ruby on Rails, but with web-based content management tools built-in such as Joomla! or Microsoft SharePoint. The content management parts of Drupal are basically a proof of concept of what our framework parts can do.
We are most frequently compared with Joomla! though, which is another open source, PHP content mangement system. While Drupal has traditionally focused on creating a robust architecture and flexible APIs that you can customize the heck out of with some elbow grease, Joomla! has traditionally focused on creating a smooth user experience and making websites as easy to build as possible at the expense of raw customization power. Both projects are starting to take on traits from the other as they mature, and it'll be interesting to watch how they evolve over time.
How does Drupal keep its operations running?
The Drupal project is funded by the following folks: a) hosting is donated to us via Oregon State University's Open Source Labs; b) The Drupal Association, which handles purchasing of new/replacement hardware, and accepts donations from its members, (it also offers "memberships," which are basically yearly donations from members); and c) we receive income from a variety of other sources, such as advertising revenue, book publisher referral bonuses, external programs such as Google Summer of Code, and so on.
We are also pursuing other financial avenues, such as an e-commerce store that sells Drupal merchandise and ramping up efforts to create a professional services directory on Drupal.org with better advertising opportunities.
What are some of your pressing needs, outside of developers contributing code?
Like any other open source community, Drupal thrives on efforts of contributors. I would say our most pressing need is to break down barriers and myths out there so that people understand that anyone at all can be a contributor to the project. Just as we need developers to contribute code, we need designers to come up with gorgeous themes, total beginners to give us usability feedback, people who are confused by documentation to fix it, people who have just overcome a major stumbling block in their learning curve to help support others who are stuck in the same place.
Only by constantly growing and expanding our already massive contributor pool can we keep up with the exponential growth that Drupal is sustaining. Fortunately, the culture of respect for non-code contributions is definitely there in the Drupal community, it's just a matter of helping people to realize that they too can help, and how to get started.
What are the benefits of the open source license that Drupal offers?
The GPL encourages the code-sharing culture that has made Drupal what it is today. While people could sell add-on modules if they wanted to, that starts to make a bit less sense when the person you sell it to can turn around and give it away for free. As a result, the project has an enormous library of thousands of add-on modules freely available for download and use (all GPLed as well so there are no licensing restrictions to mix and match). This has resulted is a robust economy of Drupal service providers who offer help in the areas of customization, support, training, develoment, hosting, consulting, and other needs individuals and companies might have as they build their sites.
What does the open source movement need?
Tough question. After thinking on it a while, I guess I would say we need more opportunities (and to take those opportunities as they come up) to collaborate across projects on problems that affect us all, as well as probems that affect the larger world.
One of the most amazing experiences I had was being at the Google Summer of Code Mentor Summit, and seeing the best and brightest minds from all over the open source ecosphere putting their heads together on problems ranging from how to encourage shy students to participate more, to how to get open source into college and university curriculums.
It was completely awe-inspiring to see the swarming effect that is so effective within our own respective communities being used at a macro level. Imagine how powerful it could be if we were able to scale it to thousands or millions of people.