“Why are they edge cases? Because they’re likely to happen in only the rarest of circumstances.”
Leveraging the Pareto Principle
Several years ago I was invited to assemble a team that would create a new version of an existing platform. It was a platform for car sales and real-time auctions – all for off-lease vehicles that companies like Ford Credit wanted to offload to their franchise dealers.
We did what any smart team of software engineers did. We focused on the core features (the 20% that made up 80% of the use cases) in a way that would make Vilfredo Pareto proud.
Embracing Edge Cases
Of course, we couldn’t get away with ignoring everything else, so we circled back to work on the rest of the system. But as we started working longer hours and weekends I noticed a term was being banded about far more frequently. It was the term, edge case.
If you’re building a system that takes in and stores people’s information as they register for an email account, the following are edge cases:
- What happens if the person has an email account that has 1000 characters?
- What happens if the person uses an odd character in their email, like the ö?
- What happens if the person has spaces in their email?
Why are they edge cases? Because they’re likely to happen in only the rarest of circumstances. And the logic goes that since it will likely never happen, we can afford to ignore them – at least initially.
We embraced that logic.
Primed for their Appearance
But there’s something strange that happens when you start calling out edge cases. At least it did when we worked on our platform re-write, and in the years since then, I’ve noticed it more and more.
Once we define the edge case, we’re primed to start seeing it elsewhere. And if the system is large enough, if there’s enough traffic using the system, we’ll start to notice the significance of what we once thought were rare situations.
After all, it’s simply a matter of math. If we call it an edge case because we think it only happens 1% of the time, but we have 1 million transactions on the platform, that 1% is substantial. And once we start tracking it, we might discover it was 3% instead of 1%. And while that’s still tiny in the scheme of things, it’s not like it’s never happening.
That’s 30,000 times that it might cause an error, kick someone out of the system, or some other interaction we hoped would never happen.
Edge cases suddenly become important.
Managed Hosting was an Edge Case
Step back a few years and try to remember what life was like as everyone raced to the lowest possible hosting costs for their blogs. $15/month got squeezed down to $5/month and there were even others cheaper than that.
And in that space entered managed hosting.
It was at that point that the whole idea of managed hosting for WordPress sites was an edge case. After all, how hard is it, the thinking went, to update my own WordPress installation and my own plugins?
It turns out it was much harder than a lot of people imagined. Tons of sites were never upgraded and the consequences only became painful when malware hit.
So companies like WP Engine, CopyBlogger, ZippyKid and Page.ly stepped in to meet the 1%. But as they did, and as people began fighting the race to free hosting, we saw the edge move mainstream. No longer was it the 1% scenario. No longer was it an edge case.
Today it’s not unusual to hear people talking about managed hosting – for WordPress or non-WordPress sites. We’ve learned the value of uptime, security, and fantastic support.
But with that handled, it is no surprise we’re starting to see a new set of edge cases emerge.
The New Managed Hosting Edge Cases
Doing hosting right isn’t easy. Not when you’re trying to deliver high quality and high performance for the majority of users on WordPress. The companies that do it today have created highly optimized infrastructure to deliver that value.
But in doing so, they’ve focused on the main use cases. They’ve gone past Pareto and his 80-20 rule. In fact, they’ve solved 80-90% of the scenarios well.
But there’s still a set of edge cases to consider. And as WordPress grows in popularity, it’s not surprising that we’re seeing more people looking at building membership sites and e-commerce sites on the platform.
E-Commerce & Membership Sites
Those two classes of sites represent the new edge. If you consider all the other kinds of sites that managed hosting providers support, the thing they have in common is that very few users are actually logged into WordPress. So caching solutions work great.
But in e-Commerce and membership sites, the user is logged in constantly. More importantly, the data their looking at is customized based on who is logged in. That’s a problem that can only be solved using a more complicated fragment caching than we normally see on current WordPress projects.
That eBay for dealerships platform I architected years ago was not only an e-commerce site but a membership one as well. When I think about that project today, and think about how I’d design it to work on WordPress, I know one thing more assuredly than anything else.
Managed e-Commerce & Membership Hosting
What I know today is that I’d want a partner to work with me on the hosting side.
I’d want to make sure I was working with someone who was solving this regularly and becoming an expert, not only on high performance sites, but also on high performance e-Commerce, or high-performance membership sites.
Thankfully, we’re starting to see the very beginnings of this happen in our market. As we do, we need to embrace it.
Some folks will say they can do it on their own. But hear me now – they don’t know what they’re saying. And soon enough, this edge case will grow and become the new normal.
Chris Lema is the VP of Software Engineering at Emphasys Software, where he manages high performers and oversees product development and innovation. He’s also a blogger, ebook author and runs a WordPress meetup in North County San Diego. His coaching focuses on helping WordPress businesses, or businesses wanting to leverage WordPress.