Discover WPCS, The World's First Multi-tenant WP Cloud Solution - Intreview With Wijnand Van Leeuwen - Osom Studio - WordPress & WooCommerce Development Agency Of Choice

Discover WPCS, the world’s first multi-tenant WP cloud solution – intreview with Wijnand van Leeuwen

Maciej: Hello everyone. My name is Maciej Nowak and welcome to the Osom to Know podcast where we discuss all the things for WordPress. My today’s guest is WijnandVan Levin, CEO O of WPCS a company he started with his co-founders to let you scale a code base of one website into hundreds of websites. In this episode, I try to understand what the WPCs is and how is it different from other platforms for hosting corpus websites. We also discussed building a platform versus running a service business, and we touch on building a unique specialization. If you don’t want to miss new episodes and keep learning more about WordPress, subscribe to Osom to Know Newsletter www.osomstudio.com/newsletter . If you watch this on YouTube, give us a thumb and subscribe to the channel. This means a world to us. Without further ado, please enjoy my conversation with Wijnand.

Intro: Hey everyone. It’s good to have you here. We’re glad you decided to tune in for this episode of the Osom To Know podcast.

Maciej: Hey Wijnand

Wijnand: Hey, how are you doing?

Maciej: I’m good, very good. And how is the new Year treating you?

Wijnand: The new Year. It’s a bit cold. It’s a bit, it’s not very sunny, but so far I’m, looking forward to 2023. It’s gonna be amazing. Hopefully. Yeah. How about you?

Maciej: Yeah, exactly. I’m, I had 20, I had 17 Celsius degrees the day before yesterday, so it wasn’t like winter at all. First time I was experiencing such a weather in, you know 1st of January because we are recording on the 3rd of January. And I would like to talk about today, ask you a lot about your business, WPCS, and can you give me your elevator pitch for the business so that our listeners can also get, you know, into the details and, fine tune into our conversation along the way.

Wijnand: Yeah, of course. WPCS is the first multi-tenant WordPress platform that we have found in the world. It allows for people to have tens, dozens or even hundreds, maybe even thousands of websites that run on the same code base, on the same plugin stack. It allows people to actually maintain these websites a, in a sustainable way. And it allows people to automate the creation and deletion of websites so that they can, for example, create WaaS’s or SaaS’s using WordPress. And from there we’ve got like this whole sort of we’ve got a lot that can be used to also create, for example, DevOps pipelines. And it’s a full suite that you can use to create your, WaaS, create your SaaS using WordPress and scale it up as much as your company can.

Maciej: Alright. Right. So let’s impact for our listeners, those keywords you mentioned WaaS, and SaaS, you know, SAS is understandable, but what about WaaS?

Wijnand: So SaaS, obviously software as a service. WaaS would be a website as a service. So when you think about something like Wicks or Scare or Squarespace what they have is they have a SaaS, and the end product of that SaaS is a website, right? So it’s something that other people can go to and that stands in opposition to, for example Slack or you know, HubSpots or something like that, where the end product isn’t necessarily a website. Actually come to think of it, HubSpot does offer websites, so it’s like, I’m just talking about the other part here of HubSpot. It’s not necessarily a website, the end product that other people can also visit, but it’s more like you have a functionality that allows you to do something nice with your company, right? In the case of Slack, it’s a communication platform. In the case of why, of WaaS, you get this software, you get this service that allows you to create and maintain and hopefully also update or upgrade your actual website. And what we did we made it possible and we made it very easy to have a WaaS created on top of WordPress to use WordPress and to use the entire community around WordPress as the basis for your website as a service.

Maciej: All right. So what are the use cases. Where are your product platform? You know, oh, maybe let’s define this in the first place. Is it a platform? What is your business? What it is? It’s not a SaaS because you enable others to build SaaS or was services. So what is your business?

Wijnand: I think, I’m pretty sure that, that technically we would be PaaS . But then again, there’s too many ass words out there, so I’m not going too much into that. Basically what we provide is the platform, right? You could see us as the sort of very specialized AWS in this space. What we allow you to do is set up a product. We allow you to create like this whole WordPress thing in exactly the way that you want. And have that run in a almost serverless way for our customers. And do what people can then is use what they have there and use that, sort of serverless infrastructure architecture to sell that to end customers so that they can have a specialized website using this WaaS that people host with us.

Maciej: All right. And you mentioned that you can as a client, you can build with you or this WaaS. So what would be the difference between those two type of customers? So that’s, you know, because when I was, why I’m asking this, when I was trying to figure out what we were providing and, you know, we met at world Camp Europe in June last year. I was, first of all, I never heard about any similar service or business before. You mentioned you are the first, so maybe this is the reason, but it’s, it’s amazing for me. And I would like, but at the same time, I, have hard time understanding what would like the ideal, scenario for your clients or what is, what is the biggest benefit of instead of doing this you know, the old way, so I need to understand this better.

Wijnand: Of course. No, of course. It makes total sense. Okay. So maybe in essence is actually handy if I explain where, where the, the whole ideal. So it came from basically in 2019 already I was busy with agency work where I made WordPress website for people. And we did that on like a project basis, right? So we got a customer, we wanted to sell them both a website and for example, marketing. And from there the project grew and we got like this customer that could provide us with an income. What at some point sort of happened is that I started to have a preferred plug-in stack as it were. Right? So what I would do is I would propose designs and I would pro propose functionalities that would actually fit within this plug-in stack that I know very well. Right? And I was just creating websites over and over again with this very specific plug-in stack. What I noticed at some point is that like around customer eight, nine, I started to change that plug-in stack a bit because I found some limitations in plug-ins or I found that, you know, I, had to update some stuff in a weird way to get through some security holes, for example. And I noticed that it was actually very hard within that sort of agency model, right? To also do that for my older customers. To also do that for the, for the websites I created before that. So what I kind of wanted to do was make sure was instead of having this flow where I create a website one by one and just sort of use the same stack over and over, but let that stack evolve over time and especially evolve over customers where the, the oldest customers sort of get left behind. I wanted to make sure that if I made something better in that stack if it was for my gain or for the customer’s gain, I wanted that to be applied to everything at once. Right? I wanted to make sure that everybody could actually use those improvements and that we could also upsell people those improvements. And that turned out to actually be kind of hard to do with with older or with other tools. Like, Manage WP and, and Main WP. These tools are absolutely awesome to use, but they don’t, they didn’t really scratch that itch for me, like I wanted it to be, to be better at basically productizing what I was doing, right? So what I did is I basically thought up like a, sort of a prototype for this platform. And later, like a bunch of other people joined and we created WPCS as, as it stands right now, which. Way more complex than what I created back then and way better . But what sort of, what sort of what, what drove this whole thing then was the idea that I spent time figuring out what kind of plugins I want to use to get what kind of end result, right? I wanted to have a certain functionality and I figured out I can use these, this, and this and this plugin for this. But after I figured that out, I kind of wanted to apply that on mass. I wanted to, I wanted to make sure that everybody could actually benefit from, from this. And preferably also that I could really easily and speedily set up new websites for this, even preferably in an automated fashion. Right. So what you get to then is the the ideal, the ideal customer for us is basically somebody who wants to sell websites, right? That’s wants to sell websites in a way. And that could be a website that you actually have to log into to have a certain functionality, much like HubSpot or Slack or you know, Salesforce or whatever. As long as it’s building WordPress or a functionality that actually gives you a website because, you know, WordPress is really good at websites. The idea then is they have this knowledge, they have this, this idea of, for example, how a niche works or how a certain a certain functionality should work within WordPress. And they need to be able to replicate that knowledge over and over and over again without having to carry this burden of maintenance, right? They need to be able to super easily maintain all of these websites in one go, to make sure that the cognitive overload of having 20, 30, maybe even a thousand different setups is completely taken away. That the, the, the idea of a server and having to set up, maintain keep a server running is completely taken away and that it can completely focus on your WordPress functionality and that you can actually make this product better without having to focus on, okay. My oldest customers also actually need to be updated now because it’s, you know, they’re still using PHP 73 or whatever. That everything just sort of happens in one go. That people can easily maintain all of their websites, focus on WordPress, and make their product and make their company better, in essence.

Maciej: Yeah, very, very good. Yeah, because this was one of my questions to ask later, you know, how does it, how did it all happen? Started and I wasn’t aware that the company is so young, so a couple of years, so it’s, it’s not couple years. Yeah, yeah, yeah. No, no, no. Not so young like you know, the day before yesterday, but still very young. And how are you, you started this on your own and how, how does it differ when you started the company and now how are you building and scaling it scale would be, I guess, the keyword here because you wanted to scale the operations and to come up with the idea for the business. And now you have the business and you have to scale the business. So it’s like , you wanted to scale the websites to and to sort the business. Now the business needs, scaling in order to provide new functionalities and respond to the market. So how is it different now versus when, when you had your MVP or first customer for the new service? Not when you when you had nothing, right. But rather when you had the first paying customer. Well, firstly, let me be completely clear. Like I’ve luckily I’ve never had to do all of this like on my own completely. Like I’ve always had help from my, from my co-founders. So just, just to be clear about that. Sure. First of all, very good . I think the, the major, the major difference is that we that we learned a lot about what actually makes a good setup. Like when, when we first started this, we made a couple of assumptions that that our customers would actually want and some assumptions that made the product a bit more complex than it had to be. And it turned out that we could actually take away a bunch of those complexities and make a better, more viable maybe even more stable product for our customers that allowed those customers to focus more on what we wanted them to do. Namely create their WordPress applications, their WordPress sauces. And I think that’s the, that’s the major part that we’ve, seen so many different use cases now that. We really did get way deeper into what can you actually use all of this for? We were surprised a couple of times, like, yeah, I mean, that makes sense that you can use it for that, but we never thought of that, that that’s a possibility. And having those things in mind having learned those things, we got much better at, how do you say? Not necessarily supporting our customers like that, but sort of predicting what we should build to make all of this stuff more and more useful and, more and more valuable for our customers. I wonder because with with your service, you can you can build websites for our customers. So your customer can be an agency building websites for their their customers. So from the perspective of this end user, how do you differ, let’s say, from buying a hosting plan, like a cheap hosting plan from a big provider, and then asking that provider to build simple website for you? Because there are hosting providers who also are providing websites for you as, a customer. So from, from this perspective, is there any difference for the end customer, whether he or she is buying from the host or the agency that is using wpcs?

Wijnand: So I think the major difference there is the fact that is the major difference there is basically twofold do I say that correct? No, actually it’s threefold.

Maciej: Let’s keep counting.

Wijnand: So the way you can see it is the, the main thing that we offer is multitenancy, right? And Multitenancy says or Multitenancy in our, in our case means that websites are forced to share certain plugins, themes, language files, but they operate as single sites, right? So that means that whenever your, your tenants, like one of the websites within WPCS when your customer goes into that website, they won’t be able to change anything. And this gives you, as a provider a lot of power, right? Because that means that you can, you can keep writing code to make sure that your customer can never actually break their website, which is one of the main things that I also came across when building other people websites. They had brilliant ideas to actually install, like this one plugin or that plugin, and suddenly the whole site broke. And I was like, yeah, but why did you actually install that plugin? Well, because I wanted a slider and taking that stuff away. And just making sure that people cannot ruin their own website simply because they don’t have the understanding of the system as you built it is already, that’s a major that’s a major value add as opposed to just having some hosting where you. Can also do this thing, but it’s gonna be a bit more complex, right? You’re gonna have to write the code for that. You’re gonna have to go with into the server for that. You’re, you’re gonna have to change the permissions, for example, on the, on the plug-in files, et cetera, et cetera. And you have to keep updating this site by site. So if you wanna make a change in this, you’ll have to go through each and every one of those sites and do this update, right? From that multi-tendency. What we could also accomplish is basically have a serverless setup where our customers do not have to worry about their servers whatsoever. We handle over, let stuff for them. So that they can actually focus on WordPress. Whenever you go to any hosting party like a, like a traditional hosting party what you’ll find is you won’t have to know a lot about servers, but at some point you’re gonna have to dig into the php any, and at some point you’re gonna have to find out what all of these settings actually do. Probably break PHP at some point and then having to ask somebody to fix it. None of that stuff is required for WPCS because of the NA serverless setup. Right. And then the last big differentiation, I think, which. In the end, it’s also due to the multi-tenancy is the fact that you can automate all of the processes within WPCS. So from a different application, say a, another WordPress site that acts as a storefront, for example. You can create new sites and you can delete sites. Right.

Maciej: But this is from the perspective of the agency, right?

Wijnand: The, the, this is from the perspective of the agency. Yeah, yeah, yeah, yeah. Of the people selling these websites. Yeah, definitely. Yeah. Okay. And the fact that you can actually automate all of this means that you are able to create a more scalable business, right? When you’re talking about business scalability. Not having to do any actual work to set up a website, but be able to just serve this website within minutes after ordering it is a big improvement, right? It’s it makes sure that you can actually perform your marketing, be really successful at your marketing, and actually see the end result of that. See like, like, like you get the fruits of that labor as it work.

Maciej: But when you are sharing this code base, because I understand the, the, the main like the foundation here is code reuse, code sharing, which gives you the easy manageability, right?

Maciej: So you have the common code base, common plugins, but at the same time, this also means that every page will be similar because of the existing code base. And if you want to make it more like, forgot the word, but like, like stand out. You have to edit, edit this, and you can do this, you know, using page builder that will let you for example, is a, plugging on its own. And you as the end customer, not the agency as, as an intermediary, but the end customer, or even in or even agency for the sake of the customer. You can edit this. And where is, how far does this limitation, you know, go, because I, see this as a kind of limitation, a, a trade off that gives you that, you know possibility to scale, ease of use and so on. It comes as, as at a price of some sort. And I would like to understand the price of this in terms of the not dollar values, but rather customization options. Something like this.

Wijnand: So in essence using something like a, like a child theme for each and every one of your websites that sort of goes out the window. That is absolutely true. What I think you should, what I think you should really keep in mind though is having, having a child theme and having that sort of a customization is great when it’s like your website or it’s great when you have maybe five websites to maintain. The question that we always ask ourselves is, how is this going to work with 500 websites, right? How is this going to work with a 1000 websites? And once you get to like, that’s sort of a number, once you get to that sort of a scale. Having a child themed per tenant, right, per per website, that is, that might be completely different, that might have completely different code in it is going to be a major bottleneck on maintenance right? Because then suddenly what you have is you have the same plug-in stack maybe, but there’s always this possibility that there’s a bug in that website, but not in that website that you have to keep in mind, right? You need to keep in mind that these sites are all different. So honestly, anything could happen at this point, at least three months later, I usually don’t know exactly anymore what I wrote.

Maciej: No one, no one remembers

Wijnand:No one does, right? Exactly, so that basically means that if you have these minute changes or maybe even bigger changes within a certain child theme that’s going to make, that’s going to make maintainability much harder to achieve, right? So I think in that sense, the lack of customization in that way the ability to add code on a whim basically it’s not so much a limitation. When you start thinking in scale. Like it’s actually something you need to start doing if you want to achieve scale. And the beauty then is that WPCS sort of forces you to think in that way. So WPCS in that sense we force you to work a certain way so that you can actually achieve this scale. If you were to do it a different way, if you were to like add child themes and stuff for each one of your websites, it could work, but you are going to. Snacks. At some point you are going to, you know, update a plugin, which is going to break some of your sites, but not others. And then good luck figuring out how that works. Right? But if the code base is all the same, it’s much easier to do this testing. It’s much easier to find out, like, how can I actually do this update in a in a safe manner. Especially if you can have different versions, which you can have in, in WPCS where you can move a tenant between one code base and the other so that it uses like a different plug-in stack. Once you can do stuff like that, you get this you get this safety and deployment that. Whether or not you’d have the option to customize every single website using the file system like WordPress really kind of wants you to, but like using the, that file system becomes a thing that you don’t want to do anyway and with WPCS it’s simply like, okay, but let’s just start there. Let’s just say we are going to go to scale with this product. We are going to go to scale with this with this company. Let’s just do it right from the get-go. And I think that sort of makes it less a limitation and more preparation for when you actually get to that point.So you don’t have to retroactively say like, okay, let’s remove these files and make it uniform like we want it.

Maciej: Yeah, no it’s not like everyone has to be your client because the client has to like the stack, the tool has to match the business, the given agencies providing. I’m thinking more in terms of that end customer that how to make each website. If it is, let’s say like it’s a little bit of an edge case. No one needs to have, like website looks like one in one in a million. But what are the possibilities of customization of the website within, within you know, WPCS

Wijnand: In that sense, they are as infinite as as with any other WordPress website. We, we don’t put limitations in that sense in what you can do. We just make it a bit harder to do the, according to us, very opinionated, obviously the wrong thing. Big quotation marks, right?

Maciej: Yeah. Yeah. But I, if I may just Yeah, like narrow down. I’m not thinking about installing new plugins versus the short code base. So it’s not like no out outstanding plugins. I’m thinking more like assuming that everything is going according to a plan specification and rules, you said what, at the end of the day, what are the options to customize your website? Because thinking from the end user perspective , I’m, just thinking of such a person wanting to edit something, looking this different. Is it executed through page builder that is plug in within the shared code base and with, you can do everything you want within the, I don’t know, Divvy, Elementor whatever you are using in, internally. Is this the case?

Wijnand: Yeah. So on the one hand, what you see a lot is that people use page builders like that Divi, Elementor, Breeze a whole, slew of different ones. On the other hand, what you see is that people create their own themes in child themes where they, instead of using, instead of actually hard coding, the configurations in like style CSS files, et cetera they actually create some code to for example, generate CSS files from a database configuration, right? Because that’s basically all you need. That that’s also what I mean when I say anything is possible that you could do within a normal WordPress installation. The only thing that you really have to do is make sure that whatever is unique to this website is put within a database. So if you use Gutenberg you can create whatever you want, right? You, you, everything will be within that post post row in the database and the code will sort of render it out in a certain way. And as long as you keep that sort of as long as you keep that principle in mind, whatever’s in the database could be rendered out into something pretty in terms of html you can basically have anything you want.

Maciej: Alright? Alright, makes sense now. And We are talking about scale of 500, right? 1000 even more maybe sometimes. How are you doing this, you know, from the infrastructure perspective? Because, you know what I’m thinking now is automation, right? And the platform happened to, to make it possible to scale very, rapidly. And how are you managing this internal yourself?

Wijnand: So we we use Kubernetes and we use a containerized version of of WordPress that allows us to very easily and very quickly set up product specific containers that can serve a whole host of tenants. And we can actually do that up to hundreds of containers making sure that people can. I mean, almost always handle any traffic that they get. So yeah, Kubernetes is the short answer.

Maciej: You are scaling the containers, right? Multiplying. And is it like every container contains the website that is hosted by your client? Or, is it dedicated to a client that has insight? Many pages in many websites.

Wijnand: Exactly. So basically the, the, the container is shared amongst websites, does it work? And what the container does is simply, it, allows the tenants to actually use the code that you chose, right? It allows the code that you deployed out to those tenants. And then it can scale with that specific code base. It can deploy with that, or it can scale with that specific plug-in stack, for example. Right. And that does mean that it’s product specific. So it’s specific per product, per application that our customer creates, but also specific per version of that application. So what you can do is you can create you can create a new version of your application. You can add a plugin to that you can remove a plugin, update a plugin, whatever, do something with the code. And then you can start moving tenants to that new version, which means that those tenants will now be served by different containers with a different code set or a code base.

Maciej: Yeah. You mentioned this previously that you can migrate tenants . Which for me is, is a client. Right. But it’s, it’s a tenant that you can migrate from one code base into another. And this is very interesting. Because it’s like, you know, changing, you know, homes and, you know, keep the behavior, change the home, like, you know, furniture, appliances and, and so on. Can you tell me a little bit, more about the process? Because this is this sounds like okay, I’m, just moving the environment, which sounds simple, but I bet it’s not simple at all. Because if something is sounds simple, it means that for someone else it is very hard. Someone else had to do all of the work to make it simple.

Wijnand: Yeah. So that’s, that’s definitely, that’s definitely true. That’s definitely true. So basically what we wanted to achieve there is because again, we were asking a question, how does this work for 500 websites, right? And what you have with Anywhere Press website is you’re gonna have to do an update at some point. What we do nowadays or what we hear about a lot is people sometimes even sort of blindly updating and waiting for the customer to say something broke. Right.

Maciej: For the client to do the QA process. Right. Basically do exactly the QA to back to the client. Exactly.

Wijnand: Exactly. Exactly. Which is , which is, you know, a questionable practice And what we wanted to achieve is something that is a way of actually upgrading, updating, doing something with your product, with its code base in a secure manner, in a safe deployment way. And we were thinking of other applications such as for sale, for example, with their preview branches, right, with their preview deploys. And we were thinking, okay, what we, what we could probably do and what we want to use are different versions that you can move tenants in between. So basically what you do is you start with a version, you have a bunch of tenants in that version you create a new version based on it, right? So you start at the end point of your previous version, much like creating a GI branch, and then you can start adding some, some code. You can, you can start changing the code somehow, you know, adding a plugin, moving et c. When you’re done with that what you can do is you can, for example, copy a tenant and move that tenant over to the new version, see what breaks, right? Just in a safe manner without meddling in production. You can see, okay, what’s actually going to happen with these code changes now?

Maciej: Like a sandbox.

Wijnand: Like a sandbox, yeah. Except, and then the only difference is once you get it right, the only thing that you have to do is move all your tenants over to that version and you’re done. Right? What you could also do is add, for example, automated testing. You could do some end-to-end tests to see well firstly, like, do I still get back like a 200? Right? But also maybe is my form still on the website? Is my, is this important information still on my homepage? Do I still have a contact page? You can all, you can do all of this stuff automatically so that when that test fails, you can move the tenant back to its previous version , and that is the way that you can actually safely accomplish something like an update with 500 or a thousand websites.

Maciej: In this case, what a tenant means because you are migrating the tenant. But you know, within this programming context, tenant is something different than from, you know licensing or whatever. So what is migrated between those code version.

Wijnand: So basically what is, I mean, technically what’s migrated between those two versions is whatever is unique to this website, and we said plugins, themes and language files are not unique. They are shared. But what is unique is the database and the up uploads, for example. Right? Basically anything, anything but those three things. All right. And what you get then is that those, that content, that actual content is then served through new code. That’s, that’s the easiest way to, to explain that really. So that means that when I’m talking about a tenant, I’m talking about the uniqueness that’s in uploads and in the database.

Maciej: Yeah, exactly. Exactly. I was referring to this and is this the way the. All of the updates are, you know, are executed. You know, you up update all of the plugins and you know, to make sure that nothing breaks. You create a separate branch or a snapshot or whatever you call it. Update the plugins, freeze the environment, migrate first tenant to see if anything breaks. Breaks. Correct. Not break and doesn’t break. Migrate the. all, of the hard, right? Yeah,

Wijnand: Yeah. Or, or you could do it more like a canary deploy, right? Like, move 10 at a time and see if anything breaks, so that you have a bit more chance to react in time. But yeah, that’s, that’s, that’s basically the idea. Say that you need some changes in, for example, the database also, then it is usually the best possibility to just write some code that does that for you so that you get like a database migration, right? And to also make sure that everything remains predictable. Because that’s, that’s the core of all of this, right? Make sure that everything is predictable. Like these 500,000 websites are all running on the same code base, so I know what’s going on. I know how I can get to, like, how I can request the right information from the database, et cetera, et cetera. The cognitive load is just lessened a bit, and the more code you write, the better it becomes really.

Maciej: How are you thinking about building this this business in a sense that This is much different than, for example, building a standalone plugin for WordPress or building an agency. You know, you have background in the agency world doing websites for clients I, myself , I’m in this, in this space and I ask this question in, in other podcasts already, but there is, I have this feeling, so I, will ask this you as well, because I have this feeling that for example, a lot of. Agency people want to build a product. And this is like, at least I will build a product because the grass is greener on the other side on the product side. Let’s build a product because I know we have a bench and so let’s build a product. And how are you thinking about this? Because you’ve made the switch successfully. You had the, you, you, you are doing this, you know, within the agency space and now you have a platform around let’s say world and how are you thinking about this? Is it like grass is greener or the problems are there as well? Just different problems? Or is it like finally this makes sense?

Wijnand: Yeah, so. I think, I think in that sense, the. Honestly, I think the the grass is actually greener on that side. Yeah and I think the, the main reason for that is that having a product, how do you, how do you, how do you say that? Yeah, so if you’re compare if you compare doing like, loose projects for clients, right? From an, from an agency perspective what you usually see is that you have to learn this, this world that the client is operating in, right? Like as a developer, you can, you can definitely ask your claim for certain explanations and ask them like, is. Do these functional requirements actually fit what I want to do? But you have to keep learning this. You have to learn all of this stuff over and over again. And I think that’s also why a lot of agencies start to they start to specialize, right? They say, okay, we’re an agency. We do completely custom work, but only for restaurants, right? So basically what they do is they have some knowledge and they say like, okay, we’ve already put time in into acquiring this knowledge. We want to consolidate that now by saying we’re only going to do restaurant stuff, right? And I think that exact tendency of, of, of agencies fits super well also in the technical aspect of creating websites for people, because that sort of knowledge that you acquire and that you gain over the course of actually doing all of this stuff for people can also be consolidated in having a website that just easily works for people, right? That’s, that’s sort of like a, like a, like building a wick, but making it very specific for a very specific kind of restaurant, for example, because that way you have knowledge about this about this, this certain niche in the world, but you also have like a very specific knowledge about how the workers community can, can actually serve that niche. And that’s then what you, what you start selling, right? So you sort of stop with the customization for everybody and you make it into a product because that means you get to consolidate both your knowledge about the niche. And the technical knowledge that you acquired into this one thing. And that also means because of the, because of that, that consolidation, right? That if you learn something new about it, then everybody gains. Right? And the beauty about that is basically that if you can actually tell your customers, hi, we haven’t spoken in six months, but here’s a new thing that you can use. People are gonna wanna stay with you. Right? So I, actually do think that the, the grass is greener on the other side. When you compare highly customized websites with like steep learning curves, et cetera, et cetera, to building a product that. Much more easily fits maybe a bit more specific niche, but that fits like that use case super well and can automatically sell itself.

Maciej: If I read you right, because what you learn along the way is more easily like transferrable into the business itself instead of it’s like knowledge compartmentalization. It’s like you, you learn something, you can introduce this to the product and everyone is better off from your client base using the product. Is this what you mean?

Wijnand: Yeah, basically, , basically, and, and like as I said, I think you can already see it in the, tendency of agencies to specialize in a very specific niche.

Maciej: But, but I think on, on this point, I think this is not from it’s because, for example, we are also very narrowly specialized for technology businesses, like technology campaigns from software web free or con consumer electronics manufacturers. But this is for the reason that we understand those sectors. We don’t do every kind of a project for every kind of a client, because otherwise it’s not feasible. Also because the client needs to have a safety of working with a partner for understanding the sector. So it’s like it’s, it’s like it’s like a must or you won’t have a, you won’t win a project, for example. So it’s a must to be, to grow or to get to, to, to be profitable even to be very much sp. Specialized because otherwise you are not trustworthy. So I’m looking at this from this per perspective.

Wijnand: Yeah, yeah, yeah. And I, and I completely agree because, you know, when I, when I want to get my hair done or something, I also prefer that to be done by somebody who is experienced with, you know, doing hair Otherwise they’re not trustworthy. I completely agree and I think that same principle also goes for the technicalities of or the, the, the technical approach to the things that those people use. So basically, basically what I, what I see as the best way of handling a business like that is you built this product that 70%, 80% of your niche can use, right? And you can do that because you know that niche. Niche very well. Basically from there, if people need major customizations, you just pull them out of that product and then do those customizations for them in, a different environment, basically. Right? Because then you can say, I know that you can actually deal with this. I know you can do like at least 90% of the stuff that you probably want to do with this application. But if you need more, then I’m happy to help with that. Right. And then we can actually talk about pulling your side out, and build upon that in, in a much more agency project type of way. But the first thing that you do is all of those lessons you learned and all of those technical lessons you learned, you consolidate into a product that can automatically sell itself. And then all of those lessons and that that experience and that trustworthiness that you build up can then be valued much better in the few customers that want major customizations.

Maciej: On what you said about about the hair. I remember reading a book by Seth Godin, I think it was a deep, where he, gave this example if you want, if, you need a brain surgery, will you go to brain surgeon or GP to do your surgery? And, and it’s so obvious, but for a lot of different use cases, business cases, or your basic needs, you don’t think in this principles, you, want to build a website and you are looking for, okay, whoever can build my website. And, and there are some cases where people are looking for a specialized partner, especially bigger organizations. But this is, this is a principle. I, always think that gives you the possibility of working with, with the best. So yeah, this, this is interesting in terms of doing the same, but with the product. And the other, the other example I wrote about is there, there is a recent book by the CEO of Brooks the, the shoes company. And Brooks is an interesting story because this is like a 100, nearly 100 year old company that was turned around. Recently that focused only on running gear, only running gear. And they were of course, previously selling everything like tennis shoes, no general athletic leisure, so athlete, leisure garment and, and everything else. And they made the decision to focus on running and this is also on point on of specialization, but for more products like manufacturing, whereas for software, it’s much easier to uncap, encapsulate a knowledge into a product that is scaling much, much faster than, you know, manufacturing physical products.

Wijnand: Totally. The scaling manufacturing, I’ve never actually done anything along those lines, I’ve heard it sucks. .

Maciej: Yeah That’s why everyone wants to build software products. .

Wijnand: Right, exactly.

Maciej: Yeah. But also, you, you mentioned that you can also pull out a tenant, a client or a, or basically a client that doesn’t suit your, like the, the, the daisy path, let’s say, and built around this client something custom. And this is also a case with enterprise products, where you have an enterprise software. It’s a product, it’s a platform assess, but implementation, this within the company requires the vendor to do a lot of work. Like with big CRMs, for example. You, you have to integrate this. So is in, itself, it’s a product, but it requires a lot of manual while labored to, to spin it off.

Wijnand: Yeah. And it’s, and it’s, and it’s in that sense, I think the well, when, when you’re talking, when you’re talking about that specific use case which I do think is good for, companies to have right. The, the, the use case of you have this product where exactly how you say it, like you consolidate your knowledge into that product that as, as many people as possible can actually use. But then you’re always going to have this, this one. Hopefully rich client, outstanding client, right? Who, who wants their stuff to just be a tap or complex and you know, that that complexity does not fit your other clients that are in your product, right? In your, in your in your more WaaS or SaaS type thing. And I think, I think in that sense, the, the, the a company can really benefit from, benefit from that sort of that sort of a way of doing stuff because being able to offer that sort of a service right in a way that, for example, like a, really big company probably can’t, unless you are a really rich client allows for a much smoother transition from, you know, SaaS customer to project. As it were, and instead of what we, what we’re, what we’re trying to accomplish right now, that people go from projects to like SaaS and, and then back again. For some, it’s just, it, feels like it’s so much easier to start at your SaaS and then, and then pull stuff out to get it into a project and give people the value that they actually require from you and from you as a trustworthy partner.

Maciej: I yeah, completely agree, but I, thinking about this it’s tempting to serve everyone, like even if it is not fitting your your matrix, let’s say and, and to serve on a us need like a, on an enterprise plan or something like this with a lot of customization, manual labor and so on. But for example, as a counter, example Base Camp, build, Base Camp you know, as a platform where everyone, at some point everyone was on the same plan. The plan was simplified, then they changed it. But they said that in one of the blog posts, they the founders are very like they write a lot of blog posts and they’re sharing lot of company knowledge and strategy. So they said basically that they will never serve even big rich customer with a customized work because they don’t want this type of business wherever a code complexity that, that comes with serving customers on a custom level. So on a, on an individual level, and you know, this is, this is I think the business decision that you have to take, whether you are allowing for this. And if only happens once you are , you, you, you, you will do this again, again, again and again. Or just drop the client. That doesn’t suit your client definition and, okay, this is not my client. So, you know, this is, this is something you have to also think about. and, yeah. And so what’s your, what’s your view on this? You, you, you mentioned a little bit that you can do this on an individual basis, but if you can elaborate on this.

Wijnand: So yeah, like you, I mean, you can technically do this on a, and, and, like everything within WPCS makes it, makes it possible to do it. But I completely agree with you that it needs to fit your case. It, it needs to fit your, your, , I mean, it, it even needs to fit your company culture. You knowif you are a company that that in, let me just pull, it like enjoys doing this project management and this account management and making sure that people are happy with what they have, but they, they also keep buying stuff from you or that they have these big maintenance contracts. And and exactly what you say, like all of this complexity of. Very client specific code, if that is a company that you are or if, if that’s a thing that your company is good at, then definitely go for that. I would, I would then say like, start people off with like basically a template and then make it your company goal to pull those out of the was and create them into like some big custom thing that, that, that works for people, right? But exactly what you say, like you need to be ready for that. You need to be ready for the complexities that that gives you because that, that, that requires a lot of manpower, a lot of focus and, and honestly also just a lot of grinding to actually get that stuff done. If on the other hand you’re not ready for that, or you don’t actually want to do that at all, Then I think exactly what you say, like you need to just say no to clients. You just need to say, cool, you might want to have some customizations. I’m willing to do that, but it depends on what kind, like I’m, not going to do this, this, this, this, this. If that’s like anywhere near what you want me to do I’m, I’m just going to refuse doing that. I will definitely like you, you can give people their site. You can say like, okay, just here, take your site, take it elsewhere so that somebody else can do that for you. But then you just go back to focusing on that product, on that niche that you build on that, on that thing that’s, that multiplies your value. Because that seems to be the thing there, right? It’s, when you do this productization thing, you. Learn about one thing, and you can multiply that value very easily because you as like the sole developer, can learn a new thing about restaurants, implement that into your restaurant was, and then suddenly that value of you learning that one thing has multiplied on the other hand, doing like all of these big customizations is not necessarily as easy as saying like, I’m learning this one thing so I can multiply the value for all, all of our customers. It’s, it’s much more deeply rooted in at least I think much more deeply rooted in, for example, just being better at your job. And that allows the multiplication of value, right? Like I’m, more experienced and I’m more knowledgeable about Java or C or whatever your client actually needs, and that’s your way of multiplying value. It’s not the knowledge consolidation necessarily that multiplies value. It’s you just being a better programmer in the sense of you just being better at your job as an account manager, as a programmer, as as a salesperson. Right. And I think in that sense, you need to choose, like, okay, how do you actually wanna multiply your value? Do you wanna do it by being better at your job or do you wanna do it by creating something that serves a niche?

Maciej: And you know, on the other hand, the customers that. Don’t fit your don’t fit your matrix, let’s say, or fit 90%. That 10% that is, that’s outstanding is, for example, driver for your future released, you know totally list your, your, your future released roadmap for the future. So public, how are you working with, your enrollment for the platform? Because, you know, with, so with with plugins, your, request on, the forum or WordPress website or whatever, and how does it work for you?

Wijnand: So you’re basically asking like, what’s on our roadmap or how we deploy?

Maciej: Yes this is the second question. The first question is, how do you work on the roadmap map as a company? And the second is what are you planning in the common care?

Wijnand: Yeah. Okay. So I think I mean, obviously one of the ways that we work on a roadmap is exactly the what you say, right? Some people come to us and they have requests that we simply cannot abide by right now. We cannot, we cannot provide for them. And we start thinking about should we put that on a roadmap or no? And that’s, that’s really a case by case thing. Yes. Mainly though, what we, what we try to do is because we’re still pretty young, right? And because we’re still very flexible in the way that we go when it comes to, to, to building this thing out technically , we try to say like, okay, what’s the lowest hanging fruit to make multi-tenant WordPress even better? ? No, that’s the philosophical question that we ask, and that’s how we try to get to the new thing. For example, right now we’re making a transition to much more usage-based or much finer usage based pricing so that people have way more control over how much they actually spent on their WordPress size, or it was right, because that fits the multitenancy really, really nicely. And after that we, we, you know, we, we try to sort of set it up that way. How can we make this experience the best experience possible? How can we make sure that people don’t have to know anything about a server, but they can just focus on WordPress, et cetera. And luckily we get a lot of suggestions from other people because otherwise, that it all has to come from us . And I think that also answers your second question, like the, one of the things that we’re working on really hard right now is this usage based pricing that’s, that’s going to be, that’s going to be pretty cool. I gotta say. It’s, it’s like this really, this really fine grained control over how much you actually spend on a cloud platform. And stuff like having having a storefront that just works out, out the box and, you know, stuff like that.

Maciej: All right. And we are recording this, as I mentioned on the 1st of January. would you, would you like maybe to summarize the year for you in terms of the, let’s say technology landscape, WordPress landscape, you know, is there any particular event that drew your attention? Yeah, no, Not even like, you know, people gathering, but rather, you know, when you’re, look looking at the, you know, deer that just finished, that just ended.

Wijnand: That’s a, that’s a really good one. That’s a, that’s a good question. Yeah. So I think, I think actually there’s, there’s like one thing that I, that I sort of noticed this year that it is sort of, sort of like a two-parter thing. So actually, , I come to think two things also that I, that I noticed a lot. The first thing is I think this year there were two very two critical updates to WordPress core, if I’m not mistaken, at least I think it were, I think it was two. Right. Like two major vectors were, were discovered and, everybody had to update rightfully so. And the other thing in that sort of category was that I’m pretty sure that we’re hitting end of life for PHP seven four. Yeah. And, in when it comes to PHP seven four the fact that WordPress is still saying like, like we’re on like PHP eight is sort of beta at least under versioning pages, right? I mean it works, but they keep calling it beta. And I think, I think what, I, I noticed about that mostly was this realization of how, how dependent we all are on, on the community like that, right? We really need this stuff to, we really need this stuff to happen, but we, it doesn’t happen automatically. It’s it actually takes quite a bit of effort to keep up with all of this stuff, right? And that’s, that’s one of the things I, noticed this year mainly because of those, those two events this dynamic between somebody in a community and a community talking to you in this sort of a way. It really, it, feels like a thing. You’re waiting on an update and at some point that update is there and you sort of have to drop everything and make sure that it happens Like now, now, right. Because this is big because for example, there’s this big exploit that was found and, and you need to react to that because otherwise you are, you’re you’re doing your customers a disservice, right?

Maciej: Yeah. There is that very famous image with, those, all of those boxes, you know, enterprise software, this software. Then there libraries, plugins, and then there’s the tiny, tiny, you know, leg, you know, and this is the one person, you know, plugging that is not maintained for, since 10 years ago. That’s you know prepping the, all of the other, all of the other boxes, you know not to fall down.

Wijnand: Yeah. Somebody say left pad. Yeah. No, exactly. No, exactly. Exactly. And you need to keep on top of that, right? You need to, you need to make sure that you, that you don’t fall into the trap of sort of letting it go. And, and, you know, I’ll see in a month or two what actually happened and what actually works. You really sort of need to stay on top of it. And, and that is just this, added burden. If you’re, you know, when we’re talking about 500, 2000 websites, that’s this additional burden that you have because site number one is probably still on 73 on PHP 73, and you need to do something with that, right? And I think the other thing is and I think that’s also like a widely talked about thing, like the consolidation of companies within the, within the the community where, these big things sort of merge and we get bigger and bigger companies that provide bigger and bigger use cases for people. That sort of made, that sort of made clear to me that there’s a, that there’s like a need for more niche things. That there’s a need for more niche applications that have, that don’t have much of a learning curve for the end user so that the end user can still actually, you know enjoy using WordPress Because setting up a WordPress site nowadays is, honestly, it’s not easy anymore, right? There’s, there’s so much that’s, that’s going on. You need to pick the right plugins, you need to do the right things. And simply just picking out the right plugin is already kind of a chore and you sort of need to know what you’re dealing with, but then actually configuring everything in a way that, that, that works and that works for you is simply not that simple. And I think that means that we need to go to more towards a towards basically the knowledge transfer that we were talking about with, with what an agency basically does for you, but on the much cheaper end of that spectrum

Maciej: Do you see this as a threat? You know, because I wasn’t thinking that the setting up a WordPress website is so much more complex that it used to be. Maybe this is the the expectation that you want to have, you know, amazing web website. And, you know, previously it wasn’t so, possible or so easy to, to have to have an amazing website based on WordPress. So it, everything was easier. You know, you, you, you could use less plugins because now the functionality pressure is moved more onto the plugins. I mean, it’s not the pressure, it’s like the demand. So people are building more and more plugins, so it automatically means, you know, 60,000 plugins were written, you know, overnight. So it’s like the constant process and you can get lost. And I wasn’t thinking about this, this way, you know, that the word was set up is so, getting more and more complex right now at this.

Wijnand: I think it’s a phenomenon that, also can sort of, sneak its way onto, onto a community. Because like, one of the things about a community is also the community also learns, right? The community has this knowledge that, especially the people who were in that community for a long time that’s all sort of gathered and like a human does. It’s, it’s consolidated in nice ways and we get this sort of sense. You know, as somebody who works in that community, you get a sort of sense like where you need to be and what you need to do and where you need to go. But that’s not what allows for growth of WordPress, right? That’s not what allows for WordPress to be like the number one CMS in the world, basically. That’s new. But new people nowadays come into this community that’s actually kind of complex. That’s actually, that’s really big. And if you want to have a plug-in that gives you an, a thing to do appointments with, for example. Yeah. Now you’re gonna have to pick like from 50 plug-ins maybe, and you gotta go through all of these articles that say the top 10 best appointment plugins. Right.

Maciej: But look at the bright side, five, 10 years ago, you wouldn’t be able to do this at all, or you would have to commission this kind of what now is ships as a plugin, as a custom work from the agency for, I don’t know, a couple of thousand dollars, for example.

Wijnand: Exactly. And, and I completely agree with that. The fact that the community is growing in that way and is going like, and it’s, and it’s in a very natural way, I think, going sort of that direction. That is not a bad thing at all. What it’s, it does have a price though. I think because the price is. Figuring out what you need to actually do within this community to get what you want becomes a bit more complex. And that’s where that knowledge consolidation comes in. Like you need to be able to ask somebody or that person needs to build it for you. What do I do? What do I actually use? Right? And I think the key to that is basically to be able to build like these small niche wases really like what you need to be able to do is very very cheaply and very in a very maintainable way. Build something that works really well for a very specific niche of people and make that the best it can be. Right? Building a Wickes or a Squarespace, that is way too much, that is way too big, that, that space is, is completely saturated, basically, right? But doing it for these niches, doing this very specific thing for, for, you know, not restaurants, but like restaurants that primarily sell fish that is very much open and that is very much a thing that the current community or the current climate basically also sort of, Pushes towards, because it’s not just WordPress that’s becoming more and more complex, right? It’s, the Wickes and the Squarespaces. You can get your basic website pretty easily, but the moment that you actually wanna do something a bit more complex, like, like hook it up to a Google forums or whatever it does be, it, it, it does become a bit more of a thing to actually dive into and figure out. And I think that’s a very important thing to, to keep in mind there, that we, we do need people that are not developers and that are not necessarily technically inclined to also have this access to a web presence that they like. And that responds to the demand of the internet in terms of how pretty, and how fast and how quick and how seo how, search engine optimized it is.

Wijnand: You know? You need to not necessarily be a developer for that otherwise. Otherwise, I think we’ll see like, like a, like a shrinking of, this stuff in a, in a, in a, in a, in a bad way. Not quite sure what would happen then, but it doesn’t feel good. Yeah. I agree.

Maciej: Okay. Thank you very much for, the conversation today. It, it was a pleasure and I had finally chance to, you know, to, grill you on, you, grill you on the details of and internals of, the platform. I’m, very glad I, had a chance to do, to do this and yeah, thank you so much. Thank you again and have a great 2023 and good luck to the business and growth of your platform.

Wijnand: Thank you very much. Thank you for having me.

Outro: If you like what you’ve just heard, don’t forget to subscribe for more episodes. On the other hand, if you’ve got a question we haven’t answered yet, feel free to reach out to us directly. Just go to www.osomstudio.com/contact Thanks for listening and see you in the next episode of the.

Next article

Meet the Juniper starter pack, your WordPress development new best friend!

By Bartosz Nowak

6 min read

small logo of osom studio wordpress and woocommerce agency

Join Osom to know newsletter!

Get your monthly dose of WordPress information.