Episode Number 62

Large EE Sites, Revisited, with Travis Smith

Feb 25, 2016 @ 11AM MT

ExpressionEngine for large-scale sites? Yes, says EE expert Travis Smith, and he’s got the statistics to back it up! Travis returns to the show as we revisit one of our EE Podcast episodes on large EE sites to discuss what has changed and what’s stayed the same. Travis details his updated statistics about the largest EE sites on the web today, and discusses the factors that make a site “large.” He also shares tips for efficient development, good infrastructure and mitigating the challenges large sites introduce.

Tags:
travis smith
eecms
expressionengine
large-scale sites
high-traffic
planning
development
workflow
efficiency

Episode Transcript

Download Transcript

CTRL+CLICK CAST is proud to provide transcripts for our audience members who prefer text-based content. However, our episodes are designed for an audio experience, which includes emotion and emphasis that don't always translate to our transcripts. Additionally, our transcripts are generated by human transcribers and may contain errors. If you require clarification, please listen to the audio.

TBD

[Music]

Lea Alcantara:  From Bright Umbrella, this is CTRL+CLICK CAST!  We inspect the web for you!  Today we’re revisiting a topic from our EE Podcast days: large ExpressionEngine sites! And returning to the show to talk with us is Travis Smith.  I’m your host, Lea Alcantara, and I’m joined by my fab co-host:

Emily Lewis:  Emily Lewis! 

Lea Alcantara:  Today’s episode is sponsored by Visual Chefs, a versatile web development agency with expertise in content management system and custom web application development through partnerships with designers, agencies and organizations, Visual Chefs propels the web forward.  Visit visualchefs.com to learn more. 

[Music ends]

Emily Lewis:  As Lea mentioned, today we’re talking about a topic we’ve already tackled back when we were the EE Podcast, large EE sites, but it’s been three years since then and — actually it’s almost three years to the day.  [Laughs]

Lea Alcantara:  Yeah, totally.

Emily Lewis:  And a lot has changed with ExpressionEngine, the EE community and the sites running ExpressionEngine, which is why we have Travis Smith as our guest again because he’s updated his statistics about the largest sites running on EE — the very same statistics that prompted our original EE Podcast episode.  In addition to being a steward of these EE stats, Travis is the owner of Hop Studios, an award-winning web design and development company.  Welcome back to the show, Travis!

Travis Smith:  Thanks a lot for having me. 

Lea Alcantara:  So Travis, can you tell our listeners a bit more about yourself? 

Travis Smith:  Sure.  I run a company called Hop Studios.  We’re based in Vancouver, Canada.  We’ve been in business now for 12 years I guess — something like that — and we focus on ExpressionEngine development and design.  We’re probably Canada’s ... well, my website says we’re Canada’s leading ExpressionEngine development company, so I hope that’s true. 

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  And I’ve been doing websites — and someone asked me about this recently — I’ve been doing website development for 21 years now. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Wow.

Travis Smith:  Yeah, it’s been interesting to see where this thing has come from a long, long time ago. 

Emily Lewis:  Let’s talk about what you’ve been up to since we first talked with you three years ago.  As you mentioned, your Hop Studios agency does a lot of EE work.  Is that still your primary CMS that you use for your clients? 

Travis Smith:  Yeah, if anything, we’re probably more EE heavy than three years ago.

Emily Lewis:  [Agrees]

Lea Alcantara:  Oh, interesting.

Travis Smith:  Yeah, we’ve added many more clients that are ExpressionEngine, and we’ve lost one or two along the way that were not ExpressionEngine.  So I wouldn’t say that we’ve been deliberately moving towards more EE, it’s just that the percentages have just shifted because we’ve grown and we’ve stuck with the product. 

Emily Lewis:  Do you use any other CMSs or even build something custom?

Travis Smith:  Oh, building something custom, no.  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  We’ve got sites on a number of other platforms out there still.  We have a couple of sites in Drupal, and we have one in Movable Type still actually. 

Emily Lewis:  Wow!

Lea Alcantara:  Oh, wow!

Travis Smith:  I know.  Actually, that one is a single site that’s running Movable Type and ExpressionEngine.  Don’t ask.

Emily Lewis:  [Laughs]

Lea Alcantara:  Wow, wow!  [Laughs]

Travis Smith:  Yeah, it’s actually called Real Baking With Rose, and the forums were ExpressionEngine, so that was an interesting mix because we built it a long time ago, we’ve never switched it over.  We’ve also got some sites that are built with just simple templating, cloud-based solutions like Squarespace and so forth. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  But overall, no, we’ve stuck with EE.

Emily Lewis:  I like hearing that.  We’ve heard a lot the past couple of years and we even find it true for ourselves that we are using more CMS options that aren’t ExpressionEngine, because I feel that the offerings are simply better than they were three years ago.  We still have a lot of EE clients, but we’ve definitely dabbled more in other areas, so it’s kind of nice to hear that your core business is still solidly EE and growing strong.

Travis Smith:  Yeah, it is, and I think that comes from probably the place where we are.  People seek us out because they want ExpressionEngine.

Emily Lewis:  Right.

Travis Smith:  So we would feel weird convincing them to use some other CMS, but there have been one or two cases where someone has come along and we’ve said, “Oh, the best tool for you is actually a slightly different CMS.”  So we’re not wedded to it, but it’s just that’s how our business has grown. 

Lea Alcantara:  Interesting.  So as your business has grown, your experience obviously has affected your choices and everything and includes your perception of what a large site is, possibly.  When we originally chatted, your primary factor in defining what a large site was was traffic.  Is that still true?  Has that changed? 

Travis Smith:  I would say that it’s definitely still true.  For me, a large site is a site that handles a large number of visitors looking at a large number of pages. And there are some things that feed into that, like certainly a site that has a single page is unlikely to have the same amount of total traffic as a site that has 20,000 different pages.

Lea Alcantara:  Right.

Travis Smith:  But at the same time, if you’re a single-page site and you’re getting just a huge amount of traffic.  For me, that puts you on the list. 

Emily Lewis:  What are some of the other factors that might make a site large, particularly where EE is involved?  Could it be like the number of templates that are used to create the pages on the site, or the number of like members in, perhaps, like a membership forum?

Travis Smith:  Yeah, I mean, from my definition of largest, I was going by what would appear to, if you were just talking to somebody walking down the street where they’d be like, “Oh, okay, yeah, I understand why that site is large.” 

Emily Lewis:  [Agrees]

Travis Smith:  There are definitely sites that I’ve seen that are insanely complicated, but they don’t necessarily have a huge amount of traffic. 

Lea Alcantara:  Right.

Travis Smith:  We did an upgrade for someone recently and they were using Multi-Site Manager and they had like nine sites in there, some of them had a couple of sub-sites, and each of them had like 48 templates.

Lea Alcantara:  Wow.

Travis Smith:  Like it wasn’t that they had a simple sort of set of templates and then nine different sites.  They were just a big, confusing ball of mass, but they weren’t getting a huge amount of traffic and they wouldn’t have ended up on our list, even though I think for EE developers, they might have been quite interested and like, “What’s going on with that site?  How do they run that all?”

Emily Lewis:  I think Lea and I are actually dealing with that right now.  We inherited a site, which is also a Multi-Site Manager system, and it’s got a mind-boggling number of templates. Like I haven’t seen anything quite like that before, and we’re trying to move the client away from that sort of situation, but it does leave to my perception, as the developer at least, of a very large site, particularly in terms of maintaining it or changing it or even upgrading it.

Travis Smith:  Well, I think that’s true, and I also think that sometimes a site that is large and complicated under the skin doesn’t necessarily have to be. 

Lea Alcantara:  Right.

Travis Smith:  We have a site recently that grew.  It’s a newspaper site and it grew from just having a couple of different sections to having many, many different sections and columnists and the way that they built it, they ended up creating new groups of templates every time they added a section.

Lea Alcantara:  Right.

Travis Smith:  Well, ultimately they had hundreds and hundreds of template groups even, and then we decided, “Okay, well, we should go back and refactor that,” and now they have a much smaller number of template groups, but their site traffic is actually bigger.  So outer view and inner view are not always the same.

Lea Alcantara:  Yeah, absolutely.  I feel like you described every WordPress developer trying to get into ExpressionEngine site.

Emily Lewis:  [Laughs]

Lea Alcantara:  Because I’ve inherited similar sites like that where, whoa, they literally made a template group or a template for every single channel or there is a channel for every page.

Travis Smith:  Yes.

Lea Alcantara:  And while that creates a site, that’s not an ExpressionEngine site, and that’s is really interesting.

Travis Smith:  I had a site that I worked on.  It was a five- or six-page site and each page had three channels.  [Laughs]

Lea Alcantara:  What?  [Laughs]

Emily Lewis:  [Laughs]

Travis Smith:  Yeah, they used the channels for each part of the page, like a channel, and so anyways, it was odd.

Lea Alcantara:  That’s interesting.  [Laughs]

Emily Lewis:  Yeah, I think it’s a challenge, I think, is the best way to put it is that EE can really do just about anything you can make it do whatever you want, whether it’s good or bad or efficient or not. And I think back to some of my earlier EE builds, and they were not necessarily efficient in terms of use of channels and templates and stuff.

Lea Alcantara:  [Agrees]

Emily Lewis:  And I think it just reflects how far at least I have come since I started using ExpressionEngine however many years ago it’s been that I can now see that there is, while you say it’s true, like the front and the inside don’t necessarily equal large, but when you’re dealing with a lot of assets inside ExpressionEngine, it does lend your thinking to, “This could be much better.” Whereas six years ago, I’d be like, “Oh yeah, this is fine.  No problem.  It’s just a big site with a lot of templates that I have to manage.”

Travis Smith:  Yeah, and even still for some of our more complicated clients, we sit down at the beginning and go, “Okay, how are we going to do this?  Are we going to use categories or channels or statuses or some sort of text field, or how are we going to make this content easy to build and then to update and so forth?”  But in terms of largest, for the purpose of the list, it’s about traffic and also about the amount of content the site has.

Emily Lewis:  [Agrees]

Travis Smith:  And then I don’t want to say just name recognition, although that helps.

Lea Alcantara:  Right.

Travis Smith:  But I mean, certainly, like the amount of sort of buzz or if that somebody would look at that list and go, “Oh wow, that one, that’s what I want to have for the list.”

Timestamp:  00:09:57

Emily Lewis:  Right.  So let’s talk about that list a little bit.  Why did you initially compile the statistics back in 2012? 

Travis Smith:  I initially compiled the list because I couldn’t find one.  [Laughs]

Lea Alcantara:  Right.

Travis Smith:  I think that’s how a lot of resources on the internet get started.

Emily Lewis:  [Agrees]

Travis Smith:  And I wanted to have a list of what was really big out there.  I think at the time I had also heard that the — oh is it this long — that Barack Obama’s site was built in ExpressionEngine, and I was like, “Really?  No way it can handle that much traffic.”

Emily Lewis:  Right.

Travis Smith:  And I checked it out and sure enough, it did, so I just decided that I was going to create a list and share it because it was useful for my clients, in selling to my potential clients to say, “Hey, yeah, ExpressionEngine can handle that.” And at the same time I was just curious myself, like I wanted to see what other developers were up to and who is handling the big sites, and then how they were doing it so I could call them up and say, “How are you doing that?”

Emily Lewis:  So is that something that you utilize often when you’re dealing with, let’s say, a prospect to talk about ExpressionEngine supporting these large systems.  It’s primarily a sales resource for you?

Travis Smith:  Yes, absolutely.  Although I will say that there have been fewer times when people have seemed concerned about the traffic that ExpressionEngine can handle over the past three years than I would say over the three years before that.

Emily Lewis:  Huh?

Lea Alcantara:  Interesting. 

Travis Smith:  I don’t know if that’s because ExpressionEngine is a more solid, mature product now and people just know that it can handle traffic, or if it’s not being considered for this super big traffic sites that are being built out there.

Lea Alcantara:  [Agrees]

Travis Smith:  I don’t know which it is.  I’d like to think it’s the former.

Lea Alcantara:  Interesting.  Well, that leads me to wonder since originally compiling your original 2012 list and then very recently, just last week, you updated the list.  What has changed since then?  Does your updated statistics reveal anything in regards to the landscape of large EE sites?

Travis Smith:  This year — and I do try to update it annually, though I think I missed a year — and I think this is the second update since we talked last.  This year there weren’t as many changes on the list.  There weren’t as many new large sites, but I don’t want to say that that’s because ExpressionEngine isn’t being used for large sites.  For some reason, I had a harder time just finding big sites or getting feedback about what sites that are really large that are on ExpressionEngine or aren’t on ExpressionEngine.  There were a couple of new additions this year, but I feel like maybe I could have done a better job in finding some other really, really big ones.

Lea Alcantara:  Or does that really reflect that things are just kind of staying steady?

Travis Smith:  I do think it reflects that things are staying steady.  There has been a couple of sites from the list — and you know I keep a list of not just the ones I publish, but I have a very long list of like sites that are number 30, 40, 50, 60 or whatever that are just lower — and there have been a few that have switched away from ExpressionEngine to some other content management system or they would have gone away in general.  I mean, that happens with websites.

Lea Alcantara:  Okay.

Travis Smith:  But yeah, I think it might also just be an indication of stability, that like once Garmin is using ExpressionEngine with some of their infrastructure, they’re going to be huge and there’s not going to be another site that comes along to take them off of that list. Because, hey, I know my extremely large clients — and they’re not even really on the list other than the one.  My really large clients, they don’t want to switch content management systems. 

Emily Lewis:  Right.

Travis Smith:  They like ExpressionEngine and they’re not about to go through the process of migration if they don’t need to.

Emily Lewis:  Right, they’re invested.

Lea Alcantara:  Yeah.

Travis Smith:  Yeah.

Emily Lewis:  All right.  So Travis, you actually updated your statistics just the other day.  The two things that stand out to me as new because you highlighted them so nicely in green is we actually have the Donald Trump site running on it, and so is a religious ministry site.  I think it’s interesting that Barack Obama’s site is still at number one, and then now we have another US presidential candidate using the sites.  Do you have any knowledge of who the developers are with those?  Did that person kind of — I don’t — were they inspired by the success of Barack Obama’s site and how it handled the traffic so well during his initial campaign, and that why it was a good fit?

Travis Smith:  Yeah, so I don’t know if that’s the case.  Actually, I’ll tell you a little bit of a back story.  I think I said earlier that it was Barack’s site that made me think, “Oh, ExpressionEngine can handle really, really big traffic,” but I was looking at it just now and it’s actually change.gov, which was the site that Barack had put into place right after he got elected about like, “What are we going to do when we get in?”

Emily Lewis:  Oh, right.

Travis Smith:  And that was the one that made me go, “Wow, everybody has heard of that.  That’s amazing.”  So yes, it is very interesting, and then after that — his personal site, not the White House site — but the personal site was ExpressionEngine.  So yeah, I find it pretty interesting that on this list, you’ve got Barack Obama and Donald Trump.  On the other side, you’ve got number seven and eight, like one is a very pornographic website and the other is a religious ministry that’s pro-life and they have just about the same amount of traffic.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  So yeah, this list has a bunch of contradictions like that.

Lea Alcantara:  Fun facts.  [Laughs]

Travis Smith:  The developer of the Trump site is, I’m blanking on it, I should not forget his name.  He runs everything.  It’s the DevDemon guy.  It’s…

Lea Alcantara:  Brad Parscale.

Emily Lewis:  Oh.

Travis Smith:  Yeah.

Lea Alcantara:  [Agrees]

Travis Smith:  It’s Parscal(e). 

Lea Alcantara:  Oh, it’s Parscal(e). 

Travis Smith:  Yeah, and he confirmed with me after I’ve put the list up that, yes, in fact, the Trump site is still running ExpressionEngine.  I knew that it was running it last year, but I haven’t confirmed it as of like the publication date of the list. And traffic-wise, I haven’t updated the list so I’ll look for that number before the end of the interview.  But yeah, it’s getting pretty significant amounts of traffic as you might guess.

Lea Alcantara:  [Agrees]

Emily Lewis:  It just occurred to me.  I just wonder if that seemed … I mean, obviously, Brad is going to choose ExpressionEngine.  It’s going to be one of his top choices because he’s so experienced in it, but I wonder if it was part of his sales discussion to say, “Well, this has supported a site for a presidential candidate.  It can support this kind of traffic.”  I can see that being a really useful sales discussion.

Travis Smith:  I think it totally would be.  The fact that ExpressionEngine can be a good administrative back end and a very secure content management system, that it has handled the traffic of a presidential candidate before, I think that was probably all part of the pitch. 

Emily Lewis:  [Agrees]

Travis Smith:  I don’t know, but I have no knowledge of this, like I don’t know if they ended up working with Brad because they asked a bunch of people to pitch and then he said, “ExpressionEngine is the way to go,” or if the people decided they wanted an ExpressionEngine site and then went to Brad because he’s probably really, really good at this stuff.

Emily Lewis:  [Agrees]

Travis Smith:  So it could be either way. 

Emily Lewis:  So I think I already, I mean, I know the answer to this question based on what you’ve already said that EE is a good fit for large sites, but do you have any feelings about what EE offers that makes it unique or better than other solutions for these large traffic sites?

Travis Smith:  It’s a good question.  I think that there are a couple of things that make ExpressionEngine good at large traffic sites.  One is that, and this is sort of indirect, I mentioned the administrative control panel, you’ve got so much flexibility and control in ExpressionEngine to be able to create a system of organizing your content no matter how complex that content is, right?

Lea Alcantara:  Right.

Travis Smith:  Like whether you’re talking about these relationships and you have fields that have all sorts of different kinds of data and you want to keep it all sort of in an easier to use sort of interface.  I won’t say easiest because none of it is easy if it’s complicated, right?

Emily Lewis:  [Agrees]

Travis Smith:  But ExpressionEngine, I just feel like it’s a good tool for people, so I feel like if you can show that it’s going to handle the traffic, then you can say, “Well, it’s going to handle the traffic, but really it’s going to make your life easier and you’re going to have a bunch of editors and you’re going to have a bunch of people trying to change this and trying to change that all at once, and you want your content to go to these six different places, and ExpressionEngine is going to just be able to manage all that for you.” And then the second one again is that it’s not directly traffic related, it’s that we always pitch on security and say, “Look, ExpressionEngine is not going to get hacked, or at least not easily.”

Emily Lewis:  [Agrees]

Lea Alcantara:  [Agrees]

Travis Smith:  And I feel like for a large traffic site, especially if you’re pro-life or if you’re Donald Trump or if you’re Barack Obama, security is probably really far up there in the list and you don’t want to go with a system that’s constantly, constantly getting malware attacks or that you need to keep updated like instantly, you know?

Emily Lewis:  Right.

Lea Alcantara:  Right.

Travis Smith:  It’s not just that ExpressionEngine is secure, it’s that if I set up an ExpressionEngine site for somebody, I don’t need to update it every month or month and a half to the latest version, you know?

Emily Lewis:  [Agrees]

Lea Alcantara:  [Agrees]

Travis Smith:  I can set it up and it’s probably going to be pretty safe for at least a couple of years. Like I don’t know when the last time EE had a security bulletin was, but it’s been a while, knock on wood.

Emily Lewis:  [Laughs]

Lea Alcantara:  Yeah, absolutely.  Even though that isn’t “directly” related to traffic, it’s sort of is.

Travis Smith:  [Agrees]

Lea Alcantara:  Because the larger site is in terms of traffic, the bigger target they are for hackers, Emily Lewis:  [Agrees]

Lea Alcantara:  Regardless of what the content is, it’s just that they want to go after high-traffic sites to have sort of splashy, you know …

Travis Smith:  [Agrees]

Emily Lewis:  Impact.

Lea Alcantara:  Yeah, anarchy or impact or something like that. And also some people, they do just find pleasure in trying to poke holes in a popular site or system and then you add the subject matter on top of that, and that intensifies the need of having a system that is hyper secure and rather solid.

Travis Smith:  [Agrees]

Lea Alcantara:  So that’s one of the main features of EE that’s clearly a benefit for large sites, but a lot has changed in the EE software landscape in three years. 

Travis Smith:  Yeah.

Timestamp:  00:19:51

Lea Alcantara:  EE 3 has now just been released.  In regards to that, is there any particular features or benefits since the first time we spoke to you to now that has helped large-scale needs and helped high traffic sites?

Travis Smith:  Well, I don’t know that many large sites that have switched over to EE 3 yet, and certainly none of my large clients have done that.  Partially, that’s because not all the add-ons have converted over yet.

Lea Alcantara:  Right.

Travis Smith:  Though I will say that they’re being converted over, they’re being updated for EE 3 at a really good pace compared to the EE 1 to 2 conversion, I think.  Third, like I’ve just been really impressed with like how soon it’s going to be, and pretty much every add-on that I can think of is going to get upgraded, which is great.

Lea Alcantara:  But even EE 2.10, right?  Like I mean, that brought a lot of new features to EE.  Do you think any of that benefited large-scale sites?

Travis Smith:  Yes, and no.  For the EE 2 line, I think that there has been a lot of functionality that’s been rolled into the core of EE that used to be handled by add-ons.

Emily Lewis:  Right.

Travis Smith:  And that’s always a positive in terms of people who are in feature comparisons, but I would also say that if you are a large site and you are running EE 2.5 and you need to use some add-ons to make your site do what want it to do, you would probably have done that.  So I don’t know that it was a showstopper.  I just think it’s nice.  The big thing with EE 3, I think, is the mobile interface and better file handling.

Lea Alcantara:  [Agrees]

Travis Smith:  And those two things just were kind of lagging and to bring those up to speed just really means that if I was going to tell a new client who is thinking of building a large site, I’d be like, “Yeah, go with EE 3.  It’s very modern.  It’s going to be able to handle your needs and your traffic needs.”

Emily Lewis:  I don’t remember what version it came out, but when EE introduced nesting in layouts, did that have any impact on how you were developing for your large-scale clients?  Because it occurs to me if you were to embrace using the native layouts in favor over embeds, that your page performance could be better, which then — taking it a step further — could make the site more efficient when it is hit with a lot of traffic.

Travis Smith:  Yeah, you know, again, it is actually a huge benefit.  We’ve been using layouts now, not as long as everybody because it took me a while to figure out how they worked, but it is sort of that you have to wrap your head around, or it wraps its head around you because it’s a layout.

Emily Lewis:  [Laughs]

Travis Smith:  So once I figured that out, it definitely allowed us to build in a more efficient way. First of all, straight up just from like database queries and processing time, but also from a maintenance and upkeep and organizing your information and pulling it all out, like just in building it, it just all goes more smoothly now. 

Lea Alcantara:  [Agrees]

But again, before layouts came around, there was Stash, which is layouts plus a couple of other extra little thingys, like Stash was amazing, and I feel like some people who are doing large sites were already sort of taking advantage of that.

Emily Lewis:  [Agrees]

Travis Smith:  Again, now that it’s native though, it really again puts ExpressionEngine on yet a higher step, and yet a higher platform of like, yes, we can handle your large traffic site because we can help you be organized about it and we can help you be efficient about it and we can use the least of database calls necessary to have an incredibly dynamic site.  If you have a front page and it’s got like ten different kinds of elements that are in all these different categories and that are coming from all these different sources and all this stuff, like there’s a minimum amount of like calls to the database you have to make to build that page.

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  But if you can cut that in half or a third by being efficient about the structure of the code of the tool, it’s a huge help.  But I’ve never pitched to a client on the basis of now ExpressionEngine has layouts.  That’s just more of a developer thing, you know?

Lea Alcantara:  Yeah, sure.

Travis Smith:  But yeah, it was a huge hit. That, Grid, the improved relationships field, all those things. 

Emily Lewis:  So when you are pitching to a client that’s going to have a large-scale site, what are you pitching to the client?  You mentioned security, and obviously you can reference some of these prominent sites that are listed in your statistics as proof of its ability to support it, but what are you talking to them about?

Travis Smith:  I usually show them, first of all, like, “Here’s a site that is five times bigger than yours that’s using ExpressionEngine and just running just fine with it.”  Like I showed that no matter how much you grow realistically, not exponentially, but even that, ExpressionEngine can handle it.  I know that people use change.gov as their like, “Hey, have you ever heard of change.gov?  Well, yeah, that’s ExpressionEngine.”

Emily Lewis:  [Agrees]

Travis Smith:  That’s a big thing.

Lea Alcantara:  [Laughs]

Travis Smith:  And then for a second one, you just always try to find a competitor or a site that they go to often that’s also ExpressionEngine, you know?

Emily Lewis:  [Agrees]

Travis Smith:  Like which is pretty easy because there are a ton of ExpressionEngine sites out there and they tend — I shouldn’t say they tend — but I feel like there’s sort of clusters of ExpressionEngine in certain verticals because it’s just kind of happens.

Lea Alcantara:  Right.

Travis Smith:  So, “Hey, I was talking to a colleague, I was at a conference, their site is pretty awesome and it’s using ExpressionEngine and so we’re thinking of using it too.”

Emily Lewis:  [Agrees]

Travis Smith:  But one thing I find interesting about that is that I feel like sites are not necessarily awesome because of ExpressionEngine, they’re awesome because they have really awesome designers or developers who did a really good job. But those people happened to be using ExpressionEngine [laughs] to that really good job because it’s a good tool. 

Emily Lewis:  Yeah, I think, at least from my perspective, it’s a bit challenging, and again, your point is exactly correct.  I can’t help but think about this site that we inherited in that, like I was just saying, it has tons and tons of templates with this MSM site, and it’s an attractive site.  From a front-end perspective, it’s extremely well done, but the EE side — is also, what, five or six years old, so it doesn’t reflect some of the current practices — but it just shows that anyone can use a tool.  Whether they do it right or wrong — and I’m using those terms loosely — is a whole another story.  So I find it really difficult to talk to a client — not a client, a prospect — who maybe isn’t coming to us saying, “Oh, I’ve heard about EE or I even understand what a CMS is,” so how you talk to them about what a CMS can do for them. And I think like with ExpressionEngine, it occurs to me that one thing is useful for a site, let’s say it has large-scale administrative needs with a large team of content authors and editors, and so in that situation, I would sort of talk about like how we can create a nice workflow using this system, and it’s less talking about EE and more talking about what they would have in their own hands.  Do you find yourself having those same sort of conversations that aren’t really talking about the platform, but talking about the end result that you could give them?

Travis Smith:  Yeah, I try to focus on just pitching them on customizability and ease of use, so that, again, getting in a car for the first time is complicated, but there are cars that are comfortable and easy to drive and there are cars that will never be easy to drive. And so I just show them that we can customize ExpressionEngine to be exactly what they need it to be and try to convince them that it’s going to be something that they’re going to be able to stick with for the long haul. 

Actually, I will say this, the upgrade to EE 3 modernized the code base to a certain extent, which is also going to help us with speed and traffic time, being able to take advantage of some of the latest PHP stuff. But also just the fact that EllisLab continues to show signs of life and put development and effort and improvement into this product, that’s great.  The track record of the EE at this point is like ten years or eleven years or something like that.

Emily Lewis:  [Agrees]

Travis Smith:  So that’s something pretty wonderful to be able to point to.

Emily Lewis:  Yeah, it’s established and you can trust it, you know?

Travis Smith:  Yeah.

Emily Lewis:  And not only has the product been around for ten years, but if you’ve been working with the product for ten years, then you are even that much more adept with it.

Travis Smith:  Exactly.

Lea Alcantara:  Well, speaking of which, we’ve been talking a lot about the benefits of EE and how it works really well with large sites.  What does EE not offer that you wish it did?

Travis Smith:  Oh, okay.  There’s a bunch. 

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  One thing is multi-lingual capability. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  Out of the box, ExpressionEngine is not multi-lingual and it’s something that add-ons can get you a certain way, a certain distance with, but to be truly multi-lingual I think would be a big, big change, but also fantastically useful in a global market.  I think the second thing is — again this is a big one — and it’s a combination of workflow and permissions.  Right now, ExpressionEngine out of the box, you can only be one kind of member.  You can either be an editor or a super admin or a member, but you can’t be a blog editor and a forum editor, but not an article editor, you know?

Emily Lewis:  Right.

Lea Alcantara:  Right.

Travis Smith:  You can’t do permissions like that without getting really complicated, like they can make the permission model more robust. And then there’s the third one ... No, I think that’s it.  When clients come to us and they need a very robust sort of workflow model or like many, many different kinds of members, I sometimes go, “Oh, I don’t even know if ExpressionEngine is the right choice for you.”  Like that’s just the one limitation of the CMS.

Emily Lewis:  [Agrees]

Timestamp:  00:30:03

Travis Smith:  And I don’t know if it needs to be, like it’s working well now for many, many other kinds of sites, but I do think that they could add those things in and take another big chunk of sites.

Emily Lewis:  So that kind of leads into our next question, do you feel that there are certain types of sites, particularly large-scale sites that EE wouldn’t be a good fit for, like you were just saying perhaps a large number of members?

Travis Smith:  If you want to link it back to traffic, I would say no, like there’s no size of site that I would be like, “Oh, that’s too big, don’t use ExpressionEngine for that,” even certainly in terms of traffic.  In terms of documents or entries, I think you could talk to Anna [Brown] who does the… was it number three on the site?

Emily Lewis:  Zoco Loco or something like that.

Travis Smith:  Yeah, Zocalo.

Emily Lewis:  Zocalo.

Travis Smith:  Zocalo [Periodico], a newspaper in Mexico.  She’s got like — I don’t remember — but like 500,000 entries or something ridiculous like that.  I just made that up, but it’s a huge number.  Actually, I have a list here. 

Emily Lewis:  Oh, 1,200,000 entries?  [Laughs]

Travis Smith:  Yeah, yeah, and I don’t think I updated it this year.  I think that’s from last year.  [Laughs]

Emily Lewis:  Oh my god.

Travis Smith:  You know, like when you get into millions of documents or millions of files, ExpressionEngine is just not going to be able to handle that well. And it’s nothing on the program, it just require at a certain point you have to switch from doing things one way of doing them to another, so that’s just the reality of EE.  So if you’re talking millions of X in terms of entries in the system, then I would say that’s not the way to go. 

But that’s not true for everything, like you can run EE forums with so many entries, and it’s totally fine. And even with members, you really, really have to get up there in the members before you start running into troubles, and even then it all can be handled with a good server architecture.

Emily Lewis:  Yeah, and I think when we had Anna [Brown] on last year to talk about using New Relic, I believe it was the Periodico Zocalo site that she had originally used it for to help her identify where some of the bottlenecks were. And I think when you’re getting into millions of entries, that’s when it’s not just the platform, it then becomes you have to track down every little thing that could be contributing to a slowdown or a bottleneck somewhere on the site. And even as she was talking to us, it wasn’t like, “Oh, this is all ExpressionEngine.  All the things I found in New Relic, it was all EE.”  It was a mix of various different things, so you have to have kind of everything working at optimal situation when you’re dealing with something that massive, and that’s hard to come by.  [Laughs]

Travis Smith:  Yeah, and I will say this, again, out of the box ExpressionEngine, the defaults that they have for so many things throughout the system, they always — I shouldn’t say always — they almost always err on the side of scalability and sustainability, like if you build an ExpressionEngine site with EE and you leave things kind of at their default as you go and you build it the way EE want you to build, it’s really, really scalable. 

Emily Lewis:  [Agrees]

Travis Smith:  When I see people get into trouble, it’s because they have built a site and they haven’t understood what consequences of a changing a certain setting might be.

Emily Lewis:  [Agrees]

Travis Smith:  Even something like when you’re creating new fields, there’s a little box that says, “Do you want to make this field searchable, yes or no?”  And most people, they go, “Yeah, I want to make this field searchable.  That seems like something I’d want to do.”  But if you’re not thinking carefully about why you want to make that field searchable or you don’t understand that that’s only mean searchable on the front end, that fields are always searchable on the back end, or just little things like that, then you’ll end up with preferences that put more load on the database than it needs to be.

Emily Lewis:  Absolutely.

Lea Alcantara:  Good point.

Emily Lewis:  We’ve got a tip from Anna at that same podcast episode on New Relic that we are implementing for other clients with super small setting, but if you use Structure, there’s an option to — what is it — to add a trailing slash or to take it off, I can’t remember.

Lea Alcantara:  Yeah, it’s to actually add and it’s on by default, because I think in the old school, like way, way back in…

Travis Smith:  EE 1?

Lea Alcantara:  Yeah, like they added the slash, and then in newer versions of EE, ExpressionEngine would remove that slash. And then I remember there was like some SEO back and forth whether you should have a slash or no slash at the end of a URL, and at the end of the day, the no slash at the end URL won.  However, when Structure was being built, I think that check to have the slash on there is on by default, so what ends up happening is that EE removed the slash and then Structure tries to add it back, and then if you have some .htaccess going on trying to add or remove a slash, that adds another…

Travis Smith:  [Agrees]

Lea Alcantara:  Like yeah, so basically for this particular clients that we were troubleshooting, we found out that just turning that off so that there’s no forced slash at the end of the URL drops resource usage by 40%.

Travis Smith:  Yeah, yeah.

Lea Alcantara:  Like it was a ridiculous. 

Travis Smith:  Yeah, totally.

Lea Alcantara:  Like it was ridiculous.  We were like, “I can’t believe that adding the slash was a 40% increase in resources.”

Travis Smith:  Yeah.

Emily Lewis:  Yeah.

Travis Smith:  Yeah, I’ve had things like that too.

Emily Lewis:  It is little things like that, yeah.

Travis Smith:  Yeah.

Emily Lewis:  It speaks to being very knowledgeable about the systems that you’re using.  Maybe that’s one of the things, if you’re going to tackle a large site, make sure you know what the hell you’re doing with this thing in the first place.  [Laughs]

Lea Alcantara:  Right, right.

Travis Smith:  That’s a brilliant piece of advice.  Thank you.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  The same goes for fireworks, yes.

Emily Lewis:  Yeah.  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  So with that in mind, do you follow any particular development approaches that you think are particularly good for building a large site, like how you build your templates or how you set up channels, or how much you’re using add-ons or not?

Travis Smith:  Nothing that boils down to like a quick list of two or three things. 

Lea Alcantara:  [Agrees]

Travis Smith:  All of it has been learned and earned by painful experience.  I do have to say I actually really like taking over sites from other EE developers, and I don’t mean that from like, “Hey, I got your site.”

Lea Alcantara:  [Laughs]

Travis Smith:  I mean, whether it’s a good site that I learn a bunch from and go, “Oh, wow, you know, that’s great,” or it’s a bad site where I go, “Oh wow, you know like I learned something by digging into it and trying to fix it,” for me it’s always more interesting to pick up a site that someone else has worked on than it is to build from new, which is interesting.

Emily Lewis:  [Agree]

Travis Smith:  Other people in my office here, they like to build from scratch.  They can just have this beautiful white canvas and create the exact structure that they want. But I kind of like to go in and go, “oh,” and learn and change what we’re doing and so forth.

Emily Lewis:  I think that is one of the things that we’ve noticed recently because we’ve inherited sites is that we’re learning a whole lot more about something I think we both felt very expert in.

Travis Smith:  Yeah.

Lea Alcantara:  Right.

Emily Lewis:  Trying to figure out why someone chose to do what they did and kind of reverse engineering kind of thing.

Travis Smith:  Maybe we should set up like some sort ExpressionEngine potluck exchange or something.

Emily Lewis:  Yeah, and that would be fun.  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  It’s where everybody takes a client and swaps with another client, like trading cards.  It would be fun.

Lea Alcantara:  Since you inherit a lot of sites, this leads me to the next question we had in our original episode with you.  You mentioned how small things add up over time as sites get larger and larger, and that’s definitely true when you inherit a site, you’re like, “Okay, what happened here?”  Right?

Travis Smith:  [Agrees]

Lea Alcantara:  If you have a super large site and say you are starting with a blank canvas, are there ways to mitigate these issues as a client site scales from small to large, or is this what happens like the larger site gets, you just try to manage it?

Travis Smith:  It almost always just kind of happens, but you can certainly build in ways that take that sort of thing into account and try to avoid it.  One example is when you are building a channel and you want to be able to pull things out of that channel based on what kind of thing they are.  I mean, in this case, like articles and the articles belong to certain sections.  If you want to be able to put articles in a bunch of different sections and have that section list change all the time and so forth, then categories are kind of the way to go.  But if you want like the fastest way to be able to pull articles that belong in a certain group, then for that I would use statuses because statuses are in the table called exp:channel:title, which is like the main channel table, and it’s the one that you always have to query.  If you don’t have to query any other table, and that’s the case if you’re using statuses to determine where your articles go, then it’s really, really, really fast and it scales really well, even if you get up to like a million articles.  If you’re using statuses to control where your articles go, then you can look those up really, really fast.  Now, unfortunately, articles tend to want to be in several different categories, and it’s not often that you can set up a site with statuses.

Emily Lewis:  Right.

Travis Smith:  But that’s the kind of thing that you’ve kind of find, that like over time as you add more categories and more articles, you end up with this like very heavy database query that grows over time to be slower and slower and then all of a sudden your server is like backing up in queuing requests and stuff.  But if you can stick to statuses, you’re going to avoid that.  So is there like one tip I can give you?  Like I just did give you one tip, but that’s not going to solve every…

Emily Lewis:  Right.

Travis Smith:  Like that’s useful for everybody, right?

Lea Alcantara:  Right.

Travis Smith:  That’s where you discover with New Relic or with these tools to dig in and go, “Oh, where are the bottlenecks?  How can I avoid that?”

Lea Alcantara:  Oh, I’ve never in my life heard of this tip, so thank you.

Travis Smith:  Sure, sure.

Emily Lewis:  [Laughs]

Lea Alcantara:  And I mean, this just goes to show like no matter how long or how much you work with a system, because Emily and I have been working with EE for so many years, it’s like we can do it in our sleep.

Travis Smith:  [Agrees]

Lea Alcantara:  But there’s still stuff that we can learn from others.

Emily Lewis:  [Agrees]

Timestamp:  00:39:56

Lea Alcantara:  And this is why we have episodes like this because there’s always something new.  There’s always going to be a nugget here or there that will help improve your workflow or give you that aha moment.

Travis Smith:  Yeah.  I will tell you one other thing, which is that I’m hosting a couple more clients now on Amazon’s AWS platform.

Emily Lewis:  [Agrees]

Lea Alcantara:  Oh.

Travis Smith:  That thing is fast.  I mean, if you’re worried about handling a lot of traffic, that’s definitely the way to go at this point, especially if you need scalability and you’re not sure when you’re going to need to scale up, but you know you are. Like you have high hopes for a project, but you don’t know for sure that you’re going to need to be on a bunch of servers or sort of how big you need to be. Amazon services are incredibly fast, so I’ve been enjoying that.

Emily Lewis:  So when you are using that service and you need to scale, is that something that like it notifies you or you have to be at the ready to make changes, or is there some sort of rules you set up in place that when X happens, then Amazon needs to do this to serve more resources?

Travis Smith:  There are two steps to the scaling.  One is that you put yourself on an imaginary machine of a certain size that can scale to their maximum size.  So you can bunch it off on a tiniest machine and that one will scale to a maximum size and that will scale to like a large machine sort of automatically.  If it needs a bunch of traffic, it will, or you can put yourself on a fairly large default instance that will scale to quite a large instance sort of just elastically, so that will handle a spike of ten or twenty times the traffic pretty easily.

Emily Lewis:  [Agrees]

Travis Smith:  But you can also set it up to automatically scale those instances themselves, so you can have a version of EE that is on the system and then if needs another machine, that machine will just blip into existence like two or five minutes later and then it will pick up half the traffic and you just kind of can grow from there, which is pretty amazing.

Emily Lewis:  [Agrees]

Travis Smith:  But one difficulty of that extra machine blipping into existence is that the benefit of ExpressionEngine in a lot of cases is that you’re collecting data as well. And if you’re collecting it into ExpressionEngine, then you have to have it all come into one instance of ExpressionEngine, like if someone is filling up a form where they’re registering as a member with EE or whatever, it has to all go into one EE database.

Lea Alcantara:  Right.

Travis Smith:  You can’t just blip a bunch of them into existence.  But if you have a site that’s going to deal with that level of traffic, then what you just do is you make any collection, don’t use EE for that. Like collect into data into Saleforce, or collect data with some other way, like don’t use EE commenting, use Disqus.  Anything that gathers information, put it in another system, and then if the ExpressionEngine is just the output, then you can easily just blip a bunch of those into existence.  I mean, that makes it then super easy to set up.  It’s not super easy, but you can set it up, just blip 10 machines into existence if you need them and all of them have the latest version of whatever your content is, and if you update the content, you just push that to all ten machines quite easily.

Emily Lewis:  We haven’t had a chance to work with anything like that.  I kind of hope we do.  I mean, it doesn’t exactly sound fun if it happens.

Lea Alcantara:  [Laughs]

Emily Lewis:  If it happens when your client is getting hit with traffic and their site crashes, that is not fun.  But then having an opportunity to give them a solution that’s going to mitigate that to a degree.  We haven’t yet done that.  We’ve just moved our clients to a bigger server.

Lea Alcantara:  Yeah, better infrastructure essentially.

Emily Lewis:  Yeah.

Travis Smith:  We still do most of our hosting with Nexcess who is a preferred or professional or something partner of EllisLab.  I love their hosting.  I’m really happy with their service, and they can handle really big traffic. But for a few clients, AWS is a really the only way to go. And I will say you’re totally right, like sometimes it’s very frustrating because by the time your client gets big enough, that they need to move or change their hosting, it’s very difficult to do because they keep crashing. 

Emily Lewis:  Right.

Travis Smith:  Like everything is slow because you’re already sort of maxed out on the hardware and then you’re trying to extra development on it, it’s very frustrating.

Emily Lewis:  Right.

Lea Alcantara:  We were there.  [Laughs]

Travis Smith:  Yeah.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  We were there.  Yeah, we were there, but like now they had a different launch this year and everything is good because we’ve put them to good infrastructure now.

Travis Smith:  [Agrees]

Lea Alcantara:  But since we’re talking about greater challenges, we already spoke a little bit about security.  What about backing all this up and caching a large site, like how do you back up such a massive site?

Travis Smith:  I mean, it is difficult, but it’s also like just complex. 

Lea Alcantara:  Right.

Travis Smith:  There are so many different possible ways you might cache things, you know?

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  There are several types of caching even within out of the box EE.

Lea Alcantara:  Right.

Travis Smith:  And then I use an add-on called Static Page Caching from Solspace fairly often. 

Emily Lewis:  Right.

Travis Smith:  But it is not without its headaches, and I don’t know, Stash has its own level of caching as well if you happen to be using that.

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  Like there are a lot of ways that you can cache things to make it more efficient. But then you also don’t want to lose what makes EE pretty handy, which is like the dynamic nature of it and be able to like edit something and have it be reflected all over the site, like changing navigation, and boom, it’s updated all over the site.

Emily Lewis:  Right.

Travis Smith:  When clients who are used to that get confused when everything is cached, then you have to hit these three buttons and go here and do that.

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Emily Lewis:  Yeah, I feel like there isn’t quite a magic bullet for caching.  I mean ... even we’ve got some Stash variable set up, rather Stash caches setup and just some brute force cache clearing.  It’s not nuanced per the area that’s cached.

Travis Smith:  [Agrees]

Emily Lewis:  And our client constantly forgets about it.  [Laughs]

Travis Smith:  Yes, yes, yes.

Emily Lewis:  She forgets she’s got to clear her cache, so she’s like, “I’m having these problems.  I’m having these problems,” and that’s what it turns out to be, you know?

Travis Smith:  Yeah.

Emily Lewis:  They have to clear the cache, and then there are situations — whether this is a bad development on my part or just the nature of having different Stash caches — the timing of them.

Lea Alcantara:  Right.

Emily Lewis:  Some are set to renew at this time, and some are set to renew at another.

Travis Smith:  Yes.

Emily Lewis:  And if it happens to have like a second conflict, something doesn’t clear on its own kind of a thing.

Lea Alcantara:  Yeah.

Travis Smith:  Yeah.

Emily Lewis:  And I think caching is a pain whether your site is large or small.

Lea Alcantara:  I ended up having to put on a cron job for the caching clearing, the brute force cache clearing, so that it mitigates any issues of that her forgetting that, “Okay, if something goes wrong, you have to do this.” But since she’s the only person who has the button to clear anything, she gets panicked phone calls from administration because something was down for only 30 minutes.  It’s only been 30 minutes, but the links aren’t showing. [Laughs]

Travis Smith:  Yeah.  I had a large client, samharris.org.  He’s an author, and he was on a piece of hardware that we were trying to make last at the level that it was at, and we had like many different levels of caching, and he was often frustrated because he would clear this level, but not that level or something would go wrong because stuff goes wrong, and the more complex it is, the more it will happen.  Then what we ended up doing is we ended up putting him on AWS [Amazon Web Services], and then we got rid of all the caching, like all of it. 

Emily Lewis:  Right.

Travis Smith:  So now we’re just like… well, I shouldn’t say it’s not cached at all.  There’s one thing that does caching, and that’s it, but the site can handle the load and he is left with much less of a headache because he’s never wondering like, “Why is it not working?  Or how do I clear this?” 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  And so that was a great improvement.  Sometimes caching is the answer, but sometimes not caching and just putting a bigger machine out there is the answer.

Emily Lewis:  Right.

Lea Alcantara:  The infrastructure.

Travis Smith:  Yeah.

Emily Lewis:  So before we finish up, let’s just talk a little bit about like upgrading and maintenance when we’re dealing with like a large EE site.  Is it possible to upgrade EE quickly when you’re dealing with a large site?  How do you approach it?

Travis Smith:  Yeah, absolutely.  We do a lot of upgrades around here, as you might guess.  In fact, that’s a significant part of what we do.  People often contact us.  Even a month or two ago we had someone who just upgraded from 1 to 2, believe it or not.  I guess that’s a testament that things are running well, but also I was kind of like, “Really?”  You know?

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  So we have a system in place for doing upgrades, and basically, we’ll take a snapshot of the site and we’ll clone it and then we’ll run through the upgrade all the way to the end to make sure everything is working right, and document all the steps that we needed to do, whether it’s like database commands or modifications to templates or anything like that.  All the add-ons, we fully test it, and then what we usually do is we’ll do the same thing again. 

We’ll take all our steps and then we’ll do it again and we’ll take the database, put it in the staging area, run the update, and then copy it back over to the live site, so the database and the files get pushed back out to live. And depending on the type of updates, sometimes that means you’ve only got a downtime of like two or three minutes from like basically copying the database over and copying or changing the file name or the folder name, and then you’re good to go.  On a really large site, if you’re doing with like a million entries and so forth, then you might be looking at a 15-minute or an hour downtime or something like that.

Emily Lewis:  [Agrees]

Lea Alcantara:  [Agrees]

Travis Smith:  And if you want to do, if you have a very robust testing list, then that can add some more time onto it there. But for small updates, 2.8 to 2.10 or something.  Even for a large site, I think it’s pretty reasonable to have a downtime of like 15 minutes, maybe less.

Emily Lewis:  [Agrees]

Travis Smith:  You know?

Lea Alcantara:  Right.

Travis Smith:  If something goes wrong, then you roll the database back and then you do another 15-minute outage the next day sort of thing. But yeah, that’s kind of how I see updates going with a large site.

Emily Lewis:  And with a large site, particularly if we’re using traffic as the barometer for that, I mean, do you have to coordinate all that with the client?  Do you make recommendations on when that should happen, like when the traffic is the lowest to have that downtime?

Travis Smith:  Absolutely.  It’s best to do it when traffic is the lowest.  But I also would consider a factor of when are you going to have resources available to help you when something does go wrong.  For a big enough site, you can get everybody on board and get them all to work Friday at 10 p.m. because that’s a nice quiet time. But sometimes with a client, I’m like, “We can work on Friday at 10 p.m., but are your editors going to be up for a testing at that time?”  You know?

Timestamp:  00:50:07

Emily Lewis:  [Agrees]

Travis Smith:  Like we can be as sure as we can be that the upgrade went well, but I would rather do it at like nine in the morning right when you come into work before your busiest time of day, but still like everybody there, everybody is answering their phones.

Emily Lewis:  Available.

Travis Smith:  Yeah. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Travis Smith:  So it’s a tradeoff.

Lea Alcantara:  So what any final advice for anyone planning a large site or a large site on EE?

Travis Smith:  Oh, that’s a good question.  I don’t know, plan ahead.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  You really can test your site for traffic.  You can build it and you can run a program that’s just like pretends to hit it a 100,000 times in an hour and see like what breaks, what’s slow, what pages don’t respond.  If you really think you’re going to get big traffic, then test it beforehand.  Don’t just hope.  Even if you have a really skilled developer, they aren’t going to know where the boat leaks until it is in the sea.

Emily Lewis:  I think one of the things that some of what you’ve shared today just reminds me of — and I feel like I always need reminders — that when you’re planning a site, a large site in particular, it’s really important to make sure you’re asking what may even be what you think are the simplest questions, but asking the prospect or your client like what are they anticipating traffic will be, especially if it’s like a new site that doesn’t already have some sort of analytics or even like you were describing using statuses in an option for managing categories, like thinking about how you might develop something if performance is hugely important and they’re expecting a whole lot of traffic.

Travis Smith:  Exactly, yeah.

Emily Lewis:  Then pushing back when they say, “We want to do X, Y and Z,” becomes important because then they have to choose, “What’s more important to you?  You having an article in twenty different categories, twenty different sections to have that sort of flexibility, or is it to have it be really speedy?” And that’s a super simplified example.  That’s not the only thing that will make something speedy. But I think the planning, the preparation, asking what may even be simple questions is really, really important. And I think it’s easy to forget that because you get caught up and you’re like, “Oh, I’m going to make this site.  It’s going to be great.  We’re going to use the EE and I’m going to do it this way,” and you’ve already started planning and thinking how you’re going to do it, but you haven’t asked the initial questions that kind of can guide that process of how you’re going to do it.

Travis Smith:  Totally true.

Lea Alcantara:  Awesome.  Well, Travis, we’ve reached the end of our show, but before we finish up, we’ve got our Rapid Fire 10 Questions, so our listeners can get to know you a bit better.

Travis Smith:  Okay.

Lea Alcantara:  Are you ready, Travis?

Travis Smith:  Uh, sure.

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  First question, morning person or night owl?

Travis Smith:  Total night owl.

Emily Lewis:  What’s one of your guilty pleasures?

Travis Smith:  Nachos.  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  What software could you not live without?

Travis Smith:  Is it weird that I’m embarrassed to say BBEdit?  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  Like I shouldn’t be embarrassed that.

Lea Alcantara:  That’s awesome.

Travis Smith:  Okay, yes, BBEdit.

Emily Lewis:  What profession other than your own would you like to try?

Travis Smith:  Professional Ultimate player.

Emily Lewis:  Like Ultimate Frisbee?

Travis Smith:  Like Ultimate Frisbee, yeah.

Emily Lewis:  Cool.  [Laughs]

Travis Smith:  Yeah.

Emily Lewis:  I haven’t played that since college. 

Travis Smith:  No way.

Lea Alcantara:  What profession would you not like to try?

Travis Smith:  Oh, doctor.

Emily Lewis:  If you could take us to one restaurant in your town, where will we go?

Travis Smith:  Oh, Vancouver has so many good restaurants, it’s kind of crazy.  My old favorite was Hapa Izakaya, which is a Japanese small plate ...

Lea Alcantara:  Oh, I love that place.

Travis Smith:  Yeah, yeah, yeah.

Lea Alcantara:  I love it.

Travis Smith:  It’s so good.  It’s so good. 

Lea Alcantara:  Yeah.

Travis Smith:  But now, everybody else has caught up, like they’re not bad.  I’m just saying like there’s…

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  Yeah, it’s tough.  That’s a tough one.

Lea Alcantara:  If you could meet someone famous, living or dead, who would it be?

Travis Smith:  Leonardo da Vinci. 

Emily Lewis:  If you could have a superpower, what it would be?

Travis Smith:  Stopping time.

Lea Alcantara:  What is your favorite band or musician?

Travis Smith:  Again, my taste is kind of eclectic, so I feel bad for leaving out every other musician on the planet. 

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  But like I’m listening to a lot of Iron & Wine lately.

Emily Lewis:  All right, last question, pancakes or waffles?

Travis Smith:  Waffles because they hold the syrup better.  They’ve got the little cups.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs] I love the justifications.  [Laughs]

Travis Smith:  [Laughs]

Emily Lewis:  [Laughs]

Travis Smith:  People will tell you, and actually it’s funny that you noticed that.  I’m always got a reason for things.  There’s always some reason in the back of my head.

Emily Lewis:  You’re a thoughtful person.  [Laughs]

Lea Alcantara:  [Laughs]

Travis Smith:  [Laughs] It’s just crazy.

Lea Alcantara:  All right, so that’s all the time we have for today.  Thanks for joining us again, Travis.

Travis Smith:  You’re welcome, it’s been really fun, and thanks for having me.

Emily Lewis:  In case our listeners want to follow up with you, where can they find you online?

Travis Smith:  You can email me at nep@hopstudios.com or I’m on Twitter @nep

Emily Lewis:  Thanks, Travis.  It was so fun to revisit this topic with you.

Travis Smith:  Thanks a bunch.  Oh, one more thing, if anyone has any information about a large EE site that’s not on the list, please let me know.  I really would love to make sure that this list is accurate and up to date.

Emily Lewis:  Awesome. 

[Music starts]

Lea Alcantara:  CTRL+CLICK is produced by Bright Umbrella, a web services agency obsessed with happy clients. Today’s podcast would not be possible without the support of this episode’s sponsor! Thank you, Visual Chefs!

Emily Lewis:  We’d also like to thank our partners: Arcustech and Devot:ee.

Lea Alcantara:  And thanks to our listeners for tuning in!  If you want to know more about CTRL+CLICK, make sure you follow us on Twitter @ctrlclickcast or visit our website, ctrlclickcast.com.  And if you liked this episode, please give us a review on iTunes, Stitcher or both!  And if you really liked this episode, consider donating to the show.  Links are in the show notes and on our site.

Emily Lewis:  Don’t forget to tune in to our next episode when we’re going to talk about color with Geri Coady.  Be sure to check out our schedule on our site, ctrlclickcast.com/schedule for more upcoming topics.

Lea Alcantara:  This is Lea Alcantara …

Emily Lewis:  And Emily Lewis …

Lea Alcantara:  Signing off for CTRL+CLICK CAST.  See you next time!

Emily Lewis:  Cheers! 

[Music stops]

Timestamp: 00:55:49