This is a transcript. For the video, see Why Hello Pretty is Sticking with Drupal 7 with Extended Support.
[00:00:00] Michael Meyers: Hello, and welcome to another Tag1 Team Talk episode, the podcast and blog of Tag1 Consulting. I'm Michael Meyers, managing director of Tag1. And today we'll be talking with a long time friend and colleague Scott Hadfield, a software engineering manager, and lead developer at Tag1, and we'll be talking about Drupal 7 end of life. Scott is also the co-founder of Hello Pretty, which is the largest online marketplace for South African designers, and it's built on Drupal 7. So we're gonna be talking about his decision to stick with Drupal 7 after end-of-life and why he's choosing to go the extended support route instead of upgrading to Drupal 9 or migrating to another platform.
[00:00:43] Michael Meyers: Hey Scott, thanks for joining us.
[00:00:47] Scott Hadfield: Thanks Mike. Yeah, I'm happy to, happy to chat.
[00:00:51] Michael Meyers: So,we've known each other for a really long time. It's scary. I was thinking about it last night ahead of this talk. I wasn't counting the years. But, please just introduce yourself. If you could tell folks a little bit about who Scott is and just a quick background on Hello Pretty and why you started it.
[00:01:07] Scott Hadfield: Sure.
Yeah. So I've been, I've been around it since Drupal, probably 4.6. So not the oldest, but I've been there for a while. And I've been coding before that for, actually since I was 12, I've been coding, anything from like, OS stuff to database development. But then, the past decade, almost exclusively Drupal development, I launched Hello Pretty about 10 years ago with my wife who is an amazing web designer.
So it was, we complemented each other pretty well with the business. Yeah, there was a lot of amazing talent in South Africa, especially when it comes to handcrafted products. And at the time there weren't really any opportunities for South African crafters and designers to sell to customers online.
So we decided to launch a marketplace, For anyone familiar with Etsy in the US it's a very similar concept. Yeah, we both had a lot of experience with Drupal. thanks to everything it offers like, out of the box, we were able to build the initial MVP in three weeks and we launched with 20 local designers.
[00:02:13] Scott Hadfield: And now this site has over 6,000 designers that, that are using it around the country.
[00:02:20] Michael Meyers: Wow. That's amazing. Can - do you ship internationally? Is it local? Everything local to South Africa?
[00:02:28] Scott Hadfield: So it's entirely up to the designers themselves. So some people do ship internationally. Anyone who's doing bigger products like furniture and things, it's not realistic because of the shipping costs.
Michael Meyers: So you're very much like Etsy. You're just connecting people directly with the designers and giving them a forum to showcase and sell their stuff. And, definitely check it out. hellopretty.co.za. It's really awesome.
[00:02:54] It's a great site. So you know, we're a technology podcast. Can you give us, you know, you mentioned it's on Drupal. Can you give us a little bit more background. Is this a decoupled site? Is there anything going on in the background, integrations,tell us a bit more about the tech.
[00:03:10] Scott Hadfield: Yeah. Okay. So yeah, so the site is built entirely on Drupal 7. The, probably the most important contrib modules we're using are, Drupal Commerce, Views, and ElasticSearch. And then we don't have any of our own hardware. So we use VPSs for the site, three different Linux servers right now. And then, we use we, so we looked into doing, like a CDN for improving the performance, but there was just like, at the time when we were doing that, there was a lack of infrastructure in South Africa to be able to support a CDN on Drupal. Most of the CDNs were in Europe that we could work with. So we ended up using elastic search really heavily on the site. So every listing product listing and things like that, all [00:04:00] come through, elastic search queries. And we try to hit Drupal as little as possible, especially because all of the users are basically logged in or have some level of authentication with their own carts and things like that. And there's, I think there's now over a hundred thousand products on the site, so it gets pretty heavy at times.
[00:04:23] Michael Meyers: Wow, when we first worked together, at Now Public, which was the first venture-backed, Drupal-based startup. I remember we were going through like a, an acquisition process at one time. And, there was a company in South Africa that wanted to buy Now Public, and one of my partners, Len, went down there and was giving a demo and he called me like frantically.
[00:04:42] Michael Meyers: And he's the site is so slow. What is going on here? And it turned out that they were like, essentially on a dial up connection. I mean, like there are no, their bandwidth was crazy limited. And, that, you know, that was 15 years ago when we worked together. I don't know, a long time ago.
[00:05:00] Are things better from an internet infrastructure standpoint, like our load times faster for users. Is that a challenge that you have to deal with still?
[00:05:09] Scott Hadfield: Yeah, so in 2007, 2008, there was really only one, I want to say one, like under sea cable going to the rest of the world. So when something happened, If there was an interference or like a ship crashed into it, I don't know what happened, but sometimes the country would get disconnected from the rest of the world for the Internet. So this was having probably until 2012 and then they were really, I think there's three undersea cables now, so that everyone has fiber here.
So it's actually, I spent a lot of time in Canada too. And the Internet here is probably as good as a lot of the Canadian connectivity now in terms of price and speed you get.
[00:05:52] Michael Meyers: Wow. I'm in rural America and my Internet is horrific
[00:05:57] Scott Hadfield: As long as you're in city, it's you're in a city. You can get it. But yeah.
[00:06:04] Michael Meyers: So, you know, I know a big part of your role at Hello Pretty is strategy and planning. This is a business, you need to think about the future and where you're going. And obviously with Drupal 7 end of life looming on the horizon, this is a pretty critical decision for your business.
[00:06:22] And I'm curious, is this something that you started thinking about. A year ago, two years ago, when did you start first thinking about, what am I going to do? Is this a problem for me?
[00:06:35] Scott Hadfield: So we, we were to first discuss it when Drupal 8 was first introduced.
We've always been like pretty early adopters of tech. We were definitely interested to see what Drupal 8 was offering. This was back when it was still just like a beta release candidate, stuff. quite a while ago, and then, the kind of like the major questions where like the contrib what's available there since so [00:07:00] much of our site depends on it.
[00:07:01] Scott Hadfield: So initially there was no, there wasn't any question as to whether it would upgrade or not, because it depended entirely on Drupal Commerce and how much it was supported under Drupal 8. And then once it did get a bit further, the like, advantages to Drupal 8. There certainly were some, but we also had everything that we needed in Drupal 7.
Even as time progressed, we still decided, I guess we probably got more solidified in our decision to stick with Drupal 7 for now.
[00:07:37] Michael Meyers: I think that's a really common approach and problem for organizations, you have a lot of dependencies on Drupal contrib, and migrating. All of that yourself is ridiculous, cost and time prohibitive.
And looking at what's available is a big factor in decision. We just wrapped up that [00:08:00] project with Tern and they were on 6, and they wanted to go to 7, but they couldn't. Then they wanted to do 8 because they couldn't, because every time all these modules that they were dependent upon just, weren't available and wouldn't be available for another year, a year and a half.
[00:08:13] Michael Meyers: And so, you know, that's a critical factor. I'm curious, you know, before we get into the pros and cons of everything, What was your decision making process? Obviously you're intimately familiar and intimately involved in the Drupal community. And so I would imagine your approach, and, was going to be different than perhaps what our clients might be going through.
But I'm curious, was it a formal analysis, did you, talk to people, did you, I mean, clearly you didn't flip a coin. Like, how did you know, what was your, your process?
[00:08:46] Scott Hadfield: Right? So we didn't do a formal analysis. but we've worked with Drupal since 4.6 and we've done several major upgrades with different websites.
And we were [00:09:00] able to review the differences and the advantages with the upgrade kind of informally thanks to our experience. Because Drupal 7 wasn't really lacking a lot. Like you can build extremely complex sites and still keep a relatively code clean base and maintain solid performance with like, huge databases.
So there was limited incentive to upgrade from that aspect. And then, I think now that like, Drupal 9 has been out for a little while will and Drupal Commerce has supported Drupal 8 and 9 for a long time. There's definitely like, incentive to look again closely, but, again, like Contrib is the most important thing for us because that's sort of where.
[00:09:43] Scott Hadfield: The end users see a difference, the Drupal 7 versus Drupal 9, like the backend improvements. Aren't going to really be noticed by end users at all. It comes down to, I'm more of a developer decision. But yeah, we're [00:10:00] definitely like the most, the thing we're most interested in, like what features commerce has to offer now that it, that our version of commerce doesn't.
[00:10:09] Michael Meyers: Yeah, you're in a unique experience where you've been through this so many times 4 to 5, 5 to 6, 6 to 7 that, you just inherently know what's going on. What's going on in the pros and cons.
[00:10:21] Scott Hadfield: Yeah and you follow what's happening the whole time. Yeah.
[00:10:21] **Michael Meyers: **So it's different than say an organization that isn't as familiar and hasn't gone through this with Drupal, the processes and approach that they're going to, they're going to need to take is slightly different.
And I do want to point out like a really important thing that you said there is, and we'll come back to this later, I'm sure. You're making a business decision now not to migrate. But you're not saying you're not going to migrate. You're saying, it doesn't make sense for us as a business to do this.
but we're continually evaluating and keeping an eye on the situation. And I think that's one of the great things about extended support is that it [00:11:00] enables you as a business to make a business decision when the timing is appropriately for you and not be held hostage by your technology.
[00:11:14] Michael Meyers: Going back to our days at Now Public, I remember, you know, we started on 4.5 when that was a beta, we had to upgrade to five, which was an entirely different platform. We had to upgrade to 6, which was an entirely different platform. And I remember, working with you on that and, and talking to our investors and being like, okay, We need to freeze development for a month and a half, two months to upgrade from, 5 to 6.
And there's going to be no features and our roadmaps on hold. And they were like, oh, are you kidding me? Like this is crazy. And, they weren't wrong. Like historically you very much were a victim of Drupal's lack of backwards compatibility and really difficult upgrade process.
And it's gotten better over time. To the point where now, [00:12:00] once you're on 8 and above the upgrade process is seamless, it's or as seamless as you could expect it to be, it's super light, lifting 8 to 9, 9 to 10, 10 to 11 is a very minor change versus, any previous major version jump, which was basically going between two different platforms, migrating to another technology stack almost.
What are, when you were thinking this through, you basically have two, well, you have a few choices, you're not going to archive your site. You're not going to go static. So some of the choices that are sort of edge cases are not applicable to you. I'd imagine it came down to two things, are you going to migrate to another platform entirely or another version of Drupal or are you going to stay on Drupal?
When you were thinking about migrating. What were, are some of the reasons that you would migrate? What are the advantages? What, why would you choose to migrate or will you eventually choose to migrate? [00:13:00]
[00:13:00] Scott Hadfield: Yeah, so there's certainly like a lot of features that are existing in the most recent versions of Drupal that we had to, n
I want to say, build workarounds or custom code. So we have a whole bunch of custom code on the site that we could potentially replace with improvements that came into core and contrib. So that would be less for us to maintain and possibly more features as well. and then. Again, it comes with like, the added security.
We don't have to do security audits as much on our own code because it's a lot of it's done with core and contribute already and then so that would let us reduce some of the custom code that we've built and maintain. And then, I guess, like you've also got, like there's a lot of potentially questionable code that we have on the site that we could replace at the same time.
All the technical debt effectively, we could, we'd be able to [00:14:00] do that. Just like a general, cleanup at the same time. Which is always a nice thing to be able to do. Oh, over the course of like 10 years of the site being added onto, and then just any kind of new tech and features that have come out.
[00:14:17] Scott Hadfield: So improvements in Drupal Commerce, search, and then especially mobile would be, would probably be some of the biggest advantages for the end users and usability. Any kind of search optimization stuff that's happened. And then I want to say, like right now it's easy to, it's still easy to find, developers to work on Drupal 7, but at some point you will start, you're already starting to lose the Drupal 7 expertise too, because all of the best developers are moving to Drupal 8 plus. so there's still a lot of, skills in Drupal 7, but that is going to become less over time.
[00:14:56] Michael Meyers: Yeah. Those are just some very compelling advantages.
Being able to reduce your custom code base and rely more on contrib and core is huge for a business. The opportunity, you know, technical debt is like a weed it's going to grow back, but, being able to hit that reset button and eliminate a lot of what you've done and make some architectural changes, I'm sure there are a lot of things that you've been thinking about that you would want to change if you can go back and you just can't because it doesn't make business sense.
[00:15:29] Michael Meyers: You gotta move on. And all of those features and functionality enhancements. And upgrading can be really worthwhile, but it is very time consuming, very expensive. There are a lot of serious downsides that, that inhibit that. When you, when you thought about the extended support route by comparison, why were you leaning towards that?
What are some of the key things that you thought about on that front?
[00:16:36] Scott Hadfield: Yeah, like everything, it comes down to available resources and priorities, so it would be extremely expensive for us to upgrade, far more than, the cost of maintaining the existing code base and adding enhancements to it as necessary.
Putting resources into marketing and growing the business is still a better use of our money and time and everything else that every other resource for a business. And there's not really, there's not really any key things missing from Drupal 7 that are actively holding things back. Yeah, though, it's not the latest and greatest, but we're still getting everything that we need from Drupal 7.
[00:16:36] Michael Meyers: Yep. you mentioned, the, the training, the education, the difference in the platforms, you have a team of developers that are intimately familiar with your code base that are intimately familiar with Drupal 7 and have a lot of institutional knowledge about the company. Another factor is, you know, when you upgrade is the training and education of your team, and
[00:17:01] Scott Hadfield: Yeah. And we have non-technical people on the team too, that they use the site every day to manage orders and support and things like that. The non-technical people would especially need the new training.
[00:17:13] Michael Meyers: Yeah, the great thing about different versions of Drupal, even though under the hood, things are very different, conceptually they're very similar. And the site builder role, which I think is one of the key differentiators for Drupal as the platform enabling non-technical people to be able to control much of the site and functionality. That could, the menuing system where things are like there, things definitely change.
But conceptually the framework is there from version to version. And so it's, there is a training effort for those individuals, but it's not, the difference between Drupal 7, in functional programming and Drupal 8 and object oriented programming and all of these libraries that are, it's, that is night and day, that is a massive leap by comparison.[00:18:00]
[00:18:00] Scott Hadfield: Yes. Yes. Yeah. Although Drupal 7 does have a solid object oriented architecture as well. Just not to the same level as Drupal 8.
[00:18:09] Michael Meyers: Yeah. yeah, it really comes down to, from a business standpoint, you know, staying on Drupal 7 makes the most sense. You have limited capital, limited resources.
Like every business, you never have enough of either. No matter how big anyone gets, and it makes more sense as an organization to focus, those resources and funding where it's going to grow the business. And if the technology largely, if not entirely meets your needs right now, it's a way better investment of your resources to focus on growing the business, and things of that nature. And at this point you've decided to go the Drupal 7 extended support route. And we talked about the pros and cons between migrating and [00:19:00] choosing extended support. I want to talk a little bit about the pros and cons of extended support on your business.
[00:19:06] Michael Meyers: yeah, just a little bit of insight.
[00:19:08] Scott Hadfield: Yeah. That's so there's a lot of pros. So we, so first of all, I've already said this, but we don't lose much by staying with Drupal 7 and we gain a lot. The biggest issues would have been things like, security or being able to continue building our features, but, security updates are still coming, which is critical to any online business.
And we can keep building out features, functionality that we need. Because Drupal is open source effectively. We can always do anything that we need to do there. So we still have access and can make changes to any of the contrib. and then yeah, there, there will like there's D7 devs available. So even if we can't find a lot of people locally or things like that, The extended support gives us access to the developers that we need. Um, [00:20:00] yeah. So, and again, like you can even say like the same developers could help you with upgrading to, to Drupal 8 plus Drupal 9 or 10, once you decided to go with that route or once we've decided to go that route.
But yeah, we're like, we're pretty happy with that decision. And there's certainly like for the foreseeable future, I don't think we're going to regret that.
[00:20:26] Michael Meyers: You know. Yeah. you don't really lose too much, we'll shift into the, what you might lose in a second, but, there, very little is holding you back from continuing to run and operate your business.
On D7, you can add features and functionality. You can run it securely. you still have access to the code to, to change and enhance Drupal on the contributed modules. One of the things that you said the other day when we were chatting and I love this was that, one of the reasons that we love Drupal is that it's open source.
[00:20:58] Michael Meyers: And one of the things that's great about open source is: you do have access to the developers. Like you said, you, there are always going to be developers out there. And if you had built Hello Pretty on a proprietary system, you're, you're SOL, when it goes end of life, you have no recourse.
When Microsoft stopped supporting a version, you're either going to run it insecurely, which is a really bad idea, or you're going to be forced to upgrade. And now you're a hostage to your technology again, so.
[00:21:30] Scott Hadfield: Yeah, and certainly companies do that. They keep old servers around running old software so they can keep running whatever they need. But it comes like anything online, it comes with huge risks to do that. But with anything open source, like Drupal, you can always pay someone to solve your problem. So you always can find a solution for it, whereas proprietary, you are at the whim of the business.
[00:21:55] Michael Meyers: Yeah. So while there are a lot of positives, there are some drawbacks to extended support. From your perspective, what are the downsides of going this route? What are the trade offs?
[00:22:09] Scott Hadfield: Yeah. so the trade-offs are like new features. Aren't really going to be getting added to contrib modules in Drupal 7 anymore.
It would be there, there may be an exceptional case where a new feature does get backported, but it's going to be rare. So you aren't going to have the advantage of the community so much. And then, yeah. And then there's the other thing is along those same lines is there's, there's going to be changes in mobile.
I dunno, watch OSs and things like that, that we don't know about. And with e-commerce we want it to be as easy to buy things as possible. So, any kind of new technology that comes along, it's going to be a lot harder for us to get support for sticking with Drupal 7 versus going to like Drupal 10 or anything that's like the leading edge. But even then, still in a lot of cases, it's going to be cheaper for us to build the integration than to, to upgrade to Drupal 8 or 9 at this point.
[00:23:10] Michael Meyers: Yeah. The community support with contrib is a big part of running a current version of Drupal. We did an analysis of Drupal 7, like the top 100 contributed modules and the majority, like over 75, 80%, haven't been updated in well over a year.
And of the ones that have been updated, it was like a really minor release and it was one patch, like one update. While Drupal 7 itself hasn't yet gone end of life. Like you said, a lot of the, the top developers have moved on to other platforms and, Drupal 7 contrib is essentially already at end of life.
[00:23:49] Michael Meyers: And so that is, now you have an awesome team of developers. You're really familiar with core, you're in a position where your team and organization can [00:24:00] add features to contributed modules. And so it's less of a barrier or a, a concern for you, it's time and resources and money.
You'd rather spend on other things. But, for some organizations that aren't as intimately involved in the creation of Drupal, that's probably their, their biggest sticking point is, they're, new features and functionality are going to be limited largely to what they are building, for their site.
They're going to lose some of that.
[00:24:33] Scott Hadfield: And certainly anyone doing like a large undertaking. I want to say with taking an existing site and doing a massive changes to it, you would certainly want to look into doing it on the latest Drupal. But anybody that's sticking with like anyone that has like a lot of existing infrastructure and code, then it becomes a lot more, a lot harder of a decision to make, to do that.
[00:24:56] Michael Meyers: Yeah. And you know, there, there are always trade-offs, from a business standpoint, for the reasons you mentioned, you can invest all that capital and other things that are going to drive the growth of your business. Very meaningfully, so that's a really, by comparison, that's a pretty small drawback.
You still have the ability to add features and functionality. You're still growing your business. The cost of an upgrade, the effort, the time it takes away from other things is significant. So that's, essentially the one main drawback,it's well worth it. And like you said, it's not like you're staying on Drupal 7 forever.
You can stay on it for as long as you want, whether that's one year or five years or whatever, it's just about leveraging extended support to put you in a position to upgrade when you want to upgrade and not be forced to upgrade because it's end of life.
[00:25:49] Scott Hadfield: Yeah. Yeah, exactly.
[00:25:52] Michael Meyers: Awesome dude. It was it was so good to see you.
I, I really appreciate you, you talking this through, giving people a perspective of, what it's like as a business to make these decisions I think is really critical. So I appreciate you giving us insight into your process and thinking, and why you chose to go the Extended support route.
We'll- we'll put links to HelloPretty.co.za in the, in the show notes and folks should check it out. There's really awesome stuff there. If you like this talk, please remember to upvote, subscribe and share it out. You can check out our past, Tag1Team Talks. at Tag1.com/tagteamtalks, as always we'd love your feedback on this episode.
Any topics, suggestions, things you guys want to see us cover in the future, you can write to us at firstname.lastname@example.org. Check out Tag1.com/EOL for end of life, for a lot more information about Drupal 7 end of life and extended support, pretty much everything you need to know is there from, the links to code and modules, the [00:27:00] communities created that are gonna help you diff your site versus, what's available in 8-9 and help you evaluate and measure the upgrade process and what it's going to take, to, DrupalCon presentations on, what end of life is, how it works, what the process is and all that.
Again, Scott, thank you so much for taking the time out and joining us today, and to everyone who tuned in, thank you so much for joining us.
[00:27:25] Scott Hadfield: Thank you.