Jack McDade of Statamic

You can find Jack at:

Statamic

Resources mentioned:

Laravel Forge
Transistor
Fathom

Transcription:

Sebastian: Jack, welcome to the SEO show.

Jack: Thank you.

Sebastian: So Jack, you are the creator of a CMS called Statamic. Is that right so far?

Jack: That’s right and you pronounced it correctly, well done.

Sebastian: Why don’t you tell us what Statamic actually stands for?

Jack: Yeah, Statamic is the word static and dynamic mashed together. It is a flat file CMS that also does static site generation, but it is a fully dynamic platform. And you can use it just like you would WordPress or another CMS or you can have it kind of static, like generate or cache your site. We have version 3.0. It’s in beta and coming out really soon. It’s got a whole pile of great new features.

Sebastian: So I guess the most obvious question is: How is this better or different than say Drupal or a WordPress?

Jack: Sure, better is subjective. It’s not better for everybody. There’s a lot of different tools – it depends a lot on what your project is doing. But what makes Statamic different is by taking the flat file approach, and all of your content and your settings and your configs are stored into flat, actual markdown or YAML files, you can version control everything and deploy changes to your site via Git because once those changes go up, the caches rebuild, and then the site runs off the cache. And so you can have dynamic features. And you can have stuff like, logins, and user profiles, and all of that without having to have that MySQL database. So you can sync multiple servers, you can branch and fork your site and have multiple developers working on it at the same time. It gives you a lot of developer workflow that are not necessarily impossible, but really, really hard to accomplish with a database driven CMS. And it just makes that kind of stuff really, really clean and simple.

Sebastian: So how did you even get the idea to build something like this? There was nothing out there available?

Jack: Pain, when you feel enough pain, you build something right? I built static back in 2012. And the only thing that existed at the time that was close was something called Stacy. I don’t even know if it still exists at all. But it was kind of that same idea. You could run a site but from files. And so I tried it and it didn’t do anything I wanted it to — I couldn’t build a blog with it or whatever. And I was using a lot of ExpressionEngine at the time. So I kind of wanted a platform that had that de-coupled HTML and template code that we’re separate. So you didn’t have to have this, fixed structure like a lot of the older CMS is used to do. Like, this is your markup. These are your tags, like you have to just jam it in. Like, all right, well, how far can we go? And can we build the features that I would want in a CMS without the database so I could stop – turn off the production site and export the database and bring it locally and make changes, then push it back up and then the client logged in and changed stuff, you have to do it all over again? So I wanted to avoid that whole workflow.

Sebastian: And who would you say Statamic is a perfect fit for? Is it perfect for everybody? Or is there a certain kind of client that this will be perfect for them?

Jack: Sure. I think in terms of like the control panel, it’s pretty much perfect for everybody who wants to write and publish content. But everybody who owns a Statamic site may not be right for, so if you don’t have a developer or are not at least a little bit technically savvy — there is an assumption that someone along the way who knows how to code or at least do some HTML and, put stuff onto a server is involved in the process. So that would kind of filter out some people. We don’t want to be like the Squarespace/Wix of the world where you just like click a bunch of buttons and have a website that honestly looks like everybody else’s. So if you want to have a bespoke, like unique custom website and you want it to be super easy to manage and maintain and update over time, that’s our ideal customer. So that might be, a company with a dev team or a freelancer or it might be like a lot of our users are, agencies — companies that build and manage and maintain websites for their clients. Like that’s our primary audience. But it’s not the only people who use it.

Sebastian: So, you do need to know some basic HTML or some basic PHP — apart from that you should be okay. Is that right?

Jack: Yeah, somebody along the way. You don’t have to know PHP. You can do everything with just HTML and the template tags – we call it antlers. It’s just double double braces is a variable, right? But someone along the way will need to know how to do a little bit of that to hook up your theme, or implement your design, CSS, all that kind of stuff.

Sebastian: And what about specific kind of sites like an eCommerce. Would Statamic be perfect for them as well, or is that something that’s in the works?

Jack: Yeah, eCommerce is it’s kind of its own unique animal, right? It’s the amount of complexity that can possibly pop up in an eCommerce site is massive. And we have not pushed into that market very much because we wanted to lock down and really make the best possible core experience you can. There’s some add ons people have built for, like membership sites that like, charge you monthly to have access – there’s something called Charge. There’s couple people working on eCommerce add ons, but we don’t have eCommerce built into the core. Nor does WordPress or Drupal for that matter, right? A separate company manages the eCommerce thing because it’s a separate product bolted on. And yeah, you can do it. I would say if you have a large complex store, Statamic is not for you, at least not right now as of January 2020. But maybe in a year or two, when the ecosystem’s even bigger, who knows there could be a pretty killer eCommerce add on.

Sebastian: And SEO wise, we are an SEO show so we wanted to know how optimized is it for search engines, do we need to go in there and change the code around? Or is there like some sort of plugin we can just buy? How does it work?

Jack: Yeah. So I mean, some of that – actually a lot of that is up to the developer in terms of actually building what you need, right? So, the important things in SEO as I don’t need to tell you, right, you got to get content, you got to get your right tags, your title tags, descriptions, you want to like manage all your social stuff, you want to make sure that all that stuff, is on all the pages. There are a couple add ons. We have a first party one called SEO Pro, and that takes care of like automatically populating all of your title, your meta description, your social media tags, like your OG tags and all that stuff. So it does that and it can do it based off your existing fields. So you don’t have to write them separately. There’s another add-on by another SEO company called Aardvark SEO, and that one has a little bit of a different approach. I haven’t used it firsthand, but a lot of people like that as well. So SEO Pro – our goal with that is just to get you to minimum viable SEO. Just get the freakin’ title tags and descriptions on all of the pages and you’re doing better than a lot of people, right? And it will let you run a report and you can see how many pages are missing or have duplicate title tags or duplicate description so you can go and update those. Aardvark has a little bit of a different focus around like generating sitemaps and XML schema stuff and if that’s what you’re looking for, you can use that one. But you could do those things yourself in the template code. If you want to set up custom fields for your title tag and your meta description, you can just add a title tag and the meta description field and populate it that way.

Sebastian: Well, this sounds pretty good so far. So if someone’s listening and they already have their site setup with WordPress or Drupal, how easy would it be to make the switch over to Statamic? Is it a simple switch or is there like some sort of complex thing they need to relay to their developer?

Jack: Sure, I mean, it would, it would absolutely depend on the site. If you have a ton of plugins like WordPress plugins installed and you have a lot of stuff you’d have to recreate – it might be a lot of work. If you have a pretty vanilla WordPress site, we have a WordPress importer, it will just export or rather there’s an exporter from WordPress, and there’s an importer into Statamic. So you dump the data out of WordPress and then you just run the importer and you have all your content in there. I would say, if you’re trying to recreate it pixel for pixel, line for line and code for code, I don’t know – take the opportunity to clean up your site and improve the design, remove dependencies and get rid of the WordPress bloat that can happen when you have a lot of plugins, right? Seven different versions of jQuery, that stuff can happen. So take the opportunity to clean your template code up and your site is going to run faster at the end of the day.

Sebastian: And obviously, the CMS is one part of it, but I would say hosting is the other part. How important do you think the host is when you’re taking into account the speed and security of the CMS?

Jack: Oh the host is super important. I mean, your page time is important not only for users, but for SEO, right? If your page loads too slow, because you’re on an old server and your shared server with 9000 different websites, that’s not going to be a good experience. We recommend using DigitalOcean, or AWS, or Linode or Linode, depends on how you pronounce it. And all three of those work really, really well. VPS hosting, so you’re not on, shared instance with other servers or other customers is super important. And this stuff is like $2 and 50 cents a month, $5 bucks a month, like you really should have your own like VPS or virtual cloud server, whatever the particular host calls it. And you should run SSD – it’s going to give you a much better response time and especially with Statamic because you’re reading files off the disk, and you’re not reading anything from a MySQL instance. So that’s going to speed your side up as well.

Sebastian: So you mentioned a VPS along with Statamic — is there some other kind of software that should run alongside those two to make it a really good experience for users and the host?

Jack: Yeah, you don’t have to, but we love and highly recommend people use Laravel Forge to manage your servers and your deployments. So if you use Laravel Forge, it can spin up those servers for you and manage them without having to do command line stuff, SSH and run updates, you can do a lot of that stuff right from the control panel, you can spin up new servers, then you can connect your Git repos to domain names. And if your Statamic site is version controlled, you can just Git commit push to master and then your site is automatically deployed. And you don’t have to worry about FTP-ing, or you don’t have to worry about like R-syncing files or moving stuff manually or whatever. So, Forge makes it really easy to run lots of sites, lots of servers and just use Git to move everything around. It just makes your life so easy.

Sebastian: Well, speaking of making your life easy, is there any kind of software out that you wish existed but right now it does not?

Jack: Oh, that’s a good question. I have a lot of icons on my Mac menu bar. And there’s I’ve tried every app ever and they all kind of work in a different not-great way. I’d love a better Mac menu bar app manager. Other software that exists, I don’t know. I tried to keep everything simple. I’m pretty happy with what I have right now today. But if you ask me again, in five minutes, I’m sure I’m going to be banging my head against something else and have a different answer for you.

Sebastian: You sound like the kind of guy if there’s something that doesn’t exist, you just create it within the next, weekend or so.

Jack: I have done that in the past, yeah. Other than they get out of date and they stop working. And so I tend to just buy stuff now. But yeah, there’s always room for something else for a better version of something right or a version of something for a specific audience. And never think that because somebody has built something that there can’t be another – sure there’s gonna be another flat file CMS, and it’s probably gonna be pretty good. We’ve been around the longest and hopefully the best, but you never know. Things can change.

Sebastian: Yeah. You mentioned version 3.0 just came out. What are you planning for version 4.0 and 5.0? Is there like some sort of roadmap in place? Are you just listening to customers?

Jack: We don’t have any plans for version 4.0 yet because 3.0 is still in beta. So we haven’t released that we’ve got a lot of ideas and plans for the the life of the three x line, not gonna worry about 4.0 until some sort of major evolution rears its head, we were on the 2 branch for like four years. So I don’t, I don’t think we need to worry about 4.0 and 5.0 yet. But we do have features planned and coming around integrating with Gatsby and JamStack stuff. So you can use it as a headless CMS, but still deploy your static site with Netlify or your other static site services and so we’ve got a lot of that stuff working already. I’m talking with some of the guys from Gatsby and we’ve got some cool stuff coming with that. It’s a pretty big thing. We’ve got like real-time editing and collaboration stuff getting, connected into the core. So yeah, there’s a lot of cool features that are coming. And but I mean, V3 is the latest and greatest and it’s already pretty jam packed full of stuff. This podcast is too short for me to list them all.

Sebastian: Well, Jack, is there any kind of podcasts or book you’d recommend for people who want to learn more about building websites and webmastery in general?

Jack: Oh, yeah, I would check out like the stuff that Justin Jackson is doing with Transistor is pretty awesome. And Paul Jarvis and Fathom, his bootstrapped analytics company — those guys are, like we all know about DHH and Basecamp and those crew right? And so their story has been very vocal and great and I love all the Rework and all those, but I love looking at these newer, smaller companies that are starting to boom with little teams and seeing what they’re doing well, and so I’d recommend their podcasts and check them out. We’ve got a Statamic podcast coming out this year probably sometime Q1 here, it’s you know be about Statamic and building and running a product company. So maybe useful for some people, maybe not. I think that’s all off the top of my head I can think of.

Sebastian: And we’re both on Twitter and it’s got a healthy webmaster community up there too. Is there any other community out there that you think is helpful for other people?

Jack: I love the Laravel community. I’ve been a part of that for a while. And a lot of things you’re building custom applications, you have to connect to a lot of different other tech stacks, right? So you have an app, but the app also usually has a website and it’s usually like a WordPress or a Statamic or Drupal or whatever CMS or there’s, the frontend layer is Vue.js or React. And so like the Laravel community ends up being a really nice hub for lots of different tech. And I find that to be a really welcoming and friendly place to be. They have a Laravel Slack, or sorry it’s a Discord channel now and there’s a ton of people in there. Laracasts forums are really great. And I find that to be- if I need to reach like one level outside my comfort zone, there’s someone in that community that already does that. And that’s been great for me.

Sebastian: And finally, Jack, if web dev went away tomorrow, what would you find yourself doing instead?

Jack: Oh, that’s a really — I think about that a lot. I think I’d be the guy who knows a guy. I think that’s who I want to be right? Like, assuming if the internet went away. It’s probably post apocalyptic and we probably don’t have much power so I know that you need an AK or you need like a machete or you need gasoline: I got a guy. I think that’s who I would want to be. Maybe I’d be the guy for something like artisan bread, or like cocktails or something. But other than that, I’d be the guy who knows a guy.

Sebastian: All right. Well, Jack, thanks so much for your time, man. Appreciate it.

Jack: Hey, appreciate it. Thanks for having me.

You may also like...