There’s an interesting post at GigaOM: Web 2.0, Please Meet Your Host, the Internet. It’s a good read, though could be shorter, but a few things struck me after reading it. I don’t disagree with him per se, I just think the emphasis is on the wrong thing. (Probably for effect.)
Infrastructure can be a competitive advantage today — the speed and reliability of WordPress.com has certainly put us in a favorable light with users, especially large customers — but that’s going to disappear over time. We’re very much at version 0.1 of things like Amazon’s web services and App Engine, but it’s not hard to read the writing on the wall and understand that level of abstraction is going to be the future foundation of web applications. I’m not counting on infrastructure to be a long-term competitive advantage for Automattic.
If you have a few minutes it’s worth reading On Grids, the Ambitions of Amazon and Joyent which has the real definition of a grid and Sunshine, which is worth it for the extended analogies to Greek mythology. (Both end in ads for Joyent.) Also check out Early notes on GoogleApps, Dave Winer groks where this has to go.
Second, Allan describes a case of a DDOS attack hurting a friend’s startup who had very little information about how to stop it:
Unfortunately, the poor site performance was not missed by the blogosphere. The application has suffered from a stream of bad publicity; it’s also missed a major window of opportunity for user adoption, which has sloped significantly downward since the DDOS attack and shows no sign of recovering.
We can all name startups or sites that aren’t particularly known for their performance, but that flourished in spite of it. Twitter and MySpace comes to mind. If we dug a little deeper we could also find thousands of startups who were prepared for the world to show up to their door, and it never did. Building something people want is much harder than scaling it. (In most cases.) If you solve the what-people-want problem, they’ll use you no matter how bad your interface is, how slow your site is, just give them somewhere worth waiting for. I would suspect the friend here isn’t seeing their usage decline because on their Techcrunch day the site wasn’t responsive, it’s that they’re probably still in the before market fit stage.
Third, I am a huge believer in the importance of performance, but most people forget that on the web 80-95% of performance is on the front end not the page generation time. (I realize I’m saying this on a site with a 140kb header graphic. :)) Yahoo has fantastic resources on this. When a website “pops” it probably has very little to do with their underlying server infrastructure and a lot to do with the perceived performance largely driven by how it’s coded at the HTML, CSS, and Javascript level. This, incidentally, is one of the reasons Google Gears is going to change the web as we know it today – LocalServer will obsolete CDNs as we know them. (Look for this in WordPress soonish.)
Finally, for the next few years before we have true utility computing, there are some great “hardware as a service” providers like Layered Tech and Server Beach that essentially handle everything from the power to the network to hardware, and let you take over from the operating system up. This is what we use for WordPress.com, Akismet, WordPress.org, and it’s great. It’s allowed us to focus on what matters — our software and service. You still need a pro like Allan describes to handle things at the OS level (most performance problems I see are badly configured servers, not hardware limitations) but leave networking and hardware to people with economies of scale. This comment nails it.
Update: I’m in a video Rod Boothby did asking What is Cloud Computing, good timing.
As someone that will at some point write a site that will at least hope to be successful, this was both interesting and educational.
Do you have any more tips and lessons learnt from when you were first starting up WordPress?
Damn it Matt, I’m never visiting your site on my 3G mobile if it’s 140Kb just for that pretty (and I do place emphasis on pretty) header image!
Great post, other tools to assist developers in optimising front-end coding include Web Developer and Firebug for Firefox as well as Dragonfly for Opera users. Today there really is no excuse for poorly structured and performance optimised front-end coding now that we have W3C and mature development tools…
Great conversations on this topic, thankyou.
The upshot then is not having infrastructure can give you competitive advantage. 🙂
A very good point in the linked article was the disappointment Mr Winer shows in MS.
I find techno history a good subject. A great article about Google’s infrastructure was back in 2004.
http://blog.topix.com/archives/000016.html
similarly, I read once that the secret to software success was in engaging with developers. Something that WordPress has going on in spades. Congratulations.
Agree.
Disagree. All the usability in the world won’t make a useless service useful, but an unusable site can make a useful service useless. There are any number of organisations whose products or services I wanted, but which I have abandoned because I could not get their website to work,
@Michael – I’ve never been to ma.tt on a mobile device. I hope he’s using the WordPress for Mobile plugin, which would strip the pretty in favor of functional.
I’m a big believer in this : http://edgeperspectives.typepad.com/edge_perspectives/2007/09/convergence-or-.html
Infrastructure will become a competitive advantage for specialist infrastructure providers. Application innovation will be done by specialist application innoators but few companies will succeed in doing both.
That’s why things like Google Application Engine are so important. They finally let application innovators forget about / no longer have to live or die by their infrastructure ability.
great post. I totally agree with you…infrastructure or platform features are the competitive advantage for companies looking to move away from CPM based revenue models
Matt, could you expand a little on what you mean when you say:
“Google Gears is going to change the web as we know it today – LocalServer will obsolete CDNs as we know them”
Do you mean that you see the user’s installation of Gears slurping down the entire website/blog in the background, giving desktop app speeds as the user surfs within the website? Wouldn’t that result in horrific bandwidth costs and CPU contention?
Also, enjoy Milan, awesome food but, seriously, be careful not to display an expensive camera when you’re out and about because Milanese muggers don’t ask, they crack your head from behind and, you know, we need you to not be brain-damaged.
Hi Matt,
I think you’re insulated from a lot of the bad choices that startups make because you have an excellent team — particularly Barry. That speaks volumes about how your company was able to attract and hire top-of-the-line talent so you don’t have to worry about hosting.
However, I have to say, WordPress is not typical in this regard. Because of your superb team, you’re able to use unmanaged dedicated servers and have your team work out all the kinks. Even so, I know you had problems with a particular unmanaged dedicated server provider in SF.
What I’m saying is that your success is not typical. It’s far more typical to do what Twitter has done and assume that Verio can handle “everything” and then 1) refuse to hire and 2) let go of anyone on your staff who knows anything about scaling.
When I talked to the Twitter guys, I was shocked to find that they had decided to outsource huge scaling to their hosting company without having a “Barry” on their team who really gets this stuff. And they outsourced to a hosting company that charges a lot of money, but no one on their team knew enough about it to understand whether the hosting company was feeding them a line of BS.
Your experiences cannot be applied to most startups. All startups that expect to massively scale need a “Barry”. But your post seems to imply that unmanaged hosting is still the way to go for these startups. I have to disagree.
Optimally, most startups should pick managed hosting AND have a “Barry” on call. Barrys are expensive, but worth their weight in gold, and it’s to him and your team that you owe your decision to go with unmanaged hosting. Without him, I don’t think you would have nearly the success you’ve had with unmanaged hosting.
-Erica
The underlying presumption is that sites are live. A majority of people still waste all their time on radio and TV and these are mostly not live. We overestimate the ability of a couch potato to actively search for content. Infrastructure is important only to the extent the average couch potato is competent.
As you present, scaling is one of those good problems to have — unless you suck at it and aren’t smart enough to hire people that are smarter than you 😉
Wonderful insights!
There is a great article very related to this topic in the current issue of Wired, “Cloud Computing. Available at Amazon.com Today” by Spencer Reiss.
Hi Matt, thanks for the Gears mention!
@WordSkill: What Matt means is you can use the Gear’s LocalServer functionality (http://code.google.com/apis/gears/api_localserver.html) to bring down bundles of your web application’s user-interface, such as CSS, HTML, JavaScript, etc. Then, Gears will serve this up to the browser whether you are on- or off-line, so that the UI ‘flashes’ on to the page quickly. Standard HTTP 1.1 caching is fine for many uses, but because Gears can bundle a set of UI resources and efficiently update them things can be faster in some scenarios.
In terms of overloading a users machine, you want to be intelligent in what you push down. You obviously would not push down all of Wikipedia 🙂 Instead, bundling up your static resources can really help, especially if you have an Ajax style application that is primarily driven by JavaScript or more classic web apps that have Ajax sections. Check out the PubTools open source library I made if you want to see some simple utilities that make this stuff much easier without having to delve into JavaScript (http://code.google.com/p/gears-pubtools/).
Good post, Matt. Reliability is a key success factor for web hosts and web sites. It can be hard to find a Barry to address reliability and scalability issues before they affect revenue. Managed hosting can be a big help, though.
Am in the process of building a humble network and OM’s article sent a shiver up my spine.
Your perspective gave more balance to the post. Yes you are right, twitter at the moment, or rather since i have known it has always been unreliable yet, it still gets new signups…
The power of the cult maybe..haha
I’d be interested in hearing a bit more on your ideas around Google Gears. I read a lot about it when it first came out and sort of shrugged it off as “hey, that’s neat,” but that’s where it ended. It only helps things when you’re offline and want to get at content, or construct content offline and push it when you’re online. How often does the average person find themselves offline? Not very often for me, and I live in Canada without an unlimited data plan (if I were in the states, I’d be online all the time conceivably, except on airplanes). I’m not sure what’s going to happen first -> Google Gears will support all major browsers on all platforms (last time I checked, they still didn’t have anything for Mac browsers), or wireless penetration will allow most people to be online nearly all the time and eliminate the need for Gears.
It’s a neat idea, and I’m interested to see what you guys do with it and WordPress. But the jury is still out in my mind on whether or not it’s necessary.
found it ! Georgia !
I’m really sorry I didn’t knew in time about your trip to Italy.
Next time you came here, write me.
I live in Venice and I would like to talk with you about personal projects, web engineering, and photography also.
Bye
come was better than came
maybe you can edit and then delete this last comment 😉
sorry for my English
p.s. also my sister lives in Mill Valley, San Francisco.
So if you’re not coming here soon I can see you there the next year.
@Duane, Brad Nuebergs is on point with Google Gears.
“If you solve the what-people-want problem, they’ll use you no matter how bad your interface is, how slow your site is, just give them somewhere worth waiting for.”
Well, there’s a limit. For years I heard about how great Wikipedia was, but whenever I visited the images wouldn’t load, and half the time the text page itself would timeout before it finished loading.