 Hi everyone, so it's my pleasure to introduce to you Joshua Wall today. Since 2007, Joshua used WordPress for personal projects and client projects. Over the past three years, he's been part of the team at XWP, where he's been able to dive deeply into designing for his clients inside the WordPress space. Fun fact about Joshua, he loves to read especially audiobooks. He usually has a dozen open books that he's going through at different rates. When he's designing, he can easily even read the books, which makes it an entirely very fun process. Today, Joshua's going to be talking about how he got involved in contributing to WordPress as a designer. He thought about it for years and tried several times, but it always felt like a huge barrier. Finally, last year he started contributing, so it has been a very great experience. Today he's going to share with you about how he took to finally get started and share some of his inspiration for ways you can do all the same. Thank you so much. Good morning everybody. Good morning. Welcome. WordPress Core, if you've spent any time in it, is a great place that you can actually get to work on the product, which is WordPress, and help to make it better. WordPress is made by people who are designers, developers, marketers, polyglots, people who can write lots of languages, writers, and if you're interested in accessibility, there's this whole community you can get involved in, even if you're not a developer. Last year I got to experience that, and I wanted to share what that experience was like to hopefully inspire others if you're interested in getting involved. Out of the slide link, the latest version is right there. There's a version on the website, but I can't stop messing with the slides, so even this morning I posted an updated version, so you can see the link right there that does my Twitter handle. And let's jump in. As mentioned, I've been working on WordPress as a web designer since 2007, various projects. And in my background, I've also been a team lead, a product owner, and just worked on a lot of small projects as well as large projects over that time. I also like to do illustrations, so you'll see some illustrations pop up in the slides. It's just kind of fun for me. And writing and reading. There's my little family there. We live in Northern Idaho, so I flew out this morning. Got up at 3.30 a little bit early, but I'm here. That's good. And a view of Coeur d'Alene, if you haven't been out there, it's quite beautiful out there. That was about two months ago. And I try to actually get away from my computer every now and then and get out into nature. I work at a company called XWP, and it's remote-based, so I work wherever I want to. And we do enterprise web development, working with technology companies to bring their work into the WordPress ecosystem. We've been working with Google on the AMP project, PWA. Common area, big commerce, just trying to help bring some of these cool technologies into the WordPress space. So my job as a designer has been trying to figure out what does that interface look like? How should the technologies work? And what a lot of companies like to do is say, okay, we have a cool technology, and we're going to bring it to WordPress with an iFrame. And they think that's some innovative idea, so we're trying to help them figure out what's the actual way that we should integrate into WordPress. And at XWP over the last year, we've been working to fill up actually UX team and practice to figure out the best ways to integrate these kind of projects. And the work I've done on these projects at XWP has given me some opportunities to jump into core because you spend a lot of time building out a WordPress plug-in or feature and you think, okay, maybe we can bring this into the core project. Maybe we can propose this as an idea to improve the core. And what I like to do is bring these design sketches and files and mock-ups into all of those projects. This is a good example of something I'll drop into a ticket if we're talking and say, hey, here's what I think the flow should look like. I'll spend a few minutes on something like this, and then the designers and developers, we should come together and talk about it. And what I love about mock-ups, and I talked about this last year at WordCamp Seattle, is if I do a quick sketch like this and show it to the team, most of the time I'm wrong, or half of the time I'm wrong. And that gives me an opportunity to say to the developer, here's what I was thinking. Do you agree with me? And they'll say, no, I wasn't thinking that at all. That's perfect because now we can get on the same page. So I'd encourage this type of interactivity on the projects I'm on. So let's jump into core why we're here today, what we're talking about, and just look at ways that maybe you can bring your own talents and experience into the project. For quite a few years, I've been working with my brother at this company as well. He'd been saying, hey, Joshua, why don't you get involved in core? Go spend some time over there. So I jumped into this thing called Track, which is the ticket management system in core. And I would promptly get overwhelmed and step away. It just felt too complicated. I didn't know how to get started. And if I would look at an issue, I'd see all these really smart people talking about it. And I felt like I didn't have much to contribute, so I'd walk away. In 2016, I got my first real opportunity working on a client project. Who here has heard of the Customizer in WordPress? A couple, perfect. I'll show you a screenshot of what it looks like here in a moment. The Customizer is a feature in WordPress that allows you to see your website live while also managing some options in the sidebar. And with one of our clients, we're giving a bunch of Customizer related work. And you can see a few of here. Here's my website. And on the side, there's some buttons there. And I can change maybe the colors if my theme allows me to or move around objects, play with the menus, et cetera. So we were trying to do some advanced stuff to make the Customizer better. And this is a sketch that one of my co-workers sent to me and said, hey, Joshua, we want to try to bring Save Man Publishing into the Customizer. We want to try to figure out a way to do that. So he sent this to me and I frankly had no idea what this was about, so we had to jump on a call and talk about it. What I was able to do is spend some time working with my colleagues on figuring out, okay, if I have something in the Customizer, how would I be able to save a draft to submit to my editor? How would I be able to leave it here and not mess up the website of the live production version but still see what my content would look like? So I started to work on some sketches of that, back and forth. And throughout this process, I'm able to work on this really hard feature that I can... Yes, this ICOB very... ICOB very convoluted, but I was able to work on this really hard feature in the Customizer without writing a line of code. I was able to work with the head architect, work with the team lead and be able to try to figure out, okay, if millions of people are going to start using this, what's the best safest way to allow saving and publishing to happen? So finally, I got to this point and I thought I was done. I thought, okay, this is pretty good. I can submit something for review, I can save a draft, I can schedule it, and this is all in that little Customizer button up there. I was actually very happy, but I got some feedback. I think it was Mel or Weston on the ticket. They said, here's some reasons why this is going to work. So I had to go back to the drawing board and went with a simple sketch again. I didn't want to go with all that fancy work of laying that out. And I said, hey, here's what I'm thinking. What if we had, if you hover over the button, it changes color, if you click on it, maybe it'll say saving and then save. And we just kept talking about it. At that point, I actually got really busy as a plan. So I had to step away and stop working on this feature. And Mel, one of the designers in Core, she was able to finish it up and it actually got shipped. So now this is part of Core, a save and publish feature. And if you look at it today, it's a little bit different than these sketches, but I was able to contribute to this whole process as able to really help me move it forward and talk about it. And I think we worked on this for about eight months. It was, you can see most of the record of the ticket if you look at it. So in 2017, our company did something that I thought was pretty cool for me. They said, hey, Joshua, for the next four months, we're going to sponsor your time just to go work on Core and do whatever the heck you want. And I got to spend a little bit of time each week and then just jump in. Well, I knew about the save and publish jump in the customizer. I knew that I'd been able to make an impact there. So I thought, let me see what else I can do. What are some other areas that I could work on? There's a little thing called Gutenberg starting to take off and get a lot of traction. So I started jumping into those tickets. Probably the biggest reason I jumped into Gutenberg is because if you work with technology, it's being developed on something called GitHub versus Track. And I could understand GitHub a lot easier, so I was able to jump into all the tickets and start giving design feedback. And so this is the point for me, is I was able to follow this software project that is very complex and has so many pieces that I don't understand from a technology standpoint or development standpoint, but I can look at it and say, here's what's going on and if you put a button here or move this around here, I think it'll be better. And that's where I was able to contribute and give some feedback. And here's some of the issues I worked on in that four-month period was comments, questions, sketches, that basically what I was doing. And I was able to help move some of these issues forward and help solve some of these problems that we were having. This is one of the ones that I first worked on with the Gutenberg editor, talking about what we could do with the Inserter to make it a little bit more friendly and useful. And you can go check out the issue there and just follow the discussion. And this one was to save and publish just another stage of it that I didn't show before where I was trying to figure out how the buttons work and what the flow would look like. And what I love about something like CORE and these projects is if you can bring sketches and comments and feedback to an issue, you can help bring designers and developers together to agree on what's being discussed. They can say, okay, I see Joshua, he spent a little bit of time on a sketch like this, so let's talk about it. I disagree with five of the things out here, but I agree with the rest that you have. And that helps move this work forward. I wrote an article last year on our XWP website about my experience, which is kind of what inspired me to do this talk. Just, hey, here's what I was able to do, here's the work I was able to do in CORE. And in 2018, I wanted an opportunity to spend a little bit more time and to do some more work. I got invited to be a team rep on Design Team in CORE, which basically means I help with some of the meetings, take notes, and try to bring a little structure to the work that all of these amazing volunteers are doing every day. And that's been a lot of fun for the last couple of months. And this summer, this was actually a pretty scary thing for me. I got to lead a release of WordPress, a minor release, with Paul Byron as the developer. And this was a moment where several of us in the design community, we thought this was very important to have someone co-leading a release who's not a developer. And that meant we really believed people have something to contribute to CORE, even if they're not writing lines to CORE. And to be frank, there's some things I had no idea what we were doing, and that's where I'd say, hey, Paul, what's going on here? What are we going to do? And then he would ask me for help, and together we were able to co-lead that release. And I put that note down at the bottom. I think in all of my work, I've written maybe two pull requests. One of them wasn't up to even a read me. I suggested a little grammar fix and pushed that live. But all the rest has been comments and sketches and questions. And then more recently, I started working on some work with Google Antis. That's a client project with Google, but that is open source as well, and some of it is trying to pull into WordPress and relate to it. Right now, I added this into the slide at the last moment. That's why it's changed, because I thought this would be relevant. There's a little thing called Released, maybe, in a couple of weeks, we hope, or not. And it's been... I was asked to try to figure out what the flow should be if you're about to upgrade, and you have to do a plug-in installed, or the classic editor plug-in installed, or no plug-in. What should a couple, maybe a hundred million people, be experienced? What should they see? What should the buttons look like, the interface look like? So I've been working on this issue, in fact, 45073, along with... I did a... I checked. There's a thing in core called props, where you give everyone props if they work on a ticket. I think there's been about two dozen people so far getting involved in this issue, because it's really important what will people see, what it's going to look like. So as people start out that conversation by saying, okay, here's what I think the interface will look like. Here's the path that I think we'll see if I have no plug-in or if I have this plug-in installed. And then one of the first things that happens is one of my co-workers looks at what I said, and, well, here's all the things we need to change about it. So I red-lined the whole thing. And then I posted this one. I think, last week, this is the most recent one. And this is actually still an ongoing discussion. We're trying to solve this problem of what should I... Should we tell people, hey, Gutenberg, it hurts you. Try a classic editor. Well, that sounds really scary. That sounds like we have no faith in this work. But do we ignore time on the classic editor? No, we probably shouldn't. So if any of you guys want to hop in, you can actually give feedback right now because we're trying to solve this problem today. Another one that I started last week, a lot of other people have been thinking about this as well, is in Gutenberg, there's this new tool called the block navigator where you can tap between blocks and it will show you your nested blocks or your columns. So if you have two columns, it'll say a paragraph is in here. It's a very useful feature, but it's hidden up there in a little pop-up. And if you are trying to use it a lot, it keeps closing on you. So I propose, I think on Thursday or Friday, what if we put it into a sidebar? And then one of our, the other folks in course said, well, sidebars are problematic for these reasons. So right now, this is, I just posted an update, I think two hours ago, this could use some feedback. If any of you are interested, you could jump in and say, hey, Joshua, I think that's a horrible idea, or I think that's great, let's try this instead. These are real tickets, real issues right now that anybody is welcome to jump in and give feedback on. That's actually, it's a little bit evicting that if you just go look around and see, I usually will type into them things looking for design feedback and I'll start giving my ideas and feedback and jump across a bunch of issues. It's a lot of fun. So some practical steps. If you're interested in getting involved, these are things I've been able to do for the last year and a half over different projects and with Gutenberg and track. And I've actually been able to make a small difference on some key issues in WordPress. I've had a feature come out now that I thought that I got to actually contribute to that button but it looks like and what it said and that was a very positive experience for me. The first thing that I'd like to tell people is if you're interested, there's a couple of meetings that happen every week in court. You hop on a Slack and it all happens in the Slack channel so you're not actually on a hangout or a live call and you can just see what people are talking about. This is from, I think, two weeks ago in court people are talking about release dates, features we're going to work on, what the component maintainers are doing and then the design channel we're talking about what is the design team supposed to focus on this week? What are things that people need help with? How can we help them? And then I think there's 15 other teams. There's 30 other channels. There's lots of places you can jump in. It can feel overwhelming. So I like to say just pick an area that sounds interesting to you. If you go to make.wordpress.org there's the design team, there's the marketing team, the accessibility team. All of these teams you can just jump in and start attending their meetings. And what I've found is if you attend those meetings you can usually say, hey, I'm new, I've never done this before, where can I help? And there's almost always going to be someone that will say, we've got an issue right now that would love some feedback on. And that's what I did. I basically just volunteered myself and I started actually working with some of the people in the design team. I started talking to Tammy and Mel and now we've got several new folks over the last year and we became a little bit of a team that understood each other. Then if you're getting a little bit brave you can hop into track or GitHub. And this is where everything related to WordPress and Gutenberg gets built. You can actually just go read tickets and give your feedback. You'll have to have accounts for you to these if you want to give any comments. But it, for me, is a fun thing to do on some tickets. I find others boring and it'll bother giving any feedback because I have nothing to say, but there's a lot of ones I can actually bring some of my own advice and experience to. For me, I was asking my team like why do you contribute to WordPress? What are the reasons that you do that? And some of the answers I got were here that you get to do something cool. You're affecting, I think, 32% now of the internet, the work that you're touching and you get to unravel a whole bunch of spaghetti problems that are all related and interrelated and it's actually, it's a lot upon us, a big challenge. All that said, while this is a very positive experience, I think there's just a few cautions that I want to tell people before they get involved just to give them a heads up. For one, if you spend much time in core, you will find that sometimes people aren't all positive, sometimes you get negative responses and sometimes one might say, why are you doing this? This isn't helpful. We'll get it out there. And in general, people who are leading out these teams are trying to fix that. We're trying to make sure people have more positive and kind and helpful responses. But if that happens, don't be dismayed. It's just people on the internet all trying to talk and help each other and sometimes we're not all as polite as we should be. There's also language barriers. We are an international community where people all around the world we have time zone barriers. The other issue that I think actually discourages people the most is they'll say, hey, I really cared about this issue and I gave a bunch of feedback and the issue just sat still for two years, nothing happened. Or this issue I've been following has been, there's been comments and track for eight years and nothing's happened. That can be a little bit discouraging. The answer that I would give is word press. It's been described as a meritocracy, not a democracy. Meaning the best ideas rise to the top. People who are willing to step forward and help can push ideas forward. So just because I have an idea I care about and I might even write up a perfect description does not mean it will happen. I need to understand who is leading out to that part of the project and I need to understand what the priorities are of the entire core team and see if the work I'm doing will actually align to that. And then the other thing I would say is don't just be off on your own. If you're going to do any work in court try to find one of the leads of a project or like a buddy or a mentor and say hey I really care about this project what can I do? And that's what happened to me. Tammy from the Tammy Lister she has been amazing of just giving me feedback and saying hey Joshua can you work on this or don't bother about this right now it's not a priority and that kind of communication has been really helpful when I don't have a ton of time to invest every week. So that's for the cautions. The other thing I'd like to share is for individuals we don't usually have a lot of time just to donate to a project. We have jobs or we have lives we are busy with things. If you follow some of the things I shared you could probably get your foot in the door to figure out what's going on and give some feedback and often I've seen people make a big impact just spending about five hours a week like they'll attend a meeting and they'll give feedback and monitor tickets a week and they'll move us forward and they're part of the team. The other thing I encourage is if you work at a technology company or a software company or a product company that is anyway related to WordPress it would actually benefit them to donate some of their employee time to the project. That's what my company has done where they've invested anywhere from one to ten people at a time working on core in different areas to build the software that helps our clients' lives get better. So I try to encourage people maybe talk to your company maybe see if they can donate some of your time as well to this project. It's something that if I was talking to someone recently people don't realize how few people work on this project. I think there's a couple dozen designers at the most who give some part-time support to the entire WordPress project and there's maybe five or six that are able to spend full or at least part-time on the project. Other than that that's kind of it. There's not too many people actually building this amazing piece of software that we all get to use. So I try to encourage you if you are a designer or if you're someone who's not a developer that's not what I feel, that's not what I have feedback on you can probably make a big impact in there just by jumping in and spending a little bit of time. Here's a couple of articles whether the link to it of one every month, twice a month there's a meeting for people who it's their first time and you can just jump in and if you're one contributing and talk to people and say here I am this is my first time. And then if you go to make as I mentioned at WordPress.org you can find a team that you want to join and then one of my co-workers wrote this article in 2016 Jeff Paul, he's actually led multiple releases now of I think he listed 12 ways you can contribute to WordPress, one of which is coding and I'm not trying to downplay the importance of that the product literally does not get built unless you have developers making it I'm just trying to say there's other areas of people who can contribute then the last thing is today throughout the entire day actually the room right over there is the contributor room you can go right in there and talk to someone and say hey this is my first time on contributing what can I do or I don't know where to spend my time what can I do I've attended I think two contributor days so far and a lot of them we spent six hours sketching up a bunch of ideas for improving a part of the WordPress interface that was really cool there's my Twitter handle so you can reach out to me if you have any questions and at this time actually go quite quick I don't spend a lot of time on this talk so if you have any questions we can chat about them otherwise that's it Thank you