This is a transcript. For the full video, see Core Confidential #3.1 Core Confidential with Angie Byron (webchick) : Learning about 15 Years of Drupal Contribution - Pt. 1.
Preston So: [00:00:00] Hello, and welcome back to another episode of Core Confidential, our show here at Tag1 Consulting, giving unique insight, the behind the scenes perspective on the Drupal Core development process, as well as what's happening right now in Drupal core, which you need to know and all the detailed information about.
Some of the most exciting up and coming developments in the Drupal space. I'm Preston So, editor-in-chief here at Tag1 Consulting. And today we have a really special edition of Core Confidential because we're joined by one of my dear friends, our dear friends and our former colleague, and one of the most well known and well-regarded, well-respected members of the community leaders in the community.
Angie Byron AKA WebChick, who is senior director, product and community development at Acquia. We're also joined today by my dear friend and colleague Michael Meyers, managing director here at Tag1. And today we're going to be talking about a little bit about how exactly works and what's involved in the day to day of Angie's work.
So let's go ahead and jump right in. The first thing is I want to ask you is, is as you've been involved in Drupal Core for 15 years, I mean, you know, and some of those years we were working together actually on the same team I'm kind of curious, you know, what you know, from the perspective that you have, not only as somebody who's been really deep inside the bells and whistles and the, and the nuts and bolts of Drupal all the way out to coordinating more of these initiatives that, you know, don't have as much involvement and in day to day coding or day to day programming, but have a lot more involvement in exactly what you call it.
Cat herding, I believe.
So I'm kinda curious, you know, what some of the, like the, you know, the key lessons learned and why exactly is it so important to think about what, you know, the kind of work that you do as cat herding?
Angie Byron: [00:01:49] Sure. I think the biggest surprise to people who are new to Drupal and come from other software projects is like, Drupal is not owned by a company.
Like there are definitely companies involved. The company I work for, Acquia, is one of them. Tag1 is another one. There are lots of companies involved, but even Acquia, as much as they invest into Drupal, nobody owns Drupal. And so when you want to. Be a product manager for Drupal and you want to like, guide people in a direction.
Um, it's not like you can say, here's what we're going to do. And people will just fall in line and say, yes ma'am and then they start doing the thing. So in order to get a loosely collected assembly of who are effectively volunteers from Drupal's point of view, some are paid, some are working on customer projects, fixing things that help them do that.
But nobody that really is under the Drupal banner, doing things that are Drupal. There's a lot under that. So, you know, one aspect of is you gotta, you gotta kind of make it fun, right? Like people do not, they already have a day job. They don't want to do a day job stuff in some other community in this kind of thing.
So I think that's one aspect of it and there's a lot of ways that we do that. You know, we have, you know, sprints that we do both virtually, especially now and in person. Um, you know, we, we, we have Slack channels where we run, you know, periodic events, mentoring this kind of thing to try to bring people in and onboard.
Um, there's also an element there in addition to that, of like, you know, making sure people feel heard, I think is another aspect of it. So, you know, there are a lot of different opinions and there's a lot of different people talking about a lot of different things and being able to cut through that and, and, you know, understand like these are the priorities that we have.
This is why we would like you to do it and make it very transparent. Why you're, you're you're, you know, admiring these four things specifically, but then also leaving room for the innovations that come up through the community as well. And I think a lot of cat herding is kind of blending those two things together.
So you stay focused. On the main missions that you're trying to accomplish, but also fostering your involvement of people who have their own ideas on how to take the project forward.
Preston So: [00:03:55] I love that because you never really lose the forest for the trees, you know, which is a really important thing in open source software development in particular.
And I want to go back to something you just said, Angie, because you know, that, that, you know, my, my ears kind of perked up when you said, you know, one of the things that is, is really important about coordinating these initiatives and, and really fostering contribution from, from folks who you know, might not have the limitless time that we do.
You know, when we have day jobs When you say, you know, you want to help make sure that people are heard, you know, one thing that I find really interesting about Drupal and, and a lot of open source projects is that a lot of open source is really infamous because, you know, anyone can sort of come in and, and have a voice and have input in how things work.
And so I'm really curious, you know, because some, you know, not, not all not all inputs are equal, let's say, well, not all, not all inputs are, are that was the wrong thing to say, but you know, not all, not all inputs be treated equally for a variety of different reasons. So I'm kind of curious, you know, when it comes to the groups you work with and all of these, you know, cats that are, that are very different in their opinions and are really difficult to manage you know, how do you reach consensus in a group that might have diametrically opposed opinions about some of these issues?
Angie Byron: [00:05:14] Yeah, I think the first thing is you can never really achieve true consensus, right. Um, because you, you know, if one person says the button should be orange and the other person says, it should be green, you can't really pick a color between orange and green and have everybody be happy with it. Right. So you do have to make calls for this kind of thing.
I like to illustrate it with a story. So at one point, right. Uh, Drupal was using CVS, which if you've learned software development, anytime in the last 15 years, you don't know anything about and good for you, but Drupal is old and was using this old ancient version control system, which we now use Git for, called CVS.
And we knew universally across the board everyone hated. There was absolutely no disagreement on that, but there were a lot of disagreements as far as what we should do about it. You know, some people said. You know, there's this other one called Subversion, which is pretty much the same as CVS, but more modern.
Other people were like, well, there's this new stuff coming down the pipe, like Git and Mercurial and Bazaar that are all decentralized. And they have a lot of advantages too. And it was kind of like this endless going back and forth. We obviously can't pick all five of those. We have to make a decision.
Um, so what were we going to do about it and kind of stayed as a stalemate for a long time. So I got sick and tired of the stalemate. And one time I took a week and I was like, we're going to figure this out. And so. The way in which we did it is, you know, we, you know, I started a discussion and it kind of made it known this is going to be the drag out discussion, or we're going to just figure this out, you know?
And we, we basically figured out, you know, we kind of just like open the floor and let everybody talk at once, which I don't know was a great idea. But on the other hand, it. It accomplished what it needed to do, which is that every single person with an opinion had an opportunity to voice that opinion and for people to respond to those opinions.
And then what I would do as the cat herder in this situation, because I didn't care what we moved to. I just knew I didn't want our developers hating our tools. So I would go in about every three or four days. And basically summarize what had been said so far. So, you know, and say the pro-Git team is espousing these different things.
The pro-Bazaar team is doing these, these other things have kind of fallen off the wayside because we don't have enough community support for them, you know, kind of doing this kind of thing and what it allowed for. Um, is it allowed for people to, who were not involved in those conversations? Kind of keep up to date on what was happening and allow the people voicing and concern to see that at least they were heard even if they were not being addressed.
And then the last thing that I did there was I developed kind of some objective metrics. So I wanted to measure things like, what is the level of community support around this thing? What is the level of external support around this thing? You know, do we have any existing code on drupal.org around, whatever solution it is, you know, yada, yada yada, down the line.
I made up all these things. And so it was kind of a combination process of hearing people out and then measuring against objective criteria. And, and through the end of that was able to say, all right, we've decided on Git, and we've decided on Git, because the two main contenders are Bazaar and Git, and Bazaar would make a ton of sense if we were going to replace our issue queues and everything else, but we're not.
And so when it comes down to just the version control systems, they're very similar. We're going to go with Git, because it has more popular use among the Drupal Community today. And it turns out whew, that was the right decision, but it was not clear at all back then that that was the right decision. So I think to summarize it's like, you can't just achieve consensus around 15,000 people's opinions, but what you can do.
Yeah. Is allow genuine feedback channels. It doesn't work well when you're like, your feedback is very important to us and you don't actually listen. So you actually need to listen to what people are saying. Um, make sure that they understand that you've heard what they say and then provide transparency on your reasons.
For the decision that you're making and the more those decisions can be objectively based under criteria, instead of it feeling like, well, that's just Webchick's opinion, or she made a gut call on that. And instead of tying it around objective metrics that you can put it back to more and more people will be willing to stand behind the decision.
And there were a lot of people who weren't happy with that decision, but you know, what we saw when we launched the Git migration was our, our commits to, to contribute doubled in a single day. It was just like pow, cause that was all the people that had been working off on the sidelines. Because they were so frustrated with tools coming back to the community in a flashpoint like that.
So it was really good validation that we'd made the right choice.
Michael Meyers: [00:09:24] Cool. Who gets to make these decisions?
Angie Byron: [00:09:27] Yeah. Good question. Um, so in Drupal, we have a governance structure where at the very top of the tool chain or the tools, the people chain is Dries, Dries Buytaert, he's the benevolent dictator for life.
Then underneath him, you have a variety of decision-makers so the Drupal Association - we'll decide some things. The Core Committers will decide other things. The Community Working Group will decide other things in this kind of thing. Um, and so in a decision like the direction of Core or the direction of our collaboration tools, that was ultimately a Dries decision.
And I was just kind of. Like a firebrand. And I was like, I'm going to make a recommendation, but ultimately Dries is the one who signs off on things like that. Um, but then, you know, what I like about Drupal is, you know, I happened to be the person that did this, but, and I have good skills for this. Cause I genuinely enjoy learning and I don't have like, huge opinions on the thing.
You know what I mean? But there's a profile of person that could have led this discussion. It didn't have to be me. And what I like about Drupal is like, back then, I wasn't anybody. I wasn't a core committer. I wasn't anyone. I just was somebody fired up and passionate about solving this problem. And there was a path forward for me to do so.
So I, you know, collated all the responses I made the recommendation Dries chimed in on the thread and said, great, this is what we're doing. And then it was done. So it was pretty great. Um, so in the core governance structure nowadays, you know, it kind of depends where the decision is that needs to be made.
So if it's related to Core that oftentimes is one or more core committers. If it's related to something. You know, marketing legal, something on drupal.org that generally falls under the Drupal Association. And there's, you know, different types of decision making. It's gotten a lot more complex over the years just because the community has grown so much, but the bottom line is there's always somebody who's in charge of a certain decision, even if it filters all the way up to Dries and that between him and there, there's a number of important people to get buy in from an any decision that you're making as well.
Preston So: [00:11:24] And I love that, you know, because you know, what you're really doing is, is you know, putting in these fail, safe mechanisms and these, you know, really great approaches that allow for all of those 30,000 developers who had opinions and have perspectives to still be heard. But to still ensure that the innovation in the framework and the innovation in the space continues to move along.
And I think, you know, the example you shared of Git versus Mercurial versus Bazaar, you know, I actually remember being, you know, looking back at some of those threads and, you know, it's one of those things where it's such a momentous decision. Um, that has to be made, you know, it just has to be made, but it's so hard to bring in all of these people together, especially those naysayers and those folks who have really inflamed passions.
Um, so I'm kind of curious, just to pivot a little bit into a very different aspect of the kind of coordination work and the kind of you know, cat hurting. You do you know, there's always going to be, especially in a realm like software development, like open source. There's always going to be some, some, some trolls, some haters You know, some, some hellraisers you know, how do you deal with people who, who are a little bit more in that direction and ensure that, you know, they still have their voices heard, but you're also not letting them kind of you know, overtake or even silence potentially.
Um, you know, some of the other voices that need to be heard.
Angie Byron: [00:12:44] It's a really good question. Dries one time laid out this matrix. It's like, imagine the screen is divided into quarters, you know, and up here you have like how awesome a person is. And down here you have how much they contribute, you know, and someone who's like, awesome and contributes a lot. It's like, Oh, we love those people. They're great. And someone who doesn't know a lot about, but is awesome. It's like great. We're going to mentor them and get them over here. And if they don't contribute and also they're not nice people, you're sorta like, whatever we don't care about you, but the real dragon area is this part where it's like, they are both not very pleasant people to be around, but also contribute a lot.
And like a lot of times that can be really hard because we don't know what to do. So a couple of strategies that I've employed around that, and I don't want to call out any specific people. I'm sure we can all picture in our minds, people who are in that sort of fourth quadrant dragon area, but number one, and I'm just thinking of hammering this because this is the kind of person I am, but listen to them.
A lot of people dismiss comments in the way in which they're made because they weren't very nice about it. Or they were even like outright rude and attacking about it. What I find is that for every one person who's kind of down in this area. They're probably speaking for a lot of other people who have the same opinion and are either don't feel empowered because they don't have the clout to voice it, or because of whatever reason.
So was the first thing I try to do is get to the bottom of like, what are you actually frustrated about? Because there are the odd people who come swinging by just to make our lives difficult, but I would say that that's like one out of a thousand angry people that I've dealt with and the rest of those people have legitimate concerns.
And oftentimes, yeah, frustrated because they don't understand how to be empowered to see the change happen. So they feel like their only recourse is lashing out against the system rather than getting involved. So in a lot of cases, I resolve those by having a one on one conversation with these people, through whatever medium, finding out what it is or frustrated about and trying to redirect them so that they're in a good spot.
The second thing, and this is also going to blow some people's minds, but I include them. In the decision making process. So for example, when we chose to go with Symfony, that was another one, these big decisions can't go multiple ways on when we set up the sprints that was ultimately going to make that decision, we made sure.
To invite the loudest, most vocal opponents of Symfony in that discussion as well. So we made sure that their opinion was heard during the decision making process. And we ultimately went with Symfony, but, those people still got to be involved. They still got to voice what they were concerned about and, and there were people who were not at that meeting at least got to say, okay, so, and so's at that meeting, they can speak on my behalf and they know what's going on.
And then once in a while you will get a mega person who is or group of people that are just hell bent, destroyed, or hell bent focused on destroying your community. That also happened to us. We had a nice little stint of that. Um, in that case, you know, what was done is basically just be as transparent as possible about what you're doing.
The Drupal Association held a number of in person meetings as well as virtual meetings. To genuinely listen to what the community had to say. They wrote up the findings of that. They made governments recommend recommendations against that, you know, different ways to set up things so that it was more fail-proof and you know, it, so people genuinely had a voice and stuff like that.
I don't know. No, like how effective that was beyond the fact that Drupal still exists and it's still a thing people use. And people were very scared through a couple of these different instances that that was not going to be the case. So I do think that bottom line trolls, I think it really just depends. There are like at least five different flavors of trolls.
You know, there's the troll that is really just someone who doesn't speak English natively. Right. That's not a troll. That's someone who has a hard time communicating. In English. Right. And I worry that sometimes those people get thrown under the same banner because they speak, you know, some, you know, some European dialect where direct communication is just the way they speak.
There's a type of troll that is, you know, has some neuro-typical or neurodiversity that doesn't know it doesn't grok some of the, you know, maybe social cues that a lot of other people would. And as soon as you explain it to them, they're dreadfully sorry. And they apologize. And they mean it, but they don't quite clue in then there's the people who are, you know, kind of full of themselves and they, you know, are out there kind of, you know, doing this or whatever those people need special handling, but all of those people again are different from the person who's really trying to destroy your community and has bad intentions at all times. And all of those need a different strategy.
Preston So: [00:17:21] And I think, you know the fact that you have a taxonomy of Trolls, I think is really impressive, cause it shows that you've been in this for a really long time. I mean, you know, 15 years of involvement, deep involvement in Drupal you know, some of those you know, that we spent together.
Uh, so, so just to take a little bit of a different direction, you know, I think you know you know, one thing I admire about you Angie, of course, is, is, is your ability to you know, sort of bring very, very different people together in the same room and somehow come up with consensus at the end. um, so I'm kinda curious, you know you've been doing this for a long time now you know, 15 years.
Um, you know, one thing I wanted to ask is when you, when you look back on the last 15 years and think about all the. Different memories and surprises, especially the surprises that you've already shared. Um, what are some of the most memorable or some of the most touching or some of the most impactful moments that uh, happened to you over the course of that time?
Angie Byron: [00:18:16] Yeah. Wow. Oh, there are so many of those 15 years is a really long time. Um, I'll name like let's do like three of them or something. So one of my most memorable ones was I got my start in, in Drupal as a Google Summer of Code student. And I didn't ever use Drupal before this. So I came into the community like completely blind.
I picked it because it was in the list and I recognized it because I'm one of those people that view source on every webpage just to see what's happening. And I was like, Oh, Drupal. That's interesting. So my first DrupalCon was in Vancouver in 2006. And I didn't know anybody, like I had talked to people in IRC, but I didn't really know anyone.
So I'm like sitting in the corner of this hotel kind of by myself, like in my little Google summer of code t-shirt like with a laptop and kind of nervous and stuff like that. And I was just struck by just out of the gate, how friendly and welcoming this community was. So Steven Whittens, who was a core committer at the time came over and found me, and he introduced me to all kinds of people that were sitting around.
And then, you know, at the conference I had a lot of imposter syndrome. So, you know, if, somebody asks, you know, like, well, what sessions are you taking in? I'm like, Oh, I'm going to go to this, like intro to module development session, you know? And they're like, why? you already are writing modules? Why do you need it? I'm like, okay, Oh, yeah.
Right. You know, like that kind of thing. And and Adrian Rousseau was also a big Drupal developer back then. And he he was always doing like Sci-fi wizardry stuff, you know? And so like, one of the things was, I think it was a new Form API, which at that point was novel. And, you know, he was trying to talk to me about it really excited about and just kinda like, ah, and he's like, Oh wait.
I think you don't understand what I'm saying, but let me explain it a different way, because I want you to understand it. Cause it's awesome. You know, it wasn't one of those like, Oh, okay, whatever, I'm going to go talk to someone more at my level. And just like just impressed the entire way to that conference of just how welcoming and supportive, you know, there was a big code sprint to get Drupal 4.7 at the time out the door and everybody was welcome.
It, you know, it didn't matter how much experience you had. You just go and chime in. And I just think. That whole collection of moments from that first DrupalCon really formed my whole picture of the Drupal community. And, and I'm very pleased to hear, like from people who joined the community, like even the last year, they still feel that same way.
You know, we still see, you know, people showing up to the mentoring sprints and the tee shirts and feeling awesome. And we're getting their patches committed and stuff like that. So I think that was really cool. I think like really touching moment would be. Um, you know, at one point, I mean, to get all the details wrong here, but like at one point there was a DrupalCon Gabor make it, because his wife, something was like very seriously wrong with his wife and people were really worried and like everybody kind of banded together to like, you know, make like signs and like record videos and stuff like that.
I just like to show their support for him. And I lost my father back in 2011. It was the same thing. It was like, everybody was just kind of rallied around people who are going through stuff and like helping them get through it together. Um, and that's not something you find like a typical, you know, workplace, for example, necessarily.
Um, and so I thought that that was just really amazing. And then I think, you know, the other thing that I've just seen. So many like young people through the years come into Drupal and just be fricking awesome. Awesome. You know, we had a bunch of Google summer of code and Google highly open participation contest, which is now Google code-in students who come in and make Drupal.
Awesome. I think the best example of this is our entire testing system that we now use that powers I don't know, like a hundred thousand automated tests on every commit to make sure that the software is stable. That originated from a couple of teenagers, writing some tests in this new system and developing this testing framework in concert with Google and then like, you know, us all banding together to like we held a, we held an awesome testing party in Hungary, where there were Hungarian pancakes, and everybody bought chocolate from wherever they were in the world.
And that was your reward. If you wrote a test during the sprint, you got a little piece of chocolate and stuff. Just like, I don't know. I'm just like fundamentally amazed at this community and the kind of huge. Things that we've had to take on and just how everybody is on like always there for each other.
Yeah. And how they're so welcoming and supportive, you know, that, that moment of like, you don't know what I know. Well, let me make it so that you know, it cause it's awesome. And not kind of like, Oh, you don't know that well, but you know, it's just, it's something that I love about this community and it just permeates throughout.
Preston So: [00:22:40] No. Well, you know, one thing I, you know I would say is that a lot of that warmth and a lot of that kind of, you know, feeling of camaraderie and that feeling of trust is, is, you know, in no small part because of you and your involvement and your passion in the community. No, no, no. It's true because you know, you've been able to you know, lead by example and show how open source software development really works when it's done well.
Angie Byron: [00:23:03] Thank you Preston
Preston So: [00:23:04] Um, Oh, of course. I think it's um, so, you know that's, that's one of the things that I think is, is really important for, you know, especially nowadays when you know, in some ways I feel that some of the kind of major ideas of open source where some of the major tenets of open source are, are, are, you know, starting to come under attack a little bit from various angles.
Um, so, you know, one thing I wanted to ask is, you know, given your 15 years in open source and given that you've seen, you know, Drupal and open source evolve in this direction away from, you know, those first conferences where everyone knew each other and, you know was able to help each other to this new state where, you know, we're talking about.
Multinational companies using Drupal. We're talking about, you know, people who are really involved in the community, who we would never have thought of being involved before you know, over the course of those years, how has it been for you? No big surprises or shocks or things that cut you off.
Cause you know, you know, things that caught you off guard or things that you couldn't have ever predicted or imagined when you, when you...
Angie Byron: [00:24:09] Yeah, well I think Backdrop definitely falls under that. You know, the idea, right? A group of people would get so frustrated with the direction that the next generation of Drupal was going.
And they decided that the best thing to do is to kind of lock it in place. The way it had been like six or seven years ago, that definitely threw me for a loop. Um, And that was a, that was a trying time for our project as well, because you know, Drupal 8 at the time was, was mid development. So it wasn't like we were done.
It was like, kind of in the thick of it. And then this thing happened and yeah, we worry, like what it siphon people off. Would it throw people like, would it, would it, would it. Put Drupal at risk that people woah, you know, wouldn't want to do this. Um, would the community overreact act and try to retaliate against Backdrop?
Like, you know, what would happen out of all of that? And so I had a lot of behind the scenes meetings at that time. I like so that was, that was definitely a big one. And I think ultimately, you know, we've kind of landed in a pretty good place where you know, for people who are fundamentally opposed to the direction that Drupal 8 and 9 and 10 and all next, you know, all the rest of them forever are going to take, you know, they have an option available to them.
Um, I think also that there has been over the years, some really good cross project collaboration and particularly on the security team on some certain things. And I think that's a positive that came out of it. Um, and I think you know, it's, it's very clear that Backdrop is not trying to be Drupal.
And I think that also is helpful in that it's an option for people who kind of are like, you know, what. 2014 was a great year and let's keep it that way forever. Like if that's your philosophy of life, like there's an option for that. But for people who want to embrace, like all of the, you know, the new web standards and all the new, you know, tooling, automatic updates.
You know, there were a lot of like really hot feelings in all directions. Yeah. You know, cause I always look back on that time and I'm like, man, if they had just created like the equivalent of a legacy module that just had all the old procedural ways of doing things taxonomy and this, that, and the other thing.
That could have been the best thing, you know what I mean? And just like, yeah. So that's unfortunate that it resulted in two different code bases because there was a lot less overlap in sharing that can happen. But ultimately like you go forward, I think what it, five or six years after that whole thing happened, you know, I think, I think both projects are in a good place and people do have the choice.
So I think that's beneficial. So basically Drupal is just a lot of like, wow, that happened. Well, how do we make the best out of this? So, yeah.
Preston So: [00:27:01] Absolutely. And we're going to talk a lot more about Drupal 9 and some of the recent innovation happening in Drupal 10 and also what's coming up for Drupal in the next installment of Core Confidential.
This is all the time that we have.
Angie Byron: [00:27:13] So, no spoilers.
Preston So: [00:27:14] No spoilers yet, but we will come to it. Thank you all so much for joining us for this. First part of our two-part conversation with our dear friend and a colleague, Angie Byron make sure by the way, if you, if you are just checking in to the first installment of the series, make sure to check out part two it's right after this and the YouTube playlist or whatever it is that you're looking at uh, to see these videos, by the way, all the links that we mentioned today, all the conversations and all the.
Resources that we refer to are going to be posted online with this talk. Please remember to Like, Subscribe, UpVote, Share it with your friends and family and check out our past talks at tagone.com/tagteamtalks. If you want to bring Angie back. Cause we always love to have Angie on the show or if you want to bring in somebody else from the community that you really want to hear from, please remember to send us any feedback or topic ideas to email@example.com. And I want to thank my dear friends Michael and Angie today for joining us here on Core Confidential. Thank you all so much and until next time. Okay.