EDITS.WS

Author: Nathan Wrigley

  • #65 – Bob Dunn on Building a WooCommerce Community

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox has a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case building a WooCommerce community.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the show, I’m very keen to hear from you, and hopefully get you all your idea on as soon as possible. Head over to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today, we have Bob Dunn. If you’ve been using WordPress for any length of time, and you’ve been consuming content in the ecosystem, it’s highly likely that you’ve come across Bob before. He’s been using WordPress since 2006, WooCommerce since 2011, and has been podcasting since 2014. In another life before he discovered WordPress, Bob ran a marketing company, but now his endeavors are all about WordPress.

    We talk about how Bob found WordPress back in the day, when he was creating websites with HTML and Flash. Bob branded himself as BobWP, and has never looked back. After several years of running an agency alongside his content creation, in 2014 Bob decided to go all in on his content and building a community around it.

    As you’ll hear, he tried a variety of different formats, some of which worked, and others which fell by the wayside. But it was all a journey to where he is now.

    Given the size of the WordPress community, Bob was able to discover his niche within the greater whole and concentrate upon WoCommerce. His popular Do the Woo podcast was born, and he’s been working on it ever since.

    We talk about how Bob has managed to keep the momentum going, and what he thinks are unique about his podcast and community. It’s not about growing a group or worrying about the number of listeners. For Bob, it’s about creating meaningful connections and working to make his community a worthwhile place to be for himself, his cohosts and consumers of his content.

    We talk about how growing a community such as this can be financed, as well as the ways that Bob is trying to innovate in the near future to give value back to the WordPress project more generally.

    It’s an interesting conversation about how content creators can find a place in the WordPress ecosystem, and what impact they can have.

    If you’re interested in finding out more, you can find all the links in the show notes by heading to WPTavern.com forward slash podcast. Where you’ll find all the other episodes as well.

    And so, without further delay, I bring you Bob Dunn.

    I am joined on the podcast today by Bob Dunn. Hello, Bob.

    [00:04:05] Bob Dunn: Hey Nathan, thanks for having me on. I’m pretty excited to be here.

    [00:04:08] Nathan Wrigley: Yeah, you’re very welcome. Thank you. Bob is known to me because we’ve met in the real world, and I’ve been following his podcast for many, many years. But if you don’t know Bob, let’s give you the opportunity to introduce yourself. So it’s a fairly bland question. I’m sorry about that. But it’s the one that we usually start with. Just give us a bit of background, tell us who you are, what your relationship is with WordPress and so on.

    [00:04:32] Bob Dunn: Okay. Before WordPress, before I even got into WordPress, I ran a marketing company. My wife and I ran a marketing company, and these were the days of print design. So that’s kind of was my background for, for many, many years. And eventually moved into WordPress, which is another little story in itself, but was just looking for something simple and easy to segue into the web as far as our business.

    And in 2006, I started playing with WordPress. Got into it more and more. My wife was blogging on Typepad, I believe, at the time. So I was thinking, well, maybe we should check out this blogging thing on WordPress. Got into that. That was what appealed to me first off.

    And then secondly was the fact that I had spent, in my other business doing these horrible HTML websites with Flash, and they were just atrociously, they were a horror. And I thought, I’ve got to find something simpler that I can make a nice, clean website for clients. I don’t need anything fancy, and I found that with WordPress and actually did in, I think, 2018, my first WordPress site for our business. And from there it was history. In 2010, I branded BobWP. I’ve been training, I’ve done just about everything in WordPress, or at least tried everything except development. And I’m, where I’m at today with, Do The Woo, which is a WooCommerce builder community site. But yeah, it’s been an interesting and fun journey.

    [00:06:06] Nathan Wrigley: How did you decide that you were going to turn your attention to what it is that you now do mostly, which is community building and podcasting? Was there a moment in time where you thought, I no longer wish to actually build sites and deal with clients? I want to concentrate on the content creation and the community building.

    [00:06:25] Bob Dunn: Yeah, around 2014 was when I stopped doing service work, designing sites specifically. I just was burned out. It was to the point where I would almost dread if somebody contacted me to put a site together, and I think it’s just because I’d been doing, at that point, between that and our other business, I’ve been doing client services for a good, probably 23 years or 24 years.

    And I thought, man, this isn’t the way to work with clients. I’m not giving them what they deserve. If I have that kind of attitude and I’m just dreading the next project. Ever since the beginning of my involvement with WordPress, the community always played a part. That was a part that really, was always there and always moved me forward.

    Back in 2007, 2008, I was on another online community, and it was very unique. I’m not going to get into the explanation of it, take a little bit too long, but that got me more involved in community, online and both in person. And that stuck with me, the community all the way through.

    And now the podcasting came along. I was a content maker. In 2007 I went to a workshop with some colleagues of mine, and it was on podcasting and they really wanted me to start a podcast. And I thought, well, this is very intriguing. I was looking at what I was doing. Uh, I don’t have the bandwidth for this. So I told them maybe someday, and that someday came like, I don’t know how many years later. 2014 is when I started the first podcast, and Matt Madeiros, which many of your listeners know from Matt Report and WP Minute. He was doing podcasting way back then too, and he kept poking at me.

    And we had a pretty good relationship, we talked a lot. And again, since we were both content makers, he said, come on Bob, you got to try podcasting. So he was never like, down my throat, but every once in a while we’d be talking and he’d go, oh, when you going to start that podcast? So between his less than annoying poking at me, and then having waited, I thought this is prime time.

    So in 2014, I said, I got to try this podcasting thing. And I did one for about a year and I called it WP Breakdown. And I thought it was very clever because I was essentially repeating what I did with tutorials and stuff. I was writing, breaking down WordPress. But then I also thought of the frustration of WordPress, somebody having a breakdown with WordPress. So I thought it was clever. I don’t know if anybody ever really got that from the title.

    But they were 10, 15 minute monologue podcasts that I did. And I wasn’t really thrilled with it. I think it was a format I had. So after a little over a year I said, I got to quit this. This is just me rambling, regurgitating what I’m writing down somewhere else. I need to wait till something hits me and then I’ll start up again.

    [00:09:38] Nathan Wrigley: That’s nice. I confess that I don’t think in all the years that I’ve been podcasting, I don’t think I’ve had the courage to do any monologue kind of thing. It’s always been an interview. So either with one person or multiple people. I don’t quite know why that is, but I’ve always found it much more easy to get conversation going, than to persuade myself to sit there and write something that I assume people would want to listen to.

    [00:10:05] Bob Dunn: Yeah, and I’d always been told, even in the early days of my other career, people always told me, you got to do something Bob. You either need to go into being a DJ or a minister, because of your voice. And I thought, well, you know, you don’t go into something just because of your voice. And that’s where a few people started poking me at podcasting.

    Oh, you have a voice for podcasting. I said, well, that’s nice, but it would be better if I had the time and the resources and everything else that comes along with it. The voice alone isn’t going to do it. And I’ve had a, I’ve had a few monologue ones. I’ve had a few interview. I’ve actually done seven podcasts since 2014.

    [00:10:44] Nathan Wrigley: That’s really rather a lot. It always amazes me that the community surrounding the WordPress project is big enough that it can have so many little niches. So, you know, if you’ve got a plugin that does one particular thing, that may well afford you a lifestyle, if you can sell it and upsell it and shift some licenses, then you can have a lifestyle there.

    But also that extends to things like you and I both do. It’s amazing to me that there are enough people out there who are into WordPress that it can support multiple different podcast channels and YouTube channels and all sorts of content creation, tutorials, but also podcasts like you’re listening to now. I find that extraordinary.

    [00:11:29] Bob Dunn: Yeah, it is amazing. And I think when I was doing it by myself, I realized that no, this isn’t right. This isn’t meant to be me just being here by myself doing some monologue. I’m not really enjoying it. And I think that was a community part of it, nagging at me, because when I started Do the Woo, I think I did one or two episodes and I said basically, screw this, I’ve got to get a co-host at least.

    And I reached out to Brad Williams from WebDevStudios. He said, would love to do it. We did a few by ourselves and then I thought even two people week after week or whatever the cadence was back then. Is it really what I want to do? Is it really what the listeners want to hear? The two of us talking week after week. So shortly after that we started bringing in guests.

    [00:12:26] Nathan Wrigley: I’ve tried my hand at community building with things like Facebook groups and so on. Various different ways of getting the community going, but that feels like an area where you are really concentrating. So it’s not true to say that you do the podcast. You do the podcast plus you have these endeavors to build community. You’ve got a variety of different people helping you create the podcast, but also you are trying to create a community around the podcast. How’s that going and what’s the intention there?

    [00:13:00] Bob Dunn: I think that, I started with building community around BobWP. So the brand in 2010 that I started, that helped make the way for building other communities, because it’s real hard to build, have these other grandeur ideas and not have built your own community yourself. So I did that, and when I really sat down and started looking at building community and I read books and I listened to the people that were experts in building community and I saw a lot of things and I thought, this just doesn’t, there’s something that doesn’t jive with what I want to do.

    And what I discovered was two things that I was looking at building a community. I call it without the noise and without the metrics. And what I mean by that is without the noise, when I first started the idea of Do the Woo and building a community for the WooCommerce builder. Everybody would ask me the question, so are you doing a Slack channel? Are you doing a Facebook group? Is this like a Discord? Where are you building this community? I said, I’m not doing any of those. And they were just kind of pause.

    My idea was that, and as painful as it sounds, that I would need to build community, basically one person at a time. That I didn’t need to prove that I have a community of thousands of people, or I have this group that has 10,000 people in it. Because the impact was more important to me than the number. Because as all of us know, you can have 20,000 followers on Twitter, and you engage with maybe 2% of them if you’re lucky.

    So there’s that metric that doesn’t mean that your community’s successful or not, I really feel that way. The metric is the communication you’re having with individuals. How you’re connecting people. And that tied into less noise.

    I didn’t need a bunch of people in a group on Discord and have them all talking away to each other. We have plenty of opportunities to do that, and I didn’t need to add something to that pile. So taking that in mind and moving ahead with those two, I call them my goals or my mantras, I guess. It’s gone very well because, what I see is, when I have people on the podcast, I have a certain amount of hosts, and our podcast is a little unique to the space because I have like, I believe, nine or 10 co-hosts now that do the different shows.

    I kind of mix them up. They all have their different personalities. They bring in a different perspective. And the connections that have been made between hosts and guests and guests and guests and hosts and hosts has been amazing. And it’s not this, like I said, huge number that I’m going to just worry about achieving and saying, join this community of 10,000 people, 20,000. Whatever I want it. Join this community where people are connecting with each other in different ways. And that’s what I think the podcasting has really brought to it.

    And you, you have your weekly Monday podcast where you bring in three different people. With you, I’m sure that same thing is happening. You’re building the WP Builds community that way because they’re all connecting. You have the people that come in and listen to the chat. You have guests that maybe have listened to other guests, who knows, they may have reached out to each other. Sometimes we hear about those stories, sometimes we don’t.

    And those are the things that are impactful to me. And I think that’s a way to really build community versus these steps that people go through. And there’s nothing wrong with having Facebook groups. There’s nothing wrong with having Discord groups. They all have their place. But personally for me, I knew the direction I needed to go.

    [00:17:05] Nathan Wrigley: Yeah. In order to allow yourself the time to put into this project. Whatever it is given the time that this podcast is released, wherever you’ve got to. But in order to give yourself the time, you obviously need to finance that. And I’m wondering how that works for you. Do you have relationships with companies? Are you sponsored in certain ways? How do you deal with paying the bills essentially?

    [00:17:34] Bob Dunn: Yeah, it’s old sponsorships and it’s a tough row. You can get sponsors, no problem. You can get sponsors if you don’t have listeners. They put out all these things that maybe have worked for them. A lot of it is who you know. A lot of it is your own community build up. And a lot of it is luck, I think. So yes, I have currently 12 pod friends that are my major sponsors, and then I have some spots for smaller sponsors.

    When I started my first podcast or one of my first, it was, Do the Woo actually, in the early years, changed to a podcast called WPeCommerce. When I started that podcast, out of the gate, I started with sponsors and I was able to get some people to come in and support me. Now, easier said than done. I had a lot of, as you mentioned, a lot of connections in the space. I had already built up a lot of relationships. I built up a brand, whatever that brand may convey, but it obviously was something that sponsors found value in.

    Now, you can only carry that so far. You have to really start delivering and you have to, you have to be honest with your sponsors. And how I do it is, a lot of times you will, how do I want to say this? Sponsors will have expectations, and those expectations might be metrics. How many listeners do you have? How many click-throughs am I going to have?

    Now, if you don’t have that or that isn’t your main goal, as I said before, with my community, I’m not looking at so much the metrics. I’m looking at the impact it has. Then you’ve got to turn around, sell that. And that’s what I do is I sell the impact of what my sponsors are doing for the community.

    And that’s not an easy sell, let me tell you. And not everybody has a budget to spend the money on that. So I’m fortunate. It’s something that when time comes around to get sponsors, it’s not like I just sit back and send out 12 emails and I get 12 yeses. It does take work and it’s not something I recommend for everyone.

    You know, there’s a lot of other ways you can fund your efforts. But if you really are able to do it full-time and put into it all your blood, sweat, and tears. And also decide what else you can provide through those sponsorships. Let me kinda step back. I’m kind of going off on a weird tangent.

    One of the biggest things I can ask anybody if you’re going to do a sponsorship, whether it’s for a podcast for a community, is two things. Be creative and be flexible. If you send out and you say, hey, this is what you get, case closed, we’re done. Great. If that’s it, and it works, fine. But the only way you can grow a sponsorship, grow trust from sponsors is to throw in some creativity to really basically give them a little bit more of an open book than saying this is what we deliver during this period of time, and that’s it.

    And that is what’s going to help you. And it helps them to understand more of what you’re actually doing with the podcast or the community, whatever it may be. Versus just saying, you get this and that’s it. If that makes sense. I kind of went off on a little tangent there and kind of got a little away from community, but the sponsorship is a real, I wish it was cut and dry is what I wish it was.

    And I could say, hey, you know, just do this and you’ll be happy, and life will go on and you can go out and smell the roses and live your life. But it can be frustrating, can be challenging, but if you work on it hard enough, you’ll find that sweet spot.

    [00:21:31] Nathan Wrigley: Yeah, you only have to go to events like WordCamps to see that WordPress has this giant commercial bit to it. There’s hundreds of companies at those events vying for your attention, and they may have booths, they may have great big areas of the exhibition hall if you like, devoted to their product or service. Or it may just be that they turn up and walk the halls and try to meet new people and forge relationships, set up meetings and what have you. So there’s a very large proportion of people in the WordPress space who want to sell into that space. And then along comes somebody like you who is directly talking to those people.

    And so I can see that the match is really good. You are essentially a conduit. You’re a short circuit between people who’ve got a product that they wish to sell, and trying to find that audience and it’s hard to build that audience. And I would imagine in many cases, those companies, they really don’t have the resources to build their own independent audience.

    So the idea of piggybacking of the hard work that you’ve done over many years must seem very appealing. But also, yeah, I guess they’ve got their constraints in terms of whether they’ve got the budget, what their success criteria are and so on. But do you see yourself as that middle man, if you like? The person that sits between the community who want to listen to authentic people talking in authentic ways, and the companies who want to get their product and service to that audience, but possibly don’t know quite how to do it.

    [00:23:08] Bob Dunn: That’s exactly how I sell my sponsorships. I’m there to be an advisor. I’m there to be somebody that a sponsor can throw it against the wall and see if it sticks. I can give them my impressions of what’s going on in the community. For our new year with our sponsors, a big part of that is me being a conduit. I mean it’s like, I tell my sponsors it’s, it’s a horrible way to say this, but use and abuse me. I’m here to help you make connections. If you want to talk to somebody, if you want to meet somebody. If I see a potential conversation that I feel would be valuable to whoever and the sponsor, and neither one of them have had any inclination about this may be happening.

    I’ll come right to them and say, hey, I’ve talked to so-and-so and I really think you should connect with this person. And at the same time, connecting with the different guests we have, I’ve had some sponsors that have actually connected with guests. In the next 12 months, as a group, what our sponsors are doing as part of their sponsorships now, and this kind of brings a other piece of the community back in, certain percentage of their sponsorship will go right back in to fund some of the things that we’re seeing and doing in the space right now as far as sending people to WordCamps, sending contributors to contributor days.

    Helping contributors basically finance all the hours and efforts they’re putting into things. So I thought, what better way, especially for sponsors that may not know where to put that money, where they’ll get the most value for it, putting it back into the community. I want to be that conduit.

    [00:25:04] Nathan Wrigley: So some of the sponsorship money that you’re receiving in this particular year, you are turning that round and recycling it back to people in your community to help them, as you described, get to WordCamp events. But also I would imagine there’s other things. But that’s the intention is to siphon off a certain proportion of your sponsorship revenue and repurpose it to help community members.

    [00:25:28] Bob Dunn: Right. And that’s one of the things, I did it as, I increased my sponsorship and as a added benefit that yes, let’s put this pocket of money together. Again, you may not know where to put it. But I can find the best places. I can talk to the right people. I can make sure that I’m not reinventing the wheel because there’s several organizations being put together, the WP Community Collective, all these other ones that will be able to help with this, and I can partner with them.

    So I’m real big with partnerships, finding the right place to put the money. I’m just not going to put some form on my site and say, okay, apply to be sent here, or to fund your project or whatever. I want to strategically make sure the sponsors monies are going to the right place.

    [00:26:19] Nathan Wrigley: Yeah. That’s really interesting. So there’s that as part of your community, but I know you’ve got quite a few irons in the fire and ideas circulating around. Depending on the time that this podcast is released, maybe those ideas will have changed. But right now, as of when we’re recording this, what are the goals, if you like for Bob and Do the Woo and the community around that for this coming year.

    [00:26:43] Bob Dunn: I really want to get even more people involved, reach more of the underrepresented globally. One big thing is that we want to reach out a lot more global and some of the pockets, especially in the Woo Builder. And it’ll be WooCommerce, I mean WordPress as well. But, it’s getting into those communities and elevating their voices.

    Essentially that is what my whole podcast is about. No matter how I do it. I’ve got several different ideas aside from having somebody come in as a guest, I’m going to be doing some panels, some live feeds, and I’d like to define it as a podcast for the community by the community.

    So there’s some real interesting pieces we’re looking at. We’re looking at bringing in a few podcasts that will be in native languages, because a lot of my guests, English is not their first language. I feel they struggle a little bit with really expressing themselves, like they would want to express themselves. And I can’t do this a lot, but I thought how great would that be to have, let’s say I’m just going to pick out a country in Europe, France.

    I get a couple guests, host. We get a couple guests for them and I basically give them a little bit of direction of what they want to talk about. Probably something WooCommerce, and let them do it in French, and go at it. And this is something that I want to do to give back to those little communities in all these different countries. At least saying, hey, you’re at least special enough and you’re part of this community that we want to at least give you this almost as a gift, and give you the opportunity to raise your voice, but in your own language.

    I’m doing a Friday show that I call WooBits, and I’m going to open it up and have a guest co-host come in with me each week and I’ll pick out a topic or two and we’ll just have a conversation. Again, this will be very open. It’s just somebody that wants the opportunity to kind of talk on the level as a co-host, but not have the commitment of doing this on a regular basis or starting their own podcast.

    And again, all around elevating their voices. Yeah, there’s several things I’m trying to think of what else is coming to mind, but I’m somebody that likes to think I have these things in place and these ideas in place, but I’m sure organically over the next however many months, other ideas will come and in other great possibilities. And a lot of those do come through the sponsors too. I constantly talk to them and say, do you have some unique idea you wanted to do with the community? Let’s see if we can do something under the guise that Do the Woo and make it happen.

    [00:29:42] Nathan Wrigley: Given that you are now doing the Do the Woo podcast, and you’ve gone down the rabbit hole of WooCommerce exclusively really. Why did you decide to do that and not focus on WordPress as a whole? Because, obviously WordPress as a whole is much bigger. So why the fascination with Woo was it that you were just more interested in that when you began this journey, or did it just seem like a nice niche to be involved in? What was the thinking there?

    [00:30:12] Bob Dunn: Boy, that’s a, that’s a good question. I wish I could say it’s as easy as I was drinking one night and decided to do it. But that would be too simple. The whole journey to Woo, I mean, I’ve been involved with WooCommerce since the beginning. I used to use their themes in their early days when their were WooThemes, so I knew them as a company.

    I knew, I’ve known a lot of the people there. It was a product that just always impressed me from the time it was released. During my sprint of doing more tutorials and stuff on bobwp.com, a few years back, I decided to focus on WooCommerce only because I knew there was a market, because I was into affiliate marketing at that time. And I knew there was a need.

    So that was just general topics, writing about plugins, extensions, things like that. But then the more I got into it, and the more I talked to people at WooCommerce, and the more I talked to people involved with WooCommerce, I felt like the community was of builders who were a little fragmented. And I took upon myself, I thought, what if I was able to actually start bringing them together? Start raising their voices.

    And, I realized that the Woo Builder community was very fragmented and they were all doing their own thing. And I, I just thought, okay, with as much experience that I’ve put into WooCommerce, and it just was a natural segue for me. Something just told me along the way to get into it more and more. I felt here’s an opportunity to do something more than just a podcast. Do something community wise. So I, I actually talked to a lot of people over a period of about seven or eight months before I even kicked off Do the Woo, to really get a feel of if this is something that is viable. And everything led me that way.

    So, there was that initial interest always using WooCommerce, and it just built on it over the years. And the interesting thing about it is that as much as we talk about WooCommerce, I’m finding I talk just as much about WordPress, in conversations on the podcast and stuff, because obviously WooCommerce is built on top of WordPress. So it’s a slash, you know, Do the Woo, do the WordPress type of thing. Except that that’d be really cumbersome to call it that.

    But the two overlap so much that the love and the interests I’ve had in WordPress for so many years fits in. And WooCommerce is a large, large piece of software. A lot of sites out there. And I was hoping by talking especially to people in other countries and their challenges and how they have built these little Woo communities, other places that none of us know about.

    I thought, well, it was sure it’d be nice to get them a little bit more noticed and hopefully active and do that in any way I can through the site. I’m kind of going back into community, but something that just grew over time and I just decided to run with it because I really knew that, I just saw the potential for that community. And just a side fact, when I started Do the Woo, I did several episodes of it and I actually flipped over then to a podcast called WPeCommerce Show. And I did that for almost two years, four years I think. And there was probably well over 2, 300 episodes. And that was a more generalized WordPress and e-commerce.

    And towards the end of it, I was having this nagging feeling. I wanted to kick Do the Woo back into things. So I actually started to Do the Woo up again. Did both of them at the same time, and eventually decided to end the WPeCommerce and focus on WooCommerce.

    [00:34:17] Nathan Wrigley: Do you, given that you are really keen on e-commerce and WooCommerce in particular, and probably keep your eye very closely on how it’s being developed. What’s your feelings for 2023, or indeed the last year? What have you enjoyed in the space? So I’m thinking particularly not about the community there, but some of the bits and pieces that have rolled out into WooCommerce. What’s been exciting, what’s been interesting? What products or services have you seen which you thought, ah, that’s one to watch, or that’s been good to see?

    [00:34:49] Bob Dunn: You know, I hate to admit this, but I’ve gotten to a point in the last two, three years that I keep on top of WooCommerce by proxy. Because I feel like I’ve been put in a position to put all these other people on, a lot smarter than me, and get the people that really know what they’re talking about to talk about WooCommerce.

    I think what I’ve noticed most about WooCommerce, and this is maybe, I’m not a developer, I don’t build sites anymore, so sometimes my attention kind of weighs away from some of that stuff, and I get too maybe focused on the people. But I like the growth they’ve been doing. I feel like they’re not just going, you know, crazy. They’re not this like bam, bam, bam. Tons of features, tons of features, flipping this, flipping that. Adding stuff all the time. They, they are taking their time and they’re doing it right, even with blocks.

    How long that they’ve taken to bring in Woo Blocks and the discussion around the product page and will the product page stay as it is, or will it become entirely block based? They don’t rush into anything. And sometimes I know maybe for some people that’s frustrating, but for myself as a business person and somebody that’s been in tech for a while, and just having talked to a lot of people. I think the thing that I’ve noticed. Even though the progress is moving fast in a lot of ways, they keep up with the right things, but they don’t push the envelope so much that they overdo it.

    And I think that’s the thing I’ve seen the most. And when I have people talk about WooCommerce, I’ve recognized the most is that they’re doing it at a pace that’s good and they’re doing it right, and that’s, my takeaway is. And even when I listen to them talk about what they have in the future, it’s not like this, we have dozens of things we want to do. It’s more of a logical, step by step versus just piling it on. So I think that’s probably my biggest takeaway. And, it is from a bigger, maybe a more bird’s eye view.

    [00:37:10] Nathan Wrigley: Given that you’ve changed your career several times, you’ve flipped between different jobs. If we cast your eye into the crystal ball over the next few years, do you see yourself still doing this? Do you have as much energy and passion for it now as you did, and do you intend to keep doing Do the Woo? Or do you suspect that the future might offer something else?

    [00:37:37] Bob Dunn: Well, if anybody wants to buy Do the Woo, I’m always. No, I’m just kidding. We’re in the, age of acquisitions, no. Seriously, I’m at an age, I started WordPress at the age of, right before my 50th birthday, I started diving into WordPress. So I’m at an age where I’m not looking to come up with the next big and new thing for myself.

    I’m really content with what I’m doing right now. So I’m think I’m in it for the long haul, because I think it’s going to be around. I don’t know how it will mold itself over the years. But my pivots that I’ve had over the years, and I’ve had several of them. They will be smaller pivots, but they’d still probably be within the realm of what I’m doing, versus just doing another whole swing. Now, I’m also somebody that says never say never, and you don’t know what the future holds. So don’t hold me to it. But I don’t have any, I have too many ideas for this still, and I think there’s still so much potential. I think I’m locked in for a while.

    [00:38:48] Nathan Wrigley: If anybody’s listening to this Bob, and they’re keen on e-commerce and WooCommerce in particular, and they never knew that you were trying to grow communities and connect people and all of that. Whether they’re from a company that might like to be on the one hand or the community member on the other. Where do they find you? Where’s the best places to get in touch with you and what you do?

    [00:39:09] Bob Dunn: Best place of course, you can always visit site, dothewoo.io. I do have a bobwp.com site. It’s a little bit lean right now. I’m kind of rebranding that. But dothewoo.io. And then on Twitter, I’m still hanging on Twitter. I mean, I’ll be there till they throw me off or something. You can find me @dothewoo, @bobwp. But basically look for BobWP on Mastodon, LinkedIn, all that stuff. You’ll find me there and that’ll connect you with Do the Woo.

    [00:39:43] Nathan Wrigley: Bob Dunn, thank you for chatting to me on the podcast today. I really appreciate it.

    [00:39:47] Bob Dunn: Thank you, Nathan. It was a true pleasure.

    On the podcast today, we have Bob Dunn.

    If you’ve been using WordPress for any length of time, and you’ve been consuming content in the ecosystem, it’s highly likely that you’ve come across Bob before. He’s been using WordPress since 2006, WooCommerce since 2011, and has been podcasting since 2014. In another life before he discovered WordPress, Bob ran a marketing company, but now his endeavours are all about WordPress.

    We talk about how Bob found WordPress back in the day when he was creating websites with HTML and Flash. Bob branded himself as BobWP and has never looked back.

    After several years of running an agency alongside his content creation, in 2014 Bob decided to go all-in on his content and building a community around it. As you’ll hear, he tried a variety of different formats, some of which worked, and others which fell by the wayside, but it was all a journey to where he is now.

    Given the size of the WordPress community, Bob was able to discover his niche within the greater whole and concentrate on WooCommerce. His popular Do the Woo podcast was born, and he’s been working on it ever since.

    We talk about how Bob has managed to keep the momentum going, and what he thinks are unique about his podcast and community. It’s not about growing a group or worrying about the number of listeners. For Bob, it’s about creating meaningful connections and working to make his community a worthwhile place to be for himself, his co-hosts and consumers of the content.

    We talk about how growing a community such as this can be financed, as well as the ways Bob is trying to innovate in the near future to give value back to the WordPress project more generally.

    It’s an interesting conversation about how content creators can find a place in the WordPress ecosystem and what impact they can have.

    Useful links.

    Do the Woo

    Matt Report

    WP Minute

    Brad Williams’ website

    WooCommerce

    WP Community Collective

    WooBits

    @dothewoo Twitter

    @bobwp Twitter

  • #64 – Patrick Posner on Using WordPress To Create Static Sites

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress, the people, the events, the plugins, the blocks, the themes, and in this case using WordPress as a way to create static sites.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice. Or go to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you. And hopefully get you or your idea featured on the show. Head to WPTavern.com forward slash contact forward slash jukebox. And use the form there.

    So on the podcast today, we have Patrick Posner. Patrick is a solopreneur and has been developing with WordPress since 2010. He’s worked in all sorts of environments as a freelancer, a senior developer in a WordPress product company, and since 2020 he’s been working full-time on his own projects.

    One of his projects is a plugin called Simply Static. It’s purpose is to make a static version of your website. This of course begs the question, what is a static site?

    Back in the early days of the internet, before WordPress, if you wanted to put a website online, you had to write the HTML yourself. You opened up a text editor and started to type. When you’d finished, you had an HTML file which you uploaded to a server somewhere. And if someone wanted to view that page, the server would send over that file.

    It worked, but thankfully, it didn’t stay that way for long. Software for desktops were developed, which would create the HTML for you. CMSs such as WordPress would take this further and create the HTML and CSS based upon the content you’d created, and the theme that was active. This was extremely convenient, but when all is said and done, the output is still the same as it was years ago. HTML, CSS, and possibly some JavaScript.

    Depending upon your setup in WordPress, quite a lot of complicated operations are needed to generate that code. Caching aside, is there a case for saving your HTML files, uploading them to a server, and then taking WordPress offline? Patrick certainly seems to think so.

    We talk about how this flattening of your website takes place, and what the advantages might be in terms of speed and the cost of hosting.

    We also get into the pros and cons of adopting the static site approach. Are there any sites which are more suited to being static than others?

    We also discuss what solutions are out there to make this happen, from Patrick’s own plugin, to the hosting providers and SaaS solutions which enable things like search and forms to still function.

    It’s a really interesting subject and one that you might like to explore, and this podcast is a great primer for that.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading to WPTavern.com forward slash podcast, where you’ll find all the other episodes as well.

    And so without further delay, I bring you Patrick Posner.

    I am joined on the podcast today by Patrick Posner. Hello Patrick.

    [00:04:16] Patrick Posner: Hey Nathan. Glad to be here.

    [00:04:18] Nathan Wrigley: Thank you so much. This is honestly going to be a really interesting topic. I think there’s going to be a lot of people at the end of this conversation who go away and start to fiddle with their setup. Because we’re going to be talking about a really different way of serving up your website.

    We’re strictly in the bounds of WordPress. Everything that we’re going to be doing today is WordPress, but we’re going to add a little bit of a twist, and this is the way that WordPress is served up to your clients.

    Patrick is the owner and developer of a plug-in called Simply Static. I’m going to link to it in the show notes. There is a version on the WordPress repo, which is available for free. There is also a paid version and we’ll get into all of the different pieces of that. So we’re going to be talking about static sites today, essentially. Ironing out the problems, figuring out what it all is and what Patrick’s solution does.

    Before we begin that, let’s go into Patrick’s origin story. Patrick, if you wouldn’t mind, just tell us about your relationship with WordPress. Tell us where you are, what you do for a living, how long you’ve been doing it, and all of those good things.

    [00:05:25] Patrick Posner: Yeah, sure. Happy to share. So I’m a WordPress developer since 2010. And I moved from several steps into the career I’m having today. I started with an agency as a developer, building client sites. And, after a couple of years I moved into self-employment and started getting some freelance clients. Building my first WooCommerce stores and more advanced WordPress websites.

    After a bunch of years I got employed again and worked as a senior plugin developer for one of the biggest WordPress product companies here in Germany. Just before Covid, I decided to get back to self-employment again, and since then I’m working full-time on my WordPress products, mainly plugins.

    [00:06:16] Nathan Wrigley: Thank you very much. You’ve got a website which people can find. It’s patrickposner.dev, and I will link to that in the show notes, but you can see the range of different things that you are doing over there. But we’re going to be focusing very much on one of your endeavors, which is a static site generating plugin.

    We’ll get into how it works, that particular plugin in a moment. But I think first of all we should clear up what a static site is. So just to reiterate, we’re using WordPress, but there’s something different about the way that WordPress distributes the pages and posts that we save. So, could you describe to us, any amount of detail, I guess, considering this is a WordPress specific podcast you really can go into the weeds with this if you like. But just tell us what is a static site? What are the benefits? Why should anybody making WordPress websites be interested in this?

    [00:07:12] Patrick Posner: So imagine stepping back 20 years. The internet consists of HTML, CSS and JavaScript. You have no database interaction. You have no complex server setups, just plain files. You can edit them directly, you can upload your images, PDF files and other stuff. That are static websites.

    And as the world and especially the internet is getting more and more complex, people are really enjoying the ease of static websites, as they don’t have to handle with updates with a database, with complex deployments and all that stuff. So that’s a basic idea of static websites.

    They don’t have a database. They are pretty secure and almost unhackable as they have no connection to a traditional server. So there’s no PHP exploits, having no database where people can or where hackers can fetch your user data, or install any malicious code or something like that.

    Another really beneficial thing of static sites is a part of hosting. So you can basically host a static site everywhere, on a pretty cheap standard web hosting package. But there are also a bunch of more optimized hosting providers like Netlify or GitHub Pages, which cover a couple of common problems. We may get into detail a little bit later for that. But, let’s say 404 pages or a search integration or basic form integration, where people can submit the form and the content of that is forwarded to you via email.

    [00:08:56] Nathan Wrigley: Yeah, so just to rehash a bit of that and go into the weeds on some of the bits and pieces there. So you mentioned that 20 years ago, I remember it well, actually. If you wanted to browse a website, essentially you would go to the url, and if you inspected the source code, you would just see a list of HTML, there may be some CSS in there and so on, and perhaps some images were linked to.

    But typically that HTML would’ve been written by a human probably. They would literally line by line, have gone through and written the whole thing. And the only thing crossing the wire was the HTML. So the page that you requested was a file.

    You would request index.Html and the internet, wherever that was served, would give you that file. That file was somewhere. Fast forward 20 years, now we’re into WordPress territory. And again, there’s a whole broad spectrum of people that listen to this podcast, and some of them may not be aware that the moment you request a WordPress page, a whole litany of very complicated things are going on in the background, depending on how many plug-ins you’ve got and what it is that you’re requesting. But it’s not as simple as I request a page, WordPress serves the page. No, there’s a whole theming engine and all sorts of database requests are being built on the backend at the time you request them.

    Now, typically, you know, if it’s a really lean site, you might not notice that it might be very, very quick. But when you start to do more complicated things, the time it takes to build that page adds up. So what you are proposing is that you can still use WordPress, but the output is saved and it’s the output which is served up just like it was 20 years ago. Have I got that roughly right?

    [00:10:52] Patrick Posner: Perfectly perfectly. So that’s exactly what the static site generation does within WordPress. You can edit your content in WordPress, but the result is just a static website.

    [00:11:05] Nathan Wrigley: Okay, right. So hopefully we’ve cleared that bit up. Now you mentioned that there’s whole bunch of benefits to this. Number one, I think, really would be the speed. The fact that there’s nothing being constructed by WordPress. So seconds, milliseconds. I don’t really know. It depends on each individual instance of WordPress.

    But the point is, there’s nothing complicated going on the background. You request a file, a file is served back at you, and so that’s quicker. Now, along for the ride there is also the security benefit. And you said that these websites are typically unhackable. And again, that might be a mystery to people. Can you explain why the security posture is improved by going static.

    [00:11:52] Patrick Posner: Yeah, sure. So security is often overlooked when it comes to static websites. But for me, that’s as important as the performance aspect of it. So you have basically a layer before your WordPress website. So you have your WordPress website, and the entire website is protected by basic authentication, for example. Or even better, you have your WordPress website on your local computer with a tool like Local WP, and your WordPress website don’t even touch the internet directly.

    And you convert the WordPress website to a static website. And this static website don’t have access to your WordPress database. There’s no ability to execute PHP, for example. So there’s no one that can access your server and do anything you don’t want.

    That starts with forms. So someone submits like malicious code in your form, and the input isn’t really escaped. So it doesn’t matter on a static website as you never have the problems that someone submits a form and it will be directly transferred to a WordPress website.

    The same is true for executing code. So if you have a static website, there aren’t any PHP files, and most statics hosts even block PHP files from executing in general. You will never have something like a malicious script on your aesthetic website that sends spam emails or collecting user data you don’t want. All of that is gone once you have a static website.

    [00:13:30] Nathan Wrigley: So you mentioned the scenario where, and I would encourage people to explore this a little bit, because it’s quite an interesting scenario. You mentioned that you could use a local install of WordPress. And so you may, for example, have come across a tool like Local, which is a desktop application. So you can download it for the Mac and windows and so on. There may be versions for Linux, I actually don’t know.

    But you can have a local version of WordPress and really, it only works on your machine whilst your machine is switched on. The principle being that you may use it just to test out a plugin, or you may use it just to test something out that you want to do quickly. You can spin up a website, but that website doesn’t really have an online presence. If you switch your computer off at the end of the day, it’s gone, it’s nowhere. It doesn’t exist.

    But in your scenario, you can create your website on your local machine. Then export the pages because you’ve essentially scraped the output HTML and figured out where the CSS and the files are and so on. And then you could push that to the server and then shut your computer down and the website will still work. But there’s absolutely no database online. There’s no PHP files getting requested, and so in that way, it’s more secure.

    [00:14:49] Patrick Posner: Yeah, absolutely. Also means that you have like a staging environment automatically. So your WordPress website is your staging website, right? So as long as you don’t push an update to your static website or to your hosting, you can do whatever you want with your WordPress website. Installing a new plugin, testing a new theme. Updating or not updating WordPress is also fine. Your static website stays online no matter what.

    [00:15:17] Nathan Wrigley: Yeah, it’s a real one way relationship, isn’t it? Whatever is on your WordPress website is always in isolation, if you like. And you have to publish the changes and push them to the server. So in that way, nothing comes back because the server really, in a sense, has no knowledge of the fact that there’s a WordPress website. It just knows that, well somebody’s requested a particular page. Have I got that page? Yes, I have. Here it is. It doesn’t know that there’s a WordPress website there at all.

    [00:15:51] Patrick Posner: Yep, that’s right.

    [00:15:52] Nathan Wrigley: Okay, and you mentioned another benefit of this approach was the fact that it can be hosted, and my understanding is that can in many cases, depending on the size and scale of your website, it can be hosted really, really affordably. And by affordably, I mean incredibly affordably. Now, I don’t know if there’s a dozen, hundreds of companies which are dedicated to this type of environment, but can you just talk us through the sort of cost benefits of doing it this way? Static.

    [00:16:24] Patrick Posner: Yeah, true. So, hosting a static website is completely different when it comes to the pricing tag attached, compared to any kind of a press hosting. We’re talking about like $1 for an entire year of hosting.

    There are also a bunch of providers that you can use for free, like Cloudflare Pages. Cloudflare Pages allows you to do like, I’m not entirely sure, it’s 500 updates to your static website per month for free. They don’t charge for the amount of files or the used data, the used space. So that’s one thing that you can use completely for free. There are others where there’s a little fee attached, but it’s always insanely cheap compared to traditional WordPress hosting.

    [00:17:16] Nathan Wrigley: You literally are in many cases talking about a handful of US cents, not dollars per month.

    [00:17:24] Patrick Posner: Yeah.

    [00:17:25] Nathan Wrigley: Yeah, it really is amazing. You mentioned earlier that the hosting company does take on a slightly different burden, in that because it’s just pages and that’s all they know about, then some of these hosting companies do take on additional responsibilities. So for example, in the scenario where somebody accidentally searches for a url which doesn’t exist.

    Well, WordPress, if you’ve got a traditional WordPress site, which is online with a traditional host, it handles that and it serves up a 404 page. Plus it can do things like search for you. That’s not the case here. And you have to take additional steps for those things to be catered for. So 404, search, things like forms. Do you just want to talk us through how you overcome those things?

    [00:18:10] Patrick Posner: Yeah, so you can, there are two different directions you can go here. You can do it yourself. It’s not that hard to provide an htaccess file to serve the request to a specific page. That’s one way. So there are a lot of users, especially in the Simply Static world, doing all of that on its own.

    But you can also use a provider like, let’s say Netlify. Netlify provides an easy way to configure a 404 page, and they handle all of that for you. So you basically type in a search and if there’s no result coming up, Netlify will handle the redirection to the 404 page for you. They also handle things like forms. So you can basically add a little ID into your existing form, and they will forward the submission to your email address that you also configured within Netlify.

    There are a bunch of solutions for different use cases. You can always decide to use a more like all in one solution like Netlify, or use your traditional hosting package and use services like Formspark. Formspark is a static site form tool. You can easily configure forms on Formspark and embed them. You get a little HTML snippet. You can embed them on your WordPress website and they handle all of that for you. Spam detection, forwarding, CC, BCC connections, automations with Zapier. So let’s say you want to, you have a, like a, newsletter form and you want to, each time someone submits the form, you want to automatically submit this user to your Mailchimp list.

    You can do that with Zapier or within Formspark. I’m not really sure, but I think Formspark even have a automation with MailPoet right now. So there are a bunch of ways you can handle that. And all of them, or most of them, don’t require to be like a professional developer or something like that.

    [00:20:12] Nathan Wrigley: Yeah, I guess that’s an important point, isn’t it? So there are many benefits that you can list. You know, it’s quick, it’s secure, it’s affordable. But there’s also a few little additional hurdles. You have to in some way manage search. In some way manage 404, and forms and so on. And, it sounds like the industry around static website hosting is beginning to mature to the point where there are off the peg solutions.

    So you mentioned Netlify can configure it so that 404 is taken care of. You don’t need to necessarily manage that yourself. And again, you mentioned a SaaS service, which will deliver forms to your email address. And I’ve had a little bit of a play with Formspark, and in all honesty, it was trivially simple to stick up a form and get it sending the data that was consumed by that form to my, my email address, it only took a matter of moments. It was really good.

    So, what we’ve talked about there is what a static site is. And because you’re on the podcast, it’s clear that you’re into that area and in fact, you’ve got a solution to turn a WordPress website into a static website. It’s called Simply Static. I’ll link to both the paid version and we’ll go into the differences a little bit later, but I’ll also link to the WordPress repository version, which will get you certainly going. Tell us what simply statics approach is. What is it doing? How long have you been working on it? Is this yours? Did you take it over from somebody? Just give us the rundown of what is Simply Static.

    [00:21:46] Patrick Posner: So Simply Static is a static site generator as a WordPress plugin. It basically acts like Google or a regular user. So, once you start an export within Simply Static, there’s a crawler behind it that visits each page on your website and downloads the entire HTML rendered, and all the CSS files, JavaScript files, and of course all the images.

    And, at the end, it zips the entire results. So you can use it to upload it, for example, to Netlify. I adopted the plugin in 2020 from Scott Blaine, who does an incredible job putting together the initial version of Simply Static. I got in contact with Blaine due to the fact that I was a user of the Simply Static plugin, and I used it for a client website where we had problems that we hadn’t full control over the server configuration.

    It was like a traditional hosting package. And the client booked a TV commercial and we expected a huge spike in traffic for that day, and we need a way to handle that. So nothing could be worse. And once TV commercial was out the landing page would simply get away. And so I would never restart again once TV commercial was on. So, I stumbled upon simply Static and it wasn’t working at that time, but I thought, okay, so working as a WordPress developer for like 12 years, I should be able to make it work.

    And, I fixed the problems in like one or two hours and provided a patch and Scott implemented that one and we got in a little discussion about the future of Simply Static and he told me that he was having his third or false kid, I’m not really sure, and he don’t really have the time anymore to maintain or even extend Simply Static from now on.

    And I thought, okay, so I’m working on my own products for like six years or seven years and I really, being a fan of complex products. So my other products like Password Protection or Secure File Transfer, it’s always something a little bit nerdy and I thought, okay, Simply Static is a pretty good fit for my existing portfolio, so why not taking it over and shipping all the patches, all the features people were requesting for years. And yeah, that was almost two years ago, or two and a half years ago, I’m not exactly sure. So that was the short history of how I get into Simply Static.

    [00:24:31] Nathan Wrigley: Perfect. So you took it over and ever since 2020, it’s been under your stewardship. And you just described that when you click publish in the same way that Google go around the internet and capture what is on your webpage, they’re not literally, well, they probably are as well, but typically they’re not taking an image of what’s on your page, they’re looking at the source. So they’re looking at the HTML and any other things that might be attached via that HTML.

    And essentially that’s what your plugin does. If you’ve got a brochure site, let’s say it’s got 10 pages. When you click the button in Simply Static.

    [00:25:08] Patrick Posner: Generate.

    [00:25:09] Nathan Wrigley: The generate button, thank you. Then it will scrape those 10 pages and put it into a zip file. That zip file, in the free version, you then take to a hosting provider and we keep talking about Netlify, so we may as well go with that. Take it to Netlify, upload it, and it’s then live, you’ve got your new iteration. So it’s a process of creating your WordPress website, saving things as you would normally, clicking generate, carrying the zip file over to Netlify, putting it over there, and then from that moment on the world, if you’ve got your DNS set up correctly, is looking at the flat html, the static HTML files, that simply Static has generated. Is that right?

    [00:25:55] Patrick Posner: Correct.

    [00:25:56] Nathan Wrigley: Perfect. How is the project going? You know, you’ve had it under your stewardship for a couple of years. It feels like static sites have become a bit of a hot topic. So I’m imagining that the plugin is experiencing growth.

    [00:26:10] Patrick Posner: Yeah, so Simply Static had a huge growth within the last two years. We almost 4x’d amount of active installation. So at the moment I took over the development of Simply Static was like 10 K active installations. We are now reached 40 K active installations. One thing I’ve done on day one, as I took over Simply Static and the GitHub repository was switching it to public.

    So it’s really a community driven project. You can always check the entire code base on github.com/simplystatic. And, you will find a little roadmap. You find issues we are working on. You can provide pull requests. Or you can make suggestions for new integrations or things that may not be working as expected.

    So we had that case with Elementor last week where Simply Static isn’t able to extract the bundled js that Elementor is generating to improve the performance. And we handle all of that, try to be as open as possible about the future of Simply Static. How things are going. Which direction we are going. Why I do things the way I do.

    So, for example, the crawling part, there are other solutions that do it more in a WordPress way. So they fetch all the custom post types and the generated archives and things like that. And it’s a valid approach, but I thought SEO is such a popular thing today and why not work as close as Google as possible to give an expected result once you generate a static website.

    So see it through the eyes of Google, and the eyes of your users and make sure your content is linked properly. You are having valid URLs. You are not having a bunch of 404 errors on your website. All of that is things Simply Static is taking care of to make the export as easy as possible.

    [00:28:17] Nathan Wrigley: It’s interesting because you and I are both obviously deeply embedded in the WordPress community. We love it and we probably obsess about WordPress more than is healthy for us. But a typical, I’m plucking this out of thin air, but I’m imagining there’s some truth in what I’m about to say.

    I would imagine a significant proportion of implementations of WordPress could really benefit from being static. And what I mean by that is, they are literally a site which is not really getting updated. It was built for let’s say a small business. And, that small business, they just need an internet presence. They need to be out there. They need a contact form. They need some description of what it is that they offer. Something fairly straightforward.

    The users of that, there’s a possibility that they don’t want the burden, because the internet is not what they do for a living. They don’t want the burden of having to renew licenses. They don’t want the burden for having to update plugins. They don’t want the burden for updating WordPress when it reaches the next version and so on. And I suppose in a sense, your solution kind of obviates that a little bit, because you don’t really, now, forgive me for saying this, because everybody will probably shoot me down for this.

    The site would still be secure, serviceable, workable even if you didn’t do all of the updates. So long as when you save it and generate your file, even if you’re on a really, really old version of WordPress, so long as the HTML that comes out the other end is valid and works, you are fine..

    [00:29:52] Patrick Posner: Yeah, absolutely. So one thing I keep saying to, a lot of users and customers is, let’s take WordPress offline in a good way. So we can use WordPress as one of the best tools to create a website. That can be on your local computer, on a protected environment, somewhere hosted. And can be sure that the results exported statically is still secure.

    Even if you don’t update or you don’t update your plugins regularly, you don’t update WordPress each time. You may not even update your theme out of a fear that it may break something. And all of that is covered by Simply Static due to the conversion. So use WordPress as a powerful editor for your website and use Simply Static to have peace of mind that your website is fast and secure even if you don’t get that much involvement in the WordPress world and you are always on track on all the security vulnerability reports and what’s new on Google page speed and all of those things.

    [00:30:59] Nathan Wrigley: It’s, really interesting. I’m just thinking about appliances in my kitchen. So an example would be my dishwasher. I don’t want my dishwasher to be on when there’s no dishes that need cleaning. It just needs to be off. Turn it off, then periodically go back to it and when it needs it, switch it on. And then once it’s done, switch it off again. It’s the same sort of principle here, isn’t it?

    WordPress, as on off-able. You switch it interact with it, publish the changes, get the changes onto the hosting in some way, and we’ll talk about the different methods in a moment, and then turn it off again, and remove any of the things that WordPress being switched on all the time may bring with it. Yeah, so I really like your description of it there.

    Now, just moving the subject forwards a little bit. Static sites, I feel that the word static sites and headless are being used a lot at the minute. And in many cases there may be confusion that these are in fact the same thing, that a static site that we are talking about today is the same as headless.

    Now it’s not really true, and I wonder if you could describe the differences. We could really go into the weeds here, but I don’t think we’ve probably got time for that. So a simple description of how they differ would be good.

    [00:32:11] Patrick Posner: I think simple is the best way to describe the difference between headless and static websites. So a headless website is more like a technical challenge. You usually have your WordPress website online somewhere all the time when you run a headless setup. The headless website continuously makes use of the REST API for WordPress to fetch content. To submit forms. To do all of dynamic stuff, but with JavaScript and not with PHP.

    And, one of the problems with headless website is that you almost ever need to be a developer or you have a developer maintaining your headless website. And that’s not the case with static websites due to the static generation, you can be pretty much anyone, and use the benefits a headless site offers without the technical challenges involved.

    And you can even use, and that’s a huge point for a lot of people, use your existing theme. So headless websites tend to be built from scratch, mostly in an enterprise context, and the theme is built with JavaScript and a modern JAMstack. So things like React are involved, Next.js, just to name a few of the tools involved in the stack.

    And they are complex and far away from end user friendly. A static website you use the tools you already know, but you get the benefits of a headless website. So the security improvement and the performance.

    [00:33:44] Nathan Wrigley: Yeah, I think it’s important to say that both implementations, static and headless, they really do have benefits. There’s clearly benefits that you’ve described for static and clearly there’s benefits for the headless approach. And as you described, enterprise level clients, and the fact that they may have access on tap to developers is a possible requirement there. I mean, you may be an incredibly technical non-developer, but I would imagine that it’s true to say that static sites are a little bit more straightforward to implement.

    Okay, with that in mind, let’s go through some examples of places where static sites are a good fit. And it is very important to say it’s not always the case. There is definitely going to be some examples where switching WordPress off is not what you want to do. So let’s do this in two ways. Let’s do the good first, let’s have some examples where being able to turn WordPress off using a static site is a good fit. Let’s do that first.

    [00:34:46] Patrick Posner: Sure. So, a good fit for a static WordPress website is a corporate website. It’s the most basic example. So yeah, traditional WordPress website for your plumbing service or whatever you do for a living. These sites are a perfect case for static sites. They rarely change. They don’t have any highly dynamic interaction with the WordPress website. You export them, leave them online, and that’s all you need.

    Another good example are blogs. So you can serve your entire blog as a static website and use little tricks to make something like comments work. So there are a bunch of tools and they are not that expensive to make comments work on your static website. You can publish new articles quite easily with Simply Static. So that’s a good case too.

    There are more specific types of websites that are also good fit. Think of documentation websites, where you add or improve the copy of the documentation, but you rarely switch the entire design, for example, for a documentation website.

    Another good fit are landing pages or lead generation websites. Think of AdWords landing pages or just an SEO landing page optimized for a specific keyword. Those pages are mostly small, so the static export is quite fast. And you don’t have to worry about updates or is my lead generation form working and all of that.

    Another thing that is often offloaded from the traditional website, and is more common in an enterprise context are career and department websites. So you have a separated career portal for all the jobs you are offering or you’re planning to offer to start a new department. And these pages are often separated from the main website. So like department-x.my domain.com, for example.

    [00:36:45] Nathan Wrigley: Yeah, perfect. So essentially what we’re saying there is, if the site is more or less static, then it’s a definite fit. So a corporate website. But even if it’s being modified, not necessarily being modified every few moments, then a blog for example. This is perfect. So all of those scenarios are a perfect fit. If you can say that you’re going to modify it not every moment of every day, then it seems to be a good fit.

    But that leads us onto the areas where potentially it’s not a good fit. And really this is where the dynamic stuff comes in. Any website which needs access to the database because it’s doing database intensive queries, that’s probably the area where it’s not such a good fit. So let’s go into the not good fits then.

    [00:37:30] Patrick Posner: So what the dynamic is key here. So there are a bunch of types of websites that obviously aren’t a good fit for a static website. The most common one is eCommerce websites. So think of WooCommerce as the most popular eCommerce solution for WordPress. You don’t really want to run a WooCommerce store as a static website. People need to be able to add things to their cart. They need to be able to log in to their customer account to download invoices or review their orders, and all of such things. I mean, you can do that with a static website, but it’s really a challenging part and you don’t want to do that.

    Another common thing, especially in the last couple of years are membership or community websites. So all kind of websites that really are highly interactive. People commenting. People sharing. There are subtypes of that like, forums or you even use like BuddyPress to have your own little social media space or corporate intranet where people discussing topics and you don’t really have a control over the publishing. There are a lot of users, high interactivity. It wouldn’t just make sense to publish a static version of a forum thread each time someone submits a new reply to it.

    [00:38:48] Nathan Wrigley: You imagine things like LMSs and e-commerce websites, where more or less everything that the end user wishes to do involves sucking something out of the database. So yeah, I can see why those scenarios won’t work. So that’s a nice clear definition. There’s definitely good fits here and there’s areas where, yeah, you probably could make it fit, but really, at that point you’re probably needing to really push the boundaries a little bit.

    In terms of the product that you’ve got, so Simply Static,. You have a version on the WordPress repo, but you also have a paid version. Typical case is, if there’s a paid version, there’s probably some extra features. Would you just like to outline the difference between what you have to do with the free version and what you can do. We’re recording this at the beginning of 2023, so caveat emptor, things may change, but at this moment in time, what’s the difference between the two different products that you offer?

    [00:39:44] Patrick Posner: Sure, happy to clarify that. So, Simply Static Pro works kind of like an add-on to Simply Static. And, the major difference is the convenience and the amount of automation provided. So while you can use Simply Static in the free version to generate a static version of your website, getting a zip and uploading it to Netlify. Simply Static Pro offers automation.

    That means you can connect Netlify directly, or you can connect services like Bunny CDN directly. And you don’t even need to log into Netlify to publish a static version. You can just simply use the generate button. And once you set up the configuration, everything is automated. So you generate the website and the files are automatically transferred to Netlify.

    There’s also a point of convenience in the ability to export subsets of your website. So you do a full static export at the start and you have your website running on Netlify and you just want to publish a new post. Or you want to export a collection of pages with their images based on a taxonomy, for example. This is where also Simply Static provides additional features, like single exports and build exports. Build exports, work like a taxonomy. You attach posts, pages, images, additional files, and you can export the entire subset with a simple click of a button. These are two of the main reasons people are using Simply Static Pro.

    Another thing is the idea to avoid external services as much as possible. That’s why Simply Static Pro’s also shipping with a forms integration, for example. We’re currently supporting Contact Form 7 and Gravity Forms, but we also figured out ways to use Elementor forms or Formidable Forms and a bunch of others. To use them without a service like Formspark we mentioned earlier.

    The idea is that your WordPress website is on a protected area and Simply Static Pro is forwarding the requests from your static website to your dynamic WordPress website by authenticating and submitting it back to WordPress and receiving the request on the static website with JavaScript, where I have a similar approach with the built in search integration.

    So Simply Static Pro ships with two different tools to make search work. One is fuse.js. It’s basically dependency-less JavaScript solution for search. We’re building json file, it’s a physical file on your server that contains all the search results that are available as content on your website.

    We’re fetching the titles, the description, and the complete, the full HTML content of each page. Storing that on a physical file and once a user starts typing the search, there is a auto complete feature suggesting results. User clicks on it and the search integration handles a redirection to the correct page.

    There’s another integration with Algolia. Algolia is a paid service. It’s like an online search solution, which is quite powerful as they handle fuzzy search and synonyms for you or typo tolerance search. So if someone types in a keyword of a typo, Algolia makes sure that he still finds the correct content.

    But in the end it works the same way. The major difference here is that Fuse.js has a physical file, which I wouldn’t recommend for a pretty huge website, but it’s fine for a standard website. So if you have like a simple corporate website, you can feel free to use Fuse.Js. But if you have like 150 K pages corporate website, I wouldn’t recommend Fuse.Js as a json file. I mean, you can imagine that the json file is adding up in size pretty quickly if you have 100,000 results stored in there.

    That’s where Algolia comes into play. Algolia is also really cheap. So you pay nothing for like 10 K searches per month and I don’t know, $2 for an additional 10 K search results. So it’s not a huge cost attached to your static site overall cost.

    [00:44:14] Nathan Wrigley: The number one thing that I take away from that is the pro versions really is adding, for the typical user, it’ll be adding convenience. The ability to, if you like, sync your WordPress website with wherever it’s hosted. So rather than having to download a file, take it over and upload it, you just click a button and the plugin takes care of that. Makes a decision about what it is that needs to pushed over and so on. So, yeah that’s really interesting.

    Patrick, we’re running out of time, but just very briefly, last question really is all about the future. You’ve obviously had experience of this now for two years. It sounds like you’re in it for the long haul. What have you got in the pipeline? What’s on the roadmap for the next period of time?

    [00:44:56] Patrick Posner: Yeah, so I just finished the roadmap for this year for Simply Static. So a bunch of things planned. One thing I’ll be launching simplystatic.com next month? Yeah, I think it will be next month. And it will contain all information collected for Simply Static and Simply Static Pro. All tutorials, a free course on how to use WordPress as a static site generator that I’m just in the middle of the production phase.

    We’ll also improve the onboarding for new developers and optimizing the way of contribution on GitHub. That means writing guides, how to contribute, offering documentation, how the code style is working, and what we expect from a commit or pull request. Offering a bunch of new issues to pick from. I got quite a lot of inspiration from the WordPress project itself. So you can imagine finding things like good first issue. In the future on the GitHub repository of Simply Static.

    There’s also a huge relaunch plan for the entire admin area of Simply Static. I’m already six month in a new ui ux concept for Simply Static. I try to completely modernize the look and the feeling of Simply Static and the configuration, and simplify a lot of the those things to make it easier for end users to use Simply Static, and get all the benefits without knowing about what is GitHub or what is deployment or things like that.

    So, easier wording, easier configuration. A little wizard that asks a couple of questions and preconfigures Simply Static for you, to make it as easy as possible. There’s also an ongoing task that we have pretty much like every WordPress plugin out there. So we like to improve the integration with popular plugins like Elementor, SEO plugins.

    This week we just shipped a huge update for the Simply Static free version. That contains an automation for XML site maps. So we automatically check which SEO plugin you use, finds the XML site map and add it to the static export so you don’t have to even know that you have a XML site maps, as long as you have a SEO plugin installed and basically configured, Simply Static will now be able to pass the XML sitemap and extract all URLs provided there.

    We’re also planning to build an official integration with the really popular Autoptimize plugin, make the HTML, CSS minification and bundlings that Autoptimize offers work with Simply Static without any additional configuration.

    [00:47:38] Nathan Wrigley: Sounds like there’s a lot.

    [00:47:40] Patrick Posner: I’m always planning a lot, but I also onboarding new people to the team. So, there’s a developer helping me right now with the Simply Static tasks and I may be able to onboard an additional developer, or maybe if someone is willing to lose the job, someone helping with support.

    Feel free to reach out if you are a technical person and maybe not a developer, and you would like to help with customer support for Simply Static. So I would really appreciate it.

    [00:48:10] Nathan Wrigley: Perfect segue Patrick, because the final question I want to ask is how do people contact you? Where are you online? That could be anything you like, an email address, obviously your contact form page on your website, but Twitter handle. Whatever you like.

    [00:48:23] Patrick Posner: Yeah, so patrickposner.dev is my website. You find all the information about Simply Static and Simply Static Pro here. And you can always reach out to me at hello@patrickposner.dev. I’m also quite active on Twitter, so @patrickposner_. Don’t ask me why there’s an underscore. That’s the two best ways to reach out to me.

    [00:48:47] Nathan Wrigley: Patrick Posner, thank you very much for chatting to me on the podcast today. I really appreciate it.

    [00:48:52] Patrick Posner: Thanks for having me.

    On the podcast today, we have Patrick Posner.

    Patrick is a solopreneur and has been developing with WordPress since 2010. He’s worked in many environments, as a freelancer, a senior developer in a WordPress product company, and since 2020 he’s been working full time on his own projects.

    One of his projects is a plugin called Simply Static. Its purpose is to make a static version of your website. This, of course, begs the question, what is a static site?

    Back in the early days of the internet, before WordPress, if you wanted to put a website online, you had to write the HTML yourself. You opened up a text editor and started to type. When you’d finished, you had an HTML file which you uploaded to a server somewhere, and if someone wanted to view that page, the server would send over that file. It worked, but, thankfully, it didn’t stay that way for long.

    Software for desktops were developed which would create the HTML for you. CMSs such as WordPress would take this further and create the HTML and CSS based upon the content you’d created and theme that was active.

    This was extremely convenient, but when all is said and done, the output is still the same as it was years ago, HTML, CSS and possibly some JavaScript.

    Depending upon your setup in WordPress, quite a lot of complicated operations are needed to generate that code. Caching aside, is there a case for saving your HTML files, uploading them to a server and then taking WordPress offline? Patrick certainly seems to think so.

    We talk about how this flattening of your website takes place, and what the advantages might be in terms of speed and the cost of hosting.

    We also get into the pros and cons of adopting the static site approach. Are there sites which are more suited to being static than others?

    We also discuss what solutions are out there to make this happen, from Patrick’s own plugin to the hosting providers and SaaS solutions, which enable things like search and forms to still function.

    It’s a really interesting subject and one that you might like to explore, and this podcast is a great primer for that.

    Useful links.

    Simply Static plugin on the WordPress repo

    Simply Static Pro website

    patrickposner.dev website

    Netlify

    GitHub Pages

    LocalWP

    Cloudflare Pages

    Formspark

    MailPoet

    Bunny CDN

    Contact Form 7

    Gravity Forms

    Elementor

    Formidable Forms

    Fuse.js

    Algolia

    Autoptimze

  • #63 – Paul Halfpenny on Adding Personalisation in WordPress

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, making your WordPress websites personal to each visitor.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast, player of choice, or go to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the show, I’m keen to hear from you and hopefully get you all your idea featured. Head over to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today, we have Paul Halfpenny. Paul is the CTO at Filter, a remote first digital agency that specializes in open source tech, such as WordPress, Laravel, React, React Native and Ionic, with enterprise clients. He’s been a speaker at WordCamp Europe and has an interest in making websites a more personal experience.

    Website personalization is the idea of amending content served by your website to match the conditions of your current users. It might be that you want to show, or hide, content to people during certain times of the year. Perhaps it would be helpful to translate content if the user comes from a specific locale. Or maybe you would like to offer a product based upon pages that a user has previously visited, or items that they have bought.

    All of this falls under the umbrella of personalization. And it’s an area that Paul thinks is going to be more important in the future.

    On the podcast, we talk about what techniques you can use to offer up personalized content. That could be WordPress plugins or options within blocks, but there’s also more complex setups with a whole range of ‘at the edge’ technologies.

    We chat about what kind of information you might want to amend on your website and whether it’s possible to do too much, and risk users feeling that they’re being tracked wherever they go online.

    How can website owners and users benefit from these techniques, and can this be sold as a service to clients in the same way that you might offer SEO or website optimization?

    Towards the end, we talk about whether or not aspects of personalization should be added into WordPress Core. Have SaaS services, which bake this into their platforms, heralded in an era in which personalization is expected by the majority of clients.

    It’s an interesting chat with many insights and tips. And so if you’re looking to explore this further, this episode is for you.

    If you’re interested in finding out more. You can find all of the links in the show notes by heading over to WPTavern.com forward slash podcast. Where you’ll find all of the other episodes as well.

    And so without further delay, I bring you Paul Halfpenny.

    I am joined on the podcast today by Paul Halfpenny. Hello Paul.

    [00:04:03] Paul Halfpenny: Hello, how are you doing?

    [00:04:05] Nathan Wrigley: Yeah. Good. Thank you. Very nice to have you on the podcast today. Paul’s going to be talking to us about personalization in WordPress, which is a topic, at least on this podcast, we have never touched upon. So this will be a really interesting and novel episode.

    Before we begin Paul, every episode I get the guests just to give us a bit of orientation, tell us who they are, where they work, how long they’ve been working with WordPress, and all of those kind of things. So, although it’s a very generic question, can we begin there? Tell us about yourself Paul.

    [00:04:33] Paul Halfpenny: I’m Paul. I’m the CTO at Filter. We’re a remote first digital agency. We’re based in the UK, and we specialize in open source tech such as WordPress, Laravel, React, React Native. We’ve been working on WordPress since about 2012. We’ve done that for a number of different clients that we’ve worked with over that time.

    Some small, some large, some we’re not really even allowed to mention. And we’re a WordPress VIP partner agency. We’re an Altis partner agency, WooCommerce partner agency as well. My co-founder and I, Ollie set up Filter just to try and be a little bit different to normal agencies. So we try and ensure that we have regular hours during the week, so nine til five thirty. We try not to work evenings and weekends, wherever possible. We are family friendly, so we try and be as flexible as possible with everybody in hope that we create a nice environment for everybody to work in.

    [00:05:31] Nathan Wrigley: Oh, really nice. Thank you very much for telling us all that. That’s great. The subject for today is personalization. Now, in the real world, we probably have a great understanding of what that means. We like things to be personalized. But we may not understand what it means in the context of websites and WordPress websites in particular.

    So do you mind just spending a few minutes broadly, give us the 10,000 mile high overview of what you mean by personalization in websites.

    [00:05:59] Paul Halfpenny: Yeah, so I think personalization is the process of knowing what the needs and preferences and interests of your customers or your site visitors are. So you can serve them what they’re looking for. So that’s going to allow you to give them more relevant communications. That’s going to perhaps improve their experience of going onto a website or an app that you develop.

    And it’s about creating that kind of smart content for your audience. So you are going to use items such as perhaps their location, their demographics, maybe what device they’re using, maybe where they’ve come from, maybe the language that they speak, to show them content that’s relevant to them. So for instance, if you are running a promotion on Facebook, and you’re directing people to your website.

    You might want to show visitors from that campaign an offer that you don’t send to anybody else. So you might check where they’ve come from, check the referrer, and then you might show some content on the website that gives them a promotional code that they can use in your shop, for instance. So it’s really about ensuring that you are trying to ensure that each of your users has an experience that’s relevant and contextual to them.

    [00:07:19] Nathan Wrigley: I guess it’s a fairly new idea, and by that I don’t mean it’s within the last year or so, but it’s not something that is as old as the hills in terms of web technology. You know, if you go back a decade or more, this was possibly beginning with some of the bigger platforms. I imagine Google were making forays into trying to figure out what your search results should look like. But in terms of WordPress websites, this feels like the beginning of that journey. Am I right in that or has this been going on for a while?

    [00:07:51] Paul Halfpenny: So personalization, I think, at an enterprise level has been around for a while. The really obvious answer is Amazon. So Amazon has been tracking your user behavior on their site, and they know which products to show you. So particularly in e-commerce, it’s a really big focus. And I think over the last decade, I would say, that’s translated itself into being, not just something that’s in custom platforms that bigger companies develop for themselves, but in proprietary content management systems like Sitecore or Optimizely, which have personalization baked into their core, and allow site editors to manage that.

    But we have only really seen it become of interest and becoming more popular in WordPress over the last couple of years. Yeah, it’s kind of more recent in WordPress, but it’s been around for a while. And I think even if I think back to my first agency job, which was in around 2003, I think 2002, we were talking to people that were selling email personalization. They would send a trigger campaign and then based on a response they would send out another type of campaign. So personalization is just becoming more standardized.

    [00:09:06] Nathan Wrigley: Thank you. That’s really interesting context. There’s a couple of words that you use there, which I think might be worth drilling down into. The first one was, well, you may have said no or knowing, but you said something along the lines of, knowing more about the user, but also you then, a little bit later possibly, substituted that word for tracking.

    And the two are very different, I guess. And in the example that you used of Amazon, I’m guessing the majority of what they know is based upon you being logged into their platform and performing actions. So, as an example, I’ve logged in and I demonstrate a desire to buy, I don’t know, a trampoline, and all of a sudden that’s bound to my account.

    Whereas it could be also trying to discover things when nobody is logged in. It’s just a visitor to the website. So you mentioned geography. So I’m coming, I’ve got an IP address, which appears to come from France say, and that can serve up different kind of content. So I guess it’s interesting to get into that conversation about is there a difference between knowing and tracking, and also the state, whether we’re logged in or not logged in. Whether any of that is important.

    [00:10:17] Paul Halfpenny: Obviously, when you are logged in, you get a lot more information about that user. So you can tie it to a particular user profile. You can match it to what they did last time they came back to the site. If they’re not logged in, you can only track them as long as a cookie might be stored in their browser, for instance, and if they clear their browser cookies you’re not going to be able to remember or retain that information for the future. So logging in gives you certain benefits.

    We try and split it down into simple and complex personalization. So simple is the idea that you just show basic content to nudge them in the right direction. So you might be using their location. To say okay, you’re coming from France, I’m going to show you this particular content. Or you might understand where they’re coming from and you don’t require them to be logged in to give them that level of personalization.

    I think a really good example of simple personalization is the ability to use date-based controls to show somebody different opening times during a holiday period. So, for instance, you might want to show a different block of content to somebody on the 20th of December that shows them when you are open for Christmas, and then you want to remove that block and you are just using simple controls to be able to do that.

    The more complex type of personalization is where you are actually tracking that data. And there’s a couple of ways to do that. So, you can obviously get people to log in and you can score their behavior on your website. So that might be when somebody goes to a particular page, you might decide to attribute a particular value to that page. So if they go to the homepage, you might give them a one, and if they go to the sales page, you might give them a five. And then if you go to a pricing page, you might give them another couple of points as well.

    And in the background you can then associate some rules and go, well, if they hit this particular score, we are going to show them a particular piece of content. So you are tracking them around the website and you are understanding what they’re doing. And obviously you’ve got your user data there.

    And that’s all using what we call first party data. So first party data is the data that you take on your site that your customers have agreed to give to you. I think in the wider industry, there’s a, particularly at the enterprise level, there’s a lot of large companies using platforms called CDPs, and that acronym stands for customer data platforms.

    And customer data platforms are a way of ingesting content from lots of different third party sources. So you might bring in data from Facebook and you might bring in data from AdWords, and you might bring in data from email, for instance, if you’ve got an email database. And the customer data platform will allow you to stitch all of that data together to provide more 360 holistic view of what you are doing across the internet.

    So it’s looking at all these data points and it’s matching you across all these different accounts. And then based on that, you can take different decisions in marketing automation to personalize an omni channel campaign where you are perhaps tracking what they’re doing on Facebook and then showing them something else on the website based on what you know they’ve done on Facebook previously. That sounds a little bit scary. That’s the kind of world that we are living in right now.

    [00:13:33] Nathan Wrigley: Yeah, I guess elements of it could sound scary, couldn’t they, depending on how far you take it and where the data ends up. But in the scenario that we may get in depth in today, if everything is just holed up in WordPress, I guess that’s maybe a different discussion.

    I’m interested to know how you would implement this, because a lot of the things that you described there, on the face of it, seem fairly complicated. It also seems that there is no limit to how complicated you could make it. So you could have condition, upon condition, upon condition. You really could go down the rabbit hole. So my first question is, is there a sort of seesaw here? Is there a, you have to weigh up what the benefit is as against the time it takes to put all these things together.

    Because I’m sure as developers of websites, we’ve all been down that rabbit hole before. You put a ton of time into something which it turns out was absolutely pointless. Nobody looked at it or nobody interacted with it in the way that you were imagining. And so there’s that trade off. But also what kind of interface are we dealing with here? I’m guessing this is the domain of plugins. How do we build these, kind of, if then statements to make all of this happen?

    [00:14:42] Paul Halfpenny: The idea that it’s quite complicated is true. So it can become as complex as you allow it to really. I think over the past decade or so, what we’ve seen is that when people have bought enterprise content management systems that have personalization tools baked in. They haven’t actually been able to get the full value out of those tools in all situations. Because they would very often need to bring in a team or fund a team to allow you to do that.

    And that can take multiple years, if you have complex requirements. And it costs a lot of money to do that. I think WordPress is a great example of going at it a different way. So within WordPress, there’s a number of different plugins out there that allow you to add personalization to your website very simply and easily.

    And a lot of those are also leveraging the benefits of Gutenberg as well. So, one that I’d really like to pick out is Block Visibility by Nick Diego, who’s a, I think is still a developer advocate at WP Engine. And that’s a, that’s a great plugin for being able to decide whether to show or hide block of content based on some custom rules.

    There’s others out there. IfSo’s quite a popular plugin that allows you to do that as well. But it also allows you to create audience segments and add conditional CSS where you need to. There’s plugins such as LogicHop. That has a pretty comprehensive rule set.

    And Human Made, as part of their Altis platform, they’ve been building something called Experience Blocks more for the enterprise set, I would say. Where they are taking that data offsite and then allowing you to use pretty enterprise analytics to see, to do AB testing and to personalize content as well.

    There’s also ways to do it at the hosting platforms as well. So we call this personalization at the edge. So rather than putting a plugin into your site, which might slow your site down, or you might have too many complex rules, hosts such as Pantheon and WP Engine have options to allow you to vary the content that’s being sent back from the CDN or the cache layer. So it doesn’t actually hit your WordPress site.

    So, Pantheon, have a PHP library that allows you to do that. WP Engine allow you to segment your user content using a vary response header. So you can say, well, for this group of users, I’m going to segment this group of users, this type of user, and then show them this content. But it doesn’t actually hit WordPress. It’s a cached version of that page that hits that particular segment.

    [00:17:16] Nathan Wrigley: It sounds from what you’re saying that the WordPress plugin route, so you mentioned Block Visibility, Logic Hop. You also mentioned IfSo, and there’s probably some others. It sounds like they maybe are the domain for people who are just sort of dabbling in this. They might not be experienced, they might not be developers, but it sounds like when you go to the edge scenario, the WP Engines and Pantheons and what have you, you really need to be an expert at this or at least be committed to becoming an expert in it. Is that a fair appraisal or have I misunderstood?

    [00:17:49] Paul Halfpenny: I think that’s relatively fair. I think certainly doing it at the edge is probably slightly harder. I think the benefits of doing it with a plugin such as the ones that we mentioned, allow you a more point and click interface within WordPress itself, within the WordPress admin.

    And actually they’re as comprehensive, if not more comprehensive than other methods. I think the important thing is, is ensuring that they’re associated with Gutenberg or Elementor, and you can do that within those page builders as well, or block builders or whatever we’re calling them these days.

    So that it’s a relatively smooth and easy process for people to use. I think for me, the key is always about ease of use. So, when we look at the kind of CMSs that we’ve used over the past 10 and 20 years, I know that the best reaction we get from our clients is when we show them WordPress as a contact management system. Because it will be, oh, thank goodness, that seems easy to use. I can cope with that. I don’t really have the time to go on a five day course to learn how to use this CMS, because I’m not using it every day. I’m using it once a week to post some content. And so WordPress really works for that, which is why we, you know, that is our CMS of choice these days, because we know how well it works.

    And I think Gutenberg’s a massive step forward with that as well in terms of having a WYSIWYG editor, having the ability to drag and drop blocks onto the screen. And I know things aren’t absolutely a hundred percent perfect right now, and I know there’s still challenges, and I know there’s still things to improve upon. But actually that’s a great interface for clients and the best personalization tools allow you to quickly and easily decide which blocks to show on a screen to which particular users?

    [00:19:37] Nathan Wrigley: Okay, in terms of performance of a website, that is something which is more and more, especially from the Google side of things. It feels like Google are really making performance and speed and all of the metrics that they’ve got for how quickly page loads and all of that. That’s very important and obviously any website that wants to do well needs to be found in a search engine.

    And I’m wondering if the WordPress plugin route is going to make that more difficult. So as an example, if we get really carried away and on our homepage of our website we have multiple different areas of personalization. It’s three days to Christmas and so we’ve put different images all over the webpage. We’re telling people that oh, hi, welcome visitor from France, or whatever it may be.

    You get the picture, we’re just adding in all of this stuff. And every single time we add in something, we’re adding complexity. And although the example I’ve given is ridiculous. Still, I’m sure that certain queries, certain things that you are asking are going to have an impact. So we’ll just speak about that for a minute.

    [00:20:42] Paul Halfpenny: Valid question. So I think it’s really important to remember that not every WordPress site runs like on a blazing fast hosting platform, and can cope with complex queries. A lot of WordPress sites run on shared platforms, they run with limited resources. And if you do add too much complexity to what you are trying to achieve, it might impact on your site speed. And obviously as you add that complexity and you add WordPress to be doing more, particularly in the database on every single request that you’re sending it back, that prevents it from being cached.

    So we did some work on this in terms of personalization, we built our own plugin, WP-DXP. We actually used a web component on the front end that communicates with the backend via the REST API, and that returns the data in some json. So it’s a lighter touch way of being able to add that personalization into the page, without having as much impact on the front end.

    But I think it’s really important, I think there’s a limit to how much personalization you should put in place. So we’ve talked quite a lot internally about how we can use AI to personalize websites. The jury’s kind of still out on that actually, because we are not sure that you need the ability to show absolutely different content to absolutely every different visitor that’s coming.

    Actually, what you should be doing is just chopping up your users into different types of audience segments, and then basing it on that. And you perhaps don’t need more than a couple of audience segments for a simple site. I think if you are doing something really complex and actually you really need high levels of personalization, then it might be that you’re running a headless site anyway, and you’re using APIs to deliver the content rather than sending it back to the server and doing it that way.

    [00:22:36] Nathan Wrigley: I guess like anything else, if you have an infinite amount of resources to throw at it, that could be time, development cost, or indeed just money on infrastructure to actually host the site. More or less all of this is going to be in purview, but the more meager your resources are, probably the lighter a touch you should have with all of this.

    [00:22:56] Paul Halfpenny: Yeah, and I think, if you’re just running a personal site or you are running a brochureware site for maybe a shop or a restaurant or a bricks and mortar store of some kind. You probably won’t have high level needs for personalization. You might have the example that I talked about earlier in that you want to show different opening hours. So you might use a date based request, or you might want to show a promotion to certain kinds of people at certain times of year. But you probably won’t be using scoring across the site to understand their behavior as they go around your website. That’s probably not an issue for you.

    Whereas if you’re running a publishing site, and you are developing news or content on a regular basis, then you might well need to do that. But then you’d expect that your resources will be higher and you will be able to have a dedicated server or a different kind of hosting platform that allows you some more resources to do that, to implement that complexity.

    [00:23:50] Nathan Wrigley: I guess your imagination is the limit really here, isn’t it? You could do whatever you like. And I think examples like social media platforms, you may have an opinion about whether these are good for society or not, but social media platforms are examples of serving up personalized content.

    My Facebook feed is nothing like yours. The same would be true for when I go to Twitter. It’s giving me content based upon a whole slew of data that it’s got. And it’s really compelling. I come back and I come back and I come back and even sometimes I tell myself I shouldn’t come back. I keep coming back. And it really is the personal touch.

    And if you can find aspects of that. Now, I imagine very few people are actually trying to build a social network. But just the idea that you could serve up something and learn over time that that one little thing is impactful. The position of something, the color of something, where it is on the page or whatever it may be. It’s definitely worth exploring because we know we are influenced by these things.

    [00:24:53] Paul Halfpenny: I always come at it as a, we want to help users to find the answers. So that’s where personalization works for us. It’s trying to recognize who they are, what their interests are, where they’re coming from. Nobody’s on the same journey. Everybody will land on your website on a different page. And it’s about trying to work out, if they haven’t logged in, who are they? Or if they have logged in, you know who they are. Perhaps you’ve got a little bit of history about them.

    And then trying to provide them with the answer that they need so they can carry on with their day. What people don’t want to do is come to a website and click around for ages, trying to find the information that they want and then get disappointed and go away.

    For me, we should be trying to ensure that people get the information that they need as quickly as possible and have a satisfying experience. It’s almost the same as for an e-commerce shop. What you want to do is, you know you probably want to buy this thing, you want to get there, you want to find that item, you want to purchase it as quickly as possible, and then you want to carry on with your day.

    Nobody wants to sit on the internet all day trying to find information. I do think you’re right about the depths of personalization that social media have gone to, and how there is a danger there of. perhaps unintentional bias. So obviously when you’re personalizing at that level and that scale, you’re putting everything into machine learning.

    So you’re taking what people have done on the site before. You’re sticking that in some kind of data lake or big platform on the backend. And then you’re using machine learning to look for patterns so you can go, right, okay, next time this happens, show this to this person, because a hundred people, other people did this as well.

    But you end up having those biases and potentially putting people into echo chambers that mean that they don’t see the outliers. They kind of get trapped, in seeing the same information, and that’s not really helpful. I always talk about my Apple music station. I have Paul Halfpenny station on Apple Music and for some reason, well, it brings up a lot of Depeche Mode to begin with. And that’s a good thing for me, but it very often brings up a specific Manic Street Preachers track, and I love the Manic Street Preachers, more they’re early stuff.

    But because this track keeps on playing, I assume it thinks that I really like that track. And then it keeps on playing it to me again. I’m kind of stuck in that cul-de-sac around that track right now. I think trying to use personalization to help people find answers is not necessarily to put them into a specific hole and go right, we know this is who you are, this is exactly what you want. It’s creating some openness, allowing them to see answers that they might not be expecting sometimes, not always providing everything to what they’ve done before, is where we should be heading.

    [00:27:32] Nathan Wrigley: it sounds analogous to me, going to the supermarket with my shopping list and more or less entering a shopping experience where on the first aisle is everything I want. I have to walk 10 meters into the shop, and my trolley’s now full, my list of shopping items has been ticked off.

    You know, I’ve just achieved what I want to do, and then I walk out the shop and get on with my day. So it’s a bit more like that. It’s trying to put things which are more helpful. I agree that the AI thing is something which, I don’t think at least WordPress and personalization, were probably not quite there yet, certainly not on the scale of the major social networks. But yeah, just the idea of going into a supermarket. Having the list, but somehow being presented with a supermarket, which is just what I want. That does seem like a really laudable target.

    [00:28:23] Paul Halfpenny: Yeah, Yeah I love the fact that you used a shopping list. I’m very strange, I think because I enjoy going to supermarkets. Slightly weird, whenever we visit another country, I like to go in the supermarket, and we were in America recently, and going to Walmart was probably the highlight of my trip.

    I like to go and look around, but then, you know, I also like to be able to go to Sainsburys and go and get the three items that I need and get out of there pretty quickly so I can get back home for tea. So knowing where everything is, is really helpful.

    [00:28:51] Nathan Wrigley: Yeah, okay. I’m going to change my analogy in that case. So I walk into the supermarket and when I get to the toothpaste bit, there is only toothpaste, but there’s multiple brands of toothpaste. So it’s not like it’s only giving me one toothpaste, but it’s just sort of showing me, well, here’s all the toothpaste for you.

    That’s really interesting. I’ve experienced this in real time, in that I’ve been contacted by some developers who’ve demonstrated what their plugin can do. And I have to say it really caught me short. I was a bit blown away by what the page was showing me. It wasn’t scary. It was quite entertaining and engaging, and I guess you just have to draw a line for yourself. How much work do you want to put into it? How much weirdness do you want to put into it? And by that I mean, how much stuff are you going to show back to the user, which makes them check themselves and say, hang on a minute, how do they know I’m in France? That’s weird. Those kind of things. I guess you’ve just got to figure that piece of the jigsaw out.

    [00:29:44] Paul Halfpenny: I think there’s something there for everyone. That’s the really important point. Personalization’s not just for enterprise. It’s not just for your Amazons. It is for your small sites, it is for your medium size sites, and it is for your enterprise sites as well.

    It’s just the complexity grows as your business grows. But I think that there is something there for everybody. You could name any kind of business and you would probably be able to go, well actually, why don’t you personalize in this way for that kind of person? Or, you’re coming from here, you would show them a different message. It’s really useful to think in those terms.

    [00:30:19] Nathan Wrigley: In the same way that 15 years ago there was no SEO career, there was if you worked at Google, but if you were an SEO trying to figure out how to best present your web property, that career probably didn’t really exist, and now it does. I’m wondering if personalization might well go in the same direction, you know, if you were to become an expert at this, knowledge of all the different plugins, knowledge of all the different platforms, if it’s a career path that you could possibly develop? Because it is quite a specialist skill, and especially when you described the Cloudflare and the Pantheons and the edge cases for all of that. If the technical barrier is so big that people may want this, but they also haven’t got the time to implement it, and so they would purchase in that skill.

    [00:31:06] Paul Halfpenny: Yeah, I think there is an opportunity there to do that. I think people don’t always see the return on investment. Perhaps they struggle to go, well, actually, if I make this change, what was my ROI to do that, and therefore what’s the cost benefit analysis of doing it? But if you look at most big companies right now, they’ll all have a CRM team or a digital team that is focused on this type of activity.

    If you go to any e-commerce provider or website online, there are people whose job it is to improve conversion, that’s what they do. And personalization is a part of improving conversion. And it takes in a couple of different skillsets. So there is a skillset, certainly massively around UX. So what’s the user experience? As a user, if I come to this website, what do I expect to see? Where do I expect my users to go after they’ve landed on this page? And am I trying to get them to go and do this? Or am I trying to get them to go and do that? Can I show them this kind of content?

    What do I know about them that I can then provide them with some additional value whilst they’re on this website? Or how can I remove friction so that they can complete their journey more quickly? And there’s some design that’s required for how you might do that. So UI interface design. Analytics. So analytics is really important to understand what people are doing, where they’re tapping, what they’re clicking on, and what they’re doing on that site and what their life cycle is as well.

    And then putting the content in and making sure that the content is relevant and contextual for that particular situation. So just editing content on a site for different audiences might mean that you need to create different variations of that content that may be worded slightly differently as well. Whether that’s multilingual content, maybe it’s a different way of talking to a different type of customer. We all know that you’re probably not going to speak the same way to maybe a marketing manager that’s coming to your website, as you would do to a developer that’s coming to look for a job.

    [00:33:06] Nathan Wrigley: Yeah. You mentioned ROI and what have you, and I wondered if a lot of that is built into these technologies, so, for example, in the case of the WordPress plugins, either yours or one of the other ones, whether you have that data inside of WordPress, or do you need to go and hook it up to other tools, some analytics tool or what have you?

    You know, a simple AB test, can that be done in these platforms? And does it give you a, well 15 people clicked on the blue variation, but 28 clicked on the red variation. Do you get any of that feedback in here? Or are the WordPress tools simply a case of, look, here’s the technology to do it. That’s what we’ve got for you.

    [00:33:45] Paul Halfpenny: So some of the plugins offer those stats and can record it in your own database. And others will do it offsite. So I think Logic Hop is part of this AB testing. I might be wrong. will score your AB testing, on your own site. But I know that Altis uses enterprise analytics that will then it will determine what your potential size of your audience is for a particular segment so that you can apply some rules to that segment? It depends what you are trying to achieve. If you are just trying to show people, so you can do it in a couple different ways.

    You can obviously store the data in your own WordPress instance. Most people will probably use Google Analytics or Fathom Analytics, to understand where people might be tapping on buttons and maybe put an event in via Google Tag Manager so that it can register that tap or that click when the content is shown to them. That would be a really good way of doing it.

    Again, we come back to the problem that smaller sites are on, potentially on, shared hosting. They might have the resources. And if you are storing stats up in your database, how useful is that and how many resources you are using and is that slowing your site down?

    [00:34:57] Nathan Wrigley: One final question just before we knock it on the head is, in terms of the availability for this in WordPress. At the minute, it’s very much the domain of plugins. So plugins in the traditional sense of the word, but also you’ve got things that work with the block editor as well. But my understanding is, forgive me if I’ve got this incorrect, my understanding is that you would like to see aspects of this creeping into WordPress Core?

    So if that’s true, I think it’s fair to say that you have a, an impression that most people, or a significant proportion users of WordPress would find this thing useful. It would be a great tool to have in. And you point to the fact that the commercial rivals, so Optimizely and Sitecore and so on, they have this built in as part of their core platform.

    Do you want to just speak about that for a minute? Have I misrepresented you there, or would you like to see some of these tools, and I’m guessing you’re not imagining the full monty? Just a subset of simple things built into WordPress Core?

    [00:36:00] Paul Halfpenny: I really do think it needs to be in Core. I use WordPress in a couple different ways. I use it for my personal site, for myself and my friends or other small companies that we just do pro bono work for. I use it in my agency life. So we work with mid-market and enterprise companies.

    And then I’ve seen how WordPress compares to other content management systems on the market. And I think as WordPress grows, I think this is a feature that kind of needs to be in there and that would be useful to most users. I see value in it from a, a number of different ways.

    Even something as simple as having the ability to show content or hide a block in Gutenberg based on if somebody’s logged in or not. That for me would be really useful, based on the device type they’re using, based on where they’re, what country they’re coming from. I don’t think it needs to be to the extent of putting AB testing in.

    I think all of that kind of functionality can be done via plugins to extend it. I think there’s adequate scope there if somebody wants to do more, that they could add some plugins to do that. But I do think as WordPress grows and changes over the next decade, I think that personalized user experience becomes even more important.

    And I think it’s better for users for WordPress if this stuff is handled and managed and added to Core, so that it’s there for everybody to use as they need it. I don’t think it’s terribly complex in terms of being able to create some rules to show some content or be able to show or hide a block.

    And I think there’s also something around working in enterprise that shows us that that is really needed for WordPress to compete as an enterprise platform. And I’m really aware that not everybody that’s listening to this or, you know, the majority of people that work with WordPress don’t work with Enterprise.

    And so it’s, it is not really relevant to them. But I think that that’s just what we see in the market and we see WordPress being adopted by enterprise. And it’s one of the things that clients ask us for. They ask us for loads of things. They say, have you got multilingual baked in? No, you need a plugin for that. And there’s a couple different ways to do that, but it’s coming in Gutenberg at some point in the future. And they go, well, have you got workflows? No, haven’t really got workflows. Has it got its own analytics system? Well, no, it hasn’t got its own analytic system.

    And then personalization is one of those other big features. So, we are interested in it because we work with WordPress. We like to be able to use WordPress in those situations rather than having to deliver on other platforms, which perhaps we don’t enjoy working with as much.

    And also, we know clients don’t enjoy working with them as much. And actually we think there should be a really great alternative to those platforms. It is a personal view, you know, but I think that there’s a growing demand for it. And I think that with Gutenberg and the move to block based content, it becomes a lot easier. It wasn’t really possible in the old classic editor approach. You know, you could do it on the front end, but it’s very code heavy. But now it’s relatively simple to achieve.

    [00:39:24] Nathan Wrigley: Paul, if somebody listening to this podcast shares your opinion there and wants to reach out and get in touch and continue this discussion, where would be the best place to do that? It’s up to you. It could be a Twitter handle or an email or whatever you like.

    [00:39:39] Paul Halfpenny: Is anybody still on Twitter these days? I do wonder, like I scroll my Twitter feed now and there doesn’t seem to be as many people on there. Look, I would love people to get in touch because I just love talking about this stuff, right? So I think it’s really interesting.

    I think the opinions are really interesting. filteragency.com is our agency website. paulhalfpenny.com is my personal website. You can email me, paul @ filteragency.com. You can find me on Twitter, with a terrible photo that makes me look much younger than I actually am, paulfhalfpenny, I think. To be honest, there aren’t too many Paul Halfpenny’s around, so, you know, typing it into Google tends to give some results. It’s quite fortunate, really.

    [00:40:22] Nathan Wrigley: Paul Halfpenny. Thank you very much for chatting to me on the podcast today. I really appreciate it.

    [00:40:27] Paul Halfpenny: Thank you very much. It’s a pleasure to be invited on.

    On the podcast today we have Paul Halfpenny.

    Paul is the CTO at Filter, a remote-first digital agency that specialises in open-source tech such as WordPress, Laravel, React, React Native and Ionic with enterprise clients.

    He’s been a speaker at WordCamp Europe and has an interest in making websites a more personal experience.

    Website personalisation is the idea of amending content served by your website to match the conditions of your current users. It might be that you want to show (or hide) content to people during certain times of the year. Perhaps it would be helpful to translate content if the user comes from a specific locale. Or maybe you would like to offer a product based upon pages that a user had previously visited, or items that they have bought.

    All of this falls under the umbrella of personalisation, and it’s an area that Paul thinks is going to be more important in the future.

    On the podcast we talk about what techniques you can use to offer up personalised content. That could be WordPress plugins or options within blocks, but there are also more complex setups with a whole range of ‘at the edge’ technologies.

    We chat about what kind of information you might want to amend on your website, and whether it’s possible to do too much, and risk users feeling that they’re being tracked wherever they go online.

    How can website owners and users benefit from these techniques, and can this be sold as a service to clients in the same way that you might offer SEO or website optimisation?

    Towards the end, we talk about whether or not aspects of personalisation should be added into WordPress Core. Have SaaS services which bake this into their platforms heralded in an era in which personalisation is expected by the majority of clients?

    It’s an interesting chat with many insights and tips, and so if you’re looking to explore this subject further, this episode is for you.

    Useful links.

    Filter agency website

    WordPress VIP partners

    Sitecore

    Optimizely

    Block Visibility plugin by Nick Diego

    If So plugin website

    Logic Hop website

    Experience Blocks website

    WP-DXP plugin

    Google Tag Manager

    Fathom Analytics

    Paul’s Twitter account

  • #62 – Naoko Takano on the Importance of the First WordCamp Asia

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case the reasons why WordCamp Asia is such an important event.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you and hopefully get you, or your idea, featured on the show. Head to WPTavern.com forward slash contact forward slash jutebox and use the form there.

    So on the podcast today we have Naoko Takano.

    A few days from now, from the 17th to the 19th of February 2023, to be precise, the first in-person WordCamp Asia will take place in Bangkok, Thailand. If you follow WordPress events closely, then I’m sure that you’ve seen the excitement mounting.

    Naoko is on the podcast today to talk about this important event, how it came to be, and why it matters.

    We start off getting some background on Naoko and her personal journey with WordPress. She’s currently sponsored full-time by Automattic to work with the wordpress.org community and polyglots teams.

    The conversation then turns to the event itself. It’s sold out, but you can still take parts by watching the live streams of the three tracks that are running.

    We talk about the fact that, although this is the first in-person WordCamp Asia, it should not have been. WordCamp Asia was in the books for 2020. More or less everything was planned and prepared, and then Covid struck. The timing could not have been worse. It was heartbreaking. Naoko talks about the disappointment felt by the community, and how they’ve managed to maintain their commitment to making the event happen.

    The team that is putting on the current event, contains some people from the cancelled 2020 event, but there’s new members too, and they span many Asian countries. So there’s a real diversity in the organization.

    Towards the end of the podcast, we get into the important question of why we need a WordCamp Asia. Naoko makes the point that the other flagship WordPress events are not that accessible for some people. This could be because of the difficulty in acquiring visas for the U.S. Or Europe, but also the costs of traveling to the event, and accommodation whilst there. It’s hoped that WordCamp Asia will provide a chance for a whole new audience to attend, in a location which is closer to home.

    We wrap up with Naoko explaining how WordCamp Asia aims to differ from the other events through their vision of being welcoming, nurturing, and experimental.

    If you’re attending WordCamp Asia your in-person or online, this podcast will give you a new perspective on the event. And if you’re not planning on being there, maybe this episode will make you rethink.

    If you’re interested in finding out more, you can find all the links in the show notes by heading over to WPTavern.com forward slash podcast, where you’ll find all the other episodes as well.

    And so without further delay, I bring you Naoko Takano.

    I am joined on the podcast today by Naoko Takano. Hello Naoko.

    [00:04:20] Naoko Takano: Hello.

    [00:04:21] Nathan Wrigley: Very nice to have you on the podcast today. We’re going to be talking today about a very exciting subject, a very new, an exciting event called WordCamp Asia. We’ll get onto why it’s not quite as new as it may seem a little bit later. But first Naoko, I wonder if you wouldn’t mind just giving us a little potted history about yourself, about your relationship with WordPress, your history with WordPress and WordPress events, and things like that. So it’s over to you. Introduce yourself please.

    [00:04:51] Naoko Takano: Sure. I’m Naoko Takano based in Tokyo. I’ve been using WordPress for as long as WordPress has been around actually. So it’s been 20 years now. I started using WordPress as a personal blog platform, since I was living in the US and I wanted to have a place to write in Japanese, to communicate online. And then it, it’s a long story since then. I started building websites. Then became a front end engineer. Then became a freelancer.

    Then, I actually started organizing WordCamps in Japan, Tokyo. And then I met Matt Mullenweg at WordCamp in Japan. And since then, I got hired by Automattic as a support engineer. And then, since 2019, I am a community manager of WordPress.org. I’m a full-time sponsored volunteer for wordpress.org community and polyglots team.

    [00:05:49] Nathan Wrigley: You really do have a very long history with WordPress. Yeah. It’s very rare that I bump into somebody who has 20 years of WordPress under their belt. That’s most impressive. Well, thank you for joining us on the show today. We are here to talk about WordCamp Asia, which is going to be happening if all the stars align, and this podcast episode is published on the date I’m expecting it to be published.

    It will be just around the corner. It’ll be a matter of days, possibly just over a week before the event is coming around. There must be great excitement in your part of the world about it. Do you want to just lay out for us when and where it is. So just the nuts and the bolts of when it’s happening, where it is, and so on.

    [00:06:31] Naoko Takano: Sure. So, the first WordCamp Asia will be happening in 2023. Is from 17th to 19th, February. It’s a three day event in Thailand, Bangkok, Thailand.

    [00:06:47] Nathan Wrigley: And it’s happening at the, now, forgive me if I get the name of this wrong. It’s the True Icon Hall. Is that the name of the venue?

    [00:06:55] Naoko Takano: That’s correct. That’s correct.

    [00:06:56] Nathan Wrigley: It’s a conference center in the middle of Bangkok.

    [00:06:59] Naoko Takano: Yes. it’s a newly built conference hall. I think they were built in 2019, and it’s by the Chao Phraya River. And it’s part of the Icon Siam Complex and it’s very beautiful place even there in 2019.

    [00:07:17] Nathan Wrigley: Excellent, excellent. Now, I think it’s probably important to say at this point that if you are not in possession of a ticket, no matter what we say, don’t make plans to go to WordCamp Asia. Because my understanding is that the full amount of tickets, I think it’s 1,500, have in fact sold out. Is that true?

    [00:07:36] Naoko Takano: Yes, at the moment, we don’t have any plan for releasing any batch of tickets. You may be able to get refunded tickets that will be released as they come back. But unless one of the very lucky ones that will get these very few refunded tickets. We don’t have any plan on raising any big amount of tickets anymore.

    [00:07:58] Nathan Wrigley: Yeah, well that’s okay though because if you are keen to participate in WordCamp Asia and do not have a ticket and have no plans to attend. My understanding is, and you can confirm this I hope, is that the event itself will be live streamed, in the way that we’ve been used to over the last couple of years, is that in fact true?

    [00:08:18] Naoko Takano: Yes. We have three tracks and all the tracks will be live streamed.

    [00:08:22] Nathan Wrigley: Great. Even if you don’t possess a ticket, you’ll be able to get there. So we have WordCamp Europe, these great big, I’m going to say international events. I don’t know if there’s a correct terminology for these kind of flagship events. But we’ve got WordCamp Europe, we’ve got WordCamp US, and now into the mix we have WordCamp Asia.

    So obviously the first event actually happening. But there is a sort of disappointing story behind this, because if you are following the WordPress news and you have been since 2019, you’ll know that the event, tragically, I’m going to use that word, had to be cancelled more or less at the last moment due to the Covid outbreak.

    Do you want to get into that a little bit? Might be interesting to hear the story. It was, if memory serves, very much several weeks away, it was really, really close, and the whole thing got pulled. With hindsight, that was probably a very wise decision. But at the time, I remember community members who, as yet, we’re unable to grasp the scope of Covid because it really hadn’t gone anywhere yet.

    There was much gnashing of teeth and rending of clothes and people sort of saying, oh, what a shame. Just tell us from your perspective, because I know you were on the team for that. What was that disappointment like to suffer through?

    [00:09:40] Naoko Takano: So, yes, WordCamp Asia 2020 was the first WordCamp that was cancelled due to Covid 19. And that was the end of February in 2020, that was supposed to happen. And, because I think it was probably the first event that was cancelled due to pandemic of any type of situation in the world, in the whole history of WorldCamps. And we just couldn’t believe that happened. We always believed WordCamp will be planned and it will happen, you know, when the day comes.

    So it was such a loss to us. To me it was like losing someone by an accident. Just lost someone, you know, or something that was so sure. That you were looking forward to. It was very, very crushing for us. At the time we didn’t understand the amount of what’s coming. So, we actually rescheduled it for the same year and we did that twice. And then after that we didn’t say anything for sure about the upcoming schedule.

    [00:10:47] Nathan Wrigley: Yeah, incredibly disappointing. I actually do want to dwell on this for a little bit longer, if you don’t mind. Because if you’ve ever been to a WordCamp, maybe that’s in a city near you or one of the bigger ones, as we’ve just described, Europe or US. You’ll probably have understood the amount of organization that goes into it.

    This is not an event which comes up and is organized several weeks in advance. This is something that takes a lot of people, a very large amount of time to organize. There’s speakers, there’s venues, there’s sponsors, there’s meals, there’s accessibility. There’s a whole host of things going. And for the rest of us, it was simply a case of, oh, it’s been cancelled. Well that’s disappointing. Perhaps I’ve got to get a refund on my air travel, or perhaps I don’t have to do anything because I wasn’t attending anyway.

    The point being that it was simply a question that it was cancelled. Whereas for you and the community that had gathered together to organize it, it must have been, like you said, crushing. And I’m just wondering how easy it was to get people back on board this time around. Or whether people left the WordCamp ecosystem and decided, I’m not getting involved with that again. How’s it been?

    [00:12:05] Naoko Takano: So the bright side of things is that we became stronger team because of the challenges that we had to face. But situations changed for many people. You know, three years is a long time. So we did lose some people due to changing their situation or commitment level. They could promise after three years. But, we did have nice number of people who came back. I would say in the beginning of reunion, I would say probably like 80%. Everybody wanted to come back and do it again because we weren’t able to. So, yeah, it wasn’t like a disbanding of the whole community organizers, but we came back.

    [00:12:47] Nathan Wrigley: Yeah, that’s remarkable. Sometimes I have to pinch myself when I think about WordPress and the fact that this little piece of software, which began 20 years ago, which probably didn’t have any pretensions of growing to the size that it is now. Yeah, I have to pinch myself for the breadth and the depth, the amazing spread globally of the project.

    So you’ve kindly written in the show notes a list of the countries that people have come from in order to assemble WordCamp Asia, this year, 2023. And I’m just going to read it out because it’s, it’s amazing. So we’ve got participants or volunteers, I should say, helping to organize from the following countries, Bangladesh, Bhutan, Hong Kong, India, Indonesia, Japan, Lebanon, Malaysia, Nepal, Pakistan, Philippines, Singapore, Taiwan, and Thailand. I mean, that’s just remarkable. Very impressive.

    [00:13:45] Naoko Takano: Yeah. I think it’s, that’s why we were so fascinated and amazed with this community. Because, I think there’s rare chance that you get to work with such a diverse group of people around the world, around Asia. And in itself organizing is interesting and learning experience and also community building experience, I think.

    [00:14:08] Nathan Wrigley: Yeah. If I was to assist with the WordCamp US team, I’m guessing that a lot of them would come from the US and so broadly speaking, their backgrounds would be quite similar. And although Europe is perhaps a little bit more different from country to country. You know, if you go from the southern part of Europe to the northern part of Europe there are differences in the cultures. But they’re not tremendously different, shall we say.

    Whereas you’ve got from India to Pakistan, to the Philippines, to Taiwan and Thailand. That must be a really interesting collection of people, because, I would imagine that the countries that they come from are very different in very great respects.

    [00:14:48] Naoko Takano: Yeah, we have different culture, different style of communication. Only, I think, small percentage of us speak English as native language, or day-to-day, everyday language. So there’s big barrier around communication style. But as I said, it’s also like an experience that you can’t get outside of this community, especially as a such tight group that you talk to every day.

    So that’s the difference between other type of contribution in WordPress. WordCamp organization is very interesting in experience that we get to learn about each other very deeply.

    [00:15:29] Nathan Wrigley: Can I ask how you do, do the organization? We’ll come into how long you’ve been preparing this event in a moment. But what are you using? I know that typically things like Slack may involved. But also are you, broadly speaking, communicating in English across the team? How is it working? So what tools are you using and what language have you tended to default to?

    [00:15:52] Naoko Takano: Yeah, so the communication tool that we used the most is Slack. And we are on it, the same Slack, separate from Make WordPress. And then we use English. But there are channels that are used by local members. For example, we have a Japanese channel to do some chit chat or ask question in our language. And local team has Thai channel to communicate with each other. But the overall language is in English. And we use Zoom to have meetings. So it’s like work.

    work If

    [00:16:25] Nathan Wrigley: I was somebody living in, let’s say, I don’t know, just to pick one off the list, Nepal, and my English was not sufficient, let’s say to carry out the tasks that may be needed by a volunteer. What happens there? Is there any encouragement or any, anything that can be done, or is it essentially you would need a modest amount of English in order to participate, in order to communicate with the team? Or could somebody from say Nepal, work with other Nepalese people speaking the language that they have, Nepali, I believe it is? I’m sorry for my ignorance there. Nepalese, I apologize. What do you do around all of that? If somebody doesn’t have the mastery of English, that might be needed to communicate over the whole project.

    [00:17:08] Naoko Takano: So we don’t require a mastery of English because that would be very hard barrier to participate. But we do select, we do vet organizers based on their community involvement, in their local community. And also some English is of course needed. But you don’t have to be able to speak fluently as long as they can communicate. While on Slack, you can use translation tool on your own. That’s okay. So as long as you can communicate on Slack, we would like to see active community organisers regardless of English fluency.

    [00:17:46] Nathan Wrigley: I understand. Yeah, thank you. Okay, so it’s a silly question, but I’m going to ask it anyway. Why do we need a WordCamp Asia? We have lots of events. I’m imagining there’s lots of WordCamps spread throughout Asia. But at some point, WordCamp Europe came along and WordCamp US. Why did the community feel there was a need for that? And I’m really just offering you that question so that you can answer it. I don’t actually think, well, why do we need a WordCamp Asia? That’s not the intention of the question.

    [00:18:18] Naoko Takano: Yeah, thanks for asking because I like to share why we are so enthusiastic about holding WordCamp Asia in person in Thailand. This might be little known, but there are very unique barriers to attending existing flagship events for residents in Asia. Like visa, obtaining visa to go to US it’s very, very hard for many people.

    For some people Europe, it’s also not easy to travel in terms of cost and time. And then also for people attending online, watching streaming in real time. Time zone difference is very hard, both in US and Europe, to participate in real time. So we want to cater this event to Asian residents to have the same kind of experience that many of the organizers had experienced in WordCamp Europe, WordCamp US.

    And we want to bring this great feeling, great communication, connection to Asian community. So that they can easily attend in an affordable price.

    [00:19:29] Nathan Wrigley: Yeah, that’s interesting. The affordable thing speaks for itself, I suppose. But in terms of the visas, that’s a really interesting one. Obviously it’s completely outside of WordPress. It’s a political thing, but my understanding is that in some jurisdictions it is very difficult to get a visa, let’s say, for the United States.

    And so you are, really it’s an up hill struggle if you want to attend those events. And I’m expecting from what you’ve just said, that the relationship between Asian countries is more open. So as an example, a visitor coming to Thailand, I’m guessing there’s less barriers to actually applying for and successfully getting those visas.

    [00:20:11] Naoko Takano: Yes, relatively speaking, especially Bangkok. We chose Bangkok as the first city, host city, mainly because visa accessibility and also flights from main Asian cities. So that’s into our consideration for sure.

    [00:20:29] Nathan Wrigley: Yeah, there’s lots of, amazing options in terms of flights, isn’t there? But also Bangkok itself is such a, an amazing and vibrant city and has absolutely heaps of accommodation options as well, doesn’t it? It’s a really good place to kick it off for WordCamp Asia. Speaking of kicking it off, how did it all get started?

    I mean, obviously there was the event which was destined to happen in 2020, so we’re going back before then. Were you part of the team? How did it actually all begin and how did you assemble this event? Because you can’t just suddenly announce, we’re going to do WordCamp Asia. There must be an awful lot of backwards and forwards, perhaps talking to people at Automattic and various other organizations to get it all started. Do you know about how it all began?

    [00:21:12] Naoko Takano: Yes, so the direct event that led to WordCamp Asia application was the contributor day at WordCamp Bangkok 2019. I wasn’t attending actually, but a group of community organizers who had been traveling to go to different WordCamps outside of the country met in person and they decided to apply at that time. But the same, or some of the same, people had been traveling since, I would say 2014, 15 and going to each other’s countries or flagship events and making connections and becoming friends. And then from that kind of connection, this idea came around and it came to, came to happen, yes.

    [00:22:00] Nathan Wrigley: And so how much time and well, effort is harder to measure, but in terms of time, how long have you, you and the team, been working on this version of WordCamp Asia? So the 2023 one. How far back do we go before you decided, yep. A, we’re going to go for it, and B, it’s going to be in February, 2023. How much time have you been spending on this?

    [00:22:23] Naoko Takano: So yeah, at the end of 2021, we reunited on a Zoom call and started talking about restarting this effort, because we always wanted to find the time to come back to Bangkok. By the time of spring 2022, we started actually working on the event organizing. And through 2022 we’ve worked and now it’s getting really close. We are very excited about it.

    [00:22:51] Nathan Wrigley: Nice. Now, in terms of the event itself, obviously the location is new and interesting for a whole selection of the audience, I imagine. Perhaps many of them have never been to Thailand in particular. Perhaps never been to Asia. We’ll wait and see how that all goes. So there’s obviously that, it’s going to be different because it’s in a, a new and interesting part of the world for these flagship events.

    But in terms of the event, from your perspective, what is the vision? What’s the thing that you talk to people about when you say, okay, this is going to be great, this is going to be new and different. What’s the vision that you are, you are letting everybody know about?

    [00:23:32] Naoko Takano: So yeah, as a WordCamp Asia organizing team, we didn’t want to make another event that’s just like WordCamp US or just like WordCamp Europe. That wasn’t our intention. We wanted to make a unique event. We have three visions that are welcoming, nurturing, and experimental.

    So we wanted to create an event that’s true to our culture, which is inclusive and diverse. And then also we wanted to have this event because we wanted to nurture the community in Asia. Not because we wanted to have this big event just because. We all came together because of WordCamps. We became friends and community builders because of other WordCamps. So we wanted this event to ignite more communities in Asia.

    And also we wanted to do something different. So that’s the experimental part. And we want to do the first event in Asia that’s flagship. So we want to, while people with our creative activity, our design teams doing a great job. And I like to see how people feel when they come.

    [00:24:44] Nathan Wrigley: Yeah, it’s going to be really interesting seeing what people’s reactions are. You’ve got 1500 attendees. I don’t know exactly how many people are involved on the, the organizing side, but it will be, it’ll be interesting to see what the conversations are like in the hall. How is this different? What are we enjoying about it? As much for the location, Thailand and Bangkok and all of that. It’ll be really interesting to see what people’s discussions are. So the vision can be boiled down to three words. It’s going to be welcoming, it’s going to be nurturing, and it’s going to be experimental.

    In terms of, well sadly, getting back to Covid, which one doesn’t really want to, but it appears, certainly at this point in time, Covid has become part of the news cycle again. It felt, in my country at least anyway, that it had dropped off and it wasn’t being talked about. And more recently it is getting some more attention.

    So I’m just wondering if there’s anything that you need to disseminate in terms of masking or restrictions or vaccinations, anything like that, which Thailand may enforce, or indeed just your event is enforcing. Because that’s probably a very important component of people’s safety should they decide to attend in person.

    [00:25:54] Naoko Takano: Yeah, this is a frequently asked question. And at the moment of this recording, we are not making masking or vaccination mandatory. So this is based on community teams guideline for WordCamps. If that changes we will change our guidelines accordingly.

    And if Thailand requirement changes, we would have to abide by that. But at the moment we are not requiring masking or vaccination. They’re both recommended. And we will provide stickers for people who like to be respected. So we ask people to stay away or wear masks around people with those stickers.

    [00:26:32] Nathan Wrigley: Okay. So there’s going to be some symbol that you can wear, a sticker that you can have if you would wish to have a little bit of separation between you and other people. And the hope is people will notice those stickers and give you a, a wider birth than might normally be the case. Okay, that’s interesting.

    So given that your tickets have sold out. 1500 seats have been snapped up, bought, and hopefully they’ll all be filled during the event. Given all of that, and I know you won’t be able to tell me much about this, but I do want to ask anyway. Do you know if we are planning to have a WordCamp Asia 2024? I know it’s a bit early for that, but do you see that the community has rallied around and is beginning to talk about that? Because, you know, no sooner is one event finished than the other one needs to be announced. And in fact, in many of these flagship events the location of the next event is announced during the conference itself. So yeah, as much as you can say, but you may not be able to say much .

    [00:27:33] Naoko Takano: So yeah, in fact at the moment we have the call of host city for 2024 open. But by the time this is, we might not have it open. So we’ll be reviewing those applications and we are hoping we will be able to announce during, or the end of, the event. Yeah, just keep your excitement until we announce.

    [00:27:56] Nathan Wrigley: So it sounds like if the call for venues has gone out, there’s definitely going to be one, but we don’t as yet, know where it is.

    [00:28:05] Naoko Takano: Yes, we do have applications that came in. So, a city will be selected, yes.

    [00:28:11] Nathan Wrigley: So hopefully this will be a podcast that we get to repeat each year, and it will be the first of many. I really appreciate you chatting to us today Naoko about WordCamp Asia and about its first well, not that it should have been the first, but it’s first live, in-person, event. I hope it goes well. I really, really do.

    Thanks for talking to us today. Just before I let you go, is there anything that I missed or is there something that you would like to have said that we didn’t say? That could be just telling people where the website address is, should they wish to have a look at that? It could be, I don’t know, a Twitter handle that you are keen to promote. Anything you like.

    [00:28:50] Naoko Takano: Sure, our website is asia.wordcamp.org/2023. And just wish us the best of the luck because, we need a lot of it.

    [00:29:00] Nathan Wrigley: From my point of view, you have all of those wishes. I really hope it goes extremely well. I would wish you the greatest success. Hopefully in a couple of months time we’ll be able to chat about how successful it was.

    Naoko, thank you very much for chatting to me today. I really appreciate it.

    [00:29:17] Naoko Takano: Thank you for having me.

    On the podcast today, we have Naoko Takano.

    A few days from now, from the 17th to the 19th February 2023, to be precise, the first in-person WordCamp Asia will take place in Bangkok, Thailand. If you follow WordPress events closely, then I’m sure that you’ve seen the excitement mounting.

    Naoko is on the podcast today to talk about this important event; how it came to be and why it matters.

    We start off getting some background on Naoko and her personal journey with WordPress. She’s currently sponsored full time by Automattic to work with the wordpress.org community and polyglots teams.

    The conversation then turns to the event itself. It’s sold out, but you can still take part by watching the live streams of the three tracks that are running.

    We talk about the fact that, although this is the first in-person WordCamp Asia, it should not have been. WordCamp Asia was in the books for 2020. More or less everything was planned and prepared, and then Covid struck. The timing could not have been worse, it was heartbreaking. Naoko talks about the disappointment felt by the community and how they’ve managed to maintain their commitment to making the event happen. The team that is putting on the current event contains some people from the cancelled 2020 event, but there’re new members too, and they span many Asian countries, so there’s a real diversity in the organisation.

    Towards the end of the podcast, we get into the important question of why we need a WordCamp Asia. Naoko makes the point that the other ‘flagship’ WordPress events are not that accessible for some people. This could be because of the difficulty in acquiring visas for the U.S. or Europe, but also the costs of travelling to the event and accommodation whilst there. It’s hoped that WordCamp Asia will provide a chance for a whole new audience to attend in a location which is closer to home.

    We wrap up with Naoko explaining how WordCamp Asia aims to differ from other events through their vision of being welcoming, nurturing and experimental.

    If you’re attending WordCamp Asia in-person or online, this podcast will give you a new perspective on the event, and if you’re not planning on being there, maybe this episode will make you rethink.

    Useful links.

    WordCamp Asia 2023 website

    WordCamp Asia 2023 location

  • #61 – Robert Rowley on Securing Your WordPress Website

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case security on the internet.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or go to WPTavern.com forward slash feed forward slash podcast. And you can copy and paste that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you, and hopefully get you or your idea featured in the show. Head to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today we have Robert Rowley. Robert is Patchedstack’s security advocate, where his time is spent interacting with open source communities to share the word about security best practices. Given his background, the podcast today is all about internet security.

    We start off with a topic which is very much in the news at the moment, the LastPass security breach.

    If you’re a user of LastPass then you’ll know what their service is. But if you’re not, here’s a quick introduction. LastPass is a password manager. It will lock up your passwords and any other data for that matter, in a secure vault which can only be read if you decrypt it with the correct password.

    Towards the end of 2022 LastPass announced in a series of blog posts that their customer vaults had been taken from their cloud storage. The way that this was communicated, left, many of their customers questioning their use of the service and whether they could now trust LastPass with their data.

    Robert’s explains how the incident occurred and if you should be concerned. The answer is, as you might expect, it depends. There are situations in which the settings that you had in your LastPass account might mean that you need to act sooner rather than later. The length and complexity of your master password is also a key factor.

    This then leads to a conversation about the broader issue of website security and the security of WordPress websites in particular. What are some of the considerations that you need to think about when protecting your website, and how can you communicate these considerations to your clients?

    Towards the end of the podcast, we chat about a project that Robert’s been involved in during 2022. He’s been patching plugins which are no longer being maintained, but are still being used, so that they present less of a security threat to their users.

    If you’re curious about website security, then this is a podcast for you.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading to WPTavern.com forward slash podcast. And you’ll find all of the other episodes there as well.

    And so, without further delay, I bring you Robert Rowley.

    I am joined on the podcast today by Robert Rowley. Hello Robert.

    [00:03:54] Robert Rowley: Hello Nathan. How are you?

    [00:03:55] Nathan Wrigley: Good, thank you. Lovely to have you on. Robert and I have actually met in person. We’ve done a variety of different podcast episodes before and, he’s here today to talk to the wheelhouse that he’s in, which is internet security.

    Given that very brief introduction, Robert, I wonder if you wouldn’t mind just painting a picture for our audience of who you are, what company you currently work for, and what your background is in internet security. And if there’s a reference there to WordPress, include that as well.

    [00:04:24] Robert Rowley: No problem, yeah. So I’m Robert Rowley and I am currently working as the security advocate for Patchstack. Patchstack is a WordPress plugin security company. We have a plugin and we have a bunch of services offered for the WordPress and open source communities right now.

    I got started in the information security industry, I guess, in open source community, probably 20 years ago using Linux. I was using WordPress, one of the first releases. Not the first, but once it started to become popular in the early mid aughts, I guess is what they’re called. And yeah, I’ve worked professionally for hosting providers, securing and protecting the customer websites. That was my focus when I was working at hosting providers. I was doing a ton of hacked site cleanups.

    And, I’ve also worked in the opposite end, instead of defending and protecting, I’ve worked in the attack arena, where I’ve worked for pen testing companies, PCI auditing companies and things like that. Where we were validating, doing security tests, to validate that our customers had a reasonable amount of security for their websites and their businesses.

    So with Patchstack and my role as a security advocate, I like to blend the two. Patchstack is focused on protecting and securing the customer’s environment, and my role as an advocate, I really get to speak to people about how corporate or enterprise level security, a higher level security, really works. Which the WordPress ecosystem could really benefit from I would say. There’s a whole lot of security hygiene and best practices that are kind of skipped over or glossed over. Mostly because people aren’t asking for them. That’s basically the word that I try to spread.

    [00:05:54] Nathan Wrigley: Thank you so much. We’re going to start our conversation in a somewhat unexpected and slightly time-bound way. We are recording this at the beginning of 2023. It may well air a few weeks after the recording. But over the Christmas period some news came to light, which is going to begin our conversation, and then we’ll go off in all sorts =of different tangents.

    But the news is surrounding a, a very popular password manager called LastPass. And LastPass really holds whatever data you wish to throw at it. And the promise is that it will hold that data in an encrypted form, which is only readable by you. Now that’s great, except just prior to Christmas, just prior to the Christmas holidays, there was an announcement on the LastPass website, which indicated that their data had been breached.

    Now, that isn’t to say that the data had been decrypted, or at least we don’t know the status of that decryption. But the blob of data which holds your encrypted information has been taken, and there’s been a real ground swell of concern around this issue. And so the conversation that we’re going to have is going to be beginning all about password sanity checking, and hygiene and all of those kind of things.

    Do you just want to give us a bit of a backstory on what’s been going on over at LastPass? Obviously important to anybody managing passwords in LastPass, but it also might be interesting more broadly for audience members.

    [00:07:26] Robert Rowley: Yeah, I’ll try to hit it from multiple angles. So LastPass had this breach that they announced in December, but it wasn’t initially first announced in December. It started in the summer. They had announced the first indicators that they had signs of a breach had happened to their systems, back in August or earlier than that maybe. But, I think it was somewhere in the summer of 2022.

    Well, the big worry is with LastPass, what is it that they have that is of value or of risk to an individual who is a user? And the whole purpose of LastPass is that you have all your secrets, right? Your passwords, your credit card numbers, SSL certificates, all these really highly sensitive things. LastPass was offering a service that said, you can store those with us, we are a cloud service provider, and we will encrypt those using zero trust systems. Zero trust means is that they are not going to be able to decrypt it unless they know what your password is. And they’re going to store all of your stuff in an encrypted way that nobody there at LastPass should ever be able to decrypt it.

    However, as we are now aware since the story began in the summer and ended in the winter, to this day, or at least to this point. That there was a breach. They had access to the source code. At first, the attackers had access to the source code. Then we learned later the attackers had access to a developer’s machine and that developer’s machine had access to these cloud storage drives. But nothing, you know, no customer data yet.

    And it wasn’t until it was December 22nd, that is when LastPass updated. So just three days before Christmas, they said, oh, by the way, also all of our customers stored encrypted vaults were also exfiltrated by the attackers. I shouldn’t say all, they just said the customer vaults were exfiltrated by these attackers.

    Now that’s going to be a lot of data to move, and it’s not useful to the attackers until they can get people’s master passwords. But since the attackers have access to the source code and they have access to the encrypted vaults, it’s just a matter of brute forcing these passwords.

    So if you use LastPass and you have a very weak password, maybe your master password with something like the word password, uh, which is a terrible idea, that’s a really bad security hygiene. That would be brute forced in probably a matter of seconds.

    If you had a strong master password, which I’m sure LastPass encouraged users to do, then it may take years for that master password to be bruteforce, to unlock the encrypted vault that contains all of your passwords. Which puts everybody at a weird position. If you’re a LastPass user, you’re now aware as of December 22nd that the encrypted vault that stored your passwords, but really a lot of LastPass user’s passwords has been leaked and could be, at any point in time the attackers could be beginning to do the work to attempt to brute force these vaults.

    And as they become successful, they’ll have access. They’ll know the url, right? They’ll know your username very likely. They’ll know everything that was stored in your vault. So it puts people at a high risk. But there’s this big thing of a matter of time. And it’s going to take a good amount of time, depending on the strength of your password versus the strength of the computers the attackers can use to attempt to brute force these vaults.

    [00:10:30] Nathan Wrigley: I’m just going to add a little bit of context and forgive me, Robert, if I say something which is factually incorrect, please alert me and I will backtrack. But my understanding is that LastPass in effect rolls up all of your data into one giant blob. I’m imagining it in my mind as like a football.

    So all of the passwords, all of the credit card details are, if you like, poured into this football and the football is encrypted. But the point is everything is inside that one blob. And so if the attackers decrypt one thing they have decrypted all the things. So it’s not like there’s a password connected to this website over here and this credit card number over here.

    As soon as they’ve bruteforced it, and figured out way to get in, every single item inside that vault is now available in plain text. Is that, for a start, is that true? Once they’ve got something they’ve got everything?

    [00:11:29] Robert Rowley: I believe that’s true because that one thing that the attackers need to get is your master password. Your master password is the secret that LastPass is not aware of on their end, which they used to hold true for their marketing spiel which is zero knowledge, right? Like they can’t decrypt your passwords unless they have your master password.

    So that football or that blob of encrypted data, once the attackers are able to brute force, and that blob is unique to every user, because every blob is encrypted with each user’s master password. But the only secret that needs to be gotten, you know, brute forced is that master password.

    [00:12:02] Nathan Wrigley: I suppose it raises all sorts of really interesting concerns because the promise was that it was encrypted and there’s zero insight from LastPass. If you lose your master password, there’s no point in going to Lastpass support and saying, well I’ve lost my password. Can you please send it in an email, and I’ll be trouble free. If you lose that, that’s tough.

    But it’s the nature of what’s inside that vault. So, if it was just a handful of passwords. If you were a user of the internet fairly infrequently, and you were just logging onto a, couple of websites, your email and what have you. Then you could quickly go around and sweep up all of those websites and change the passwords and you know that you’re fine.

    But I think a lot of people using services like LastPass have gone all in. And so, as we said, credit card numbers, mortgage details, pension details, bank account details, credit card numbers, all of these things have gone in there. And so the worry now is that if that is retrieved, then all of that is available.

    And the problem is you can’t go to LastPass and simply change your password. All you are doing is changing the current blob’s password. The ship has already sailed there. The hackers who’ve got this, they have it, and if they figure out your password, no matter how many times you change it, what settings you fiddle within in LastPass. If they get through your password the day it was stolen, then everything is up for grabs.

    It’s just the wealth of things that must be in there. So in my case, I’m a LastPass user, I have a paid account. There’s an awful lot of things that I would really wish didn’t escape. So, financial things and so on and so forth. But imagine across the population of the, I don’t know how many users they had, let’s imagine it’s hundreds of thousands, possibly millions, I don’t know. There’s a trove of information. So there must be a giant incentive for the hackers to get to work and figure out these passwords, one at a time. Even if that’s what it takes.

    [00:14:07] Robert Rowley: You’re absolutely right There’s a difference in the data that was stored in LastPass. You made a great point there where, a password can be changed. A password can be updated and it’s no longer a threat if the old password is leaked, or compromised. But information like privately or personally identifying information, privacy things that were stored in LastPass, those are going to be a much harder thing, right?

    It’s hard to change your mortgage information, right? It’s hard to change your, your address. If your address is stored somewhere in there. But there will be certainly things that are extraordinarily difficult for people to get rotated or changed out. Here in the US, right a social security number, things like that. If that gets leaked, then it’s really a big pain to deal with identity theft the rest of your life.

    [00:14:47] Nathan Wrigley: Yeah, and I guess to be fair, we did realize, I mean the technology was explained. There is this blob, we don’t know the password. If the blob were to be stolen then the level of complexity that that password had will be crucial to whether it’s decrypted or not. As you say, if the password is the word password, a few seconds will pass.

    Do you have any insight from a technological point of view in terms of the power that computers can bring to bear trying to decrypt these? I’m guessing it’s brute force. It’s literally just trying a password. No, move on. Try another one. Trying it over and over and over again.

    Let’s imagine that we had a, let’s say it was a ten digit password of just pseudo random nonsense. You know, just some characters and some strange punctuation. It’s unintelligible, it’s not a dictionary word. Can we be fairly sanguine that we’re still talking decades, possibly hundreds of years for computers to be able to brute force this, or do we need to be concerned?

    [00:15:48] Robert Rowley: You should always be concerned, but not overly concerned. This isn’t an emergency. You know, unless your password was password, then it’s an emergency. But you shouldn’t be too concerned if you have a decent password hygiene, right? Do you choose decently strong passwords? They’re gibberish or they’re things that, you know, don’t use things like your name or a birth date that’s important to you, like the year numbers. Things like that.

    As long as you’re not using something that’s very common and you are using a properly gibberish one, it works. And part of this thing is, and I’ll steel man LastPass a bit, because they did the technology right, they did it to the best they could do.

    They tell people that your master password was hashed over 100,000 times, in newer versions after certain releases. Which means that a computer to try to guess that password would have to run this hashing algorithm over 100,000 times.

    It’s 100,100 times exactly. And that just takes time. That means they did something intentionally that slows down the process if you are randomly trying to guess the password. Which buys the user’s time to rotate out their passwords and take appropriate action in response to the incident.

    And as far as it goes for enter, even enterprise level security, that’s the best you can offer in relation to stored secrets that get leaked. You say you’ve provided sufficient time for the reaction to, uh, take place before the attackers are able to decrypt the vaults.

    [00:17:09] Nathan Wrigley: So given Moore’s law, I should probably explain. Moore’s Law basically says computers only ever get better, they never get worse, and they get better quite rapidly. If we were to look at a computer from 20 years ago and ask it to sort of hash passwords, or rather brute force passwords. It would be able to do that at a significantly slower rate than computers of today can.

    And my understanding is that things like GPUs have been repurposed, and essentially those pieces of hardware can do this work significantly quicker. So given Moore’s law, and the fact that this trove, this vault, this football is in somebody’s possession probably for the rest of time. Do you think that there is going to be concern enough that you should now be really, at breakneck speed, starting to change the passwords that you had in the LastPass vault?

    Because that’s really the only mitigation here. If your blob is accessed and the, the information leaks out, and the hackers get inside. If you’ve changed all the passwords, well it didn’t matter anyway. But from what you are saying the grade of security that was applied by LastPass, at the minute, still holds up. But do you have any insight into how long we can be quite so cavalier?

    [00:18:27] Robert Rowley: I’ll go back. I’ve been working in security and security related fields for, oh for about 20 years now, and I do remember 20 years ago they were talking about certain encryption algorithms being unbreakable. And they would do these mathematical calculations and they’d say if you encrypt it using this size key, using this algorithm, it will take you 20 or 50 or a hundred years, right, depending on the length of your password to decrypt the vault.

    This wasn’t specific to LastPass, but this was just like back then what we were talking about. And then five years later, well, it stops being 5, 10, 100 years. It starts being 1, 3, 10 years. And then five years after that, in 2010 or so, that same algorithm with the same size key is decryptable within one year. It’s always this thing, as computers get faster, and you’re right, GPUs change the game. GPUs are able to fire off multiple concurrent threads to attempt the same brute force in quick succession. And that basically changes the whole game in certain algorithms where it will reduce over time.

    So today’s numbers, and I’ve seen some posted around online, if you have like an eight character password that’s properly gibberish, it might take 20 or 30 years, but that’s just today’s numbers. And the tactics used, you mentioned GPUs. I have a GPU system at my house that I’ve turned on. Hashcat is the application. It works really quick to attack passwords, and break down passwords.

    What you need to know is again, yeah, knowing the time you have. The lead time you have is useful for that moment, and it really is helpful towards how fast you should respond. So a lot of that is, in the enterprise security world, it’s the time to response, right? How much time do you have to take action in response to a threat or a compromise?

    And what we’re talking about right now with LastPass, assuming you had a decent password as your master password, it’s a number of years, most likely. And also assuming that there are no, how to say, exotic computer systems that the attackers have access to that can crack these passwords much faster than what the current knowledge is.

    As long as they don’t have exotic systems and as long as your password was sufficiently strong, you probably have some time to rotate your passwords. But really we should be talking about, hygiene, general hygiene. You should be rotating your passwords anyways. LastPass, like again to steel man them a bit, even though I don’t use them anymore. They have a feature within the app that will rotate the passwords for you. And you can set it on a schedule and just say, hey, rotate the password for this web app every six months. And they’ll just handle that for you. Doing this rotation of passwords is very useful.

    [00:20:54] Nathan Wrigley: I’m confused by how that would work in the sense that, so let’s say for example Gmail or some sort of Google property. If it’s going to rotate the passwords for me, presumably it is mimicking my login. It goes to the website, it puts in the username and passwords, and they’ve got some mechanism for navigating to the page where the password is changed and they’ll substitute in the. How would that work, for example, if I’ve got 2FA, so let’s say I’ve got an authenticator app or something. Presumably at that point it’s going to be stifled and it won’t work.

    [00:21:25] Robert Rowley: Well, you’re thinking that it’s going to log in for you, but this was a feature of the browser extension, as I remember it. It was something you’d go into the browser extension and set to change passwords for certain web apps. And I’ve said enough nice things about LastPass that I should say something bad.

    This feature rarely worked correctly for me. It wouldn’t update very often. Sometimes it would update and then it would have the wrong information in LastPass. Like the password they updated in LastPass did not match what was on the website, so it would lock me out of it, and I’d have to go through my password history to find the correct one.

    But the idea is there is that they knew rotation of passwords is a, it’s a security best practice. It’s a hygiene thing. You should be doing it every so often any ways. Just like not reusing passwords is something that is also very much good security hygiene, and good security best practice.

    And again, the reason why, how it would work is it would basically, while your browser is currently logged into that web app, it just hijacks your browser and makes a request, to send the update password.

    [00:22:17] Nathan Wrigley: Got it, okay. Given everything that we’ve talked about, the bottom line with all of this is the password hygiene. And so we’re recording this, like I said, beginning of 2022. Caveat emptor, if you listen to this in six months time or a year’s time, everything that we’re talking about could have changed.

    Maybe the news has been updated. Maybe there’s been some miracle of hacking and they’ve managed to brute force all the passwords. Who knows? But given where we are now, could you just talk us through, so this is nothing to do with LastPass, this is just general website, internet password hygiene. What are your sort of recommendations in terms of how long they should be, how dictionary based they should be. Whether you’ve got a technique for coming up with passwords by appending things to the beginning or the end.

    In other words, making it more memorable to you. Just lay out what your best advice is for a typical user. Not somebody who’s really obsessing about all this, all the time.

    [00:23:13] Robert Rowley: I’ll try to step it up slowly. The average user, right? The person who doesn’t want to be bothered too much by security best practices, they find them annoying and difficult. I know this because I’ve interacted with a lot of these people in my career. For you, and I have somebody in my mind right now. Just use a unique password on every website that you visit. And ideally, if you’re repeating the same password like I love pancakes, right, every account you have. When one of those accounts gets compromised, then all of your accounts will end up getting compromised.

    It’s not a good thing. And it should be something strong. It should not be your last name. It shouldn’t be the year you were born. It shouldn’t it be anything that’s guessable or even your address of your business or your location, because that information is semi-public and an attacker could start guessing, right? They can feed in this information into a bot that’ll try to rebuild the dictionaries against you. So it should be unique for every website and strong.

    Now, if that’s a little bit too hard for you, this is what I used to say, then use a password generating tool like LastPass. That would create new passwords for you, you know, at least 12 or 16 characters long, and it’ll store the password for you. So you never need to really remember it yourself. Now, of course, LastPass is kind of confusing if we should recommend it anymore, but there are other options. There is 1Password. There is Bitwarden. There’s a bunch of options.

    [00:24:37] Nathan Wrigley: There’s one called Dashlane if memory serves.

    [00:24:39] Robert Rowley: Yes. Dashlane is another one. They vary in price. Some are free, some are open source. I believe Bitwarden is a great example of a free or very affordable option, which is really similar to LastPass, especially how LastPass used to be. You store your data in the cloud, so yes, the same risk is present. Whereas they could get their cloud services compromised, and then you’re going to have to go through the same, rotate all your passwords process.

    Or you could go a little bit more hardcore and start storing your passwords locally. This means it’s going to be stored on your laptop or your PC, maybe on a USB drive, but you’re going to have to choose a piece of software that does that. A good option for that would be KeyPass or KeyPass SX. They’ve got a few versions of it. They all use the same underlying technology. It’s mostly an interface to access this vault. But the vault always exists on systems you own and you control. That’s the only way you can get outside of that, the realm of risk. Or you can alleviate and reduce the risk of somebody breaking into a cloud service provider and stealing all the passwords.

    With all that said, that’s the basics, right? And if you’re a basics user and you’re a little, but you’re a little bit more than a basics user, right? And you got a more serious account, maybe it’s your banking account or your Amazon EC2 accounts. Well then you need to use something more like a two factor authentication, like a second factor. It could be your email or sms, like your cell phone number. Or it could be something stronger like a Fido key, which is like Yubikey. There’s a few other vendors that make these physical hardware keys that punch out random gibberish.

    Or it could be what we’re really familiar with is this Google Authenticator. This is a time-based token, and it’s a one-time token for this little 30 second period of time, and it’s about a six, sometimes eight character pin. And those things, those require you to have physical access to a phone, right? That you run the Google app on or the Google Authenticator app on, or there are alternatives.

    LastPass has an alternative for it. Authy is another very popular one. The big difference between, I’ll compare Authy to Google Authenticator, is that Google Authenticator, if your phone dies, there’s really no way to restore those secret tokens, right? Or if you upgrade your phone and delete, get rid of the old one. It’s really hard to upgrade and move it to the new phone. You have to do an intentional process where you do it an export first, and then you later import it.

    Authy on the on the other hand, does cloud-based storage, and one of those benefits of cloud-based storage is it’s easy to share between devices. So with Authy, you’re able to set up one device or one account. And then if you lose your phone or the phone gets destroyed, you can easily reset up and get all your old two-factor authentication tokens, working easily and quickly.

    [00:27:12] Nathan Wrigley: In the case of this breach that we’re talking about, the two factor authentication, if you have that enabled or quickly go and enable that, that really does put a bit of a roadblock in the hackers path. Because even if they get your password, username and all of that good stuff, they’re going to be hitting this barrier of being asked to perform another action.

    So they’ll be able to successfully partially log in, but then they’ll be required to, I don’t know, either push a button on a mobile phone or press a button on a Yubikey or a Fido key or whatever. And that’s going stop them in their tracks. And also commonly with that, you get an email alert, assuming they haven’t got into your email, which is probably the first thing to shore up. You’ll get an email saying, look, something peculiar is going on. You need to be looking at your whatever, I don’t know, Dropbox or whatever account it is. So that’s another layer of security, which really would help.

    [00:28:08] Robert Rowley: Yeah, absolutely, yeah. There’s a great point there on why two factor authentication may protect. And you should have two factor authentication on, even if you’re a basic user. You should have that set up for some of your more important accounts. If your password gets leaked, they’re still not going to be able to get into your, to your systems.

    [00:28:23] Nathan Wrigley: In the case of the listenership to this podcast, I would imagine there’s quite a lot of people who are using password managers, and they are using it for their client websites. So I don’t know, you’ve got a hundred client websites. And all of a sudden you are facing this jeopardy that your business, not just your personal details, but your business is in some kind of danger, because the last thing you want is for the hackers to gain access to one, two, a hundred of your client websites.

    Would you, if you were in the business of building WordPress websites for clients, would you rank that as a fairly good priority? Should people be going out and informing their clients that, look, I actually held this in a LastPass vault. That vault has been breached. Do you know if we have any obligations for our clients? And would you recommend that they, being circumspect essentially? Go out there and start changing these things pronto.

    [00:29:21] Robert Rowley: Yeah, oh absolutely. I believe they should definitely get ahead. The best way you can react to any sort of security incident is to get ahead of anything else bad happening. You have to say the bad news, right? That starts with it. You have to tell that your customer’s, I store, I was storing your website account passwords in LastPass and as you may know, LastPass had a breach. All you have to do, if the next sentence is, I have changed the password. That’s it, and then you can say very confidently that there is no longer any risk associated with the fact that I used to store the WordPress password, WordPress access website access passwords in LastPass.

    That’s how you get ahead of a security incident. And that’s a, that’s another great way to approach security as well as security hygiene thing. If you do experience a, let’s say LastPass aside, we’ll just put that as not the issue here at all, you experience a compromise on one of your customer’s websites. If you try to go in and manually clean it up yourself and you don’t know what you’re doing. And, you know, the hacks persists. If you inform the customer, hey, we saw this, it looks like it’s hacked, here’s what we did.

    And it gets hacked again, say, oh, we’re going to do more this second time, right? We’re going to do more. We’re going to hire an outside party now because obviously our services didn’t meet the needs. And that’s how you get ahead of the problem. Whereas if your customer’s site experienced a hack and you try to clean it up and you don’t tell the customer anything, you just hope they never notice, and then they get hacked again. What are you going to do that second time, right? Are you going to keep trying to clean it up? You’re going to keep going through this process? Or you’re probably going to create a little lie saying, oh, you got a hacked site and now we’re going to hire this third party.

    But, what I’ve seen in my experience, in my career, the sooner anybody’s ever transparent and upfront with the incident as it happens, and they are as clear as possible, including having a recourse, basically, here’s the next steps we’re going to take. That’s the clearest sign that somebody’s taking security responsibly, right?

    They have a mature security model. They understand that breaches happened. These things you know, they didn’t cause it, some hacker caused it somewhere. Some nefarious person is doing something nefarious. But here’s the things that we did to address the issue. We’re aware of the issues. Here’s what we do to fix the issues in the future. You look at it as a learning experience for everybody involved. We could reflect back on LastPass and say, well, why was it that they saw the compromise start in the summer, yet it wasn’t until the very dead of winter that they announced the worst part.

    The one thing that everybody was most concerned about. Had they done that at a different time, it may be different. The PR, right. How it would look to people would be different.

    [00:31:48] Nathan Wrigley: The recommendation, I’m guessing, that you would have is that, you said a moment ago that 2FA ,two factor authentication, really you should be using that where it’s available. And I know that in WordPress there’s a whole slew of different ways of doing that. For example, the company that you work for, Patchstack, they offer a 2FA option, as do a whole bunch of security vendors.

    But there’s also plugins which just simply do that one thing. Would you be recommending that for every username and password on any WordPress website, or are you kind of limiting this to the administrator roles and the other ones perhaps less of a concern? I’m just trying to get an idea of how judicious you think you would need to be if you were a website agency at this point informing your clients that there’s possibly a breach, and trying to guide them towards better solutions, more robust things like 2FA.

    [00:32:43] Robert Rowley: Yeah, it’s a good question. I would agree administrator users make the most sense for these stronger, or higher requirements for authentication. What you can think of it is, it’s not just the administrator user necessarily. It’s any user that can upload a plugin, upload a theme, edit PHP files. Any of those key roles or capabilities within the user are what are important. Those would directly connect to compromise the website, right. If a user is compromised and they have ability to upload a plugin, that plugin they upload could just be a backdoor.

    So you should start with that, understanding the capabilities, if you have unique capabilities and unique custom roles built into your WordPress website. If you don’t, then it’s easier. Yes, admin users are the ones that can upload plugins and such. So those are the ones that you need to make sure have stronger authentication requirements.

    As for the remainder of the users, that’s really up to the organization of the website owners. Their ability to understand risk, right? It may not be that bad if a, well, it’s not necessarily bad at all if a subscriber account gets compromised. It’s not good, but more concerning if an author account, right?

    They could start editing posts that were published by that author or things like that. But if you prevent the authors publishing new posts by having an editor role who needs to approve things, then you’ve got a good little safeguard there, right? An author getting compromised isn’t the worst thing either. However, they should have been using strong, unique passwords, because that’s the basics.

    Do they need 2FA? Maybe, maybe not. And then you kind of go up, as you go up the roles and capabilities of every user group in your WordPress website, maybe you’re thinking, yeah, this person can do this thing, and that would be horrible for our business, right? Maybe you have a role that’s specific for handling your shipping items, right? Or your coupons for your WooCommerce site, or something like that. Those roles, those custom roles, would be a very high effect if they were to be compromised. So maybe on those, those accounts, right?

    If they handle your customer data, shipping information, coupon codes, right? You don’t want somebody creating a 99% off coupon code. So you want to lock those accounts down too, with a higher level of requirement. And I’ll be honest, that after you get used to the process of 2FA or some of the other options, right?

    Instead of a password, a pass key, or IP address limitations. People can only log in from certain zones or certain areas. Once you start doing that and just becomes part of the process of logging into the website, it really becomes not a big issue. It’s that initial, that initial adoption period that you’ll have the most pushback and then people get used to it.

    And most people find that 2FA, well, it can be annoying if you can’t find your phone, or if you can’t find the physical key. Generally you remember to pack it. So you, you’d end up not ever going anywhere. You don’t take your laptop to go work on your WordPress website without also bringing your 2FA token with you, so it just becomes a habit.

    [00:35:25] Nathan Wrigley: I confess in my case, I began using 2FA, almost as soon as it was an option. And I remember really disliking it to the point where I disabled it and I did another six months, and then I thought, actually, do you know what, there’s a lot of sense in this. So I switched it back on. So this is going back quite a number of years. And it really has become part of the muscle memory of logging into a site. You know, I go there, I type in the username and the password, or in my case, the password manager handles that.

    And then I get this additional prompt. And all in all the whole thing is an additional possibly 10 seconds. And whilst it’s irritating, that 10 seconds probably could be better spent. On the grand scheme of things, it’s really not that amount of time. And I always thinking that if something is inconvenient, then it’s probably a good idea. With greater inconvenience, probably lies greater security.

    [00:36:20] Robert Rowley: I don’t know if I’d fully agree, cause I can think of some greatly inconvenient things, but you have the right idea. I remember, yeah, many years ago, I was working at DreamHost and we rolled out 2FA for access to the DreamHost panel. So this is access authentication where somebody could take over all your websites. They could migrate your domains elsewhere, right? Like it’s your whole business.

    And there was pushback. There was genuine pushback and it was an option too. It was quite funny. But, there was genuine pushback from our customers saying, I would never enable this because what a waste of time it takes to type in this code. But I think over the years people have simply adopted how to use it. I’m sure, I’m not this old yet, but I’m sure back when passwords were first created, right? The idea of having to log in with both your username and some sort of password caused some uproar at some university’s on old Unix systems. They’re like my login should be just my login. We should trust everybody. And then of course, you know, they learn that, yeah, you need to do a, some form of challenge response to verify authentication, who the user is, who they claim they are.

    [00:37:23] Nathan Wrigley: It’s not only something that you know, your password and username, but it’s also something that you have, a physical possession, in this case, a phone or a Fido key or whatever it may be. It really adds that extra layer.

    One of the things that we keep talking about, I guess it’s par for the course really, given the nature of the conversation, is passwords. The fact that we have to memorize a combined thing. There’s a username and a password. I don’t quite know how that came to be, the way that we logged onto more or less everything, but there’s these two fields. Username, typically an email or some kind of thing that you’ve decided to use. Might be a, a shortened version of your own name or something like that. And then there’s the password which sits alongside of it. Given that that system, should it be discovered, allows complete access to whatever is in that service, Google, Dropbox, whatever it may be.

    I’m . Wondering if that system is broken. I wonder if it’s time to get away from, or slowly start to move away from, the username and password combination, which allows access to everything once successfully done. Even though it can be married with 2FA, like we’ve described. And I’m wondering if any new and emergent technologies have passed your radar that may be replacements for things like usernames and passwords. I’m sure there must be some ingenious cryptographers out there somewhere trying to get rid of this devilish thing, the username and password, but I don’t really know much about them. So I’m just going to hand it to you and see if you do.

    [00:38:55] Robert Rowley: Well, I’m going to first start off saying I do not understand enough about cryptography. And so you’re absolutely right to call them genius cryptographers. They’re phenomenal at math. I’ve read their papers and I, my eyes still gloss over. But I understand their high concepts, which is why they’re truly geniuses, is that they’re able to understand the big concepts of this very convoluted math to more lay people.

    It is true. What we’re dealing with is a lot to do with cryptography. This is a matter of a secret which is known to an individual, which is then stored somewhere and then verified so that we can be decrypted in a way that we confirm that the individual is the only one who we assume has the knowledge of that secret to decrypt this vault or password cache or things like that.

    So what we’re dealing with is secrets and cryptography. Oh boy, I don’t even want to get into the whole cryptography thing, but like, public-private pairs. Where you can store them. How you can store a public key, and the public key is not a big deal if it’s been stored or shared publicly because it’s only your private key that can decrypt data that’s been encrypted using the public key.

    Basically this two key system. When you really kind of like, understand how it all works, you’re like, oh, okay, cool, this makes sense. But really in the end of the day a password is just a key. It’s something you know. A good analogy maybe is when you were using LastPass, you and I were both using LastPass, probably for a number of years. Did you have a knowledge of your passwords?

    [00:40:17] Nathan Wrigley: No. None whatsoever. I always go for a very long gibberish password. And even if you forced me to read it out, I wouldn’t be able to memorize even one of them. They were so ridiculously long, yeah.

    [00:40:30] Robert Rowley: Exactly, so that’s how I was using LastPass as well. LastPass, I knew my master password, which was being used to decrypt these gibberish long passwords, which were all stored in LastPass. And I was using LastPass as this storage device for these long gibberish passwords. But they’re not words, they’re not pass phrases, right?

    Let’s define a few terms. Passwords sound like a word, which is a secret word, like, open sesame, to enter a, get authentication to enter a system. Passphrase is another terminology that the security community pushed out there for a while. And this is more like, horse, battery, banana, stable. Something like that. You’re creating a phrase, a whole sentence, which makes a longer word. It’s not really a word anymore, it’s a phrase. They’re trying to encourage people to use sentences. I used an example earlier. I love pancakes, right? That’s something I encountered in my life, for bad pass phrases.

    But, now we can get into a new world where we can define this as a pass key. And now a pass key is kind of what that thing that we’re using LastPass to do. We’re storing this large gibberish, basically a little blob that we don’t know, we can’t even pronounce if we wanted to. And that is the secret that is being stored and saved with the server, or basically not saved with the server, but as a challenge in authentication step within the server.

    And we’ve extended what started as a password and as the common term would be password to passphrase. And now we have this new thing called a pass key. And how we were using it in LastPass is bastardized version of what a pass key should be. And there are new technologies now, being the thing that on the internet. Because web browsers make web applications accessible to the whole wide world, we’re starting to see that pass keys, this high level of entropy. This long amount of gibberish. This inability for an attacker to brute force the authentication step is what we’re needing in order to protect ourselves against attackers.

    And in that case, in that sense, pass keys are actually a real thing. You don’t have to implement them using LastPass, using long gibberish things that you can never remember yourself. But you can use them by storing them locally, or having a system that can unlock that key only when you basically, like we were using with LastPass. It could unlock the key, which then is being sent to the web server, web application to pass that challenge for authentication.

    There are plugins for WordPress, which are already available, and they will utilize a system that’s more of a pass key system. They’re not always how we were explaining with LastPass. Some of them will use your phone, it’ll scan a QR code, and when your phone can decrypt the QR code correctly, it will pass the challenge, the authentication challenge that the plugin, or the web application, has presented. So it verifies you as authenticated. I hope I’ve explained that right?

    [00:43:08] Nathan Wrigley: Yeah, let me just outline whether or not I’m confused about that. So with passwords and pass phrases, essentially both parties need to know what they are. So the website, let’s take the example of Google, Google needs to know what my password is. I need to know what my password is. And in order to keep that secure, I encrypt it inside my password vault and Google encrypt it on their servers with whatever technology they have available. Hopefully, Decent and strong.

    But the point is there’s two secrets held in two different locations. The same would be true for pass phrases because it’s just another, it’s just a really, it’s more or less exactly the same thing. But is a pass key in any way different to that? Is it being stored in both locations. Do I need to store a copy of the pass key and does the website need to store a copy of the pass key? Or is there something going on which is slightly different where only one of us knows? That’s the bit that I haven’t quite worked out.

    [00:44:05] Robert Rowley: What you were explaining is what’s called a two-way or symmetrical encryption. Both parties know a secret and they both use that same secret to confirm a identity, right.

    [00:44:15] Nathan Wrigley: Yeah, thank you.

    [00:44:16] Robert Rowley: If the bouncer on the other side of the door knows the secret password to enter the club is open sesame, then they wait for people to say it on the outside. Both parties need to know this. There’s another way with encryption. This is why cryptologists are geniuses, which is called one way encryption. One way says that the bouncer on the other side of the door actually does not know what the passphrase is.

    What they know though is for your user, some mathematical equation, right? I’m going to simplify this. That will embarrass myself, because I’m going to go to junior high level maths. And this is a terrible example, but like one plus x is equal to seven. Solve four x, right. It’s that sort of thing.

    But they’re doing mathematics, which are like multiplication charts, an elliptical curve. They go way out there. So it’s very hard to do this, you can’t do ’em in your head. But they do, and actually they’re using prime, I believe. They’re using prime numbers, which are hard to, it’s hard to calculate in the reverse direction.

    It’s that sort of idea is that the bouncer on the other side knows the maths to do, right? They know the algorithm, or not the algorithm, they know the equation. And on the other side, you just simply say the word six, and then the bouncer on the other side puts six into this math equation. They run this math equation, which depending on the speed of the bouncer’s CPU in his head, he has one plus six is equal to seven, is that true? And that’s how they work.

    So the bouncer does not know at any point in time what the secret is until you give it to him. And then that, basically then he uses the math behind the algorithm to verify that the secret is true. Does that make sense? That’s a one way.

    So you have a application, we’ll see this with GPG or PGP, which is a public-private key system, where your private key is what you need to keep secret. And then the public key is what’s shared publicly. So anybody could know your public key and then they can compare it. And then you would basically, they would use the public key to encrypt data to you, and then you would use your private key to decrypt the data or vice versa.

    [00:46:06] Nathan Wrigley: Yeah, I understand. I think I’m hoping for an era in which the knowledge that I have doesn’t need to be known at all by them. So I could display something to a website or a SaaS app or whatever it may be, and the mere fact that I possess it combined with something that they possess. But the two never need to collide, if you know what I mean.

    I can constantly keep my thing secret. They can keep their bits and pieces secret. And I believe there are endeavors to do things like that. I think in my case that the LastPass data breach has made me realize that having trust for all the things in a third party service, that’s been shaken a little bit for me, over the last few weeks. And I would like to hope that things, I don’t know, inside the browser or inside the Mac or inside the iPhone or whatever it may be, will make this easier over time.

    [00:46:59] Robert Rowley: Yeah, definitely. It’s a thing that’s always going to change, but we have to remember, we’re using computers and they’re reliant on math. And unfortunately it’s going to be up to some really, really, and this is why I’m so nice to cryptographers, I think they are all geniuses. It’s going to take some really smart guys and girls as cryptographers, to figure out the algorithms that are going to work and be resilient against attacks like bruteforce attacks.

    That’s what LastPass was doing, was hashing your password. So one over 100,000 times because if you hash, that makes it 100,000 times harder, or slower, for the process of hashing, right? So hashing it once might take a millisecond, but hashing it a hundred thousand times, now that takes a second or so. And that’s what they did based on the technology and the cryptography as we understand it today, the applied cryptography, I should say. That was their best option to slow things down.

    And doing that, choosing the algorithms they chose, choosing the bit sizes for the keys that they chose, choosing the number of iterations of hashing that they chose, all gave us some time. And that’s the time that we needed to update and rotate out our passwords and our secrets that unfortunately were lost.

    [00:48:08] Nathan Wrigley: Well that was a good segue. You mentioned time and time is slowly running out for us. But I just want to give you an opportunity to mention a couple of the things that you are doing in the WordPress space, which are nothing to do with LastPass, even though the name of it may be, with retrospect, may collide very closely.

    Tell us about Last Patch, which is a project that you’ve been involved in, don’t know for how long, but tell us what you’re doing over there. It’s wonderful actually. It’s such a nice, almost philanthropic thing.

    [00:48:37] Robert Rowley: Just a bit, yeah. Unrelated to LastPass, I’ve been writing a series of blog posts that I’ve been calling Last Patch. The concept here is that, I wanted to write about vulnerabilities and exploits on WordPress plugins for some time, but I’ve found it, it’s not very nice to talk accidents and mistakes other peoples have made, especially when they’re still writing actively to the project, right?

    Like, I don’t want to take a, somebody patch this bug, this security bug, which is a more sensitive bug than a normal one. And I don’t want to just put ’em on blast saying, hey everybody, here’s how you attack this bug in case nobody updated yet. So instead, what I did is I found out, and this happened last year, we were writing a white paper, which basically was explaining about a 2021’s, a year in WordPress security retrospective.

    And we found out that a good handful, I think it was seven or eight plugins were disabled and they had, out of 30 critical vulnerabilities that were reported in WordPress plugins in 2021, about seven or eight plugins received no patch. So a critical vulnerability received no patch, and sites were still simply running an insecure version of these plugins.

    And that’s not good either. So a solution oriented towards fixing things instead of just pointing out mistakes, was that I wanted to start writing patches for these abandoned plugins that had security bugs in them. So in quarter four of 2022, I was given some time and I wrote up a few blog posts about six in total explaining for six, each blog post is its own plugin that has its own vulnerability in it, and none of those plugins got patched in 2022. So what I went through and I went ahead and just wrote the patches. I explained how the vulnerabilities worked. The target audience for this could be really anybody.

    If you’re a site owner, and you’re running one of these plugins and you want to patch it yourself, I don’t recommend running my patches, because these are abandoned projects. If it’s an abandoned plugin, I recommend you find a new alternative. But if you absolutely need to run it, yeah, you can use the example that I’ve given you.

    But it’s even better for a developer. If you’re a WordPress developer or even a new developer, and you’re kind of curious how about how security bugs work and what to do when you encounter them, these series of blog posts will walk you through how these security bugs work and how to basically write a patch.

    Most security bug patches are pretty rudimentary. You’re going to be looking at writing an allow list, verifying authorization, or sanitizing or escaping data correctly. So that’s the series of blog posts that I’ve released, and they’re all available on the, LastPass, last sorry, Patchstack blog.

    [00:51:03] Nathan Wrigley: Too many patches and lasts in this episode. Pass, patch, last. There’s lots going on. Yeah. That’s amazing. What a nice endeavor. Do you intend, funding and time permitting, is this something that you would wish to continue? Are you going to try to do this through 2023?

    [00:51:20] Robert Rowley: I would hope so. I genuinely had fun writing these patches. Reviewing the code. I’m an awkward person in the head, I guess because I like looking at other people’s source code, figuring out what went wrong, and adding, because I, I’ve done that in my career for the past 15, 20 years.

    I’ve reported security vulnerabilities to developers. I’ve become empathetic enough to understand their position of not wanting to see the report, not enjoying that process. But I genuinely enjoyed this process and I like sharing with other people, especially developers. The idea that a mistake, mistakes can be made, right?

    Mistakes were made. It’s okay. It doesn’t matter what happened. What matters is how you respond to it. And you should be responding to security breaches like LastPass. Or you should be responding to security bugs, like open source developers. The majority of them, I’ll have to share here, the majority open source developers are very receptive to security bug reports.

    It should be considered a contribution to the project. It’s a way to make the project better, more secure. And as a developer for the developers, it’s a way to improve your skill sets. You know how to identify, like if you take it seriously, you’ll learn how to identify security bugs, how to program defensively so that security bugs don’t affect your application, and so on and so forth.

    [00:52:34] Nathan Wrigley: What a great endeavor, yeah. Thank you for doing that on everybody’s behalf. That’s really wonderful. Robert, because we’re close, closing in on an hour, I’m going to knock it on the head. But before that, I’m going to ask you to tell us where we can find you online. If anybody’s listened and wants to reach out. Do you have any publicly available Twitter handles or email addresses or contact forms that you want to mention?

    [00:52:57] Robert Rowley: Sure. A great way to follow me online nowadays is Mastodon. There’s been this wonderful guy who created a wpbuilds.social Mastodon account. I’m on that as well as rawrly, r a w r l y. I am apologizing for such a weird name, but that’s also my wordpress.org username.

    So if you follow me there, you can see what I’ve done on wordpress.org and you can find me on the wpbuilds.social Mastodon account. You can also, if you want to keep up to date and you don’t need to talk with me, but you just want to hear more about security topics and information, you can go to the Patchstack blog. I write articles there on occasion.

    And every week I do a Patchstack Weekly, I think it’s episode 53 right now. And for the beginning of this year, all I’m going to be talking about a security hygiene best practices. All those things that you maybe should be doing about once a year. That’s my New Year’s resolution, to get a handful of these things shared with the public so that they can take, especially the WordPress public, this community can take security more seriously. Just knowing what to do is really what most people need. So again, Patchstack.com, or wpbuilds.social.

    [00:53:59] Nathan Wrigley: Robert Rowley, thank you for chatting to us today on the podcast. I really appreciate it.

    [00:54:03] Robert Rowley: Thank you.

    On the podcast today we have Robert Rowley.

    Robert is Patchstack’s security advocate, where his time is spent interacting with open source communities to share the word about security best practices. Given his background, the podcast today is all about internet security.

    We start off with a topic which is very much in the news at the moment, the LastPass security breach.

    If you’re a LastPass user, then you’ll know what their service is, but if you’re not, here’s a quick introduction. LastPass is a password manager. It will lock up your passwords, and any other data for that matter, in a secure vault, which can only be read if you decrypt it with the correct password.

    Towards the end of 2022, LastPass announced in a series of blog posts that customer vaults had been taken from their cloud storage. The way that this was communicated left many of their customers questioning their use of the service, and whether they now could trust LastPass with their data.

    Robert explains how the incident occurred, and if you should be concerned. The answer is, as you might expect, it depends. There are situations in which the settings that you had in your LastPass account might mean that you need to act sooner rather than later. The length and complexity of your master password is also a key factor.

    This then leads to a conversation about the broader issue of website security and the security of WordPress websites in particular.

    What are some considerations that you need to think about when protecting your website and how can you communicate these considerations to your clients?

    Towards the end of the podcast, we chat about a project that Robert’s been involved in during 2022. He’s been patching plugins which are no longer being maintained, but are still being used, so that they present less of a security threat to their users.

    If you’re curious about website security, then this is a podcast for you.

    Useful links.

    Patchstack

    Hashcat

    LastPass

    1Password

    Bitwarden

    Dashlane

    KeePass

    KeePassXC

    FIDO Alliance

    Yubikey

    Google Authenticator

    Authy

    Last Patch

    Patchstanck blog

    Robert’s Mastodon account

    Robert’s WordPress.org account

    Patchstack Weekly podcast

  • #60 – Mike Demo, Tracy Apps and David Wolfpaw on LGBTQ and WordPress

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, a discussion of WordPress and LGBTQ.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy and paste that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you, and hopefully get you, or your idea, featured on the show. Do that by heading to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today we have Mike Demo, Tracy Apps and David Wolfpaw. Usually, it’s less of an interview and more of a round table discussion about their experiences in the WordPress community.

    A few weeks ago, I put out a call for anyone who might be interested in coming on the podcast. Mike Demo reached out to me and said that it would be good to discuss how the WordPress community deals with LGBTQ matters. We agreed on a date and two other people were invited to join us on the call, Tracy Apps and David Wolfpaw.

    We start things off with each of the guests introducing themselves and telling us how they ended up working in tech and, more specifically, WordPress. This leads into a discussion of how the job market can be different for people with different identities.

    We then move on to WordPress, and talk through some of the ways that the community has responded to underrepresented groups. There are certainly areas where the guests think that there’s been positive change, but we also spend time thinking about the ways that some things could still be improved. In-person events like WordCamps get plenty of attention here.

    We also get into the open source nature of the WordPress project, and whether this makes it more or less difficult for change to take place, given that authority is structured differently from most for-profit entities.

    Towards the end of the podcast, each of the guests shares a story about some specific thing that they wish could happen. Something that’s within reach, but as yet, not achieved.

    And we round it all off with the sharing of resources and websites, which listeners may find useful.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading to WPTavern.com forward slash podcast, where you’ll find all the other episodes as well.

    And so without further delay, I bring you Mike Demo, Tracey Apps and David Wolfpaw.

    I am joined on the podcast today by three guests. We’ve got Mike Demo. We have Tracy Apps and David Wolfpaw. Thank you very much for joining us on the podcast today because there’s three of us. I’m going to ask us in a round robin fashion to introduce ourselves, and then we’ll get into the nature of the topic itself. So first off, let’s start with Mike.

    [00:03:59] Mike Demo: I am Mike Demo. I go by Demo. Pronouns, he, him, they, them. And I am the head of partners at Codeable.

    [00:04:09] Nathan Wrigley: Thank you very much, Mike and Tracy.

    [00:04:12] Tracy Apps: Yes, I’m Tracy Apps. Apps is really my last name. My pronouns are she, her. I do a lot of things. I am a UX designer, front end developer. So basically I call myself a creative problem solver and educator. Both work for myself, and different contracts.

    [00:04:32] Nathan Wrigley: Okay, thank you very much. And finally, David.

    [00:04:36] David Wolfpaw: Hello. My name is David Wolfpaw. My pronouns are they, them. I also do a variety of different things. I call myself a website mechanic for my WordPress maintenance company, FixUpFox. I also do some education as well, and am trying to describe myself more as a web creator these days.

    [00:04:56] Nathan Wrigley: Thank you very much indeed. Now, the podcast came about because I put out a message on social media, several months ago now, asking for people to volunteer their time to have a podcast chat with me. And I believe of the three of you, it was Mike that reached out to me and he said that he would like to talk about the subject of WP Pride and then in brackets LGBT, or out in tech.

    And it transpires that the three of us well, the four of us, the three guests plus myself, have managed to get on the call today. So unlike most interviews where it’s Q and A, I ask a question, the guest responds. This is going to be more of a round table discussion. I’m not entirely sure what the direction of travel will be, but we’re just going to talk around this subject, probably about 45 minutes or so.

    So I’m going to kick off, and you, the three of you, feel free to interrupt each other. Feel free to crosstalk or make me be quiet if I am rambling on. But I’d like to get into this subject first of all. And the first thing is, under the brackets in the show notes, we had this idea of life experience, was one of the topics we were going to talk about.

    And professional experience, how you got here. So to introduce the subject, why this matters in tech, why this is important. It may be that there’s a whole bunch of people listening to this who can identify with what we’re going to talk about. We may be introducing this topic for the very first time. So let’s go back to basics and introduce how this topic has come around and whichever of you wants to take that on, how it’s been affected in your life, and so on.

    [00:06:26] Tracy Apps: I can start with this one. So because my, just my professional experience is very tied into my queer identity, especially as I have been professionally running my own company. And one of those interesting things is, you know, with most people in the tech industry has taken a winding turn.

    I officially have an art degree. But then I also was in engineering, and I started teaching myself, or I found the internet basically and these homepages back in 1996 and started teaching myself html. But because of all that, and then the WordPress community especially having that kind of, that open source, not only the open source software, but the open source knowledge, everyone is collaborative, has allowed me to create my own company.

    Because in many States in the United States, it is still legal to be fired for being gay. So that job security is not necessarily there for some people, but having the skills and the community in WordPress and in the tech world, being able to kind of create and forge my own path, that has become my job security.

    So it ties into my professional, how did I get here, in a really interesting way and gotten, just some hilarious stories through this journey. But I wouldn’t have that if it wasn’t for having that, being able to make my own company and make my own work and forge my own path.

    [00:08:16] Nathan Wrigley: Do you feel, Tracy, that the fact that you have done all of that and you’ve done it yourself for yourself by yourself without the need to have an employer. Has that made your life easier to manage, shall we say? Do you imagine that if you had have gone for the employed employee route through life. Do you think you would’ve had a different experience?

    [00:08:38] Tracy Apps: I definitely would’ve had a different experience. But the one thing that I have learned, and it’s one of those, what’s the cause, what’s the effect? Is it because I have been running my own company and, just even since I was a kid, when someone was like, oh, drums, that’s something that boys do.

    And I was like, I want to play drums. And so I started taking drum lessons in grade school. So I was kind of always that rebel. Be like you say I can’t do something. Well, that’s going to make me do it now. And so that doesn’t always, unless you have the right employer, that doesn’t always jive well when it’s like, especially in corporate where it’s, oh, you have to do all of these things and not rock the boat. And I’ve always been one to rock the boat.

    So that has kind of both ruined me from being an employee. Except for in places where that is actually really needed. Things like startups and where you need to disrupt an industry. But again, I don’t know if I would’ve just, the recession hadn’t happened, I hadn’t had to start my own company back in 2009. Would I be in a different place? Probably, but would I have a different personality? So it’s always a interesting self-evaluation of, that.

    [00:10:04] Nathan Wrigley: So a nice anecdote there from Tracy about an aspect of the last few years that’s led to the job that she’s now working in. I wonder if Mike or David want to interrupt at this point and give us an anecdote about their own lives that they think is important.

    [00:10:19] David Wolfpaw: This is David. I just want to jump in and say I can agree with some of the things that Tracy said, and expand upon that. I’ve had some professional web development jobs in the past where I felt that my work there was in part hindered by my identity. As Tracy said, there’s a lot of places, including Florida where I live, where, well, okay, it’s a little bit complicated now, I’ll say. But basically, yes, you could still fire anyone for any reason, including, you know, their sexual orientation or gender identity.

    I’ve had places where I’ve felt unsafe being out. Or having to hide parts of my identity that I might otherwise not, because I’ve been in work environments where you could certainly tell that it was frowned upon, or that there was a certain type of, I’ll say company culture that existed that made it not feel like the best environment to be out and be fully myself.

    [00:11:11] Nathan Wrigley: Do you mind if I just butt in there and ask you a question about that? So the first thing I want to ask is A, did you in those scenarios, feel that the quickest solution was to step away from that job and therefore have to go on a job hunt yet again? Or did you feel that you wanted to tackle these things head on? I’m just getting some sort of orientation for what the easiest thing to do is in those scenarios, not necessarily the best thing to do. But typically have you stood down and said, look, this is not for me. It’s going to be easier for me on a personal level if I just make this problem go away by quitting? Or have you taken on the challenge of changing company culture and so on?

    [00:11:50] David Wolfpaw: Well, thankfully I’ve had other reasons to leave jobs that, you know, I didn’t feel that was the main reason for it. I am as well self-employed now, just for context. Unfortunately, a lot of times it feels easier to be quiet, quite honestly. Like sure, looking for another job, but that’s not always, I would not say that’s the quickest way to go. But you know, I would say in certain places, feeling excluded from your job or feeling othered is a lot more likely to happen, a lot quicker.

    [00:12:19] Nathan Wrigley: Thank you. Mike, any anecdotes to throw in our direction?

    [00:12:23] Mike Demo: Yeah, so there’s a big, kind of standard thing that a lot of employers say, right? Which is, we don’t care, right? We don’t care if you are purple, gay, whatever. But that is not really enough. Because if you look at the numbers or like, we don’t care if you’re, you know, man or a woman. We just want the best developers. But if you look at the data, it does matter.

    So, it is easier to be quiet in a lot of cases, because I would say most companies are probably not actively trying to force out LGBT people. But I would say that a lot of companies are actively trying to keep the status quo and not have that be brought to work. Which means you can’t really bring your whole self to work.

    So I have a habit, a pretty strong habit, and it’s gotten me in trouble in the past, of pushing against that multiple times, and being like, no, we should do something for pride month. We should do something here, do something there. And I’ve gotten answers through some larger organizations be like, well we don’t want to do anything public that might upset people. And I’m like, yeah, okay, thanks.

    [00:13:32] Tracy Apps: But instead, you’re going to upset that community. But that’s a smaller, right. That’s in fact what’s really happening.

    [00:13:39] Mike Demo: So like it’s funny, like we look at every pride month, right? In every June, at least in the US I think, I’m not sure about international. And we always make fun of those companies that be like, oh look, just changing your logo, blah, blah blah, rainbow washing. But I kind of appreciate that because at least they’re willing to put their money where their mouth is.

    GoDaddy’s a great example. GoDaddy, it was like five years ago, they did something for Pride month. And they responded with every hateful comment in Twitter and Facebook, sorry to say that, support person will email you to help you transfer your account out of us. And they owned it. And that’s kind of cool.

    Yeah, so I’ve pushed a lot and tried to get more representation, and it’s worked out eventually. At Codeable, for example we brought back, at WordCamp Europe this year, . And that was very successful. And we did that again at WordCamp US, and now we’re co-hosting it at WordCamp Asia next month.

    Well it’s going to be in February, so, with Yoast. And so those came back and those kind of took a hiatus. And so getting budget for things like that also helps.

    [00:14:45] David Wolfpaw: I also want to just jump in before the next question, to comment on something that Demo said. Which was when companies say something like, we don’t care if you’re gay, straight, purple, whatever, we want to find the best people. That is sending another message. Let alone the fact that, I take issue with people saying, oh, I’m colorblind, I don’t see purple people, for instance. As far as I know, there are no purple people. But there’s also the issue of when you say, we don’t care, that’s not saying we’re not racist, we’re not prejudiced. That’s saying that, as Demo said, we’re going to protect the status quo, because we’re not going to consider that you have potentially different needs, different life experiences to look at.

    [00:15:26] Nathan Wrigley: So do you regard that then as merely just ignoring the issue? Basically just saying what we are going to do here is bury our heads in the sand and not take any affirmative action or any action at all. But just pretend like there’s nothing to be done, no conversation here. Let’s move along and wait for a couple of weeks to pass and then we can all get back to normal.

    [00:15:44] David Wolfpaw: Um, not necessarily. I mean, I could say certainly in some cases that would be the case. But honestly, if someone answers like that, certainly it’s better than someone answering negatively. But I always see that kind of answer as somebody who is right for education of some sort. And I don’t try to force that onto other people. Certainly there’s not always the best time and place for it. But I found that that is more likely to be the person who is willing to listen to you. You know, when you say, that’s not okay, that’s not enough. They’re not doing it to avoid any sort of responsibility.

    In general I found that’s the person who’s doing it because it sounds right, and it sounds, like a smart thing, until you point out what it really means, what the differences are. You know, that’s like I could say, I’m trying to think of another example that maybe fits my identity better. But the most probably well known one here in the United States would be saying black lives matter, versus all lives matter. And it’s really easy to take something like that, that sounds positive, but turn it toxic. Make it politicized in a way that honestly shows more about the person saying it.

    [00:16:51] Mike Demo: Bringing it back to WordPress just for a second. WordCamp US had the diversity scholarship to help with the travel fund. And I love the idea of it, but it also was interesting because the speaker applications didn’t ask for, besides pronouns, didn’t ask for any identifying information.

    Are they people of color, non-binary, LGBT. I love the fact that WordCamp US is focusing and working with outside companies to help sponsor underrepresented groups to be able to travel. However, I felt like this year, WordCamp US, that the way that they did it was weird because, they were using the Underrepresented in Tech requirements, which are good, but how do you know, how can you support underrepresented speakers if you don’t know what minorities the speaker falls into?

    Unless there’s somebody like the three of us who are public. And so I’m curious on Tracy and David’s thoughts on, how events and conferences can be more accepting. But also, on the other hand, asking for people to have to identify that data when they apply to speak also might be a negative to some people. But on the other hand, it’s really hard to be more diverse in your speaker selection if you don’t know someone’s non-binary, for example.

    [00:18:14] Nathan Wrigley: So the form that you mentioned, it simply had no input. There was no fields to supply that information? There was just a black hole there. The assumptions had to be made apart from, I think you said pronouns were one of the fields available. But you’re also making the point that maybe some people would see that as something that they don’t wish to supply. But then again, I guess if you put the fields in, but don’t make them necessary. Yeah. It’s hard, isn’t it? It’s difficult to know where the boundaries there lie.

    [00:18:40] Mike Demo: The Community Leadership Summit, they on their speaker applications, they have a whole bunch of minority questions, from disabilities, to gender, to lots of different things. And it’s all optional data. They anonymize it for the speaker selection, but they at least report what their numbers are.

    It’s something I’ve been thinking about a lot because we have been seeing more diverse speaker selection in WordCamps, but then again, I feel like we have the token gay people in the WordPress community that keep getting selected, and we feel like that’s good enough, and I don’t think it is.

    [00:19:16] Nathan Wrigley: Is that a product of people raising their head above the parapet, if you like? Just that some people are comfortable speaking about those things in public and talking about it on social media so people get to know who they are? Whereas other people keep more quiet and keep their cards close to their chest, if you like.

    [00:19:33] David Wolfpaw: I certainly think I could be part of it. I want to give space for Tracy first before I respond to the question of what Demo said though.

    [00:19:40] Nathan Wrigley: Okay.

    [00:19:40] Tracy Apps: Oh yeah. So I’ve been to some really great conferences that, the speaker list does more accurately represent a diverse swath instead of just like, here’s the token person of color. Here is this. And those things, from hearing those organizers, it takes a lot of intentionality. Physically going and inviting people. Because one of the things, so I am one of the hosts of the Women in WP Podcast. We focus on stories of women and non-binary, people in the WordPress community.

    And if you look at most of the podcasts, and it was started because Amy, one of our hosts said she was loading up podcasts and she was noticing it was all mostly straight men, which is fine. They were great. And some of our good friends of ours, and do great work and are basically self, self-described feminists. And, it’s not like a bad thing, it’s just that some people, especially women, and those in kind of marginalized communities, are kind of always told, women especially, anyone who has been raised as a woman.

    So even trans men that I know and non-binary folks, that upbringing of, women have to be softer and quieter. And don’t brag about things and all of those kinds of things. Just that culture, even if it’s subtle, it permeates just your whole attitude about yourself. Mostly subconscious. So when it’s like, hey, we’re looking for speakers that are experts at blank. And a lot of women, non-binary, trans men and just minorities. Anyone that’s on the margins doesn’t think of themselves as this expert.

    Because we see the experts are, we have that vision of who those, those experts are. And, oh, we don’t fit that. And we’ve been kind of told our whole life subconsciously, indirectly that we don’t fit that. And so unless you physically go and say, hey, you are valuable, and your, your knowledge is something. We need that at the table.

    We need that as a speaker. People are like, really. And most of the, most of the guests that we’ve had, it’s almost humorous where we have women and non-binary guests that say, oh yeah, you know, I just did this. Oh, you just created the most robust and largest and most successful plugin in the WordPress community.

    Just because you couldn’t find something that, you needed to do something, and you just created this company that now has 10 employees. You know, I was like, that’s amazing. It’s amazing but that culture of suppressing one’s self is what shows up, and why people don’t apply to speak, or to go to something, or to apply for a job. All of that is all connected to that.

    [00:23:09] Nathan Wrigley: Do you have a sense Tracy then, that there is a reservoir, for want of a better word, a reservoir of people who are essentially there? They’re out there, but they’re just not being tapped. They’re being put off. There are impediments in the way. Intentional or non-intentional?

    [00:23:25] Tracy Apps: Yeah, absolutely. And one of the things, we’re almost to a hundred episodes of Women in WordPress, which is amazing. We did not expect to be going that long and having that much. But we’ve interviewed people from all over the world, and I’m like, if these people weren’t in the WordPress community and working and doing whatever they’re doing, the whole WordPress ecosystem would crumble.

    But they don’t realize that because they’re not out in front. Or they’re like, oh, I’d prefer being in the background. Those are some of the most crucial roles, and the reasons why the WordPress community and project is where it is, is because of so many people behind the scenes that don’t step forward and say, oh yeah, no, I’m a part of this, but they really are.

    [00:24:17] Nathan Wrigley: Thank you. And David, you mentioned that you had something in response.

    [00:24:22] David Wolfpaw: Well one anecdotally, so for context, I organized the WordPress Orlando Meetup and WordCamp Orlando for close to a decade, before the pandemic. And I would reach out to people specifically. I would reach out to minorities, but I would reach out to women and say, I know that you know about this. We’ve discussed it. Would you be interested in giving a presentation on it? Or would you like to help with something?

    And, I am much more likely to get a response, oh no, I, you know, I couldn’t do that. Or, I don’t know enough about that, or I don’t feel confident enough about that. And, you know, I don’t try to push people too much, but there are, thankfully, since there are resources now to help people improve their speaking abilities and, you know, start training for it, uh, that I can direct them to those.

    But I would always hear that from women when I didn’t hear from men, if I asked, you know, men to be involved. Yet when we put on our events, the people who are much more likely to ask to volunteer for the event are women. People who are going to be doing those behind the scenes roles, and the things that are equally as important.

    But, it’s not the same of, I’m going to help with registration, versus I’m going to give a presentation on something that I fully know well about, but don’t feel confident enough. I do think it is part of how people are acculturated.

    And I also want to circle back, we were talking about the WordPress Community Summit. Years ago, I applied for one of the community summits and I attended. Somebody who worked for the WordPress project did ask me when I indicated at the time that, I fit some intersectional minority status. And, this is somebody who I’d met in person several times and they asked me in what ways that I fit in there. And I told them, but I realized so that this person who I’d met multiple times and talked with both in person and online, didn’t really know me very well and couldn’t really, you know, there’s a lot of things that you can’t just see by looking at someone.

    [00:26:09] Mike Demo: I will say that to give credit to WordCamp US specifically, I know that they reached out to multiple speakers and they did their best. And there was the fund that multiple companies donated to, to help people with fiscal issues. So all that’s great. It’s all going into good direction, but we can always get a little better every year.

    But even like David, when I was a sponsor, I asked, hey, before I sponsor WordCamp Orlando, will it be an all gender bathroom? And they were like, huh, I don’t know, maybe. And then there was that year. And I know of a few attendees who were very thankful for that, that opportunity, and that option.

    So, sometimes you just take what you have and you can ask the question. And sometimes if you’re in the position to, like for me as a sponsor, I was a global sponsor for WordPress, the company I was at, we were a sponsor, I should say. I’m proud to say a few WordCamps started offering some accommodations and thinking about things they never thought about. So, sometimes it just takes one person and it can make a difference.

    [00:27:11] David Wolfpaw: I just want to add to that, I would, well, first of all, I want to thank Demo again now. But I would like to call that a success story for so much more than just that one event. So Demo did reach out to me years ago concerning gender inclusive restrooms at our event, which was a college campus.

    And, you know, myself as a queer person, I had not given that any thought. It was admittedly a blind spot for me. I just didn’t think about it and I should have. But thankfully someone else brought it to my attention. We approached the college and, they did set it up for our event. We’d had gender inclusive restrooms at events after. But the part that I find more successful, again, I’m going to credit Demo for raising this as an issue, is that we were able to go to the college and say, a sponsor for our event requested this. They host a lot of events at this college.

    And the person who works for the events department have really helped us. Basically she spearheaded an initiative to get gender inclusive restrooms just as part of the campus full-time. So that was something that did not exist before. Somebody in the WordPress community, again give Demo the credit for that, brought it up as something and we were able to go look, somebody specifically asked for it, and it’s somebody who’s giving us money.

    [00:28:20] Nathan Wrigley: Given that that could be labeled as a success and it’s a real world event, and maybe WordCamps and WordPress events are, are the easiest target for this next question. What other, things do you wish to achieve? What are the things that in your minds would qualify under the umbrella of success?

    You know, in other words if, we were to change just one, maybe you’ve got a whole laundry list written down somewhere, but if there were one or two things that you would like to see changed in the short, medium term, and it could be about WordCamps, but if you want to talk about WordPress as a software project, feel free to delve into that. What are the things that you would like to see changed? Things that you think are not right yet.

    [00:29:03] Tracy Apps: Well, some of the things, especially as a user experience designer. Some things can be fairly easy. You know, how many job applications, registration forms et cetera, say your gender, and they only give you two options? There’s dozens if not hundreds. So that’s very limiting, and especially now if you’re saying, all right, hi, I’m a company and I’m trying to hire diversely. And I now just presented a form for you to fill out that you aren’t included in that automatically says, well no, you really don’t want me. You’re looking for something else.

    And people just stop filling it out. And that’s just a really easy change, so different plugins. Now Yoast updates with the inclusive language. I actually also I was using Teams for one of my contracts and they have a speaker, they monitor your speech and they tell you if your language is inclusive, they give you like a report afterwards.

    So there’s lots of these tools we can lean on to see, especially because you don’t know what you don’t know. Yes, there’s queer people all over the world and probably everyone has them in their family. But that doesn’t necessarily mean that they’re out and they know that they have queer members of their family or neighbors, et cetera.

    Because some places we do not always have the privilege of safety, of being out and being completely who we are. But there’s all these tools that we can now look at to help us with that education. And start to learning, start opening our eyes. There’s tons of organizations out there too that have just video stories. So you can find a wealth of information and personal testimonies and learn and just develop more of that empathy of something that you don’t know just by using the internet, which we’re, most of us are on all the time anyway.

    [00:31:18] Nathan Wrigley: Tracy, can I just interrupt you there, before I carry on and ask Mike and David about what success for them looks like? You said the phrase there, you don’t know what you don’t know. Do you think that is increasingly less and less watertight, as a thing to be able to say?

    So as an example, if in five years, let’s say five or 10 years from now. If somebody was to turn around and say that back to you? Well, I don’t know. Yes, we didn’t accommodate any of these things. But you know what? I don’t know. Forgive me. Do you think that’s going to carry water in the future, or do you think we’re getting to a point where those kind of utterances are just, well, no longer acceptable?

    [00:31:54] Tracy Apps: Well, I think that’ll always have some, because the paradox of choice. Kind of the same thing with the paradox of having so much information, and then literally almost just being overwhelmed and to not know where you start. I think that’ll always be an issue.

    So I do think that some people will, that is a genuine ex excuse. Now with that said, you’re right, there is much more, kind of spotlights put on these issues. Now, it’s almost, especially in certain areas in the US, like you kind of have to, really try to not see it.

    Because it’s on the news, it’s everywhere. So I think it, it will be kind of both. But I also think that even as someone in the LGBTQ community, I still am learning things and having to change things. So being in the Midwest, we have our Midwestern y’all, which is, you guys.

    So I have been in the past, you know, whatever, five years or so, very intentional of changing that language and actually using y’all, because that is a gender inclusive, that is a gender neutral phrase to be able to include all. And if I go up to a mic and say, ladies and gentlemen, now what happens? I’ve excluded many people. So all of those things. I am even continuing learning and it’s a journey, I think it’ll be a lifelong journey, but it’s just a, a matter of wanting to keep learning and improving. And that’s the difference. If it’s, oh, I just don’t know what I don’t know, is a excuse to not learn and want to be learning.

    [00:33:41] Nathan Wrigley: Okay, yeah. Thank you. I understand the structure of your thoughts there. That’s great. Okay, so let’s go to Mike and ask the question. You obviously have an example already with the bathrooms that you mentioned at the WordCamp.

    [00:33:52] Mike Demo: I didn’t know that, by the way.

    [00:33:53] Nathan Wrigley: Did you have any other examples of things that you would like to see? In other words, what does success for you look like in the near term?

    [00:34:00] Mike Demo: Yeah. Quick question for Tracy. Tracy, are you saying in the Midwest, we live in the same state by the way, that you’re trying to say y’all all instead of you guys? Or y’all is our Midwest saying? Because I wasn’t clear.

    [00:34:11] Tracy Apps: Yeah, no. So you guys is kind of the Midwest version of y’all.

    [00:34:17] Mike Demo: I was like, I don’t know anyone that says y’all up here. So I agree with your statement.

    [00:34:22] Tracy Apps: Yep. I do now. And so y’all. Some other ones, you’uns, youse, that’s another good one. Yeah, yinz or whatever it is. I don’t know how Pittsburgh pronounce it. Those are all very great gender neutral, inclusive terms for a group of people. For a multiple you.

    [00:34:40] Nathan Wrigley: It really is interesting how the language is littered with tripwires, isn’t it? They’re all over the place and obviously if you’ve been having to modify your own speech and consciously apply thought to that, I imagine there’s countless examples in my own life where I’m doing that and there’s no intention there. It’s just a legacy of what I learned and what have you. It needs examining.

    [00:35:00] David Wolfpaw: Of course.

    [00:35:01] Mike Demo: Yeah, I mean, in school we’re taught that you can’t use they as a singular, as a singular word. So I still, when I read they talking about a single person, it confuses me to this day.

    [00:35:13] David Wolfpaw: And then you have some people who will counteract with, oh, but you know, Shakespeare used a singular they, or singular they was the common until, you know, the 1800’s or things like that. And this is not to discredit what, Demo’s saying because I was also taught the same. But I think I want to make a point of saying here for the audience listening that, you know, as Tracy said, all of us have things that we need to unlearn and change.

    Um and I’ll end, as you said Nathan, there are so many different trip wires there. Things that, you know, we don’t know, that we don’t know. No one is ever going to be able to perfectly address everybody and be inclusive of everybody when they speak and when they act. But there’s a big difference between someone refusing to use they, them pronouns because, you know, quote, it’s not grammatically correct.

    Sorry, it’s a bit of a tangent for me. It’s a bit of a stretch that I don’t like the argument that, oh, well technically people used to say it like this, so yeah, you should use it. Really, it’s as a sign of respect. As a sign that you want to participate and engage with conversation with this person on terms that you know, and put you on equal footing. Not that lets you have some power imbalance there.

    [00:36:26] Nathan Wrigley: I have this feeling that language in our own tiny span of life, 80, 60, 70, whatever years we get it. It feels like it’s a concrete thing, which was set in stone when I was born and will be immutable until the day I die. But of course, if you look back into history and you were probably to just plonk yourself down in the era of Shakespeare, I’m pretty sure that you wouldn’t understand a single thing that anybody was saying. It’d just be a soup of nonsense. And so the idea that language cannot be changed does seem to be just bound to the small little lifetime that we have.

    Whereas if you look at it over many years. A great example is my children. My children say things to me and I have no idea what it means, but to them it’s complete common sense. This is just the meaning behind slang and things like that. But the broader point I’m trying to make is that give it time, language can change. And just because it was like that when we were children doesn’t mean it will be like that or ought to be like that when we’re older. Sorry, a complete aside.

    [00:37:29] David Wolfpaw: No, no, that’s, I completely understand and agree with that. Language changes very rapidly, but I also find that, I guess I want to say like, history it rhymes. You know, you say that language feels set from when you were born, you know, look at like the, the word of the year that the different dictionaries put out every year.

    And a good portion of those are words that did not exist, just a few years prior. But at the same time, some of those words, and I’m blanking on any specific examples right now, but some words that you’ve only started hearing like in the past year or so, it turns out we’re common slang a hundred years ago and then went out of fashion and suddenly you’re getting used again now. And we think like, oh, this word is of course new. It only got, started getting used on Twitter or something. And it’s like, no, this has actually been around for quite a long time.

    Well, so many things are a product of whatever culture we’re trying to have. So, you have that stereotypical old timey radio reporter voice, which no one ever spoke like that, but it’s the voice you hear when you think of old time radio reports. Because it worked better for the technology at the time. Or say the mid-atlantic accent that was used in early film, early US film, which is not an accent that anyone uses in the real world, but it let the actors sound a bit smarter, a bit more British, without fully being unintelligible to the US audience.

    [00:38:53] Tracy Apps: Wasn’t there like a presidential candidate, some woman that had that accent and everyone was just like, what is she saying?

    [00:39:02] Nathan Wrigley: So Mike, sorry, we’ve digressed a little bit there, but getting back to that question of what you would like to see in terms of what you feel success would look like in the near future.

    [00:39:10] Mike Demo: So I am on a crusade to try to get this done, and I don’t have the ability to do it all myself, but I’ve sketched it out a little bit. So I’m on a crusade. Everyone uses Slack. However, did you know there’s no way in Slack to report a message to an admin besides sending a DM to the admin of forwarding the message? There’s not an a anonymization, code of conduct, reporting tool. It doesn’t exist. And that just seems crazy to me because, you know, we have code of conduct, but it still relies on someone reporting it. But imagine let’s take the WordPress Learn Slack.

    If there was a single button people could, like an emoji that would click, that would be anonymized and looked at by the code of conduct team, I think we would, especially in DMs find a, a lot of educational opportunities. Now, there is a GitHub repo of somebody who’s kind of built it, but it’s broken, and it’s also not a SaaS, one click Slack app.

    There’s apps like Donut, which we use at Codeable, which we pay 1500 a month for to help people get matched up on calls and do onboarding. But yet there’s no reporting tool for the most common business communication platform on the internet. And I just find it mind boggling. I think it’s a business waiting to happen.

    I think it’d be great for open source projects, and I really want code of conducts to be expanded beyond just physical events. We’re really good with code of conduct face-to-face. We’re not really good with code of conduct online. Good example of that is the Joomla project. Open Source Matters just unpublished a magazine article that was written by an author who shared some very, very disgusting public views about LGBT people. And that’s good, but we’re so focused on face-to-face code of conduct and online workshop code of conduct that I think we need to find a way to, in our online communities, have an easy button to be able to say, hey, I want this to be looked at by somebody. We can do it in forums, but not in Slack. I don’t get it.

    [00:41:15] Nathan Wrigley: Yeah, that’s interesting. Did you feel that, do you feel that the in-person side, the code of conduct on the in-person side, specifically on the WordPress events, do you feel that that’s broadly where it should be at the moment? Do you feel that we have enough codified there?

    [00:41:30] Mike Demo: I feel the written code of conduct is decent. I still hear stories and there’s amazing deputies doing work and organizers, and I’m sure organizers can share multiple stories, but they wouldn’t for privacy reasons. But I’ve heard of multiple people being sexually harassed and either first or second person accounts.

    And that’s just the ones that get reported. And so I still think that’s an issue. I don’t experience that as someone who presents male. But I think the written code of conduct is good. And I think we’re doing a lot more than we did a decade ago. But there’s always room for improvements.

    I’ve heard some very horrific stories from open source conferences. I’m including all open source, not just WordPress in this, of a speaker that was in college, what was said to them or offered, you know, and things. And that’s just sad. But I think the written code of conduct’s pretty good.

    It can always get better. I know the WordPress one was forked from the opensource.org code of conduct, if I remember correctly. But I think we can always do better to make safe spaces physically. I think something we need to figure out in WordCamps is alcohol, because there’s many WordCamps where after parties are in bars and that’s just not great.

    I’m under the opinion that the project shouldn’t pay for alcohol. That’s my point. I don’t think the project should pay for alcohol. If a sponsor wants to do it independently, fine. But I think it just opens up issues, and it adds a lot of money that could be better spent. You know, helping get in voices, and working on sponsoring contributors. But that’s just my opinion. And I know it’s not a popular one.

    But I know multiple Camps that have not had speakers be able to attend a speaker dinner because it was at a bar. I even think in Orlando you had to get special permission, if I remember David, for that one kid speaker when he was like in middle school, because you guys did it at Ice. Although Ice might be family friendly, I could be wrong on that. But, I definitely have heard of people that were 20 that couldn’t attend the speaker dinner because it happened to be at a nightclub, for example.

    [00:43:40] Nathan Wrigley: Interesting. So the broadly speaking, apart from the few little paper cuts there I might describe them as, you think the in-person code of conduct is more or less hitting the target? But the online things, particularly the Slack and the way of reporting problems, there’s definitely room for improvement there? So that’s your success story for the next few years. What about you, David? Have you got anything that you wish could happen?

    [00:44:04] David Wolfpaw: Yeah. again, I keep wanting to build off of what other people are saying as well. So first I’ll mention, you know, Mike mentioned that on forums we can report. But funny enough, bring it back to WordPress, I don’t believe that feature is built into BuddyPress still. About a decade ago I built a plugin, one off for a client who was using BuddyPress for their forums.

    And, they wanted a way for their forum members to be able to report a post that they saw. And it didn’t exist, and I wrote something. It was very, it was very hacky in a way that, you know, I didn’t feel comfortable releasing it, but I did share with a BuddyPress dev. But as far as I’m aware, you still need to use third party tools. That’s not something built core into the product. I’m not trying to pick on them. I’m just trying to point out, since it’s a WordPress forum tool that doesn’t have report features built in.

    Additionally, while the in-person code of conduct I would agree is strong. Having a code of conduct and having a reporting feature is unfortunately not enough, because that’s the first step of a multi-step process. Somebody reports something, like somebody would go into, let’s say they go into Slack and report that message. There has to be someone on the other end who can adequately respond to that report. So I’m going to do a, a tiny self plug since we’re talking about LGBT folks and tech.

    I run a Mastodon community that I’ve run for six years now. Well before Twitter got purchased. That is at the domain tech.lgbt. Anyone’s welcome to join. You do not have to be LGBTQ to join. And we get reports there daily. We have thousands of members and there’re, you know, millions of members across Mastodon. So we get reports daily that we have to act on, and it requires a lot of work, It’s not something that’s just a simple, honestly, I like the times that it’s simple enough that I can see someone just posting a hateful slur, and I can go, okay, great, block or suspend, whatever we need to do. But a lot of times there’s a lot of nuance there, when it comes to reporting.

    And so having those reporting features would be great, but we also need to pair that with support for the people, for the communities that manage it. That also goes with what I would say for in-person events, which is while the in-person code of conduct is strong, we have had issues in the past that have required some intervention.

    And myself, as an organizer, I’m actually not always the best person to do that intervention. You can send people to the WordCamp group. Or you can, you know, send them to other people in the project that can reach out to them.

    But again, it’s more work. Like I can’t go, okay, this person here is breaking our code of conduct. One of us needs to go over there and either reprimand them or tell them to leave. But, you know, I’m a volunteer. I’m an individual. I’m not always safe doing that.

    [00:46:39] Tracy Apps: One of the things that I would also say is, I mean, there’s a lot of intersectionality here. There’s lots of different anti-racism trainings, which I think are just required for anyone that’s going to be doing some sort of moderating. And because again that, you don’t know what you don’t know, but you also don’t know what you don’t set out to learn.

    And so I don’t know of if there’s any sort of, like the anti-racism training, but inclusivity training, I’m sure there’s gotta be something out there. But those kinds of preparedness is really required for that monitoring. Because we’ve got, if we’ve got the reporting, we actually need the follow up.

    And I know that when you report something on some of these other large social networks. TikTok is getting a lot of heat because of some of their moderation. And it still requires a human to go in there, even if there is automated systems. And if that person is, oh, nope, this isn’t appropriate, but this is. It’s taking their own bias and using that in the moderation process.

    [00:47:55] Nathan Wrigley: Do we have a problem of the fact that WordPress is open source? And what I mean by that is, let’s say I work for a, a large corporation, and there’s a pyramid structure to who’s got the authority and so on. And there’s policies written by people above my pay grade. And if I breach those policies, if I say, say something which is indefensible, then I can be brought to task. There are things that can be done to me let’s say, to make my life different if I choose to go down that path.

    Whereas in the open source, it’s all voluntary, isn’t it? Everybody’s doing what they can, when they can. And I guess it’s, well, I don’t really want to use the word police, but I’m going to have to use that word because I can’t think of anything else. It’s hard to police these things given the fact that, on the whole, everything is done by volunteers who by definition don’t really have the authority to say, no, that’s disallowed. I’m sorry.

    [00:48:47] David Wolfpaw: Yes, I can in part see that. Although that would be, hopefully a good code of conduct can help ameliorate that issue. But I think in a volunteer space, people have the ability and certainly I think it’s easier than in a job where you, you leaving that job affects so many other things. You have the ability to vote with your feet and vote with your wallet.

    We see in WordPress hateful organizations use the WordPress software to run their websites. And we can’t stop people from doing that. But we also see hosting companies who, while pressured by WordPress users and developers and the Core team, you know, whoever in the WordPress space will drop those people as clients. Or we will see people who don’t make a stance or don’t make a stance that we agree with, and we’ll just move to a new provider. I do think that there still is room for repercussions both through activism and through changing of our behaviors.

    [00:49:41] Mike Demo: I will give one quick success story. So when I was in the Joomla project, somebody that was on the board, I think he was on the board at the time, said some pretty negative things about gay people. And he lived in a country where they had a very different, culture. And this was almost 15 years ago.

    And he was saying that, oh, well we don’t have those problems here, things like that. It wasn’t hateful, but it was ignorant. And instead of people going against him, people that, like myself and other people in the community that did identify, just talked to him. And then he did some research and then six months later when Obama did the gay rights amendment, I’m sure I’m messing up the verbiage on that.

    You know, he posted a rainbow on his thing and now he lives in Brazil, a very diverse country. And he just didn’t know what he didn’t know as Tracy said. There’s somebody else in the WordPress community that I’ve seen have said very negative things against gay people in the past, but that person came out as LGBT on pride this year, which I’m pretty shocked about.

    So, we also have to, as David also mentioned, look for opportunities to educate if there’s nuance there. If someone’s just being hateful and bigoted, we don’t need that in our space. But if someone just doesn’t know what they don’t know, there’s some opportunities there that we can make the world a better place one person at a time. And it does happen over time.

    [00:51:06] Nathan Wrigley: The phrase of this podcast seems to be, you don’t know what you don’t know. And in order to redress the balance of that, let’s try and inject the opposite. You don’t know, but you can find out. Let’s go for that. I’m interested to plumb your expertise about places where you can go online if this podcast has piqued your interest, or you want to explore a bit more. And you would like to, I don’t know, modify your event or update your company policy or whatever it may be. Let’s go through, we’ll begin with Tracy, if that’s okay. We’ll just go through one at a time. Are there any places that you would direct people toward and you can, as many as you like, one or a dozen? I don’t mind.

    [00:51:44] Tracy Apps: Okay. Well, how much time do you got? No, just kidding.

    [00:51:48] Nathan Wrigley: Okay, let’s go for, maximum of three.

    [00:51:51] Tracy Apps: Okay, no. Actually, one project that I am doing some work for, so is the it gets better project, itgetsbetter.org. It’s geared towards, the audience is mostly queer youth, but the stuff that they produce is really, they just released a queer sex ed. Which, you know, is one of those things where you don’t necessarily get that information. Or if you’re trying to search that information, probably getting it from not great sources, or not very reliable or not very healthy sources. And they did, they also released a thing about industry, so about LGBTQ people in the STEM industry. Because again, it’s about visibility. So those kinds of things. And they have great, great content in that way.

    So there’s a bunch of different organizations like that. They do also live streams and a lot of that. So they produce a lot of content that you can learn and gain some of that empathy, just by seeing someone’s story. Just that in itself. Hearing someone’s story and seeing what they’ve gone through is one way to really challenge your, what you don’t know and to grow your knowledge and your acceptance and view of the world.

    [00:53:11] Nathan Wrigley: Thank you, Tracy. Is that the only one you wish to mention?

    [00:53:13] Tracy Apps: There’s probably many other ones out there, but that one I, I’ve really have been excited about lately, so.

    [00:53:21] Nathan Wrigley: Let’s go to David, any fine resources that you can let the audience know about.

    [00:53:27] David Wolfpaw: I don’t want to say a specific resource, I want to say like more of a mindset. The reason is I feel there is a lot that you can learn by, you know, researching online and educating yourself, and certainly that should be a baseline. But since, you know, as you said the through line has been, we don’t know what we don’t know. Speaking to people in person. Getting to meet people who are unlike you can be very beneficial.

    And then you can also tie that in with doing things to give back to your community. The example that I want to give is there is a local queer youth group in the Orlando area called The Zebra Coalition. They’re at zebrayouth.org. They do have a program for homeless queer youth, but they also, that’s their main program, they also have programs for like drop-in work. And among the many things that they, services that they offer, is they offer education and job training services. And prior to the pandemic, my husband and I had volunteered there, along with his sister, who’s a lawyer. We were able to put on presentations for some of the youth there about things like preparing for job interviews, building your resumes, legal concerns that you would have in this state around jobs.

    And since, you know, I was in web development, one thing that they were very interested in was talking about remote jobs. Uh, now remote jobs are a lot more common in tech now than they were three years ago, which is great, because something that they pointed out that, again, I hadn’t thought of at the time was that remote work can be successful for people who are in different parts of transition.

    You know, especially physical parts where being in in-person environments might not be a level playing field quite as much as being online. I enjoy working from home for a variety of reasons, but one that honestly didn’t really cross my mind until that was brought up was I don’t have quite as much stress of performing in public.

    So my resource, I guess, is to suggest, if possible find somewhere that’s near you, you know, where you live, where you can offer to volunteer, give back, donate some of your time and, energy. You are going to meet a lot of people who, who you never would have, well, one you’ve never met before but, you know, I never would’ve thought of some of these things before meeting people.

    [00:55:35] Nathan Wrigley: Thank you. That was a really interesting insight. And, yeah Demo, last one.

    [00:55:39] Mike Demo: Sure, so I have three resources. So the first one I want to mention is outintech.com. They do lots of events. They have 32 chapters. Automattic and many WordPress companies are sponsors of Out In Tech. They build websites for LGBT non-profits. You know, on a quarterly basis with their tech core. So there’s a lot of great resources of outintech.com.

    In addition, there’s Out and Equal in the Workplace, so that’s outandequal.org. That talks about very HR and very specific programs like training and resources and toolkits for HR and things like that. So there’s some good resources there.

    And then the last one, this is mostly for game developers, but I really like the community and the project, which is why I wanted to share it. Gay Gaming Professionals. So that website is gaygamingpros.org, which is the leading organization for LGBT game industry professionals and enthusiasts. So, even if you just play games, you can join around the world and, uh, there’s some cool stuff happening there.

    [00:56:43] Nathan Wrigley: Yeah. Fascinating.

    [00:56:44] Tracy Apps: Okay, so I have more.

    [00:56:46] Nathan Wrigley: Okay. Go. Lovely.

    [00:56:49] Tracy Apps: So actually what, one of the things is most cities and communities will have an LGBTQ community center. So for someone to just look up whatever their local community center is, they always are needing volunteers and support. So that is one way to really get connected.

    And one of the most inclusive conferences that I have been to other than WordCamps, is been the Lesbians Who Tech, lesbianswhotech.org. They have summits online, virtual, and in person and really intentional about diversity in all ways. So not just in sexual orientation, gender, but color, background. And it does focus a lot on tech, but there is really, really great professional resources that they have, and have partners with. So that’s another one to check out as well.

    [00:57:52] Nathan Wrigley: Okay, thank you. Now, we’ve talked about resources that presumably you’re not connected with yourself necessarily, so let’s just make sure that people who’ve listened to this podcast can find you. Let’s start with David. If you’ve got a Twitter handle or a, I don’t know, an email address or a webpage that you would like to, to promote to connect the audience directly to you. If you’re comfortable doing that.

    [00:58:14] David Wolfpaw: Absolutely. I would say for business inquiries, go to fixupfox.com. But for myself personally, I don’t really use, uh, Twitter anymore. As I said, I’ve been pretty much all in on Mastodon for years now. My Mastodon instance is tech.lgbt, so it should be easy considering the, uh, content of this episode. My handle there is just at David. I’m really happy that I’m seeing a lot more WordPress people move into that space.

    [00:58:39] Nathan Wrigley: Thank you very much and Demo.

    [00:58:42] Mike Demo: Yeah, Twitter is probably the best place to reach me. Yeah, I know it’s imploding, but I’m going to hold on as long as I can. It’s been my bat phone for a very long time, and I have a blue check mark. I bought it, but I’m proud of it, so I don’t care. Twitter’s probably the best place to reach me. mpmike, so like Mouse Planet Mike is what it stood for originally.

    [00:59:06] Nathan Wrigley: Thank you very much. And Tracy.

    [00:59:08] Tracy Apps: Yeah, so, I capitalize on the fact that my last name is Apps, so I’m tapps most places. I do use Twitter, mostly to yell at people to get off my lawn basically. But, I’m tapps most places on the internet except for when that is taken. Like in TikTok, I am therealtaps. You can find my website, tapps.design and, just connect with me anywhere. I am happy to chat and answer questions as well.

    [00:59:38] Nathan Wrigley: Well, it’s been a really interesting chat. I’ve thoroughly enjoyed it. I hope that the audience, if they’ve got questions or things that they want to reach out to you about, I hope that they do that. But just for me to say thank you very much to Mike Demo, Tracy Apps and David Wolfpaw, thanks for chatting to me today. I really appreciate it.

    [00:59:57] David Wolfpaw: Thank you so much for having us.

    [00:59:58] Tracy Apps: Thank you so much.

    [00:59:59] Mike Demo: Thank you.

    On the podcast today we have Mike Demo, Tracy Apps and David Wolfpaw.

    Unusually, it’s less of an interview and more of a roundtable discussion about their experiences in the WordPress community.

    A few weeks ago, I put out a call for anyone who might be interested in coming on the podcast. Mike Demo reached out to me and said that it would be good to discuss how the WordPress community deals with LGBTQ matters.

    We agreed on a date, and two other people were invited to join us on the call, Tracy Apps and David Wolfpaw.

    We start things off with each of the guests introducing themselves and telling us how they ended up working in tech and, more specifically, WordPress. This leads to a discussion of how the job market can be different for people with different identities.

    We then move onto WordPress and talk through some of the ways that the community has responded to underrepresented groups. There are certainly areas where the guests think that there’s been positive change, but we also spend time thinking about how some things could still be improved. In-person events like WordCamps get plenty of attention here.

    We also get into the open source nature of the WordPress project and whether this makes it more or less difficult for change to take place, given that authority is structured differently from most for-profit entities.

    Towards the end of the podcast, each of the guests shares a story about some specific thing that they wish could happen; something that’s within reach, but as yet, not achieved.

    And we round it all off with the sharing of resources and websites which listeners may find useful, which you can see below.

    Useful links.

    Codeable

    FixUpFox

    WordCamp US Diversiry Scholarship

    Underrepresented in Tech website

    The Community Leadership Summit

    Women in WordPress podcast

    WordPress Community Summit

    Yoast SEO Free: the inclusive language analysis

    Learn WordPress

    Donut App

    Joomla

    Open Source Matters

    Code of Conduct on opensource.org

    BuddyPress

    tech.lgbt website

    itgetsbetter.org website

    zebrayouth.org website

    outintech.com website

    outandequal.org website

    gaygamingpros.org website

    lesbianswhotech.org website

  • #59 – Corey Maass on How To Use WordPress To Kickstart Your SaaS App

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, how WordPress can be used to get your SaaS app off the ground.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL to most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m keen to hear from you and hopefully get you or your idea featured on the show. Head to WPTavern.com forward slash contact forward slash jukebox. And use the form there.

    So on the podcast today, we have Corey Maass.

    Corey is a full stack developer who works with agencies and businesses, large and small. He specializes in advanced WordPress functionality and building products for, and using, WordPress.

    Over the last decade or so SaaS, or software as a service, apps have become more and more popular. Not only are we using our computers more, but with the rise of smartphones, we’re connected to our services all the time. There does not appear to be any corner of life where online platforms don’t have some presence. From email to taxis, fitness to food planning and delivery. You can find it all in a SaaS app somewhere.

    Now that many people are comfortable using SaaS apps, there’s been a deluge of new players coming into the market, but it won’t surprise you to learn that most of them fail to make an impact and shut up shop.

    Corey is on the podcast today to talk about why he thinks that building an MVP, or minimum viable product, app on top of WordPress is a good way to start your product journey.

    We talk about how WordPress comes bundled with many of the features that apps require. User login, roles, permissions, and the REST API. This means that you don’t have to reinvent the wheel for the things that WordPress already does.

    On top of that, the plugin ecosystem which surrounds WordPress, might enable you to short circuit the need to build all the features that your service needs. It may be that there’s an existing plugin, which does most of what you require, and is ready to go right away.

    Corey talks about how using WordPress in this way might enable you to see if there’s really a market for your app. And if there’s not, you’ve used less resources finding that out. And if there is, then you might have some revenue to develop the app in other ways.

    If you’ve toyed with the idea of creating a SaaS app in the past, but never quite got there, this episode is for you.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading to WPTavern.com forward slash podcast. Where you’ll find all the other episodes as well.

    And so without further delay, I bring you Corey Maass.

    I am joined on the podcast today by Corey Maass. Hello, Corey.

    [00:03:58] Corey Maass: Hey there.

    [00:03:58] Nathan Wrigley: Very nice to have you on. Corey, we’re going to talk today all about the capabilities of WordPress as a SaaS platform. But as we typically do on this podcast, it would be very nice if we could orientate the listeners, allow them to figure out what your credentials are, what your WordPress chops are, if you like. So would you spend a few moments just giving us a brief potted history of your relationship with tech and WordPress more specifically?

    [00:04:24] Corey Maass: Absolutely. Back in the late nineties in college, a roommate of mine introduced me to this internet thing and the first websites I saw were some of my favorite bands. And I was a aspiring musician at the time, and I said, well, I want to appear as famous as they are. How do I make one of these website things, and the rest is history.

    I taught myself basic web design, web development. That led to learning some programming, JavaScript and then ASP classic way back in the day. But around that time there was the new trend of SaaS apps. 37 Signals was popular talking about this. Forums like Joel Spolsky’s, Joel on Software. And I caught the bug because I’ve always had an entrepreneurial streak.

    So I said, oh, this internet thing, building software, but not selling a download, but selling access to a website. So, I started going down that path, building websites for clients, but also building SaaS apps to try to sell on the side. And then WordPress took off and for a number of years, WordPress was pretty much my day job. Doing development or website setup or what have you, and then building Sass apps. Not using WordPress for a number of years.

    And then suddenly the light bulb went off. One, the WordPress market was getting bigger and bigger, and I realized that there actually was money in it. So that led me to start building plugins, which I think is what had you and I talking last time. But also at some point it occurred to me that WordPress had matured enough and solved enough of the problems that I was encountering over and over building SaaS apps that I said, let me look at WordPress as a SaaS platform, and I’ve been doing it ever since. So now it’s been probably five years or something, and WordPress only continues to mature, and this conversation continues to evolve.

    [00:06:27] Nathan Wrigley: So you, in the last few years, you’ve joined together the idea of a SaaS platform, but with WordPress handling some of the basic things in the background, if you like. I say basic, I just mean some of the things that we are more familiar with in WordPress. So user management, obviously if you throw some other things like WooCommerce at it, you may be able to handle billing or subscription or whatever it might be, and getting people to the right page depending on whether they’re logged in or not. Is it basically the promise of that? You can cut out a whole body of work, which you would need to build, well potentially from scratch, each time you create your own new SaaS app?

    [00:07:04] Corey Maass: Yeah, I think that’s the way to think about it. So, when you’re solving problems for people online, these days it’s definitely more broad than it was five years ago and 10 or 15 years ago, of course. So if you’re building something that’s B2B, technically speaking. So if you’re trying to build an API or some sort of true service that other systems are going to talk to. WordPress is probably not the answer you want.

    The REST API is, has come a long way, but it’s not really what it’s meant for, right? But if you think of most B2C apps, business to consumer, most of these apps are websites that you’re signing into. Well, WordPress accommodates that. You’re clicking through from page to page. WordPress accommodates that. You’re taking billing, you’re handling subscriptions. WordPress with WooCommerce or Easy Digital Downloads, or Restricted Content Pro or any number.

    I’ve been paying more attention to the membership plugins lately, which are in some ways are specifically designed to handle exactly this problem. Users signing in and doing something, interacting. Interacting with the website. Interacting with each other, that kind of thing. One of the things that, an example that I pick up on a lot is, years ago when I was building apps regularly for clients, for friends, for myself. Over and over and over again, I had to implement some sort of user password reset. And it’s so mundane. Once you’ve solved it once, it’s boring to solve as a developer. But it’s crucial to every app.

    And I got to the point where I was like, I just don’t want to ever think about this stupid problem again. But I had to integrate the code, again every time over and over again. It’s like with WordPress, I never have to think about that. And there’s a plugin called Theme My Login, that’s one of my favorites that you drop in and users can register for your website and immediately get access to a slash dashboard, which you can change. But arguably that’s the first huge leap, you set up a basic website.

    You want users to be able to register and have exclusive access to a page that they don’t have if they haven’t signed in or haven’t paid or what have you. So, these kinds of plugins just solve all of these basic problems. The bottom of the pyramid, so to speak. So that you can get onto whatever problem, your unique problem, that your SaaS is going to solve. As opposed to spending days, weeks, months, tackling the not unique problems like user registration.

    [00:09:36] Nathan Wrigley: So what you are suggesting here, let’s just lay this out. The audience that you are suggesting this to, is people who want to get something shipped quickly. And really, if you are at the beginning of your SaaS app journey, you’re not quite sure yet whether the market even exists. You’re just trying to float a solution to something that you believe might be viable in the marketplace, but you’re not sure.

    So we’re creating a shortcut. We’re offsetting the billing, the user management and so on to WordPress, just as a, as a quick way of getting an MVP or a minimum viable product out there. Is that the idea? Just to sort of test the water? WordPress is a good bet for that, and then presumably at some point you would advise that if it turns out to be an out and out success, then maybe, at that point you might need to look at different tooling.

    [00:10:28] Corey Maass: Not necessarily. There was a time when I would’ve said that definitively, but WordPress has come a long way. Hosting has come a long way. Optimization has come a long way. So it’s definitely the scenario that I’m using WordPress the most. I’ve got a new idea, or I’m working with somebody and they’ve got a new idea and this is how I want to get it off the ground.

    But there are a number of companies, big companies, in the WordPress space that continue to work, use WordPress as the core of their SaaS app, and they’ve got plenty of customers. I think it really, when you get to that level of, if you see a, a good amount of success, then there’s going to be technical problems to overcome.

    And so it’s either ramping up hosting, server power or optimizing queries or rewriting certain aspects of your app. We can talk about that. I had to do that for one of mine, about a year ago. Or again, depending on the amount of user inactivity or user, user interactivity, how much and how often your users are using your app, you may find that it handles it just fine.

    [00:11:43] Nathan Wrigley: So right at the beginning you started talking about why you use WordPress. You mentioned a few plugins, which might assist you on this journey. So I think some of the ones that you mentioned were things like Easy Digital Downloads, WooCommerce, and so on. Whilst I don’t want to necessarily promote certain plugins, I’m just wondering if, given the experience that you’ve had, if you could give us some tips as to plugins that you have found to be helpful for particular problems that you’ve faced while you’ve been trying to build it. And then in a few moments we’ll get onto the subject of how you’ve had to amend WordPress to do things, let’s say more efficient.

    [00:12:20] Corey Maass: Sure. So these days, I actually use Beaver Builder for building pages out. Beaver Builder’s a page builder. Elementor is another good one. But I find that doubling down and knowing these tools well, helps greatly with being able to solve a variety of problems because they’re not a theme, so they’re not locked into a certain layout or that kind of thing.

    But most SaaS apps have a pattern called CRUD, create, retrieve, update, and delete. So if it’s Twitter, then you are creating tweets. You are retrieving tweets, meaning you’re viewing all of them. You can’t really update tweets, but you can update your profile, that kind of thing. And again, you can’t really delete tweets, but you could delete your account, and that kind of thing. Facebook, you can create posts, you can delete posts, your viewing posts, so your retrieving posts, that kind of thing.

    So, a lot, a lot, a lot of software comes down to that pattern, and so using something like, Advanced Custom Fields and there’s a great plugin called ACF Front End, I think it’s called, that essentially puts an ACF form on the front end. So that’s how users can create and update. You could also use Gravity Forms. Or there are a couple of other plugins, form plugins, that you can then put on the front end, for again, collecting data from users or letting users post data. Essentially insert data into the database. And then using something like Beaver Builder or Elementor that have post modules.

    So it’s like if I was recreating Twitter, I would create a form, and this obviously once I’m logged in, but I would create a form that said, what do you want to tweet? And that would insert it into the database as a post record. And then I would use Beaver Builder, me personally, but you could use Elementor or again, any number of page builders, with a posts module that says, okay, show all posts, meaning tweets, with the author of Corey. So then you’ve just created a way to create tweets and then for somebody else to go look at all of Corey’s tweets, that kind of thing.

    So thinking, breaking it down to these kinds of patterns and then looking at these different plugins on how to solve them. A lot of the time I’m able to find ways to quickly implement. And it, again, it doesn’t have to be quick, and this doesn’t have to be forever, but a lot of the time it can be where WordPress and these plugins can solve these problems so that my SaaS offers the, again, the unique problem or solves the unique problem that I’m, the whole reason I’m building it in the first place.

    To get back to your question about those other plugins in particular. If you only want users to sign in, I love the plugin called Theme My Login. Again, look at membership plugins. And then, if you want to charge, again, break down the problem. What are you actually, what do you want? Usually you want subscriptions, like that’s a SaaS pattern that most people are used to now. And what are users paying for? Usually they’re paying for access to a page or pages or content or some feature to interact with other users or something like that. And there are plenty of plugins that restrict content. Which is the way to think about that.

    And so there’s literally Restricted Content Pro as a plugin. Easy Digital Downloads, which is e-commerce, but they have an add-on for restricting content. WooCommerce is really more e-commerce, but can handle this kind of stuff. And then again, membership plugins that are, as people are setting up communities, as at least some people are trying to get away from social media and get back to more private communities without relying on Facebook groups or Twitter or what have you.

    Membership plug-ins have been mature for a while, but are, I’m seeing them become even more and more popular. And are designed exactly for this. So a user pays for access to features, pages, what have you. And that’s again, kind of the core of most SaaS apps.

    [00:16:24] Nathan Wrigley: I suppose that if you are thinking of building a SaaS app, you must have some kind of kernel of an idea of whatever it is that you are trying to solve. So, you’ve got this fabulous idea, and the most important thing at that point is to judge whether or not this idea A, can be built, and let’s assume that after sitting down and thinking it through and mapping it out, you’ve decided, yep, yeah, this has got legs. This can be built with the technology that’s currently available on the web.

    And then thinking, okay, is there an audience for this? Are there going to be enough people out there who are willing to open their wallet to make it worthwhile? And if you go down the SaaS route, you may very well be an incredibly adept developer, in which case this may be in your purview.

    But if you are not and you are just trying to figure out whether the market is there and you want to do that affordably, then WordPress seems like a fairly decent bet, just because of what you said. The fact that with 60,000 plus plugins in the WordPress repository and countless more that you can purchase, in many cases for a very small amount of money.

    It may be that you can get 90%, 80%, 70% of the features that you are trying to build, but without having to do much in the way of custom coding. It may be that you can’t get a hundred percent of the way there, and that would require some tweaking, which we’ll get into. But is that essentially it? You know, you might have to cut some corners or, on your roadmap, cut out some of the things that you really thought would be nice to have in and just go for the things which can be enabled quickly and affordably.

    [00:17:58] Corey Maass: Yeah, I think it just depends on what you’re trying to accomplish. I have a buddy who is non-technical, knows enough CSS to be dangerous, which he’s learned over times, specifically for this scenario. He wanted to create a mentor program, and so he needed scheduling for matching mentorees to mentors.

    So we found a plugin that did that, or did that well enough. And then put I think a membership plug in. I don’t remember how he handled subscriptions. But basically put WordPresses stylized user management in front of it. Limited access to features based on a user being logged in or a user paying. And then a little bit of CSS to make it look a little more integrated or little more branded or what have you.

    And that was kind of all he needed. It solved the problem. He was able to charge for it. He got some customers. And then at some point he did end up hiring a developer to add a few bells and whistles or whatever features he found that were missing. But yeah, it got him 70, 80% of the way. Arguably it got him a hundred percent of the way of solving the problem enough that at least users could start using it.

    [00:19:10] Nathan Wrigley: Yeah, I suppose that’s it, isn’t it? If he’s got a core body of users, and he’s determined that, in this case he can use a calendar plugin or whatever it may be, and it will get him the user base that he needs. Then he can start to use the revenue that’s generated from the, let’s call it the SaaS app, to invest in having something done bespoke.

    That’s really interesting. That’s kind of nice to know. I guess one concern, which I may have, and I’m sure you’ve come across this before. Is just the notion that if you did build this and you fully had the intention of it staying on WordPress for all time. Then you are of course very much dependent upon the plugins that you are using. The spaghetti of plugins being updated regularly.

    In many cases that would very much be the case. It’s updated frequently. It’s made secure, and any vulnerabilities and things like that are taken care of. But there is always that chance that the developer of a key part of your SaaS app may just decide to call it quits, and then you might be left hanging a little bit.

    [00:20:14] Corey Maass: And the scenario I’ve seen more often is a mature product. Meaning your own SaaS app evolves away from what the plugin that you purchased does. So I saw this with a very big company in the WordPress space, who long ago had built their platform on top of EDD, Easy Digital Downloads. But over time had hacked and slashed at it, so that they couldn’t update it anymore.

    And that’s just a decision they had to make at some point of whether they were going to keep going with EDD and just lean into the features that EDD had and forego the other features. Or most good, big WordPress plugins are well documented and have hooks so you can add function extra functionality, or figure out how to sort of hack around them, to a point.

    And then, yeah. They had to make the decision to just stop updating it, and there was discussion. Last I heard that they were going to maybe move to something custom altogether. But the idea being, one of my favorite phrases, we made the best decision we could with the information we had at the time, right?

    So starting out early. It solves all your problems. Go for it. And then down the road you can migrate away from it. You can code around it. You could build something custom, what have you. But yes, that is certainly a risk. I mean, it’s also a problem that a lot of apps have broadly speaking. So it’s, you know, if you’ve built an app that uses the Twitter or Facebook API, you’re putting yourself in their, their hands.

    Or if you are operating system dependent or even, something I’m seeing right now is, microchip dependent, right? If you build software for MacOS and it only works on Intel and, and they move to M1 or M2. So these are just risks that I think you assess over time.

    But what I like is, the point you keep emphasizing, that this is a, a way to solve the technical problem. What I think that a lot of SaaS founders, small and large, real and imaginary, don’t take into account and, I struggle with, and most of us struggle with, is that these days the technical lift of building an app often pales in comparison to the marketing.

    We hear about these wonderful, amazing stories, like Instagram selling for whatever it was, 8 billion after two months, and yada, yada, yada. Most SaaS apps fail. And so you, you want to build quickly with a low lift and then spend most of your time, like you said, trying to get it in front of customers, validating the idea, getting feedback from customers about what features they actually want, or now that you’ve built the features they want, does it actually solve the problem for them?

    All of that is arguably way more important than the actual platform you use. But that’s what brings me back to WordPress as a platform, is in fact often a great way to get something out the door. Even if it’s just a form to collect data and then a page builder or a theme of some kind to then show the data back to the user, if that’s what solves the problem.

    [00:23:36] Nathan Wrigley: It’s interesting because if there’s a body of people listening to this who are not building SaaS apps on WordPress, and they’re just building client websites, you’ve probably encountered that scenario where the client comes and they have incredibly grandiose expectations of what they want the website to do.

    And because you’ve been building websites for so long, you just know, you have an instinct which says, well, we could build all of that. But how about we just start here? Because I would imagine it’s quite unlikely that your staff are actually going to start using some kind of intranet solution that we build as WordPress. Or some messaging system that we build in the app. It’s much more likely that they’ll continue to use things like Facebook Messenger or WhatsApp or Slack or whatever it may be.

    And so over the years you’ve become accustomed to figuring out what is plausible, what is likely to work, and I think I feel it’s the same with SaaS apps. It’s very easy to come to the table. You’ve got your blank canvas and you throw everything at it, every idea, every permutation, every possible thing that the app could do, and then decide that’s what must be built.

    That’s it. Until that is all done, we’re not going to launch it. And I think history shows that you have to be much more agile than that. You have to be able to drill it down and say, okay, what’s the 10, 20, 30% of all of that, that we’ve decided upon, which is going to get us off the ground? And so that feels like where this goes. If you try to build everything, it’s probable that you’ll A run out of money, B run out of time, and nothing will be shipped.

    Whereas in your scenario, offset the uninteresting jobs that probably don’t need to be tackled because they’ve already been tackled by plugins or WordPress Core. And just concentrate on the things which are going to benefit your users. And frankly, you don’t know what is going to benefit your users.

    It’s always amazing to me when I open up a new SaaS app that I’ve never use before. And you think, oh, this will be perfect what I need. And you end up on support saying, does it do this? No, I wish it did that. And those companies that succeed tend to be, well in my experience, the ones who listen to their early adopters and quickly pivot their solution to satisfy them.

    [00:25:45] Corey Maass: Exactly. There’s obviously no harm in thinking through what your dream app does, all the features. You make a long, long list. But one of the things that drew me to WordPress plugins, and selling WordPress plugins early on, was a rather cynical observation that I made.

    I was building blogs for customers. I was building e-commerce websites for customers. And instead of writing another article, which is hard and work. Or instead of inserting more products, which is hard and feels like work. A lot of my clients would get in the WordPress plugin repo where all the plugins are free and go, oh, I could use a to-do list plugin and they’d install it.

    Or, it’s winter. I should install a plugin that adds snowflakes falling over my theme. And they would waste an unbelievable amount of time on what felt productive and felt free. And I was like, well, if people are people, we are all human, we are all valuable and we are all, don’t want to do the things that are hard.

    But I see all these people that are spending time just digging through the plugin repo, I’m going to start building and selling plug-ins, because the discoverability is amazing. And so I think you’ve touched on that for SaaS as well, which is, we generally shy away from the things that are hard.

    We also tend to skew towards our own genius. What we think is the best idea. Because we thought of it isn’t necessarily the features, or it isn’t ecessarily solving the problem that your actual paying customers have. The real strength, and the real challenge, comes more in that side of things. Marketing, sales, talking to customers, getting over your own ego, optimizing your own time, all that kind of stuff.

    [00:27:48] Nathan Wrigley: Yeah. It’s interesting the marketing piece you mentioned. Never ceases to amaze me how much of the overall budget needs not to be sunk into the development of the actual software, but in alerting people to its existence. A significant amount. And it’s not to be underestimated.

    And obviously if at the beginning you sink a hundred percent of your finances into the code, that’s great, but I guess you better be a really good word of mouth, somebody that can spread by word of mouth incredibly successfully. Because experience at least tells me that it’s very hard to gather an audience from a standing start.

    So we’re a WordPress podcast. We’re obviously very keen on WordPress, we think it’s amazing. But I’m guessing that there must be downsides to this. Let’s just talk about that for a moment. Any drawbacks to this system that you’ve encountered over time? Just some quick examples may be that, well, does it scale very well? Does WordPress tend to be doing a lot of things in the background that a leaner, more specifically custom-built solution may get you out the hole of? Just questions around that. Any drawbacks that you would alert people to if they do decide to go down this approach?

    [00:28:59] Corey Maass: A few years ago, I was tasked with building a food subscription website. So think Blue Apron or Freshly kind of website, if you’re familiar with those. And for better or worse was told that I had to use WooCommerce. And so I spun up a WordPress website, installed WooCommerce, got subscriptions going, customized the choose the meals that you want, and then check out. And that all was okay.

    But it turned out that, I think some of this has been changed, because this was a number of years ago but, WooCommerce was storing all of the data in a very WordPressy way, which was fine because it was a known pattern. But was not very optimal. And then for the business, because all of those meals were cooked every morning and then shipped out, all of the charges had to go through at the same time, at like two in the morning. And it turned out that WooCommerce subscriptions was built so that if you signed up for a subscription at 10:30 in the morning, it would renew at 10:30 in the morning. While we needed it to renew at two in the morning so that all of the orders went through, so then the chef knew how many dishes to make, and how many chicken dishes to make or whatever.

    And that’s the kind of risk that you run into, right? So if you are using a third party piece of software, WordPress, and then with plugins. And you are essentially building it to your, or bending it to your will, so that it’s doing things that it’s not necessarily meant to do. You’re going to run into issues.

    We found that our server didn’t have enough power to process all of these orders at the same time, because it’s essentially multiple threads need to be run at the same time. We wound up in that instance sticking with WooCommerce and WordPress for at least a little while longer.

    But switching off of a hosting company that really was most popular for blogs and delivering content and not necessarily running process, CPU power. And moving to a custom AWS set up. And we watched the CPU go from 80% all the time, to 3% all the time. So in that instance, we just needed to throw more metal at it.

    But again, we were definitely using a tool, at least slightly, in ways that it wasn’t meant to do. I also, during the pandemic, or at the beginning of the pandemic, my wife made the mistake of turning to me and saying, you know, my family plays this game called Mexican Train, in person all the time. Boy, I wish there was an online version. And she should just know better than to put that kind of idea in my head.

    So within a couple of months I had spun up the only interactive online version of Mexican Train, which was great for our family, but it’s a very popular game in retirement communities. And naturally during the pandemic a lot of people in retirement communities were isolating a lot more. The game became quite popular, because it spread word of mouth. And the first Christmas, I think I built it early in the year, and, and the first Christmas it peaked at like 2,600 concurrent games or something. Which, for me, I had never built anything that needed quite that much power.

    And it did eventually fall over. But initially I’d built it so that every time somebody played, all the other games, so four people are playing, basically all four games are sitting there pinging the server, looking for updates. That’s very inefficient because most of those pings don’t return anything, but the CPU still has to accommodate them. So I wound up switching to a pushing system. So I had to integrate with that. And originally I had built it so that the game itself, so when you’re signing into mexicantrain.online, that’s the website, the login screen you’re seeing is Theme My Login.

    All of the delivery of content, so like when you go to the My Games page and you see all of your games, that’s just Beaver Builder. And then the actual game I had to build, so it was quite a lift as far as development goes. But that was what that SaaS needed. But I built an app in a JavaScript framework called React that then talks to the server.

    Well, I built the initial version using the WordPress API. So my game talked to WordPress, functionality that was built into WordPress. And the API worked, until it didn’t. So, in that instance, again, too many people hitting the server too much. Aw, shucks, it was too successful.

    I had to revisit it after a year or two and build a custom API. Now I’m a developer. I have that luxury, right? But these are things that, I got enough of a version out the door. So, thinking about it from the perspective of a non-developer. I could have set up most of it except for the game itself.

    And the game is sponsored by donations. So I installed GiveWP, which is one of the bigger WordPress donation plugins. And I still used the free version. And so I got most of those sort of basic stuff using third party plugins out of the box. And then if I wasn’t a developer, I might have had to hire a developer.

    And so yes, I would’ve had to put some money into it. But they wouldn’t have had to build everything. And I also could conceivably hire different developers, or I could by using WordPress. So one of the things we haven’t talked about is because of the popularity of WordPress, you also have a lot more developers to choose from if you’re going to hire somebody.

    But anyway, if I wasn’t a developer, I would’ve had to hire somebody to build the game. And then down the road, presumably I would’ve proven that the platform was popular, hopefully in the form of donations, which would’ve been enough money to then hire somebody to rebuild the API, if I couldn’t have done it myself.

    You know? So there’s sort of this evolution of, as you’ve said. Try things, see if it’s popular, and then maybe hire somebody if you have to, you know, if you’re going to grow parts of the platform, parts of the app beyond WordPress.

    [00:35:40] Nathan Wrigley: It’s really interesting you mentioning about all of the very large number of WordPress developers. The developers I guess, go into different niches, don’t they? They might be experts in one field or another. Do you detect that there’s a lot of people doing this kind of thing? Building SaaS on top of WordPress. Or is it just you shouting into an empty room? What I’m basically saying is, is there a community, a subset of the WorldPress developer community who, like you, are interested in building SaaS apps on top of WordPress.

    [00:36:10] Corey Maass: There is a book called Building Web Apps with WordPress that came out from O’Reilly. So it’s popular enough that people are writing books about it. I’ve given talks on it at a few different WordCamps as far back as I think four or five years ago or more. And I’ve come across a number of people who are doing it, or are thinking about it or have done it. But it’s definitely not, and even Mullenweg has talked about it, but it’s not the most common use case.

    I think in part because people just don’t necessarily think about SaaS apps separately as much anymore. More and more websites do something. And so if they have functionality, maybe that people are paying for, and users are signing in to use the web app to do something.

    It’s a SaaS app. But that’s, again, I think more and more commonly just how people view websites. So it’s not necessarily something that people are thinking about or searching for. Except for, I think, as you’ve mentioned a few times, if you’re looking for no code now means something different. But if you’re looking for a non-developery way to spin something up quickly using third party software, then it still gets some attention. But to answer your question, no, I’ve never found a community. I’ve thought about starting one, but never have. Because I just haven’t gotten a sense that enough people are talking about it.

    Which is okay. Maybe at some point they will, or, you know, maybe some other better solution will come along and consistently solve the problems. But, right here, right now, I still find WordPress a great option.

    [00:37:57] Nathan Wrigley: It’s really interesting because curiously, there’s a great deal of overlap with something that’s going on in my world at the moment in that I have been working with a developer on a SaaS app. I won’t go into the details, but reached a point where a couple of years ago, the interest in it, from my point of view, I think probably, is best to describe it. It waned a little bit and so it went on the back burner and it’s never been revived.

    And as a couple of years have gone by, I’ve decided that, actually wouldn’t it be nice to revive this? And so with a couple of friends decided that, yeah, let’s give this another go. But actually, let’s just begin again, because I’ve noticed there’s significant things in what’s already been built that I would change.

    And guess what we’ve decided to do? We’ve decided to do the MVP inside of WordPress. Basically for pretty much all the reasons that you’ve suggested. We’re familiar with it. There are sometimes free, sometimes commercially available plugins, which will do a significant amount of the lifting. Will it be exactly what we would like from our roadmap? No. Will it be close enough to get us to measure whether there’s an audience for this? Yes, I think it will. And so, curious that this is actually playing itself out in my life at this moment.

    [00:39:19] Corey Maass: Nice, yeah. Depending on the problems you’re trying to solve, but I think that’s like most things, a bit of planning, sit down, design. I encourage everybody to do this. What is the all the bells and whistles version. We nerds are a big fan of what’s called the 80 20 rule.

    So what’s the 20% that needs to be solved now, today to prove the idea? And then see what plugins align with that. How they can get you there. Will it solve the problem? Do you need custom development? Are there features that just don’t have solutions or aren’t solved by any of the plugins you might want to use.

    And then go from there. See what you can do. The nice thing too about WordPress is you can start locally, which is free. Locally meaning on your computer, not locally in your town, although you can do that too. Most computers using software like Local WP, I’m a big fan of, and there’s a few others. Also InstaWP, which lets you spin up instances of WordPress online for free, for, you know, seven days or something, and then pay to keep them, or you can download them, I think, I don’t know.

    I definitely have been guilty of getting an idea and I needed to illustrate the idea rather than just write the idea down. So I spun up an instance of WordPress real quick. Installed a couple of plugins real quick, and then said, what do I need next? Or what would the next step be? Or, if I was a user, what would I expect to see next? All that cost me was a little bit of time. There’s kind of that advantage too, where it’s, you can use it for wire framing means something specific, but conceptually you can use it for wire framing ideas, which I think is crucial. Without it costing you anything.

    [00:41:04] Nathan Wrigley: Corey, if people listening to this, if they’re resonating with it and they’re thinking actually, do you know what, this is something that I’ve been doing for a while, or, I’m curious to get into the community that you said might need to exist. Where would be the best place to get in touch with you?

    [00:41:20] Corey Maass: Honestly, the place that I talk about this the most is Twitter. twitter.com/coreymaass, c o r e y m a a s s. Just start a conversation with me. I’d love to hear people who are interested in this. If this resonated with them, if they’ve tried it at all. Because again, I’ve run into people who have done it. I’ve heard about people doing it. A book exists. So there must be people talking about it somewhere.

    But I think it would be neat to have a community of people, or even just a network of people, helping each other out, solving some of these problems. Hey, does anybody have a good recommendation for a plugin that solves such and such a functional, or a problem that I have. Where should I start? Suggestions for hosting companies. I mean, there’s, there’s always information to be shared. And honestly, that’s one of my favorite things about the WordPress community is that it’s so open. So many people are talking to each other and willing to help each other. I definitely think there could be more conversation around using WordPress as a SaaS platform.

    [00:42:21] Nathan Wrigley: Corey Maass. Thank you for chatting to us on the podcast today.

    [00:42:25] Corey Maass: My pleasure.

    On the podcast today we have Corey Maass.

    Corey is a full-stack web developer who works with agencies and businesses, large and small. He specialises in advanced WordPress functionality and building products for, and using, WordPress.

    Over the last decade or so, SaaS, or software as a service, apps have become more and more popular. Not only are we using our computers more, but with the rise of smartphones, we’re connected to our services all the time.

    There does not appear to be any corner of life where online platforms don’t have some presence. From email to taxis, fitness to food planning and delivery. You can find it all in a SaaS app somewhere.

    Now that many people are comfortable using SaaS apps, there’s been a deluge of new players coming into the market, but it won’t surprise you to learn that most of them fail to make an impact, and shut up shop.

    Corey is on the podcast today to talk about why he thinks that building a MVP, or minimum viable product, app on top of WordPress is a good way to start your product journey.

    We talk about how WordPress comes bundled with many of the features that apps require, user login, roles, permissions and the REST API. This means that you don’t have to reinvent the wheel for the things that WordPress already does.

    On top of that, the plugin ecosystem which surrounds WordPress might enable you to short circuit the need to build all the features that your service needs. It may be that there’s an existing plugin which does most of what you require, and is ready to go right away.

    Corey talks about how using WordPress in this way might enable you to see if there’s really a market for your app. If there’s not, you’ve used less resources finding that out. If there is, then you might have some revenue to develop the app in other ways.

    If you’ve toyed with the idea of creating a SaaS app in the past, but never quite got there, this episode is for you.

    Useful links.

    37 Signals

    Joel Spolsky’s, Joel on Software

    Easy Digital Downloads

    WooCommerce

    Advanced Custom Fields

    ACF Frontend

    Gravity Forms

    Beaver Builder

    Elementor

    Theme My Login

    Restrict Content Pro

    Corey’s Mexican Train website

    GiveWP

    Building Web Apps with WordPress book

    Local WP

    InstaWP

  • #58 – Lax Mariappan on How Headless WordPress Works

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox has a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, how Headless WordPress works.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players. If you have a topic that you’d like us to feature on the podcast, well, I’m very keen to hear from you, and hopefully get you or your idea featured on the show. Head to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today, we have Lax Mariappan. Lax is a web developer based in the Philippines. He’s an open source enthusiast and lover of all things WordPress. Lax has been tinkering with websites since high school. But it all changed when he discovered WordPress in 2010. Lax currently works as a backend engineer at WebDevStudios.

    We talked today about Headless WordPress, and it’s a complex topic. Headless is the concept of decoupling the WordPress admin from the front end of the site. WordPress will continue to work as expected, but the presentation layer will be done by a different technology. React Gatsby and Remix being some popular choices.

    This implementation of WordPress is complex, requires technical knowledge above and beyond that needed for a more typical WordPress install. But it has its benefits.

    Lax talks through all of this in great detail. How keeping on top of all the additional dependencies Headless WordPress requires can be time consuming. How it can create difficulties for content editors who don’t always get to see what their work will actually look like in real time. Why this approach to WordPress can take more time and resources during the build.

    Lex explains how these problems typically crop up, and how it’s possible to plan ahead and build in solutions for all the problems that you might encounter.

    If you’ve ever thought about going headless with WordPress, then the podcast today is for you.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading to WPTavern.com forward slash podcast. Where you’ll find all the other episodes as well.

    And so without further delay, I bring you Lax Mariappan.

    I am joined on the podcast today by Lax Mariappan. Hello Lax.

    [00:03:30] Lax Mariappan: Hello, Nathan.

    [00:03:30] Nathan Wrigley: Very nice to have you with us on the show today. I have to commend you for your staying power, because Lax and I have tried to record this episode a couple of times and he’s been incredibly, incredibly thoughtful about getting his, all of his equipment and everything working. So thank you, first of all, I would like to express my gratitude for you staying the course.

    But before we get into the podcast, Lax, I wonder if you wouldn’t mind spending a moment just introduce yourself. Tell us who you are, where you are, who you work for, how long you’ve been using WordPress, all of those kind of things.

    [00:04:06] Lax Mariappan: Thank you. It’s good to be on WP Tavern, it’s one of my favorite publications, and also the favorite podcast. So I’m Lax, Lax Mariappan. I’m from India, and also I’m from Philippines. So I would say I live in both countries, and I use WordPress since my school days, like 2009. So I was looking for a platform to build a website for an event or something, and then I found out Blogger versus WordPress, and I liked WordPress more even that time.

    So since then, I’m using WordPress almost every day. And my first job I got started working as a PHP developer, I would say, and then fully focused on WordPress. And I wrote my first plugin in 2011. It’s a very simple one. It’s now kind of obsolete because Facebook changed it a lot. So I wrote a plugin for something to fetch Facebook feed. So, and then my journey goes on. Right now, I work as a backend engineer at WebDevStudios. So where I get a chance to learn and work more with headless CMS every day almost.

    [00:05:09] Nathan Wrigley: Your work at WebDevStudios, I don’t know a great deal about the company, but my impression of the company is that you work with, how should we describe it? Enterprise clients. You’re dealing with fairly large projects. I would imagine sizable budgets. Those kind of things, right?

    [00:05:27] Lax Mariappan: Yeah, yes. Enterprise level.

    [00:05:28] Nathan Wrigley: So when we decided we were going to have this conversation, Lax introduced the subject to me of headless WordPress. Now this is a word which I imagine some of you have heard before. Maybe some of you have never heard the word before. Perhaps there’s a subset of you which have experimented with it, but I’m expecting that the majority of WordPress users have not.

    So, first of all Lax, would you mind giving us a very, in depth I suppose is the right word. Give us an analysis of what headless WordPress is because I’m sure many people think they know what it is, but perhaps they don’t.

    [00:06:06] Lax Mariappan: So headless, or decoupled CMS, so first we all know content management system, right? So WordPress, we are using WordPress now as a content management system. It started out as a blogging platform. We used it mainly for blogging. And then WordPress introduced custom post types, taxonomies and all that sort of stuff.

    So we are now using WordPress to build simple to complex websites. Forums. Some people use it for their colleges, universities as a social media platform, and some of them use it for a job board and everything, right? So we have plugin for everything and we can customize it and we use it.

    So when it comes to the traditional CMS, we call that as monolithic. I hope I’m not using too much jargon here. Monolithic in the sense it has everything into it. So for example, if you go to a website, the header, footer, the sidebar, and the content that you see and the forms and everything that comes from the same CMS itself. So it is going to be, let’s say, in the case of WordPress, it’s built mostly with PHP and JavaScript.

    So everything is going to be PHP template with a bit of JavaScript and CSS to it. But when you say on the contrast, headless CMS, it means, so you can consider that as a, I would not say person. Maybe something like, you can imagine something that doesn’t have a head. So in the sense the body is the same, head is different.

    So you can imagine that as, you are going to use the same admin panel and you are going to have the same WordPress features. You can add the content, you can add menus, you can edit anything, you can add users, all that stuff. But when I view the website, so it’s not going to be your theme. So it’s not the typical way of how WordPress gets rendered.

    So instead we will be decoupling it. So that is WordPress admin will stay on another site. It can be on a subdomain or a sub folder, but the front end is going to be a different platform. So it’s going to be hosted in a, mostly a JavaScript based stuff. So you can use either React based frameworks like React itself or Gatsby, Next.js or Remix, or anything that you like.

    And also you can either go in another route as well. So you can make it like a fully static website, or you can render it on every time as a server side rendering as well. So every call will go to the server and renders.

    Okay, so now we can call that a small intro about headless. You may already know this one. It became a buzzword a couple of years ago, right? But now everyone wants to go as headless. I see that company goes headless, or my competitor goes headless. So I want to go that way. But, unpopular opinion. Maybe you might hear some other people say that too. Headless is not for everyone, or I would say not for every use case.

    It depends on how much content that you publish. What are your goals and what you want to achieve. So headless is good, it’s performant, it’s fast, secure, and it gives you more freedom and flexibility, especially in terms of performance it’s really good. But I would say it’s not the something like you should go headless. It’s not the answer.

    [00:09:10] Nathan Wrigley: So essentially you’re saying that there are scenarios where this is desirable, but there’s going to be other scenarios where WordPress, in the traditional sense of the word. The regular WordPress that you download, perhaps use a hosting company and it’s all driven by PHP. The normal way of doing WordPress. That might be the best solution for lots of people.

    Okay, so we’ve got our WordPress website, which we can interact with, and then the content that comes out of that website is pushed to something else. And probably we’ll get into what the options are there. But let’s take the use case of a company which comes to you and says, okay, we’ve heard this buzzword. We think that we want to go headless.

    What are the benefits of going headless? Let’s forget about all the problems that might be associated with it. Can we just iterate through the things that you will gain if you manage to pull off a headless WordPress website. Now, I know there’s going to be all sorts of different scenarios there, but maybe just pick out the low hanging fruit. Some of the things which you believe are really beneficial.

    [00:10:17] Lax Mariappan: Yeah. The first and foremost, or the popular one, is the performance. So WordPress uses PHP templates. We will do everything with PHP and Javascript and also a little bit of caching to render our traditional CMS like traditional pages. If you use a normal WordPress installation with a theme. So that’s how it’s get rendered.

    So there you can see it depends on the hosting company as well, and also how much plugins that you use and how you configured them. So that affects the performance of a site. But when it comes to headless everything is going to be bundled, and there will be how a normal JavaScript based application gets rendered.

    So it’s going to be a modern web application where you have control over, for example, if your page doesn’t use certain CSS classes, those CSS will not get loaded for that page. So I would say the assets that are loaded, it will be less. And the images will be more optimized. In either case, like in traditional too you can optimize images, but it’s like the performance is the first one, I would say.

    It’s going to be both developers will love it and also the site owners, and also, let’s say marketers, Everyone will like the performance aspect of it. And in terms of headless, I would say developers will like it, especially in terms of, so you can repurpose the content. So if you are having a CMS, WordPress as a headless CMS, you can use that same endpoint, get the data and display it in a different formats quickly.

    Other than a WordPress theme. So for example, if you’re using a WordPress theme, you have to create multiple templates. So this is a template for mobile, and this is something that, for example, if you want to use it for a landing page, you may have to do some small or extra changes. But when it comes to headless, you can just customize it in a way that you want to.

    For example, I want to have a landing page. I don’t want certain stuff to be there. So you can turn on, off certain components, that’s it. So it’s like you can render the blocks and render the content faster. So developers and designers will like it. And also, in terms of the security, that’s where I’m more interested in cybersecurity especially. When people say WordPress sites are not secure, that triggers me actually. Yeah, I do get angry.

    So it’s like, you don’t have to worry about that. So you don’t have to worry about changing your login page url. Adding captcha to your login form, all that stuff. Because that URL is going to be safe and secure. No one knows where you are hosted your CMS.

    [00:12:49] Nathan Wrigley: Can I just interrupt there? So could you explain that, because I imagine there’s a bunch of people scratching their head at this point. Because normally, let’s say you have a website, it’s example.com. You’re going to go to example.com/wp-admin, and there is your login page. But there’s something in between here. I’m not sure that we explained that quite. So just explain why the login is secure. Explain where it is and why it’s not normal WordPress.

    [00:13:19] Lax Mariappan: Yeah, so I mean, normal WebPress is also secure but people can guess it, right? Say example.com/wp-admin, so they know. They can see from the source code and the page source, they can see oh, this looks like a WordPress site. And then they can guess the admin url. So slash wp-admin, it’ll redirect them to the login page, right.

    But when it comes to headless, the example.com will be hosted somewhere, and the front end that you see will be different. So for example, let’s say CMS is your WordPress installation, all WP. So you can call that like wp.example.com. So that’s where your WordPress stays in. But when you go to the example.com, that’s your front end, so that’s just JavaScript and html. So it’s like, if somebody wants to hack your site or somebody wants to, just guess what will be the admin url. So they cannot.

    [00:14:10] Nathan Wrigley: It’s a difficult concept to understand if you haven’t encountered this before. But what you’ve got basically is a WordPress website, which is the container for the content, but it isn’t the website and we’re not used to that in traditional WordPress. You go to example.com/ wp-admin, get redirected, log in, do all the things, and click publish, and as soon as you click publish, it will be present on the website. That’s not the way that this is working because the WordPress website is completely decoupled from the thing which is presenting it to the world, right?

    [00:14:48] Lax Mariappan: Yeah. Yeah. Completely decoupled.

    [00:14:50] Nathan Wrigley: So given that, there’s no connection between, okay, here’s my website at example.com and where I might log in. And because of that there isn’t the capability to just guess the login page and then bruteforce an attack and so on. So in terms of security, it offers that benefit. The thing which people are most worried about, somebody getting your admin password going in and spoiling your site. That’s highly unlikely because they simply won’t know where to look.

    [00:15:23] Lax Mariappan: Yeah. And also, so for example certain normal pages like comments, so that’s where we get a lot of spam, right? So comments will go to comments.php. When you submit a form without any data, or maybe if it’s spam data, it just goes there, right? But when it comes to headless, we will be using some extra customization for the comments and everything.

    So it’s not going to be the data will store as comments in the database, and it’ll be, you can view them as comments in the admin panel. But when you are viewing it in the site, so you are reading a blog post, you have a comment form, so that form is HTML and JavaScript. So that’s not how a typical, a normal WordPress form, normal comments form.

    So that’s where you will get less spam as well. So you don’t have to worry about that too. Like people submitting spam data and also any other form. So that’s another thing. And you don’t have to worry about any other security related stuff, because it’s just static.

    So people cannot do anything or manipulate data. So it’s going to be just HTML stuff. Whatever they can do is just view the data. So I would say in the headless, so if you are viewing some pages or we are in a archive page and post archive, news archive, any archive page or any other page that does the data and fetches the data from the database, all that stuff.

    So all that stuff will be protected routes. So people cannot easily guess. Sometimes you might encounter database related attacks, right. So you may hear cross site scripting attack or any other stuff like, somebody trying to get data either they pull your data or they want to insert some other data to the database. That’s not the case.

    Everything is going to be static, like just html, and it’s only read only. So people are not going to input any data. And the input will be just maybe a comments form, contact us form, something like that. And that will be handled. It depends on what form provider you are using, or how you configure it, but still it’s more secure that way.

    [00:17:25] Nathan Wrigley: So just to reiterate the point one more time, just in case anybody hasn’t been paying attention. We have our WordPress website. It is used by the developers, by the content creators, by the editors. They do their normal work inside of WordPress, but the thing which is being viewed on the front end by the population at large is completely separate.

    You’re just sucking the data out of WordPress and putting it into whatever you like. The security’s fairly obvious, you’ve explained that really well. The performance, obviously, if all that you are showing is static html, essentially. That’s going to load really, really quickly. Nothing needs to be built at the time that the page is viewed and so on and so forth. It’s already been created.

    This all sounds amazing and of course that raises the question, why aren’t we all doing it? And you have given us, in the show notes you’ve given me, three different things which we perhaps should talk about, and some of them, you explained the problem and then we’ll get to the solution.

    So the first one that you talk about is dependency hell, you’ve described it as. And, I’m guessing that having a headless site is not straightforward. We’re very used in WordPress to, novices can install WordPress incredibly quickly. You basically upload a zip file and unpack it and connect it to a database, and these days, you know, you go to a hosting company and not even that. You just click a button and, wow, there’s your WordPress website 30 seconds later.

    I’m guessing that this is not the case for headless. There must be all sorts of complex layers of things going on in the background, and you say that in many cases it can become very difficult. Dependency hell. So describe the problem of all the dependencies.

    [00:19:13] Lax Mariappan: So when you have a WordPress installation, we will be installing plugins, right? You might be, if you are using WordPress for a while, you are already aware of the jQuery migrate plugin. All that stuff. So WordPress uses jQuery even now. So jQuery is a dependency that WordPress requires. WordPress depends on jQuery in admin panel, and also on the front end.

    So if you want to get rid of jQuery, it’s kind of, WordPress may not be the same, if you want to eliminate that. Because WordPress depends on it. So it’s something like, let’s say you cannot say that as a oxygen, but it’s something that we all need it. So we need that to survive. So WordPress needs jQuery to work normally.

    So similar case, when you are building a headless site, you will be requiring a lot of frameworks, libraries, and also packages. So for example, if I’m going to choose Next.js as my front end platform, front end framework. So Next.js is built with React. If I want to use Next.js, I may want to use some other Next.js related libraries.

    So it is something like if you are on Android, you may want to add extra apps on your phone. If you are an iPhone, you’ll be adding some more extra apps to extend, right? It’s the same case. Similar to plugins. Instead of that plugins, we will be adding packages. So that packages helps the developers to add extra features that we need.

    So the problem here comes in is, everything gets stacked in and one will be dependent on another. So, for example, if someone is installing a package like for SEO, and maybe that package will require something else. And let’s say if Nathan is maintaining SEO package and I installed it, and for example, for whatever reason, Nathan becomes a musician and he doesn’t, he is not interested in SEO anymore.

    So he may not be more active in maintaining that dependency, maintaining that plugin or that package. So what happens is I’ll be waiting for him to fix the bug or some errors. Or I will waiting for him to upgrade to the lightest version. But it’s not the case, right? So, my Next.js package will be waiting for Nathan, so it’s like I’m depending on him, but he’s not available. So in that case, I have to go and do that work as well. So that adds to our development timeline.

    And then, so this is just one package and one scenario. So this happens with multiple packages and stuff. And this is not just Node or NPM packages. It also happens to WordPress stuff as well. So, for example, let’s say we have a popular forms plugin, or we have a popular slider or any other plugin.

    So you will install that plugin and you want that plugin to work with headless. So how we are using headless, it’s the data is stored in the WordPress, and we want to get the data through either Rest API. It’s a method that we, you know, you go to a url, you ask the WordPress, hey, give me this data and it’s going to give. Or you’ll be using GraphQL. It’s the same. You go to an endpoint and you’re going to say, hey, I’m looking for this post. I want five posts from this date. So it’s going to give that data as well.

    So either you use Rest API or GraphQL. The problem is a plugin that you are using, your popular forms plugin, your popular slider, or any other plugin that you’re using. LMS plugin, E-commerce plugin or any plugin, like a payment gateway. So you have a plugin and you want to use it with headless. So that plugin should work with the Rest API or Graph QL. So if that doesn’t work, if that doesn’t give you the flexibility, and then you are still stuck there.

    Because you cannot go and create everything on your own, right? So we cannot reinvent all the wheels. We don’t have time to create everything from scratch. So that’s where it’s like that becomes a bottleneck. So you are like, hey, I found the plugin. I started working on it. It works up to this mark, but it’s not a hundred percent. So it’s like it does its job 80%. Now I have to go fill in that 20%. It adds to the budget, it adds to the development timeline. So that’s the dependency hell.

    [00:23:15] Nathan Wrigley: Yeah. So in the case of all of the technology, which is in the background if you like, which we haven’t really talked about too much, but like you said, the things which you are requiring from third party developers. There’s a dependency there, and it’s very similar to the dependency that you may have on plugins, you know, you want them to be updated and so on, but you are adding extra dependencies. And of course, the more dependencies you’ve got, the more costly, time consuming it is.

    I’m guessing that most of the things that you are depending on, in addition to WordPress and you described what a few of those were, you could, I suppose, do some due diligence and figure out which projects have been well maintained, updated frequently, and so on. And I guess in the open source world, much of the dependencies that you’re using will be open sourced, so you could fork them. But again, you are creating probably a large amount of work for yourself and your team.

    [00:24:13] Lax Mariappan: Yeah that’s true. Well said. So it’s like, since it is open source, it’s good. Like lot of reviewers. We have a lot of eyes on the code, and you can fork it. You have the freedom to do whatever you want. But still you are looking for a solution and that becomes a problem. You have to fix that as well. And that adds to the, another dependency, another dependency. It becomes a cycle that you cannot escape sometimes.

    [00:24:36] Nathan Wrigley: I guess this is a bit like a seesaw. You know, on the one hand you described all of the benefits, performance, security, and so on, of headless. And then on the other side is, is all of the things that we are now describing. You know, the dependencies and so on. You’ve got to weigh up at the beginning of the project whether one thing is worth all of the time and effort that may be required to do it.

    And I’m guessing in many cases, certainly at the enterprise level, the answer’s going to be yes, because the budget is there, we can put enough bodies to work to make all of this happen, and if we need to fork things, there’s enough people on the team that can do that and maintain the project, which has fallen into disuse. But for a little project the seasaw may tip heavily against something like headless just because of the things that you’ve described there.

    Okay. So that was our first thing, dependency hell. The second thing that you wanted to talk about was the fact that in the WordPress world, especially in the last five or six years or so, we are really used to what you see is what you get, WYSIWYG. You save something in WordPress, you publish something and you have almost a hundred percent certainty of what it’s going to look like. The backend looks like the front end, especially with things like page builders and so on. But you say that that’s not always the case with headless solutions. Why is that?

    [00:25:55] Lax Mariappan: We will be creating custom blocks. So, either there are a popular way of building now custom blocks is with ACF. So you all might be aware of and using it, even though you are not a programmer, you might be using it, right? So ACF is easy to install and create some custom fields. So you can use ACF to block, to build blocks for the site.

    So those blocks can be used or you can build your own custom blocks. You can use any block starters like, frameworks that are available now. Or you can just follow our, WordPress comes with packages that you can on build command, so you can just build your block in a matter of seconds.

    But still, all this stuff. So for example, if you are having custom blocks, I’m not talking about just normal blocks, like where you add a paragraph or image or something very simple. That is easy to build and that’s easy to see. That’s different. But I’m here talking about something complex.

    So for example, you can imagine that as an Elementor widget or, some other items that it comes with the page builders. So, let’s say a slider, maybe tabs, accordions, all that stuff, right? So that can be added through the blocks itself. But you cannot preview them, because when you add them in the admin panel and we add them in the content. Those content gets, you know, you can choose like, oh, this is the tab title, this is the content.

    And you can keep adding the content, but you don’t know how it’s going to render in the front end. But let’s say if you are using some, there are a lot of free blocks and also even premium blocks available. So if you are using a block to build them, and then using the normal WordPress installation. Or you can use WordPress with the full site editing, the modern themes, or the hybrid themes, like old plus full site editing themes.

    Still they both work well. Like you can preview, oh, okay, this is the tab I added this content. I can’t view this one. But when it comes to ACF blocks or other certain custom built blocks, you cannot preview them.

    So when a editor or a user adds content, they may get lost. So I have a slider. I want to add three, four images to it. I may get lost. Oh, what’s the third image? What I have added there, and how it looks? Is the images correct? Is the text rendered properly or should I reduce any title or text or anything, right? So all this stuff becomes a little tricky. And also sometimes it becomes a pain for the content writers, content editors, and also the site owners.

    [00:28:24] Nathan Wrigley: So in the normal, traditional WordPress, let’s say we’re creating a page, we add a page, and we use whatever tool it is that we want to use for that. We add in some blocks. We are perhaps using Elementor, whatever it may be. And we click publish and then we are able to immediately view that because WordPress is working in the traditional sense of the word. The page gets pushed through the templating engine and it’s rendered with its template and we can see it right away.

    But because that’s not happening here. And the mechanism for rendering that page is entirely different. You can’t necessarily view it immediately. Have I kind of encapsulated that? What you are doing in the backend, because it’s decoupled with the presentation layer on the front end, you can’t necessarily always see it?

    [00:29:16] Lax Mariappan: Yeah, so that’s the challenge. So the solution here is to customize the way you built. So for example, we can give them a preview button so they can preview what are the slides, and how they look. And they can see that immediately in the editor itself. Like when they are adding content in the block editor, they can see it.

    And also the other way is to have a button, a preview button. So that will preview before the content gets published. So, you can change the workflow. So if somebody hits, instead of publish, you can have like a preview button or keep it as a draft. So that way it’s like nothing goes to the front end without your approval or preview, right? So you have to preview it and see, oh, make sure everything looks correct, and then you can say, hey, I want to publish it. Yes, confirm, publish it, and then it goes to the frontend.

    [00:30:04] Nathan Wrigley: That’s fascinating. That’s really ingenious. So, because we can’t necessarily see it on the frontend, you and your team have built a custom preview system. So on a block by block basis, you can see what that block will look like when it’s rendered. So in the example of your slider, presumably where we’ve got three or four fields. We’ve uploaded maybe some text, we’ve uploaded an image, and it’s just a bunch of fields. Normally we’d click publish and we’d go to the page and preview the page and we’d see it right away. But in your scenario, you are going to hit a button inside the block to show what that block and that block alone will look like. Have I understood that?

    [00:30:48] Lax Mariappan: Yeah, that’s what we did. Because the users, they are used to the traditional WordPress. And especially that was with classic editor, I mean the old editor. So if you insert an image, they can see it’s an image. And if you insert something, you can see. And we are all used to the page builder era, right? So if you add a accordion, you can see how the accordion is going to look.

    But when it comes to headless, all this stuff is going to differ. So, the tabs, accordions, sliders, and also anything else, any other custom stuff that we built, we added a preview button, and when you click on the preview, you can see that right away.

    Then you can make sure like, oh, the colors are correct, the image is correct, and everything renders properly. Because sometimes if you are not looking at the content and adding content, you might miss some data, right? So you might have missed a small setting that says full width, or you know, boxed. So then you feel like, oh, why this looks so awful. Oh, I’ve missed this full width button. So that’s how the preview button works.

    [00:31:49] Nathan Wrigley: So if I’m looking at the block and it’s a, let’s stick with the slider just for the sake of it, and I’ve uploaded my images and whatever fields were required and I click the preview. Does it literally happen inside that block? Or is this some kind of modal which pops up and shows things? Or is it, is it literally taking over the block itself?

    [00:32:09] Lax Mariappan: Ah, it’ll be within the block. Like it will replace, so for example, if you have a block and you are adding some content to it, and when you click on the preview, it’ll replace where you are adding the content, right? It’ll replace the form. Form of the block where you are saying like, hey, this is the title, this is the subheading, this is the description. Instead of that, it’ll just render the titles, heading and description.

    [00:32:32] Nathan Wrigley: Right, and then you toggle that off again once you’re, once you’re happy. So, ah, that’s really interesting. So the workflow there is really very different. And I’m presuming that after a period of time, the people who are editing, creating this content, that just becomes part of the process? They just understand that, okay, rather than viewing the whole page or whatever it may be, post whatever, I’m just viewing this little bit, and I’ve done it several times now and I’m confident that if it looks right inside the block preview, then I can click publish, wait for everything to happen, and hopefully that page will go live. And, it’s just a different workflow that you have to get used to. But once you’ve done it several times, it’s, familiar and normal.

    [00:33:14] Lax Mariappan: Yeah, it becomes part of the workflow. And also, like we discussed earlier, your site will be like, CMS.example.com. And the front end will be on example.com. Sorry, every time you have to go to example.com/about, example.com slash contact us. Instead of that we will have a preview button. So, you can preview each block and you, if you, or feel like, hey, I want to see how the whole page looks like, you can click that preview, and that will take you, or that will show you immediately, oh, this is how the front end, like example.com/the page will look like.

    [00:33:45] Nathan Wrigley: Yeah, that’s a good point. We’re so used to the preview button being connected to the URL in question, because it’s being rendered by WordPress. You click the preview page button or whatever it may be, and it takes you to the correct place. In this case, there’s no connection between what the URL will be and where you currently are, so yeah, that’s fascinating.

    Just as a bit of an aside. We haven’t got into this, but I think it would be a good topic to discuss for a couple of minutes. If WordPress is separated from the presentation layer, this sort of headless notion. How often does the website get regenerated, if you know what I mean? So for example, if we click publish in our headless WordPress website, what is typical there? Are you going to generate the page immediately and store it as static html? Or do some clients have different expectations there? You know, for example, if you are a, a site which needs to publish things regularly, perhaps you need that capability.

    I click publish. I want that page to be live within a matter of moments. Or it may be that you’ve got a website where it doesn’t really matter if the pages are not built, I don’t know, three hours, six hours a day, whatever it may be. Do different clients have different expectations there?

    [00:34:56] Lax Mariappan: Yeah, that depends on how the publication frequency is. If you want to publish immediately, we can do. If you are okay with publishing the changes after two, three hours, still we can do. So it’s about how you want to set, how you want to build the things.

    So here, few things to consider. You can go with static, fully static website. That’s just static and only when a page gets updated. So for example, you have a hundred page. All of them are static and those pages will not be regenerated. So if you change just the about page and only that 99 pages will remain the same. Only that about page will get regenerated again. You can go that route.

    And also you can go with, every time in the page gets rendered, you can go server side rendering. So every time that’s new, so you can go that route as well. So that depends on how you want to render the data and everything has pros and cons. The normal way is like how Next.Js does now. Because it is like, keep everything static and if you want to render something, you can still regenerate the specific page.

    So this way it’s like you don’t have to build everything all the time. So you can build what has changed in the WordPress. You can see that in the headless frontend. And also you don’t have to wait for it. So, for example, if I go make some change and click update and you can see that immediately.

    [00:36:21] Nathan Wrigley: Really interesting, because there is no exact way of doing this is there? You can just build it in whichever way you think is most beneficial, or whatever the client needs. You know, if, if it’s a newspaper website where, really I need to click publish, and within a few moments I need that page to be live because the content that we’re creating is tremendously important to be fresh and new and so on. But it may be that, yeah, you don’t have that expectation and you’re quite happy to have it work in a different way and publish on a, a much less frequent basis. I can’t really imagine a scenario where anybody would say no, I’d rather it was published less frequently, but maybe there are scenarios where that’s beneficial. I don’t know.

    Okay, and the last point that you wanted to talk about was, the whole conversation has proven to be really interesting, but it’s pretty clear that there’s a lot more work involved in this kind of website. And so your first point was about the fact that the dependencies, lots of dependencies. Your second point that was that you don’t always get to see what you see is what you get in operation. And the third one is basically the amount of time it takes, the amount of resources it takes. You’ve described this as headless asks for more. Tell us about that.

    [00:37:34] Lax Mariappan: Yeah, so when it comes to creating a normal WordPress, like a standard WordPress theme. So what you do is like, you start with your prototyping tool. Like it can be Figma, Adobe XD or anything. So you have your design ready, right? You are creating mock-ups, discuss with the client, and then create a mock-up and then find the variations, all that stuff. And you are settling in, hey, this is my design. And now I’m going to create the theme.

    So, I want to create this many templates. I want to create this many menus, all that stuff. When it comes to traditional stuff, it’s like, you don’t have to consider too many things. So it’s kind of straightforward process and like designers and developers can, the engineers can work hand in hand. And it’s, you can follow Agile like, build stuff, reiterate and just deliver it.

    So that’s how that works. But when it comes to headless, so you have to consider a lot of things. I would say the first thing is the knowledge or, you know, expertise. With WebDev Studios, we are, I would say kind of one of pioneers and also experts in WordPress plus headless stuff. So we have launched, it’s a open source like we have Next.js starter template. So if you want to try out Next.js a headless frontend for your WebPress site, you can just take a look at WDS Next.js starter. It’s free and it’s in GitHub, so you can just start using it.

    So, expertise comes one, like whether you should be, have sound knowledge in that. So you can go and fix stuff. You know what you are doing and you know what to expect and all that stuff. But this requires something like, for example, I am a backend engineer. I have limited React knowledge. I’m now catching up with React, Next.js, all that stuff. But I would, I would not say I’m an expert at it. I build stuff, I still use Next.js every day, but it’s like, I won’t say I’m an expert at it.

    So expertise is one. So your team should have sound knowledge in the framework or anything that you do. Or even if you don’t have sound knowledge, let’s say if you are doing something like, something very new, like Remix got released only one or two years ago, right?

    So if you want to go use Remix, You should be an expert in React and you should play around with React. So that’s the time. So my point is like time, it asks for expertise and it asks for time. So when it comes to just normal WordPress theme, probably you might finish the theme, let’s say, in a few weeks, or at least a few days even sometimes. With page builders finish it in few days or few weeks, right?

    But maybe if you are building it from scratch and you are doing a lot of customization, it may take a while. But when it comes to headless, may take even longer. So more expertise, more time, and all this adds up to more budget.

    This may sound like, oh, well should I do all this stuff? It’s kind of worth it. So you don’t have to, for example, if you have your, the front end components ready you may be having your storybook, like where you want to see how the button should look like, how the elements, how the panels are. Let’s say how each component will look like and how they render, all that stuff, right? So when you have all these parts ready, you can go from, for example, today I’m using Next.js, sooner I can move to something else, like I can use Remix. Or I can use something else that’s going to be hot in the market in future.

    But when it comes to the typical WordPress, you are going to change everything from scratch. So if you want to add a new theme, so maybe if you want to change the look and feel, that’s different. So everything has pros and cons, but the short answer is the headless CMS ask for more.

    [00:41:13] Nathan Wrigley: Yeah. It does sound like not only do you need more time to develop all of this for the reasons you’ve just described. It’s more complicated, so it takes more time. There’s more moving parts, shall we say. And it may also be that you need to spend some of that time not just building the thing, but learning how all of this hangs together, because there’s an awful lot going on in the backend here. And if you don’t have expertise in that, presumably things could go pretty wrong.

    With that just before we end. You’ve obviously decided at WebDevStudios that this is an approach. I don’t know if you build the majority of your sites in this way or subset or a proportion of them, not sure. But, typically what is the amount of time longer it would take to get a website out? Let’s say, for example, that if you were just going to use WordPress as is a normal WordPress website, and you built an exact same website, but did it headless. And let’s imagine a site with, I don’t know, several different custom post types.

    It’s got hundreds of pages. I’m just kind of making up something off the top of my head. But typically, you know, does it take twice as long, three times as long, 50% longer? What, what are we looking at?

    [00:42:28] Lax Mariappan: I’m going to answer just like other engineers do. It depends. But it’s like, I would say it takes a long, maybe you can say, maybe you can say double, but it should not take more than double or something. So that’s where I would say start with more of research. So you should not change frameworks or libraries in between. Like once you started as React, go with React. And if your team is, they are very comfortable and they’re knowledgeable in React, use that. If you are going to use Vue.js or Astro or any other framework. When you start with something and you can go with it.

    So, it is a matter of discovering what the client needs and where the goals meet. How we can achieve it. And once we are very clear on that, you can start developing. And during the development phase itself, we can see what are the possible, you know, the bottlenecks or what causes the issue, what could be a problem, and we can figure out other different approaches and solutions.

    So, for example, you don’t have to let’s say, PayPal is not the only payment provider right now, right? The payment gateway. So we are using so many different stuff and they do the payment integration quickly. But before those days, let’s say 10, 15 years ago that case was different, so now we have more options.

    So similarly, you don’t have to create a form and you don’t have to wait for someone to, the third party or some other open source in a package or something to be ready. So either you can build something on your own if you have time and budget, or you can fork something and then you can adjust to it.

    Or the other way is, I would say you can go with some existing third party or SaaS or any other solution, which is just already there and you can see how you can use it with WordPress. So these are the stuff that can reduce your development time.

    So when you say if you are, I don’t know exact hours or something, let’s say a thousand hours. So if you say a thousand hours for a normal WebPress installation, so headless may take a little longer, 1,500 or 2000 or anything. But it depends on what the client wants and what framework you choose and your expertise, like, I mean, the whole team’s expertise. And also how well we plan, organize, and go.

    So sometimes it’s like just the client takes so long to respond, or sometimes it’s just like, even the client is clueless or what’s happening. So that adds up to some stuff. And I would like to also highlight, when you hear all this stuff, somebody listening is, they will be scratching their head like, so headless is yay or nay.

    So, recently, I cannot say the client name and stuff, but I would say, how we figured this out and how it is kind of helpful. So we had to publish more than 20 websites. That’s for a single client. And all of them are different, and all of them are headless, but that’s for a single parent company.

    So what happened is, we had the architecture ready, right? So we, we know what happens when you publish. We have everything ready. I mean, the back end and the front end ready. So things become more easier that way. The development time is actually just for one site and then other sites, it’s just like, it was fast.

    But we had enough configuration and enough options we given to the client. So every site is not going to look exactly the same. They have their own customizations. But still it’s like amount of development time is the same or is actually less when you compare to traditional. But it depends. It depends on what’s the use case? How, what you are trying to build and everything.

    [00:45:52] Nathan Wrigley: Yeah, it really does sound, there were so many good perspectives at the beginning where, you mentioned performance and so on where this is definitely going to be worth it. I guess if the client is willing and the budget is available and the expertise is there, then this sounds like an incredible option. Steep learning curve probably, but a lot of benefits on the backside of that.

    Lax, just before we round it up, if somebody has been thinking about playing with headless and they’ve listened to this and they think, okay, I’d like to take that a bit further. Couple of things, firstly, where can they get in touch with you? But also have you got any guidance about resources that they may find useful?

    So that could be a website or a book or whatever it may be. So let’s start off with resources and then we’ll turn to you to finish it off. So what resources do you recommend to learn about headless in general?

    [00:46:49] Lax Mariappan: In general it’s like you can start with WP Engine has their own blog. They have stuff about headless WordPress and they also have some of packages and stuff they maintain. They have Atlas. It’s a platform they are planning to go full fledged on headless stuff. And also you can read about GraphQL, WP GraphQL. Their team is more active and they share a ton of stuff on how to customize and maintain stuff with headless.

    And also you can, like a shameless plug. So I’d also highlight about our WebDevStudios blog. So you can see a lot of headless related articles, tips, and tricks. If you want to play around like, you know, you don’t have to spend something to test it out. So you can go with a lot of free starter templates.

    So we have, WDS has like WebDevStudios has a starter template. We have Next.js starter. So that’s a headless thing. All you need is your WordPress, and then you can install that on a locally in your laptop or machine, and then you can just test it out, how it looks, compare the performance and everything.

    And also, like other developers and writers have their own stuff. Like Colby Fayock is a popular WordPress developer. He has his own Next.js starter. So you can just simply Google WordPress headless starter, and you can find a lot of starter templates. If you are a developer, go this route or if you are a, you know, site owner or you are just hobbyist, you want to just try or understand a little bit more?

    You can still do that reading the resources, right? You can actually check our blog as well. WebDevStudios blog. We have, I would say a couple of headless related stuff. That’s one of the popular article last year. Why headless WordPress is trending. So you can see why it is trending, what to expect. You can read more details in that blog.

    [00:48:40] Nathan Wrigley: Thank you very much. And then finally, just to finish this off. Where could people get in touch with you? Are you available on social media? Maybe an email address? Whatever you’re comfortable with sharing.

    [00:48:50] Lax Mariappan: Sure. You can find me on, you know, Lax Mariappan. I’m on all the social media like Twitter, Instagram, Facebook, and everywhere you can find me. So you can reach out to me as an email as well, laxman.0903@gmail.com. Anywhere like GitHub everywhere is the same. Luckily I got my name on all the social media, so you can find it.

    [00:49:10] Nathan Wrigley: Lax Mariappan, thank you so much for chatting to me today. I really appreciate.

    [00:49:16] Lax Mariappan: Thanks Nathan. It’s been great. So I’ve been listening to WP Tavern Podcast for a while. Especially, I like to catch up with what’s going on. The new stuff with WordPress. So it’s good to be on the show,

    [00:49:28] Nathan Wrigley: Well, you are most welcome. It’s been a really interesting and informative episode. Cheers.

    [00:49:34] Lax Mariappan: Cheers. Thank you.

    On the podcast today, we have Lax Mariappan.

    Lax is a web developer based in the Philippines. He’s an Open Source enthusiast, and lover of all things WordPress. Lax has been tinkering with websites since high school, but it all changed when he discovered WordPress in 2010. Lax currently works as a Backend Engineer at WebDevStudios.

    We talk today about Headless WordPress, and it’s a complex topic. Headless is the concept of decoupling the WordPress admin from the frontend of the site. WordPress will continue to work as expected, but the presentation layer will be done by a different technology. React, Gatsby and Remix being some popular choices.

    This implementation of WordPress is complex, requiring technical knowledge above and beyond that needed for a more typical WordPress install, but it has its benefits.

    Lax talks through all of this in great detail. How keeping on top of all the additional dependencies Headless WordPress requires can be time consuming. How it can create difficulties for content editors who don’t always get to see what their work will actually look like in real time. Why this approach to WordPress can take more time and resources during the build.

    Lax explains how these problems typically crop up, and how it’s possible to plan ahead and build in solutions for all the problems that you might encounter.

    If you’ve ever thought about going Headless with WordPress, then the podcast today is for you.

    Useful links.

    React Library

    Gatsby

    Remix

    WebDevStudio Next.js WordPress Starter

    GraphQL

    WPGraphQL

    WebDevStudio Blog

    Colby Fayock’s website

  • #57 – Damon Cook on the Future of Website Styling in WordPress

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox podcast from WP Tavern, and a Happy New Year to you as well. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, the future of styling your WordPress website.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to WPTavern.com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m very keen to hear from you, and hopefully get you or your idea featured on the show. Head to WPTavern.com forward slash contact forward slash jukebox, and use the form there.

    So on the podcast today we have Damon Cook. He’s a long time user of WordPress, trying it first in around 2008. He’s worked for some of the largest WordPress agencies over the years, but his current role is that of Developer Advocate with WP Engine, where he engages with the WordPress community, trying to figure out where WordPress is headed.

    Damon is on the podcast today to talk about styling WordPress, and how it’s changing.

    Up until recently, if you wanted to modify your website’s appearance, you needed to work with the theme. Sometimes this could be done in the theme’s UI or in the WordPress customizer. But if you really needed fine control, then it’s likely you edited the themes files or created a theme of your own. It can be quite a complex process.

    Block-based themes or revolutionizing websites styling. You’re going to be able to modify any aspect of your website from the UI that you’re familiar with. The hope is that it’ll make styling more accessible to a wider audience.

    Damon talks about the fact that we’re in a period of flux right now. The documentation and tooling needed to work with website styles is maturing, but is by no means complete.

    We talk through some of the new concepts which are underpinning all of this. Style variations, style engine, global styles, block themes, block patterns, theme.json. These are perhaps terms that you’ve heard being used, but might not be familiar with. Damon explains what they are and where they fit into the website styling jigsaw.

    Towards the end, we briefly get into the work that Damon has been doing with ACF to make his own blocks, and how it provides a bridge for those people who are not yet familiar with React.

    If you’re interested in finding out more, you can find all the links in the show notes by heading over to. WPTavern.com forward slash podcast. And you’ll find all of the other episodes there as well.

    And so without further delay, I bring you Damon Cook.

    I am joined on the podcast today by Damon Cook. Hello Damon.

    [00:03:42] Damon Cook: Hi Nathan. How you doing?

    [00:03:44] Nathan Wrigley: Yeah. Very nice. Thank you for joining us on the podcast today. Damon is going to have a chat with us today all about, well, a whole myriad of things, to be honest. But largely it’s about the things which are either currently in WordPress, potentially recently put into WordPress, or maybe even some things which are coming down the path.

    He works for WP Engine. His role there is a really interesting one actually. It’s called Developer Advocate. I’m going to dig into what that role entails in a minute, in more depth. But Damon, will you just give us a little bit of a background of your journey with WordPress Just to orientate the listeners, what have you been up to in the WordPress space? When did you come across WordPress? Go as far back as you like to make it work.

    [00:04:26] Damon Cook: Sure. I was thinking about that this morning. I’m trying to remember what my origin date would be. If I had to guess, because I’m not clear on it, but I probably started working with WordPress back in around 2008. I remember multi-site was just getting an introduction. Well, it was MU, multi-user, at the time. So, that was where I was introduced. I actually created an internal blogging platform for a state university I was working at at the time.

    So it was neat to start working with open source tools. And I left there and went into agency land for about a decade where I worked with solely WordPress focused agencies like TenUp, WebDevStudios, and a few others. And, that is where I really focused my work as a front end developer. That’s where I’ve come to WP Engine with, I’ve been here about four or five months and, I’ve always found it a passion of mine to give back in to the community and really advocate and try to raise awareness around some of the newer features coming out of WordPress, which is, these days seems to be going at a pretty breakneck speed with Gutenberg. So, there’s a lot going on.

    [00:05:49] Nathan Wrigley: Yeah, there really is a lot going on and we we’ll dig more into that and your interest in it in a moment. But I want to just dwell on your job title if you don’t mind, a developer advocate at WP Engine. I have heard this muttered a few times by various different people from WP Engine, amongst other companies, and never really that sure what that role entails. So would you mind just spelling it out? I know that you’re new to the role, so maybe still finding your feet, I don’t know, but just tell us what the purpose of that job title is.

    [00:06:20] Damon Cook: Yeah, I am new to it and it is interesting and, I see it as trying to gauge and engage with the community around WordPress. And that is as broad as it can be as in community, because coming from a agency world I tend to definitely focus and have a bias towards developer solutions. But at the end of the day, I’ve always been passionate about creating experiences for the end user, for builders of any stages of learning whether it’s a marketer building a site, or you know, somebody who has a background as a developer or an enterprise developer, or a designer.

    So trying to engage with that community and see where there are any gaps or barriers to onboarding them, really to any of the latest things coming out of the project, or elevate their experience in creating and building sites with WordPress, I guess. And with that also, giving back to WordPress core make teams. I’ve been trying to contribute a little bit to the Docs team and the Learn team. And that’s all sponsored by WP Engine too, as a developer advocate role. So that’s kind of the lay of the land as I see it.

    [00:07:44] Nathan Wrigley: Yeah, that’s absolutely fascinating. Can I ask, can I drill deeper into this, because find it really interesting. Where do you go looking for the WordPress community? Because it’s pretty clear that, well, it’s as broad as it is deep. You could find WordPress people in almost every walk of life. Every age group, every part of the world.

    And also, you can’t spread yourself throughout the world, so you probably have to do a lot of this online. And, well, there’s Slack, there’s Make, there’s, well there’s podcasts like this, there’s news outlets, There’s all sorts of different places where these people find themselves. And I guess you’ve got to try and touch as many of those as possible to gauge all of the different opinions. Where do you find yourself, well spending most of your time? Where do you seem to put your endeavors?

    [00:08:29] Damon Cook: Twitter.

    [00:08:32] Nathan Wrigley: That’s the answer.

    [00:08:33] Damon Cook: Yeah. That seems to be, it seems to be the most engaging and successful platform for that type of community. Which, with the current state of affairs there is concerning because I feel like there has been such a great buildup and yeah, it’s a great platform to engage with the community and reach a large audience.

    So, I’ll be curious to see. I know lots of people are migrating to other platforms and there’s conversations of different experiments and explorations, which I think are great because, really I’m all for owning your content and however we can expedite that process for anybody is a cool thing.

    But yeah, Twitter is the heart of a lot of it. But Slack, WordPress communities, Make communities even. Again, probably my bias is being in Gutenberg pull requests and issues, and trying to give feedback and even sharing some of the higher level issues to see if the community is interested in pursuing or giving feedback on those features, or if they’re just something that’s not even warranted to pursue.

    I think there tends to be definitely bias of what, you know, a lot of these areas that we’re focusing on for new features can at times. Yeah. I think the more input we can and the more eyes then the better validation and verification of what we’re doing in Gutenberg and these new features. It helps at the end of the day.

    [00:10:15] Nathan Wrigley: Yeah, we’ll have to see what happens over on the Twitter side of things. We’re recording this episode at the ending of 2022 and a lot of flux, shall we say, over there at the moment. Let’s just see what happens. So it’s really curious though. Thank you.

    So when we decided to have this podcast, we settled on the topic of, I’m just going to list them frankly. And then we can sort of dip into them one at a time or see where the conversation goes.

    But you decided that you wanted to speak to your passions I guess. So things like the new, I’m going to use that word, I don’t know for how much longer I’m going to be using it. But the new block themes. The style engine, which I’m, I frankly need explaining to me. Global styles, the ability to style everything in the future of WordPress. So styling blocks, themes, patterns, and so on. WordPress 6.1 and all of the fun things that that brought around. And maybe we’ll get into the new theme of 2023. Which offers some really interesting capabilities.

    But let’s just rewind the clock a little bit. Go back there to block themes and what have you. This is obviously something that you are excited about. They are new. I think for a lot of people, they still have a, beware, there be monsters kind of flag attached to them. You know, they’re happy with their customizer. They like the ability to change things in the way that they’ve always changed them.

    That menu area where you could fiddle, under appearances menus. That was fine. Can we just keep that please? And of course, WordPress is moving in a different direction where all of this is being handled by blocks. And so I want to know what you think about it all.

    [00:12:03] Damon Cook: Sure. Again, my bias is as a front end developer. So, the themes have been the heart of where I spend most of my day for the past decade as a developer. That tends to be where my passions lie. So block themes are definitely the evolution of so many things I’ve seen in the WordPress project. Like you mentioned, the customizer. I think that it had great potential, but at the end of the day, there was far too much compatibility issues from switching from themes, and how theme developers were implementing custom fields into the customizer, and custom entry points.

    So when users were switching, there was an inconsistency. So I see the evolution that is putting the hands back into the users where, that’s where a lot of the potential lies, or lied, with the customizer because theme developers could add these bells and whistles that end users could customize.

    So, the site editor is the evolution and, and in a lot of ways, I think there’s a revisiting of a lot of the APIs that were in the customizer but rethought in so many different ways, on so many different levels that they’re being abstracted and pulled apart. And so when they come back together, have so much more potential for developers and end users to extend, and build off of.

    And so it is a struggle because a lot of the underlying code base is being produced as we speak. And it’s going fast, and it’s hard to understand at times. Even, like you mentioned, and I put on the show notes style engine. That is totally new to me, and something that came on to my radar in the 6.1 release like a month ago. Because I had not even heard of this package that is in Gutenberg called the Style Engine.

    And I still don’t have a clear definition and understanding. But if I were to throw enough definition at it, I think it’s just a component of global styles, and really site editing to incorporate some of the classes that are used underneath in the code base.

    So I know that a lot of feedback has been given about classes changing on certain elements and breaking things. And even the potential for builders to be able to assign custom classes to certain elements and have that spread throughout the whole site editing experience.

    So, I think there is that drive in core to have those features, and the feedback is being heard. But it’s slow with great cause because there’s a lot of thought going into making sure it’s done right. So yeah, I think the style engine is a neat concept and I still am getting my head around a lot of it, but I think it’s got great potential.

    [00:15:11] Nathan Wrigley: Yeah. You mentioned a couple of things there, which I want to drill down on a little bit. The first one was the fact that the customizer offered an experience, which, for its day, I think was really ingenious. The ability to modify things and get a real time update. But of course, you are separating the area in which you can edit content from the area in which you interact with the way that the site looks, the styles and so on.

    How the fonts will look, and what the background color of your body is, and so on and so forth. But you said that it was being implemented by theme authors in a whole host of different ways. So if I download and use one theme, I may have a very different experience once I dig into the menus. Theme authors were really doing things in ingenious ways, let’s not deny it. It was also potentially, if you swapped a theme for a different one, you could be, I guess, disorientated because one theme author has done something absolutely differently.

    So let’s speak about that for a minute. Is the intention then you feel to make the whole experience, and I know we’re not there yet, the experience of the site editor, now called site editor, is still very confusing. But is the intention for it in the end, do you believe, to be one experience? The same experience, no matter what theme you end up using. You’re going to have a familiarity with the UI.

    [00:16:40] Damon Cook: The simple answer, yes I do. But I think that there will definitely be some rough areas. I see potential and abstraction enough in some of these packages that, there’s definitely enough thought that if a user were to switch themes in the site editor, you know that there will be a lot less breaking, a lot less confusion.

    Like you said, we’re certainly not there yet, but I think there’s a great, there’s enough thought and carefulness that’s going in consideration into the different packages and areas and features that make up site editing. So that the potential will be there that users can switch. But also users can switch and still maintain their customizations, right, within global styles. That’s a really complex thing to solve. But I think there’s definitely great consideration being applied there and making sure that that will happen. And so, yeah, I’m excited to see the future, that’s where it is for me.

    [00:17:46] Nathan Wrigley: I have no idea how to square this circle. I really don’t know how to do it. But the whole problem of putting the site editor into WordPress, and for everybody to go, yay, this is exactly what we wanted. Because we do seem to have an era, right at the minute where, people are adopting it, other people are finding it difficult to adopt.

    They’re holding off because they can see that it’s not where it needs to be. And I just don’t know what the solution could have been to make that transition as easy as possible. So we are in a situation right now where if you download a vanilla version of WordPress and put it on a site, you’re going to have the 2022 theme. But the editing experience for that will still be labeled as beta.

    So in a way, it’s sort of saying, whoa, don’t go in here. This is likely to break. So the default editing experience is warning us off and be mindful of the fact that things may be damaged if you use this. But the traditional way worked. People that were happy with it are still happy with it.

    There’s no period at which, hopefully, at least anyway, one is going to, the old way of doing things, if you like the classic themes, they’re not going to be put out to pasture at any point in the near future. So we’ve got try and swing people over gently. And I don’t know how that journey could have been achieved successfully, but it does feel as if maybe it’s put some people’s noses out of joint.

    Of course there’s this whole other crowd of people that we are not used to talking to because they don’t yet exist. And what I mean by that is people who’ve never used WordPress and for them, they’re going to step into WordPress tomorrow, the day after.

    And this will be the way that they’ve done it. What the heck? The customizer. What? I have no interest in that. That looks very strange. I’m used to this experience and I guess part of your job and part of everybody’s job in WordPress is to sort of bridge that gap and see how smooth we can make it.

    [00:19:48] Damon Cook: Yeah, and I think that what excites me the most is the experimentation and exploration for even existing users. I mean, I think that some people are transitioning and exploring even new ways that even if they have the Gutenberg plugin installed and activated and are testing out things that aren’t ready for a production site necessarily, but really pushing the boundaries of what can be done.

    And then, I think that can come back to influence the project and direction. So those edge cases and experimentations are definitely where things that get me excited. One thing I just saw that, it’s kind of a tangent I guess, but I saw that there’s a color randomizer that was introduced in Gutenberg, and I think that’s being, featured on, is it Anne McCarthy’s new call for full site editing outreach experiment.

    [00:20:44] Nathan Wrigley: Yeah, she does our outreach program. That’s right, yeah.

    [00:20:46] Damon Cook: So that is a really neat exploration to have in the global styles. A little button you can randomize the colors and see that being applied. You’ll see the different colors applied to the theme, and so I think that type of exploration shows some of the excitement and some of the neat things that there is potential for.

    There’s also the people, I mean, and I am totally like, how many people are going to use that? I don’t know, maybe two. But I think that that type of exploration can give great value if done carefully and considered what the outcomes are, and what the potential is. Whether that feature gets pulled into a final solution and product of WordPress core, I don’t know, that may not. But I’m sure that the outcomes will be documented, whether it’s in Gutenberg and whether that comes back up in two or three years as another exploration, you know. That’s something to learn from and build off of. So that stuff is, I think, super valuable.

    [00:21:48] Nathan Wrigley: That’s a really interesting position you’ve taken there. I really hadn’t framed it in my head in that way too often, because when something like that comes along, it would seem that those people who aren’t going to make any use of it, the common clarion call is, well, who’s going to make use of it? What’s the point of this? Why have we got this, I don’t know, style randomizer that you’ve just mentioned? And, maybe the same could be true of things like the duotone option that was available. I haven’t really seen too much of the duotone out there in the wild.

    So what I’m taking from that is that it was an interesting experiment. Nobody, well, not nobody, very few people made use of it. But the way that you just framed it was fascinating. It was more about, well let’s just try things. Throw spaghetti at the wall, and see what sticks. And maybe some of it is going to be the exact thing first time, but maybe not.

    Maybe it’ll be a case of, what we’ve shown you here is what is possible, not how it will end up. Look, there is an option here. By clicking a button, you can dramatically change the style of your site, you can randomize it. But what if we didn’t want to randomize it completely? What if we could apply constraints to that randomization, so that it was broadly the same as it was before, but just a tiny bit different.

    In other words, we varied your website, not completely randomized it. And so it can be iterated on. The goal isn’t to arrive at the end point, first time. It’s just, here’s an idea. Anybody going to make use of it? No, okay. We’ll move on. Or, yes, but not how it is. We’re going to iterate on it, so, yeah interesting.

    [00:23:25] Damon Cook: Yeah, they’re experiments. I mean, it’s like good old science class. You do an experiment, document the outcomes. And I think that’s a really great way to look at it. Not everything is going to be a success. Experiments fail all the time. But, just as long as you can kinda learn and get the key takeaways and maybe revisit and iterate on a different type of that experiment. So yeah, I think it’s a great thing,

    [00:23:51] Nathan Wrigley: Showing the boundaries of what might be possible, not necessarily what will be. Here’s the sort of thing that you can do. Here’s the direction that you could go in and what have you.

    I feel like styles, you were mentioning there the ability to randomize them. I feel like styles is a real area of success in WordPress at the minute. Because we’ve got things like global styles in the latest iteration of the default theme, 2023. We’ve got this fabulous new thing, which certainly I think is fabulous, I think you do too, called style variations. Other things perhaps less successful. You know, the navigation block, I think still is broadly speaking too unfamiliar for many people to use it as a default. But yeah, styles. Styling everything, blocks, themes, patterns, and what have you, and style variations. Do you just want to tell us, because you wrote that in the show notes, you must have some, insight and excitement around it?

    [00:24:49] Damon Cook: Yeah, style variations, I think that came out in 5.9 or maybe 6.0. With 6.1 that just came out, the core theme 2023 had a series of style variations within it. That was showing the potential of that new API. And again it’s a great exploration and I don’t think that every theme that’s going to be developed, or need to be developed, is going to need a style variation. But, the fact that those APIs are there and you can have that UI, that a user can just browse through and pick different styles and appearances, and get different looks to their site. I think is always something that’s going to land with developers and end users. Because yeah, the web is a big visual experience for a lot of us. So just seeing those changes in real life is always a great thing. And, there was about 10 style variations.

    And so yeah, if you open up the 2023 theme and go into the global styles area, you can just browse different appearances and even save, if you like one, and start using it today.

    [00:26:03] Nathan Wrigley: It really is remarkably clever and very, very interesting to look at. So, as you’ve just said, you download, start using the 2023 theme, and you’ve got these 10 contributed style variations. And really, in a sense, it’s almost like a theme within a theme. It’s almost like the 2023 theme is 10 themes. I’m over exaggerating it.

    It really is just changing the styling. So the text is the same. The images, they remain the same. But it plays very nicely, like I said, these 10 contributed styles that were selected as the ones to go into the theme, they’re really, really different to each other. So in some of them the images, they have different border radiuss, you know, really startlingly, different border radiuss.

    The typography’s changed, the background has changed. And for an end user, you are basically looking at a different website. And the ability to change that, I can’t see any people, well any clients, not at least thinking, well that’s a nice option to have. Nobody’s going to say, well, no, no. I don’t wish to ever be able to change the style of my website with the click of a button. That’s just such a great idea.

    [00:27:15] Damon Cook: Yeah. And I think it, that even reinforces a lot of, I know that the introduction of the theme.json, right, using json file to right. A lot of people say, and it is if you’re essentially writing kind of a CSS abstraction, right, of styling your site in theme.json files. But I think that’s where, again I see the potential is. Yeah, you’re saving these styles as json objects, but you know, at the end of the day there’s so much more potential that, you know, you can take different json objects.

    Maybe it’s styling the same exact thing. Maybe the theme is saying style buttons this way with this border, and then there’s a UI for the user to modify that border, and then take those json objects and synthesize them together. That is the potential of, again, going back to the customizer, if a user just switched themes and some of those stylings weren’t there, then they had a bad experience.

    So I think the value of the theme.json file is hard for a lot of people to grasp, because especially if you’re familiar with writing CSS, you’re like, oh, I’m just writing CSS in a json file. But, yes you are. But, the way that data is being exchanged and can be exchanged in the future will have great potential and, really enable a lot of clever things, I think.

    [00:28:44] Nathan Wrigley: Just to give some more context to that. Does the theme json file, for those people who are listening who don’t know what that is and don’t really want to get into that. Fear not, it’s not tremendously difficult, but also I think there’s a lot of tooling coming out, which is online platforms if you like, which will help you get through that.

    There’s a lot of tutorials around now to help with that, much more so than there was a little while ago. But there are tools which are coming out which will enable you to create these files in a much more straightforward way than typing it into your IDE. But do you see that as a really nice bridge between swapping out themes, because it will provide consistency over time.

    Things in the theme.json file will be immutable, if you like. And if you swap your theme for a completely different theme, hopefully, you won’t just be looking at a complete horror show where everything is completely different. We’re looking for a more consistent experience with these new adoptions.

    [00:29:39] Damon Cook: Yeah, I think my mind definitely goes to the edge cases, well not the edge cases, but like AI. I mean you kind of have to make some inferences of if you’re going to take what the theme, it might be telling you, and trying to allow the user to override some of the things the theme might be setting.

    First of all, you want, you want to make that optional, right? You want to be able to allow theme developers to even surface the UI. So, do they want the potential for somebody to change a button border? That should be an option. And if it’s enabled, how do we infer what the user has customized versus what the theme originally was doing?

    I think you can kind of make some inferences there, but at the end of the day, there’ll probably be some rough edges that will break in changing themes. But I think that it has a greater potential in the current iteration of it, like the APIs with theme.json ,to make things easier to work with, and how they’re saved and exchanged. So, I’m not sure if that answered your question, but.

    [00:30:52] Nathan Wrigley: Yeah, it’s not the silver bullet, but it hopefully will provide a little bit of stability over time. And be less of a, of an experience that you described earlier with the customizer where swap themes and you really are left with a black hole that is hard to get out of.

    Okay, so we’re recording this end of November, 2022. WordPress 6.1. Actually 6.1.1 as of a few hours ago. But, broadly speaking, WordPress 6.1 is the latest and greatest. You put in the show notes, the future of WordPress including 6.1 and beyond. What has got you excited in 6.1? What are some of the, the fun bells and whistles that you’ve enjoyed seeing?

    [00:31:34] Damon Cook: I think some of the global styles work, like saving and importing and exporting for themes to allow end users and builders to create their own variations on a theme. That is currently being worked on, and I think has great potential and excites me. So that, again, it goes back to enabling a good theme switching experience for the end user and for builders and for developers.

    Then I think there’s also more, I mean, in 6.1 there was a good deal of work in allowing the bridge between classic themes and block themes with allowing classic template parts to pull in patterns. And, even now I think there’s work for replacing a template part from patterns. Those types of things speak to the backwards compatibility of the project.

    That stuff excites me the most is bridging that gap, because I think a lot of people are, it’s either a classic theme world or a block theme world. And so, if we can slowly onboard users and developers from classic theme to block theme development, then I think that’s always going to be a success for everyone.

    [00:32:52] Nathan Wrigley: You, uh, you mentioned also in the show notes. One of the things that people listening to this may or may not know, is, they may have come across a plugin before called ACF. ACF stands for Advanced Custom Fields. I forget when, it was certainly before your time at WP Engine, but WP Engine acquired ACF. And, I can’t remember the route that it went. I think it went through Delicious Brains first, and then it ended up with WP Engine. It’s now under WP Engine’s stewardship. It’s a very popular plugin.

    One of the fun things that you can do with ACF is to create blocks in, let’s just call it a simpler way. There’s less of a curve. You can stick with some of the things that you’ve known for years. You mentioned in the show notes you thought this was quite an interesting thing that you’ve been playing with lately. Tell us a little bit about ACF blocks and what you’ve been doing.

    [00:33:40] Damon Cook: Yeah, I recently was able to revisit because I’ve used, I’ve been an ACF Pro user throughout my years as a developer and I’ve used it on projects and, it had been a while and the 6.0 release just came out. And so I was able to dig in and experiment with the current iteration of ACF blocks, which has great potential, I think, and is really useful.

    And again, I think it bridges a gap for a lot of builders in creating custom blocks. I think it’s become a less of a need, because I think WordPress core has enough great blocks out of the box to use. But there’s always going to be potential for different accordions, tabs, those good old sliders, stuff like that.

    And ACF definitely makes a great argument for using PHP and not even having to dabble in kind of the Gutenberg React, JavaScript world. So I think that makes sense for a lot of developers. Why start learning all this React stuff when I can just stick with PHP, and that makes sense to me. And I think that whatever gets you an end project done quicker than that, whatever works, that works.

    [00:35:08] Nathan Wrigley: So is the idea of ACF blocks then that with an understanding of PHP, CSS and what have you? You can combine custom field groups, say, or a selection of custom fields. And you can have those be output in a block? So you’re in the Gutenberg editor, you drag in the ACF block that you’ve created, and whatever you’ve given it a name for. And then you can style it in Gutenberg based upon what you’ve set up. You can obviously, depending on what you’ve done, you can add in text or multiline text or date pickers or whatever it may be. Is that the promise of it?

    [00:35:43] Damon Cook: Yeah, and I think for any ACF users that are already working with the field’s UI, registering and creating those fields in ACF and then assigning them to a custom block that you can just drag and drop into the editor, is quick and easy with ACF. And it makes sense in a lot of ways, because yeah, those fields are available in your block and you get the output that you expect.

    I think there’s a little bit of a deviation in kind of the editor experience, because the way the fields, but that’s really on the developer and implementation really. I mean, you can go all out and try to make it a native feeling experience. And I think that there’s a lot of work even in ACF to give it that native experience. But yeah, I think having those fields available right on your block in the editor makes things easy to work with and makes sense at the end of the day.

    [00:36:40] Nathan Wrigley: Yeah, it’s a nice bridge isn’t it, for people who don’t wish to commit the time or the energy to learning those fairly difficult skills. You can stick with the skills that you’ve already got and use perhaps a tool that you’ve had lying around for a while in a new and interesting way.

    And I also feel that the idea of being able to drop in custom blocks for your clients, whatever industry they’re in. I don’t know, you build a site for a real estate agent and managed to throw together a real estate block, which, you know, if you fill out the fields, there’s a house, that you can have on your website and all you had to do was drag in a block and complete the necessary fields.

    It’s really great. Really interesting. Do you actually dabble in the, the React side of things? Do you build your own custom blocks? Is that something you have experimented with? And if the answer’s yes, how have you found that challenge?

    [00:37:31] Damon Cook: Yes I do. And it is a challenge. I think that I tend to bounce between trying to learn React fundamentals, but mostly I think that I spend most of my time learning Gutenberg’s flavour of React, which makes more sense to me.

    And makes more sense in that, it’s in WordPress and that’s the APIs that they’re spinning off is going to always, it’s going to mature and change a little bit, but that’s where I’d rather spend my time learning. But I think there are some key concepts in React fundamentals that it’s always good to go back and revisit. But, I do that sporadically. That’s even, uh, as a front end developer of 10 years, I still, you know, I’m still looking up HTML elements in MDN Mozilla.

    But yeah, developing custom blocks I think has become a lot easier because I’ve developed them throughout the years in agency land and just the tooling has become a lot better and consistent. Still a ways to go in the documentation. And I think there’s a, a lot of great feedback on how to extend some of the tools to help enable custom block development.

    Yeah, I think it’s come a long way and, there is the barrier to creating your first block is pretty low these days. And if anything, the biggest barriers are probably spinning up and setting up Node and NPM, which is understandably a pretty significant technical barrier. But, I think there’s a lot of great tutorials out there on that stuff as well.

    [00:39:19] Nathan Wrigley: Given that your developer advocate role is your job, and you’re trying to bridge the gap, I guess, you’re trying to find ways to promote the community and help the community and so on. Are there any resources that you have found particularly useful? You mentioned that there’s more now than there ever has been, which is great, but are there any resources that you have personally found to be very useful about anything that we’ve talked about today? Whether that’s blocks, style variations, block themes, block patterns, whatever, just stuff that you’ve found to be useful, resources that we can mention.

    [00:39:54] Damon Cook: Yeah, I think the Learn Team and learn.wordpress.org has been putting out some great material. Courses, video tutorials. So I think that has been a really great resource lately. Also, Carolina’s fullsiteediting.com. I think a lot of people find that very useful. She does a great job of keeping that up to date and so much, so much great resources there.

    The only other, and I know this isn’t probably what everybody does with their free time, but, I actually find it interesting to open up GitHub and go into the Gutenberg project and just pick a package and start looking at code. But not everybody is a coder and not everybody’s a developer.

    And, along those lines, I think if you are even on an early journey and have any interest in being a developer, I would focus more on just learning HTML and CSS. Then if you do someday want to open up Gutenberg and start looking at the code, I think that to have that background is, is far more important to get you into the larger stuff that goes on there.

    [00:41:09] Nathan Wrigley: Damon, I am wondering if people have listened to this episode and they’ve thought, I would like to talk to Damon about this. Where could we find you? What social platforms do you use, or email address do you want to disclose? Entirely up to you. As much or as little as you like?

    [00:41:24] Damon Cook: Hopefully Twitter is still very active. But that’s where I do spend a lot of my time still. So I am dcook on Twitter. So definitely reach out to me there. And I think I’m always in the WordPress Slack. Definitely lots of great content coming out of wpengine.com builders site in the future. We’re actually just starting to do some workshops as well. So look for announcements on Twitter through wpenginebuilders. That’s where mostly where I can be reached.

    [00:41:59] Nathan Wrigley: Damon Cook, appreciate you chatting to us on the podcast today. Thank you very much.

    [00:42:03] Damon Cook: Thank you.

    On the podcast today, we have Damon Cook.

    He’s a longtime user of WordPress, trying it first in around 2008. He’s worked for some of the largest WordPress agencies over the years, but his current role is that of Developer Advocate with WP Engine, where he engages with the WordPress community, trying to figure out where WordPress is headed.

    Damon is on the podcast to talk about styling WordPress, and how it’s changing.

    Until recently, if you wanted to modify your website’s appearance, you needed to work with the theme. Sometimes this could be done in the theme’s UI or in the WordPress Customizer, but if you really needed fine control, then it’s likely you edited the theme’s files or created a theme of your own. It can be quite a complex process.

    Block-based themes are revolutionising website styling. You’re going to be able to change any aspect of your website from the UI that you’re familiar with. The hope is that it’ll make styling more accessible to a wider audience.

    Damon talks about the fact that we’re in a period of flux right now. The documentation and tooling needed to work with website styles is maturing, but is by no means complete.

    We talk through some new concepts which are underpinning all of this. Style variations, style engine, global styles, block themes, block patterns, theme.json. These are perhaps terms that you’ve heard being used, but might not be familiar with. Damon explains what they are and where they fit into the website styling jigsaw.

    Towards the end we briefly get into work that Damon has been doing with ACF to make his own blocks, and how it provides a bridge for those people who are not yet familiar with React.

    Useful links.

    WP Engine

    WP Engine Builders

    Delicious Brains

    Advanced Custom Fields

    ACF Blocks

    Learn WordPress website

    Full site editing website

    Gutenberg Project on GitHub

  • #56 – Chris Badgett on Using WordPress for Online Courses

    Transcript

    [00:00:00] Nathan Wrigley: Welcome to the Jukebox Podcast from WP Tavern. My name is Nathan Wrigley.

    Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, how to use WordPress as an education platform.

    If you’d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to wptavern.com/feed/podcast, and you can copy that URL into most podcast players.

    If you have a topic that you’d like us to feature on the podcast, I’m very keen to hear from, and hopefully get you or your idea featured on the show. Head over to wptavern.com/contact/jukebox and use the form there.

    So on the podcast today we have Chris Badgett. Chris is behind LifterLMS, which is a learning management system built as a WordPress plugin. He’s been in the WordPress space since 2008, and has moved his agency away from general website building to concentrate upon e-learning membership sites, course creation and marketing automation.

    He’s on the podcast today to talk about how WordPress and e-learning are a good fit. Although there’s a flourishing SaaS side to e-learning, Chris is convinced that WordPress allows you to make your LMS site exactly what you want. You won’t be facing the limitations imposed upon you by the platform. And can, if you have the time and skills, modify almost anything to suit your brand and niche.

    We begin by talking through how well a WordPress based LMS site can scale. Should your course be a runaway success, you want to be aware of how you’re going to have to manage the resources that your site will need. There’s a lot of dynamic content being displayed to your users, and this will affect the tech stack that you’ll need to deploy.

    We then get into a broad conversation about how online courses have taken off in the last few years. Even before global lockdowns, individuals and businesses were adopting online courses in innovative ways, to educate their customers, staff, and the wider public. Chris’s data points to the fact that this growth seems set to continue.

    There’s a real understanding now that in many niches, the course curriculum needs to be adapted and amended continually. This is extremely easy to do with an LMS. You create new content, click publish, and notify your users that the new material is there.

    We also discuss the reality of actually making a course. Like writing a book, the idea of creating a course is easy to conceive, but hard to execute. There’s the content, the branding, the marketing, the updates, and much more. Chris has some advice to help you get over the bumps in the road if you’ve decided that you want to dip your feet into online course creation.

    It’s an interesting podcast and digs into yet another area where WordPress can help people thrive online.

    If you’re interested in finding out more, you can find all of the links in the show notes by heading over to wptavern.com/podcast, where you’ll find all the other episodes as well.

    And so without further delay, I bring you Chris Badgett.

    I am joined on the podcast today by Chris Badgett. Hello Chris.

    [00:04:16] Chris Badgett: Hey, Nathan. Great to be here.

    [00:04:17] Nathan Wrigley: Yeah, thank you for joining me. Chris and I have been in touch with one another over many years, but it was very nice in the WordCamp US, which was recently something that I attended to find Chris there. Very nice to meet you in person.

    [00:04:29] Chris Badgett: That was great.

    [00:04:30] Nathan Wrigley: Chris is on the podcast today. He’s going to be talking to us about e-learning or LMSs, all of the different ways that you can do that with a WordPress website. But if you don’t know Chris, you’re about to find out why he’s an expert in this and why he’s got the chops to be talking about it.

    Chris, would you just spend a moment or two orientating our listeners, giving them an idea of, a, your relationship with WordPress. We’re on a WordPress podcast after all, but also why you are somebody who is an expert in e-learning.

    [00:05:00] Chris Badgett: Absolutely. So I’ve been at WordPress since 2008. Around that time I started blogging. I was actually living in Alaska. I used to run sled dogs up there, and I started on the side building WordPress sites for myself and then later for clients, and I kind of accidentally started an agency. And fast forward the timeline a little bit, I started blogging about some courses that I was creating because I was trying to create some more passive income for my family, my newborn kids and everything.

    I started blogging about how I did that with WordPress, and this is back in 2000 and 11 or so. Over time I built an agency to about 17 people. People started responding to all my, my blogs on building an LMS website, creating online courses with WordPress. A lot of my blogs, nothing ever happened, but I clearly struck a nerve and the market was interested in this information.

    Our agency started focusing on that. Those are the kind of clients we attracted. And ultimately the clients wanted this perfect e-learning membership site, course creation, marketing automation tool that didn’t exist. So we built that in 2013 and that was the origin of Lifter LMS. Which is one of the leading learning management systems for WordPress. So I’ve been a course creator. I’ve been an agency guy, and I’ve been in this niche for about a decade here.

    [00:06:25] Nathan Wrigley: Nice. When you initially launched, it sounds like it was held together by sticky tape. You were literally making it up as you went along. This is the first iteration where you were designing it. How did that go? Were you just cobbling together a bunch of disparate plugins and figuring it all out piece by piece?

    [00:06:42] Chris Badgett: I would say one of my talents as an entrepreneur is team building, and I’ve had some really talented developers with me from the agency side. And because I was so close to our ideal customer, as a product guy, working from first principles. We took one of our developers, his name was Mark, off of client work, and gave him a spec to build. He built the first version of Lifter LMS in about 60 days from scratch.

    No cobbling together anything. And then we launched it to the world, for a closed beta period. Opened it for a week. We got 42 customers in that week. We said if we didn’t get a hundred that we would shut it down and go back to agency work, but I’m kind of stubborn. So we, uh, we kept going and continued to develop Lifter LMS. I’m very much as an entrepreneur where the customers kind of pull the product out of you.

    I’m not trying to push product on the market. So I’m a really good listener. I’m a big community guy. I’m also decent at filtering and focusing and weaving my own vision in with what the market wants. So that’s how Lifter started.

    [00:07:47] Nathan Wrigley: Yeah. That’s really interesting. The WordPress space is obviously full of websites, different things you can do with it, e-commerce, LMSs, you name it. The truth is as well that there’s a really thriving SaaS side to LMSs. So I’m just curious if you could give us, being that we’re on a WordPress podcast, if you could give us a bunch of different reasons why WordPress is a really great fit for an LMS. I mean, obviously we’re not trying to disparage the SaaS products out there. There’s going to be a whole bunch of reasons, I’m sure, why WordPress might be top of your list.

    [00:08:22] Chris Badgett: Yeah. And, and this, I’ll go back to the voice of the customer here. You know, there’s some great platforms out there, SaaS solutions like Kajabi, Teachable, Thinkific, Podia, there’s many others. In the early days, a lot of people were putting stuff on course and marketplaces like Udemy. Udemy as an example started enforcing pricing controls where you can only charge up to $50 for your course.

    That upset a lot of people. The SaaS solutions tend to look pretty cookie cutter. So people that really want to build like a unique brand and design get the longing to go to WordPress where they have unlimited brand and design flexibility. And then it’s really just a functionality thing.

    One of my customers who switched from one of the SaaS solutions, described it this way. He said that the SaaS that he was in, they were trying to conform him to it, like as a course creator and entrepreneur. But over here in WordPress he’s in the driver’s seat of what his vision is for his online learning platform.

    He’s not being put in a box. So that’s kind of the simple way to say it. Brand flexibility and just this whole ownership and control aspect. Because when you build a site like this, you’re not just building a brochure, you’re literally building a business asset. So to have more control over that is something that’s really important to a lot of people.

    [00:09:37] Nathan Wrigley: Yeah, I guess the same could be true in just about every sphere of WordPress, where there’s commercial rivals that are SaaS products. The customizability. The fact that you can make it your own and do whatever you like with it, given the time and development. Yeah, that’s the perfect answer really, isn’t it?

    Does WordPress scale well with LMSs? And what I mean by that is if we took a inexpensive hosting package and we dropped WordPress into that, and then we install one of the LMSs. It’s doing a lot of work. There’s a whole bunch of different things going on, and we can get into that a little bit later. Needless to say, there’s lots and lots of things happening. Are there constraints around the hosting and the tech stack that you need behind WordPress? Or does it actually function pretty well even on modest resources?

    [00:10:25] Chris Badgett: Well, not all plugins are created equal. Something like a WooCommerce, or one of the WordPress LMS plugins are, quote, heavier. They require a lot more resources. We have a lot of dynamic content, We have a lot of user interactions. So as platforms themselves, like a platform plugin, they require a lot of resources.

    That being said, performance is something we focused on and, I think the industry in general has to pay attention to because as your customers become more and more successful and get more and more users, the last thing you want to have happen is for your tool to start malfunctioning or cause the site to slow down or whatever.

    The reality is, yeah, you can start with the cheap, low end of the market hosting and you’re completely fine. When you start getting above like a thousand users, you need to start looking at bigger plans. We actually have a list on our website of the six options that we recommend. But, we have customers that have 50,000. There’s one person on there, because we have some telemetry data tracking that people opt into, where we collect just non-identifiable information just to see what people are doing.

    I’ve seen people with 800,000 users in just massive sites. At the end of the day, we work to create a performant plugin and we continually focus on performance. We actually work with hosting companies to improve performance together, which is awesome. There’s some great hosts out there that take a keen interest in that. Because they themselves as hosts are looking to attract high quality customers, which LMS websites can be, when they’re successful.

    When you do get into large concurrent users or you’re doing something really at scale, you are going to be spending a lot more on hosting. That’s just part of the game. But if you design your business model correctly for your school or your academy, or your membership site, whatever you call it. If you’re hosting bill jumps up from $30 a month to a hundred dollars a month, you’re fine. It’s just the real estate tax for your online business. And if it, even if it jumps up higher than that, you’re having a ton of people move through your platform and it’s, it’s just a cost of doing business.

    [00:12:35] Nathan Wrigley: Let’s just move sort of sideways, away from the tech and possibly away from WordPress just for a moment, and talk about the kind of people who may be interested in this. I’m imagining just like everybody, there’s a whole bunch of people who, if you like, they have the New Year’s resolution. want to do a course. I want to launch a course. I’ve got this area of expertise and I want the world to know about it. The world will be a better place after I’ve launched my course.

    And I imagine there’s quite a high attrition rate, where people have that and then they’re confronted with the reality of what’s actually involved. And the course doesn’t get launched. So just give us some broad outlines of the concerns and considerations you would put in front of people just to say, Okay, if you really are serious about this, bear these things in mind, because I imagine there’s quite a lot.

    [00:13:25] Chris Badgett: Yeah. I kind of think of us as having two markets. One is the WordPress professional who builds sites for clients and stuff like that. And the other is what I call the expert industry. And there’s other niches within e-learning besides the expert, which we also have, but, for that person who wants to take their knowledge, skills, and life experience and turn that into a product through an online course. I think this is not a new story, it’s an old story. I don’t know if you, Nathan, or anybody out there listening has ever had a vision of writing a book one day.

    [00:13:56] Nathan Wrigley: Oh yeah.

    [00:13:56] Chris Badgett: I have. It’s that same story. I haven’t written a book. I don’t know if you wrote your book Nathan?

    [00:14:01] Nathan Wrigley: Failed.

    [00:14:02] Chris Badgett: It’s the same thing, and I would argue, it’s almost a little harder for courses and stuff than a book, because a book is typing and words. With courses, you got to figure out the website. You start working with video and audio and instructional design and curriculum. All the stuff, it’s a lot. Really if I look across the patterns of the people that make it, there’s several things to mention here. One of ‘them, which I can go into more detail later, but just to drop it now, is you have to have a baseline of competency across five areas, either within yourself or your team, for it to even work at all.

    And so this is the fundamental thing. I call it the five hats problem. So you have to wear five hats. One is you actually have to have expertise. Two is you have to be an entrepreneur, which includes starting a business, marketing, all that stuff. You have to be a teacher. The ability to not just know something, but help somebody else learn it. You have to be a community builder, before the sale and then after the sale. And then you have to be a driver of technology and be able to use hardware and software and stuff.

    So just know what you’re getting into. So that’s one. Number two. The people that really make it, take consistent forward action even though it’s imperfect. What stops a lot of people in this industry is imposter syndrome, and the people that make it literally ship the course, even if it’s not perfect, even if the videos aren’t perfect, even if they’re unsure of their self worth or whatever, they ship it. and then they make it better over time.

    And then the third thing that’s really important, I’ll stop at three points because these are kind of the three biggest that I’m giving you here, is that a lot of people get really focused on the concept of making money online or building an online business or working from home. And these are all good things and I’m all for all those things. But they’re very self focussed. The people that really make it out there, kind of have a service mindset that drives their business. They focus on a particular niche, and they make it about impact and serving others.

    And through all that, they make a lot of money and they build the online business and they work from wherever in the world. But when you flip that script, from a priority standpoint to be like, you know what, I’m going to focus on this person and help this person be successful. Quick example. One of our customers, Angela Brown, I watched her go from like zero to like 200,000 person YouTube channel teaching house cleaners how to start and grow their businesses. And she’s hugely successful now.

    She’s really famous in that niche. And, basically she just was targeting people that were just starting out trying to run a cleaning company with cleaning supplies in the trunk of their car, and helping them become professionals. And through all that, she’s made a bunch of money and everything, but she’s given everything to her industry and she’s really focused on helping her core customer.

    [00:16:57] Nathan Wrigley: That’s a really fascinating story actually. I’m really taken by that. I do like the, the story of the underdog. That’s brilliant. So let’s go back to your five hats, of which I think you mentioned the first three. There’s a lot in there, isn’t there? There really is a lot in there. You mentioned expertise, entrepreneurship. The fact that you’ve got to be a teacher, an educator. Got to build a community. And then you’ve got to be somebody who’s presumably on some level, you described it as a driver of tech, but basically a geek.

    Would you say that if you don’t satisfy all of those things, you are kind of asking for trouble? I mean, let’s say for example that I’m not particularly good at tech. Presumably there are some of these things which you can farm out? You could hire somebody to do the tech for you and so on. But the other ones really do feel like, that’s got to be a part of your core being, your soul if you like.

    [00:17:44] Chris Badgett: It really depends on the person. I kind of think of it as like a personality type matrix. And by the way, I mentioned one of our major customer set is people who build these kind of sites for clients. So a lot of people are not trying to do this all themselves. They partner with a WordPress professional to be the tech person to actually build the site.

    So that’s a common one that, an expert, especially a really established expert who’s not in a technical field, maybe it’s a yoga instructor or some kind of cooking thing or parenting thing. We see a lot of people just partnering with a WordPress professional, I’ll say that.

    When it comes to the entrepreneurship piece, I call our ideal customer an education entrepreneur. They’re both driven by teaching some subject matter, but also being an entrepreneur, which literally is somebody who creates value out of nothing and gets it out into the world by their sheer will.

    It’s one thing to be a teacher. It’s one thing to be an entrepreneur. Not all entrepreneurs want to be teachers. Not all teachers want to be entrepreneurs. But when you have both together, that’s kind of the core that you can’t really outsource. You can hire in pieces of the entrepreneurship, I see people hire marketers to help with content, or ads, or taxes and things like that. But at its core, for someone to be successful in this endeavor, there’s that overlapping of the teacher entrepreneur in one. It’s kind of a common thread.

    [00:19:10] Nathan Wrigley: Okay, so let’s imagine that I want to do a course. I’ve got this area of expertise. Let’s imagine that I’m a, I don’t know, fabulous guitarist or something like that. And I want to spread the word, and teach people how to play the guitar successfully and enjoy it.

    Talk to me about the process that you would advise somebody like me to go through. In order to get this thing off the ground, because the first thing I’m going to do is not shoot myself a video of me playing the guitar. That may be quite high on the list, but I’m imagining there’s a whole bucket load of other things that need to be done, in terms of market research, and branding, and coming up with the structure of the course and so on.

    So, just run us through a typical, different in every case I’m sure, but a typical way of mapping out the journey from just the idea, just saying you’re going to do it, to finally having all of the bits and pieces so that you are ready to do it.

    [00:20:05] Chris Badgett: You know, I’ve seen so much failure or just slow progress on this question here that I’ve created a system to help people figure this all out. I call it the five day course plan challenge, it’s on our website. But basically what happens on those five days. My whole point is give me an hour, for five days in a row and then you’re going to be ready to actually approach this.

    So on day one we get into a lot of the inner game stuff like your purpose and your vision. Getting some of the mindset stuff straight. Day two, we get into designing your ideal customer avatar. So for you, who are we teaching? Are we teaching other guitar teachers? Are we teaching kids? Are we teaching a specialized style of guitar. Nicheing and doing the avatar work is super important. Then there’s the actual, this is the fundamental thing that the entrepreneur does, which is, the core of what entrepreneurs do is they create an offer, right?

    An iPhone is an offer. A Tesla car is a offer. A WordCamp as an example, there’s like a promise there. And what a lot of course creators and coaches and things like that do, is they get really focused on their mechanism, which for your example, is a guitar playing. Okay, that’s a mechanism. But what is the offer? I have a whole thing where I teach about how to develop this, but basically what it boils down to is, I help X person achieve X result through my mechanism. Offer construction is the key, and if you don’t nail that, everything else will be inefficient or potentially fail.

    Once you have your offer on the next day, I give people, because a lot of experts have no training in how to be a teacher or a coach. So I have some training in instructional design after a decade in this space of like how to think about chunking down your skills and your, what you want to teach, and the result your avatar wants, into an actual framework that has a high likelihood of actually working. So I help people become instructional designers.

    And then the last step, that sometimes people overlook, is it’s not just about content. You want to design some kind of success system. So if you look at like a popular online course that you can buy, that you hear ads for all the time called Masterclass. This is like $15 a month and you can learn comedy from Steve Martin, and all this stuff from all these famous people, but it’s only $15 a month. The reason why those courses from the best in the world are so cheap is because they lack any kind of support or connection with the creator.

    So when you design a success system, and I have a whole system of how to think about that and map it to your personality style and preferences, but it could include things like group coaching, email access, office hours, phone support, live events in person. When you combine that success element, and not think of your product as not just organized content, that’s when you really create a winning course. So my advice to you, Nathan the guitar teacher, is to go through that pre-work of those five steps I just laid out.

    [00:23:16] Nathan Wrigley: I should probably learn to play the guitar first.

    [00:23:19] Chris Badgett: That too. Hey, expertise is one of the five hats. So if you don’t have it. You know, sometimes people see a business opportunity. Maybe I’ll teach people how to trade crypto or whatever. But they see the opportunity, but they lack the expertise. But that’s still possible, by the way. One of my first courses was in organic gardening and permaculture.

    And I had all the hats except for the expert. My wife was skilled at this, but, I actually went out into the world and found some of the best people in the world. I flew to Costa Rica and traveled to a bunch of places, and I was filming these people doing permaculture design workshops in the jungle or in different places.

    And so I went and I got an expert, right? And I was taking an industry that was predominantly offline. I was trying to get it online because I could see how many people on YouTube were looking for this information and everything. So, you don’t have to have the expertise, is what I’m saying. Nathan, you can go find you a guitar player, you guys partner, and you can make it happen.

    [00:24:18] Nathan Wrigley: You were talking earlier about writing a book, and how so many people have this thought and it never happens. I’m sure that there’s quite a few people who get halfway through a book and then it never gets across the finish line. They’ve written the first 25,000 words and it’s all going great, and then for some reason the atrophy sets in and the word processor never comes out again and it just tails off and gets forgotten about. I’m sure the same is true of courses, you know, people they decide that they’re going to set up some kind of LMS.

    They’ve thought through carefully all of the bits and pieces, but at some point the project gets derailed. And I’m wondering if, as somebody in this space whose job it is, not only to sell an LMS, but obviously to coach people around how to do that. Are there communities of like-minded LMS-ers, if you like, who can help you through this bit?

    In other words, if you, if you hit a roadblock, if you find yourself getting distracted and you never get it across the finish line. Are there mechanisms in place, communities, online or otherwise of people who can help you, support you, try to get you through the bit that you’re stuck on?.

    [00:25:26] Chris Badgett: Yeah, a hundred percent. I have a podcast called LMSCast, and we’re about 400 episodes deep. And part of the reason I created that podcast is I wanted to interview people, not just about the tech and WordPress, but around all these other challenges that people face around the five hats, and things like instructional design and marketing and community building and all this.

    So, that’s a resource, but there’s also a lot of great Facebook groups, as an example out there. The whole course creator, entrepreneur thing is definitely a niche. Coaching. Some people kind of use different words around the space. You’ll hear course creator, I’m a coach, I have a membership site, I have a paid community.

    You can do all those things and kind of mix and match whichever variables you want in your online learning platform. But there’s definitely communities and content around these types of people. And you can find the ones that resonate with you. What we find here in WordPress, or just in software in general, is that sometimes people buy the tool before they’re ready, right?

    It’s one of the reasons why I’ve made that five day challenge course for people to be more ready for the tool, and not just the tool, but for the business. And there’s a lot of people out there who teach around course creation. You just have to be careful though, because there is a lot of over promise snake oil stuff about how easy it is and, you know, follow these easy steps and all this stuff.

    It’s a big commitment. If you’re going to create a course, it’s not easy, I’m just being honest with you. Just like writing a book is not easy. And starting a business, especially if you don’t already have an online platform or website and e-commerce system and everything. It’s going to take a little bit of time.

    There’s a lot of people on this journey. The online industry is booming. People becoming entrepreneurs and wanting to be entrepreneurs and want to work remotely and digitally and be digital nomads and all this stuff, it’s all booming. It is an emerging trend, and you can find others on the same path.

    [00:27:22] Nathan Wrigley: Yeah, it strikes me that it could be quite a lonely journey being a course creator, because if you’re doing it by yourself, you may struggle to make those connections, so it’s nice to hear that there are different communities and groups out there which will help you through that. Yeah, that’s great.

    In terms of LMSs and all of that, the technology behind it all. I don’t know how to phrase this question because it brings up Covid, but during the last few years Covid happened. And I’m guessing, I have no data to back this up, it just is a thought in my head, that online courses became more of a thing.

    More people creating them. More people consuming them. And whilst nobody wants to celebrate Covid, it might be interesting to get into that conversation about whether or not that was in fact the case. Did people swell to LMSs and were there more courses being put out and consumed? And also, what’s the trend since the world has gone a little bit more back to normal? Since we’ve been able to go back to in-person events? Has it declined or has it kept its growth?

    [00:28:28] Chris Badgett: There was a huge boom that I could say from our company, in terms of new users, new customers due to Covid. And also just to talk about a little more, there’s some different flavors to it. Yes, there’s some people that want a side income or a full-time income from home now, that wanted to become course creators or coaches and they needed an LMS. But we also saw a big influx of trainers, people that would go places and train people at a company, or they would deliver some kind of event thing from the stage, and now they want to package it inside of a LMS in a course format. They literally had to, to keep their businesses going.

    So there was a lot of, there was a lot of both those aspiring entrepreneurs, but also just trainers and events and regular schools. A big, small, traditional alternative, whatever, that we’re trying to figure this all out. Yeah, it caused a huge boom in the industry, and I guess it’s been, I don’t know, has it been almost three years now? Something like that. The initial parabolic rise, if you will, has slowed, but the industry continues to grow, from what I can see.

    So, that caused a big spike, but we’re seeing the industry just continue to grow. And also new, if you look broadly across the online learning SaaS space and the online community SaaS platforms, and the Zoom alternatives and everything, like the whole industry is just continuing to expand.

    [00:30:00] Nathan Wrigley: Yeah, I think there’s something which I can identify in my life at least anyway. Before the last five years, shall we say, I was probably far less willing to enroll in courses just because, I hadn’t really done it before. It was still a new thing. Much more likely now, personally, to do that because I now see this as a really legitimate thing. People now have the expertise to do it. There’s platforms like yours which enable them to do it. And it, it is no longer the thing held together by sticky tape. It can be a really professional enterprise, even just a one person enterprise can do it really professionally, given the arrangement of tools that are out there now.

    And now people can download all sorts of clever software, which will enable the video editing process to be slightly more painless, if you know what I mean. And you can download software which enables you to do the marketing side of things and all of this kind of stuff. What I’m basically trying to say is, I feel that it’s become part of the landscape now. Online courses is now a thing, and it feels like it’s a thing that’s here for good.

    [00:31:02] Chris Badgett: It is, and I’ll just throw a few more trends kind of on top that are happening. One is the transition from just in case, to just in time education. So what I mean by that is, you know, if we go to college and we get a degree, we learn a lot of stuff just in case we might need it or whatever.

    And I’m a fan of college. I’m not bashing college, but just in time education, as our world has become more complex and dynamic, and the rapid changing of things for example, um, if you need to learn how to use a new software tool or, you know, you go to YouTube the tech training at universities and community colleges has a hard time keeping up with just independent, online learning platforms for fast changing and emerging technologies, just as an example. So, just in time education.

    The other trend that’s happening is called micro learning, and that’s where it gets really important to chunk down your content so that it’s as effective and efficient as possible, without wasting time. So, back in the earlier days of the online course industry, it was all about, I’m speaking to the expert, entrepreneur kind of subject matter expert courses. It was all about how much stuff you could cram in the membership site. Like, okay, we got 200 hours of videos, 500 PDFs, all these bonuses. The trend we have now is people don’t have time for that. So, it’s got to be good. It’s it’s got to work.

    People will be forgiving on production quality to a degree, like video, audio, whatever PDFs you’re doing, if you’re doing that. But the best stuff is like, super targeted, super efficient, very clear offer. There’s just so much opportunity out there in the world. Anytime I see a friction point in anything, that could be a course. And if you’re going to, if you as an entrepreneur, are going to jump on that friction point, make it as frictionless as possible for the person to achieve the result.

    [00:33:02] Nathan Wrigley: I really hadn’t thought about the just in time piece, and that makes so much sense. Especially when you think about the landscape of the industry that we are in, technology, specifically WordPress. Things are changing all the time. And something that you may have wished to learn last year might now be completely obsolete.

    There really is no rival than the internet for that. Online based learning can be updated now, this second, and I will immediately receive the fruits of all of those changes. Yeah, that’s really remarkable. I hadn’t really made the connection there.

    [00:33:35] Chris Badgett: And just a quick marketing insight on that too, is if you’re going to do it, this is why doing the avatar work and stuff is so important, because once you get into this, it’s going to be a long road, and it’s not always going to be easy. But my best advice is if once you decide who you’re going to help, and who that avatar is, and what you’re going to teach, I would build the course business and a YouTube channel in parallel, because, just in time education, a lot of it happens on YouTube, where people go.

    I of course want to see people helping people for free on YouTube, from my perspective, across all these tens of thousands of course creators is, YouTube is a really strong marketing channel to get people, you on their radar and then them into your marketing funnel.

    [00:34:20] Nathan Wrigley: This leads me to another thought, and it wasn’t necessarily where I wanted to go, but I’m going to ask this anyway. If I was a course creator and something seismic happened that meant that my course needed to be amended, adapted, maybe something extra needs to be added. What do we do with that?

    Because it feels almost like a course is a package, it’s a parcel. It’s finished. I’m handing it over, I’ve put it in the LMS, and there it is. That’s the thing. But presumably there has to be modifications made. Let’s say for example something in WordPress suddenly, let’s say there’s a virus which goes around and we need to disseminate the news about that quickly. Just a silly example.

    I would need to put that into the course somewhere. What would the advice be about amendments? Do you normally ask people to substitute one video for another in place, or do you say, Look, add extra content? How does that amending on the fly, nature of online learning go?

    [00:35:15] Chris Badgett: Well, there’s lots of options. It rolls back to the business model. So you can sell a course that has lifetime access, and then in that case you just update the content or add the additional resource. But if you’re selling a course that has a monthly recurring cost to it, and this is where the success systems come into play too.

    The easiest way to add recurring revenue to a course, the lowest friction way for you to do it, is to once a month do a one hour ask me anything office hours, right. Now you have recurring value. It’s time boxed to just that hour. And you can help people in ways that they decide to stay and you continually get recurring revenue.

    So if we have a model like that, you need another reason to stay on the subscription is to get the updated content when it comes out. And then a third option, there’s more, but I’m trying to give you the basics, is, there’s this concept of cohort based courses. So we’re doing this one in the spring, this one in the summer. They’re kind of separate and they just go with that time period. It is all just thinking through the time, the finances, the business model, what you’re willing to commit to as well in terms of updating content. Like one of our great customers, Sean Heskith from WP101, one of the largest, I think it might be the largest WordPress education site on the internet. He’s constantly updating his course content when new versions of WordPress come out and stuff. And he is super professional with it. So he is constantly polishing the asset, if you will.

    And then I’ll just throw one more concept out there. Which is that there’s these two personality types. One, I call the serial course creator. They] just, they create a membership site and they create a course in November, then they launch a new course in December, and a new course in January, and they just keep adding new courses. The old stuff never really gets updated.

    We have a guy who teaches people how to tie animal balloons. And he makes six figures with his courses. He’s got, they’re like child entertainer and magician type people is his avatar. It’s called Balloon Artist College. It’s awesome. But he’s got like 200 courses on there or something like that at this point. But then there’s the other entrepreneur, kind of like Sean with his WordPress 101 course, that they’re just continually just updating the course, right?

    One of the old school, like internet marketer guys that I followed back in the day, his name’s Jeff Walker. He has a course called Product Launch Formula that I think I first saw in 2007, 2008. He still launches it twice a year or once a year. Same course. He just keeps polishing it every year. But every time he launches it, I believe it’s a new product. So different ways to tackle that.

    [00:38:03] Nathan Wrigley: It occurs to me that so far we’ve spoken as if the target audience of the course is individuals. So, you’re trying to sell out there into the market. You’ve put a website together and you’re trying to encourage people, individuals to sign up. But, I’m wondering if there’s different audiences out there for your courses, or should I say different ways of implementing them?

    So, for example, you might go after an entire business and offer a hundred seats at your course, or maybe you would just be implementing it as something to train your employees. There doesn’t have to be an audience of people who are willing to pay. An LMS might just be the perfect way of training your employees. So essentially, I’m just opening up the conversation to alternative uses of LMSs rather than, okay, I have a course, I’m going to sell it to a bunch of individuals, one at a time.

    [00:38:53] Chris Badgett: Yeah. At Lifter LMS we have a groups feature where you can do exactly what you described. Where you offer the training into a school or a business and a certain number of seats. And the leader at that place can keep tabs on the analytics and reporting for their students that they invite into the platform.

    That’s absolutely possible. I highly recommend that too. If you can figure that out in your business model, because it can create a serious amount of revenue when you can do deals at scale like that. Doing it for internal training, we do that at Lifter LMS as an example. We have a site that’s protected from the outside world, where we have all our customer success, marketing, sales, product, operational, like processes and stuff documented.

    We use our own tool to train our people, as new people come in and so on. I’ve seen people get really creative with it, and I’m thinking of a guy who uses it for tutors. The tutor licenses the course, but then the uses that content with their students up on a screen in the classroom and stuff.

    So there’s all kinds of ways to do it. I saw one guy run like a pay per view sporting event through Lifter LMS. You know, people get really creative. WordPress, what you can put inside the membership site, it’s up to you. A course creates structured content. Some people will use it like a course to just hold, like a webinar vault, like a library kind of thing. So there’s lots of different ways to use it.

    [00:40:20] Nathan Wrigley: Yeah, and it goes back to what you said right at the beginning about WordPress. Maybe that’s one of the reasons why a WordPress solution is so desirable, is that you really can take it in whichever way you like.

    I have just a couple of final questions, if that’s all right. It occurs to me that the listenership to this podcast, not everybody is going to be shouting, I want to make a course. But they may be saying, I have a web design business, and it occurs to me that, well maybe maybe selling courses could become a part of my revenue. Is there a niche out there? Is it a successful niche? Does it even exist of web designers implementing LMSs?

    [00:41:02] Chris Badgett: Absolutely. yeah, I mean, literally half of our customers, the people that buy the tool are freelancers and agencies, right? So it’s a split market. And then you have the DIY, do it yourself expert, or maybe that expert just buys the tool and then they hire somebody. So, a lot of people in this space are working with a WordPress professional to make it happen.

    We’ve known that for a very long time. So we created this experts program where we, it’s not like a paid thing, we’re not trying to monetize it. We just constantly get asked for like, hey, do you know anybody that can help me build this site? Or, who do you recommend? So we built a list of people that have experience with Lifter.

    It kind of happened to me as an example. Early on, I had this agency, people just needed all this stuff for their, their online learning business. It’s a great niche to focus on. They’re great customers. They often have recurring needs. The site build is complex, from a standpoint that it’s, it’s just not static pages and it’s incredibly valuable, which helps with your pricing as an agency owner.

    And these people often need ongoing work or they want to have like a tech person aside the business, in case they ever need anything, or they have a new idea they want to implement, stuff like that. So it’s a great, it’s a great niche if you’re looking to diversify into it. And I’ll also say that a lot of times, I’ve seen a lot of people who are WordPress professionals, and they implement for a client, and then once they see how it all works, possibly see their client make a bunch of money or whatever, then they’re like, you know what, I’m going to, I’m going to launch a course.

    So, uh, there’s a lot of that, that goes on when you really fall in. When you fall in love with the niche, it’s hard not to start releasing some courses yourself. And as a WordPress professional, one of the things I know from my agency days is that sometimes it’s a little frustrating or slow to train a client on how to use the website. So as part of your handoff, if you create like a course that they can then stop, rewind, play seven times to get it or whatever, and then make that as part of your handoff package. That can actually add a lot of value and save a lot of time on your end just to kind of use that course in that way.

    Another counterintuitive way we use courses at Lifter is for marketing. We have several free courses, but particularly this one that teaches, quick start course, that teaches you how to use the 5% of the tool that gives you 80% of the value.

    So with that one course, it lets people that are curious about the product, in about 40 minutes, see how it works, see what it does, to see if it’s a fit for their requirements. While simultaneously acting as an onboarding, at your own pace, at your own time resource. So super effective in that way. So using courses for marketing and customer success is also another counterintuitive way to, to do them.

    [00:43:58] Nathan Wrigley: It strikes me that the more that you do this, the less impediments there would be. So, it may be that you launch your guitar course and it’s not a runaway success, but there are takeaways there. You know, you’ve learned how to use an LMS. You’ve learned how to do some video editing. You’ve made some mistakes in your email campaigns, and all of those things, and the next time around there’s probably going to be a little bit less friction. So, I guess one of the messages that you would have for people is, if it doesn’t work first time, if at first you don’t succeed, try, try again.

    [00:44:29] Chris Badgett: Yeah, just like anything. Learning is what makes us human, right? So when we double down on like a business model or a tool or a business, failure is just feedback. That’s why that trait we see in our successful community members, whether they’re a WordPress professional or more of a subject matter expert, is that consistent, imperfect action moving forward with an open mind That’s the through line through the people that find the best success.

    [00:44:56] Nathan Wrigley: If people want to reach out to you, Chris, if they’ve been inspired by what you’ve said and they want to just get a little bit more advice, personal advice, maybe one to one or something, are you available? And if so, where’s the best place to find you, or best places?

    [00:45:10] Chris Badgett: I am available. I’m a big community guy. Community building’s always been important to me. You can easily find me on Twitter @ChrisBadgett. And then also in our Facebook group. It’s another great place to reach out. So if you just do a search for Lifter LMS, courses, WordPress, you’ll find our Facebook group, and that’s a great place to connect as well.

    [00:45:30] Nathan Wrigley: Chris Badgett, thanks for joining me on the podcast today. I really appreciate it.

    [00:45:34] Chris Badgett: Thanks for having me, Nathan.

    On the podcast today we have Chris Badgett.

    Chris is behind LifterLMS, which is a learning management system built as a WordPress plugin. He’s been in the WordPress space since 2008, and has moved his agency away from general website building to concentrating upon e-learning membership sites, course creation and marketing automation.

    He’s on the podcast today to talk about how WordPress and e-learning are a good fit. Although there’s a flourishing SaaS side to e-learning, Chris is convinced that WordPress allows you to make your LMS site exactly what you want. You won’t be facing the limitations imposed upon you by the platform, and can, if you have the time and skills, modify almost anything to suit your brand and niche.

    We begin by talking through how well a WordPress based LMS site can scale. Should your course be a runaway success, you want to be aware of how you’re going to have to manage the resources that your site will need. There’s a lot of dynamic content being displayed to your users, and this will affect the tech stack that you’ll need to deploy.

    We then get into a broad conversation about how online courses have taken off in the last few years. Even before global lockdowns, individuals and businesses were adopting online courses in innovative ways to educate their customers, staff, and the wider public. Chris’ data points to the fact that this growth seems set to continue. There’s a real understanding now that in many niches, the course curriculum needs to be adapted and amended continually. This is extremely easy to do with an LMS. You create new content, click publish and notify your users that the new material is there.

    We also discuss the reality of actually making a course. Like the writing of a book, the idea of creating a course is easy to conceive, but hard to execute. There’s the content, the branding, the marketing, the updates and much more. Chris has some advice to help you get over the bumps in the road if you’ve decided that you want to dip your feet into online course creation.

    It’s an interesting podcast and digs into yet another area where WordPress can help people thrive online.

    Useful links.

    LifterLMS website

    LifterLMS Facebook Group