Building a Cloud CMS Platform, a Interview with Webpop's CEO

Michael Ruescher

Michael Ruescher interviews Mathias Biilmann about Webpop. They discuss how Webpop got started and the philosophy behind building cloud tooling and infrastructure for front end developers and web designers.


MR: Hello everyone, Im Michael Ruescher and I’m sitting here with Mathias Biilmann. We both work at Webpop. He’s CEO and I’m the new CMO there. I’ll let Mathias introduce himself, he can do a much better job of telling us who he is and how he got started with WebPop.

MB: My name is Mathias Biilmaan, I’m originally from Denmark. I spent a while in Spain where I was one of the cofounders of Webpop. In Spain, the company I was the CTO of built around 10,000 websites for small Spanish businesses based on a CMS (Content Management System) platform that we developed in-house to scale and make it possible to deliver this kind of volume of websites to small businesses with the need to get a really simple way to manage their content and keep their sites up-to-date.

Basically, we got a ton of experience in what it takes to have a platform that’s both flexible enough for designers to deliver custom-designed websites, and easy enough to use for really basic users to go in and update their content. What we did with WebPop was basically to sit together one day and say: Let’s take all this experience and build something for third-party designers that they can use to build websites for their clients. That’s how Webpop got started.

MR: So it sounds like it arose out of a practical need within this agency.

MB: We could definitely see that there was nothing out there that we could take and use to build this volume of websites. Any of the self-hosted CMS’s would have been a complete operational nightmare. I couldn’t imagine our systems team having to maintain 10,000 Wordpress installs for example. That would be crazy.

MR: So, it really boils down to efficiency.

MB: Yea, and all the hosted services at the time were way too limited to deliver custom-designed websites. They were basically a set of solutions that would give you a set of modules, you could put them together and skin them, but that’s it. We really wanted something that would let our freelance designers do what they wanted and that would let our in-house designers design the kind of base structures. We wanted to make the whole process efficient, make sure the hosting would scale, and then make it very easy to make the clients to come in and update their sites. We could see that we’re not the only ones in the world with those needs. Whenever you can cut down on the time you need to maintain something, and whenever you can get your clients to do more of the work instead of calling you every time they need a change, the better off you are, the more you can focus on just building your design.

MR: So it sounds like the vision that started to emerge for Webpop was one of creative freedom and efficiency, and a system that really let each person involved in the whole website creation process focus on what they do best.

MB: Absolutely, and also trying to take off all of the operational hazards of websites. Also a lot of the details that we really want to take care of, stuff like optimizing the caching headers of your website. Even if you look at the top 100 websites in the world, 50% of those don’t set the right caching headers on their content.

Also, serving your assets and images out of a solid CDN (Content Distribution Network), that’s something we should all be doing. It really speeds up the website for the time it takes to see those images appear. It’s a big hassle to do normally if you don’t have a website that takes care of it for you.

MR: So not just providing the underlying infrastructure, but going so far as to start baking in best-practices and things that your going to be doing anyways. And removing all that tedium and configuration, just having reasonable defaults?

MB: Yes, and that’s also represented in the basic attempt to make people think in terms of separating their content from their design, to keep those two as different layers. That’s also a way we took a best practice and said: this is something you should be doing. Maybe one day you’ll want to expose the same contents in a different way. But they’ll be a problem from the start, when the client gave you this content, they were already an HTML document, so we build in a solid system for building a content model with custom fields, and another solid system for working with HTML.

MR: Yea, so Webpop has it’s own templating language, which I think we should get into in a little bit later. We’re still kind of covering the overview of it. We haven’t really talked about the fact that everything is cloud-based with Webpop. You can take the whole process from start to finish without touching any desktop applications, or FTPing anything. You can literally work entirely in the cloud. That’s kind of unique about Webpop and now there’s obviously other competitors out there, of course there’s Squarespace and specialized Wordpress hosting providers. What’s the unique insight that Webpop has that they just don’t get?

MB: Well, it’s more a question of what you want to focus on. Most of the hosted systems out there have chosen to focus on people with very little knowledge of web technology, who are building websites for themselves. They’ve focused a lot on building drag-and-drop interfaces for putting together a website. That’s really valuable for some people, but our target from the beginning was the professional market that builds websites for clients.

If you know HTML and CSS, there’s just no way you’re going to be happy building with a drag-and-drop interface in your browser. It’s just never going to be as fast or as efficient or as flexible or as powerful as writing HTML and CSS and it’s just never going to let you use whatever framework you want. Right now we’re in a period where it seems like every day there’s a new web system coming out and there’s a new competitor to bootstrap or foundation coming out and we want people to just be able to take them and use them.

With all of these other systems, you typically have to depend on whatever CSS framework they’ve decided to base their system around and you typically have to follow the structure that they laid out.

For example, if you take a site, there’s a lot of different nuances in how you structure a block. Typically if you go with one of those, you’ll just have to accept their choices. Again, for some people that’s great. For some people, they would probably make much worse choices if they had to make them themselves, but for the professional, it’s part of being a professional to have to make those choices and decide what kind of information architecture to build your site around.

We wanted to offer that in a hosted setting. Of course, there’s a lot of self-hosted systems that will let you do that, if for nothing else than that you can go and change the source code if you want, but that leads to a lot of operation problems. That means that suddenly designers have to be system administrators as well. They have to take care to handle security updates and stuff like that. That’s why we see around 200,000 virus installs on WordPress every month. That was something we believed from the beginning - that people specialize in what they’re good at. That we can specialize, and take on specialized people to really build a solid infrastructure and then let front-end developers to specialize in front-end development without having to be system administrators and back-end programmers.

MR: So that kind of leads to my next question. Who is the ideal customer? Who gets the most value out of Webpop and why?

MB: Well, basically anyone who is a front-end developer and builds websites for clients will get a lot of value out of Webpop. We try to empower developers to do fully functioning websites without depending on back-end developers. We also have agencies that benefit a lot from Webpop, simply because they can stop worrying about having an internal IT department. That’s important once you start getting a lot of sites out there that might just stick around, but they’re still kind of your responsibility as an agency, you still have to make sure that they stay up and don’t get infected by viruses.

MR: So it’s actually more than just a CMS, it’s more like business infrastructure for a lot of people. You’ve been with Webpop since the beginning, you’re one of their co-founders, so you know your customers really well. What are some of their favorite features?

MB: Obviously, the really easy-to-use client interface. The fact that they can just go and hand it off to their clients, and the clients can just go in there and update it without training, is a pretty big deal. We were also surprised at how happy people were about editing directly in the browser. We’ve had FTP support baked in since the beginning and initially we thought that most people would probably work over FTP. But we’ve seen that people really enjoy the speed of just being able to jump straight to a site that they’re maintaining, just change something, straighten the browser, and see it live. The versioning feature has also been really important. We make it really easy to keep different versions of the design available at the same time, so whenever you need to make a change to a live site, it’s very easy. You just duplicate your design, make some changes, see if they look good, and then push it live. In general, that whole feeling of everything being very fast, and being able to make changes very quickly.

MR: Yea, I have to admit that’s basically the same story for me. I came to Webpop thinking, I’ll be using my Sublime text which I’ve configured out over the last couple of years. I’m very happy in my Sublime text editor. But I’ve been surprised, as I work on Webpop sites, I just do it entirely in the browser and CodeMirror has really come quite a ways in terms of becoming a very functional way to create your code.

MB: Definitely. When we started, it was still a bit of a long shot to start writing and editing in the browser and there were few competing editors out there but CodeMirror was starting to pick up pace and now it’s just evolved and evolved. Now we see full-fledged IDE's being based around CodeMirror. I think it has a good future ahead of it. I also noticed just the other day there was a post about the Firefox dev tools, where they had asked a lot of people what are the important things you would like to see from the Firefox dev tools . One of the most common answers was better tools for editing directly in the browser, so that’s interesting.

MR: I think that’s the theme for 2013, everything cloud, everything in-browser. I think that bodes well for the company, because that kind of approach that Webpop is built around is not to try to be this end-all solution, it’s just focusing on its core functionality and building out the dynamic content in this “defaults over configuration” thing as we talked about. But if you want a commenting system or you want an e-commerce shopping cart, Webpop doesn’t try to do all that for you, because there are tons of really great cloud services out there which you can integrate with like Stripe or Disqus, and I think that’s going to be the future for so many businesses out here, not just Webpop, but just in general for 2013. I never thought, even just even a year ago, that I’d be so dependent on so many different cloud services for my own consulting web practices as I am today.

As we’re on that discussion of building cloud services, what’s the challenge ahead that Webpop faces in terms of growing as a company and developing the product?

MB: Obviously one of the challenges is to convince people to move to the cloud. There are a lot of people that want to control their own stuff, run their own servers, install their own open-source projects, and so on. While there’s still a lot of value in that, there’s also a lot of complexity in it that sometimes people don’t even notice. Like do you really get your system configured right? Do you really get all the right caching headers set up? Do you really get the best speed out of your system as you should? Is it really as secure as it should be? What do you do when something bad happens to your server? Do you actually have some kind of process in place to recover from that? Of course, one of our challenges is to convince people that we know about that stuff and that they should probably, not in all cases, but in many cases should probably trust us more about that than themselves and sometimes more than their own internal IT team. Sometimes we’ve seen cases of someone saying that “it’s really important for us to use this guy we have in-house,” and we go look at what they have, and they are running some three-year outdated version of IIS server from Microsoft that hasn’t had a security update in three years. That’s sometimes the things you see.

MR: I think that’s true. As a front-end developer, I’ve tried building a few Rails apps and I’ve really come to appreciate all the complexity that comes into it. Because, sure, I can spin up an app and put it on Heroku and get something working. But in terms of the performance they’re not optimized and I don’t even know what kind of security holes I’ve got in those apps. Luckily they’re just fun little learning apps.

MB: Even those can suddenly get exploited. Rails had some really fairly big security holes recently, really dangerous security holes, the kinds that get rolled into smaller automated scripts that get fired out at any website that looks like a Rails website and tries to use those holes to get complete control over the servers. Of course, the moment those holes where announced, I had to get up at night and immediately patch our servers to make sure that nothing would happen. But the problem is, that there’s a lot of people that have these different Rails sites up all over and they didn’t get up at night because they probably didn’t read the bulletin about the error and those are just waiting for their servers to get taken over by someone else.

MR: Well, that’s no good. On a happier note, what’s up on the horizon for Webpop? What are some of the things we can look forward to in 2013?

MB: One of the features we’re close to releasing now is asset bundling, where we basically make it really easy to bundle up all the stylesheets and javascripts. We’ll go through them and find any assets that they reference, like any of your images or fonts. Then we’ll take those assets and we’ll upload them to Akamai, the world’s largest CDN network. Then we’ll bundle all the style sheets, change the references, and serve everything straight out of the CDN .That’s really powerful stuff.

MR: Yea that is a big deal, it’s the whole “convention over configuration” which has sort of a “Rails/Ruby” ethos to it, and that’s sort of your background, isn’t it?

MB: I started out on Rails pretty early, a little before version 1 of Rails. I always liked that idea that if there is a best way of doing it, that you should just do it that way out of the box.

MR: That was one of the things that got me so excited initially as I learned about Pop Tags and was using the templating language. I started to see some of the contours in the templating language of the kinds of things you would do in a Rails app. For example, in the date tags you can format your dates in words, and so forth, and it kind of has that same syntax as rails and I thought, “wow, this is so cool.” I can have this perfectly-running Rails like front-end with no worries and running in a way that has been fine-tuned for performance because Rails isn’t traditionally known for being the fastest framework. But you’ve pulled quite a few tricks here.

MB: Actually the part of the app that displays websites is just a bare-bones JRuby app that doesn’t even touch Rails just to really keep it light weight and be able to just turn out lots of pages quickly. But apart from that, the main challenge in making something scale, is not really the framework, it’s more the architecture of how you put it all together and we did a lot of work from the beginning to make sure everything we did would scale horizontally. We made sure that if we have a performance problem, we should be able to solve it simply by adding more machines. It’s very easy to get into situations where you can’t do that, as soon as you depend to much on sharing your file system or stuff like that, suddenly it becomes very tricky to just split things apart and turn them into little services and scale them out horizontally and we’ve done a lot of work to be at a point where we’re fairly confident that if there’s a scaling issue, we can just add a machine at one of the layers.

MR: Yea, that’s the key right? You don’t want your site going down once you get featured on Techcrunch or Reddit?

MB: No, it’s exactly the time where you really want it to be up, and those kind of traffic spikes we know we can handle.

MR: Right on. Well, unless you’ve got any last closing thoughts, I guess we’ll wrap this one up.

MB: I’m all out of thoughts.

MR: If you’re listening out there, definitely check out, you can sign up for a free, 30-day trial, and we look forward to seeing you there!

« Back to Blog Index

Sign up now

30 days free trial. Sign up in 60 seconds. Upgrade, downgrade, cancel at any time.
blog comments powered by Disqus