Heroku and AWS users... You don't have a business.

3 points by PythonDeveloper ↗ HN
In fact, Heroku and AWS have a boatload of micro-businesses, one of which you run.

If you're serious about your business, you'll host your own servers at a colo (TWO colos if you're really serious) on different network segments/providers, and use Heroku/AWS as a scaling mechanism and NOT a primary computing platform.

They don't care if you lose customers, as long as you don't cancel YOUR account. They'll get more new customers tomorrow due to the bad press, simply because those customers were out of the loop and just now heard about Heroku or AWS and it looks cool when they get there.

Running your own servers is the responsible thing to do if you want to OWN your business and not just look cool by using the latest brand named cloud service thrown around by everyone.

No, Heroku/AWS zealots will not agree with me, but they've never run their own data center. They have no experience.

Get real people. The cloud is just a REALLY expensive way to sell shared servers.

Why do I say this?

I run my own servers on 3 dedicated 1gbps connections, and while you pay $0.12/GB on AWS/Heroku (actually, Heroku costs more, but they bury it in their worker pricing so it looks free), I pay $0.01 per GB. That's right, 1 cent per GB.

While an 8-core machine costs me $0.42/hour all tolled (machine, power, space), you pay almost $0.66/hour on EC2 with no SLA, meaning you're not ALWAYS getting the same machine specs every minute of every hour. You're getting a MAXIMUM commitment of resources, not a MINIMUM commitment.

Yes, I own my own machines. No, they ARE NOT expensive if you know how to buy them.

Heroku has been down 3+ hours this time, and last year had a 70+ hour outage. On my own servers, I haven't had 3 TOTAL hours of downtime in 5 years.

If you want help with server deployment strategy, contact me directly.

4 comments

[ 3.5 ms ] story [ 22.8 ms ] thread
>> They don't care if you lose customers, as long as you don't cancel YOUR account.

Untrue (though I suppose it's possible they don't give a flying fuck, and you can ignore the rest of this post), their success is based on the success of their client(s). The same is applicable to all sorts of vendors providing services. It is in their best interest that every one of their clients is successful, in the same way it is of interest to your datacenter facilities that you continue to grow.

>> They'll get more new customers tomorrow due to the bad press, simply because those customers were out of the loop and just now heard about Heroku or AWS and it looks cool when they get there.

Certainly valid, and that is one of the benefits of having many clients vs. a few "big" clients. That doesn't reflect bad on heroku, aws, etc: it's just the nature of the industry they're in. The same applies to your datacenter renting out 1Us at a time instead of whole racks.

re: more clientele tomorrow -- plausible, possible, sure! The same applies to datacenter facilities that go offline.

>> Running your own servers is the responsible thing to do if you want to OWN your business and not just look cool by using the latest brand named cloud service thrown around by everyone.

There are benefits and drawbacks to {running,renting,owning} your own hardware in the same way there are drawbacks to using "cloud" providers (IaaS/PaaS). Let's not ignore those.

What is applicable to both scenarios however: build redundancy into whatever is important to you. Something, somewhere will fail & you'll be brought offline otherwise.

>> No, Heroku/AWS zealots will not agree with me, but they've never run their own data center. They have no experience.

I'm not a heroku / aws zealot, I run a competing hosting provider and I think they have their place in the market -- otherwise they wouldn't exist.

>> Get real people. The cloud is just a REALLY expensive way to sell shared servers.

It's fairly inexpensive to be honest -- it's cheap compared to having a team of sysadmins floating around touching things all day long. Quite frankly it isn't all that expensive in light of the fact that $client doesn't have to concern himself with hardware all day long.

>> I run my own servers on 3 dedicated 1gbps connections, and while you pay $0.12/GB on AWS/Heroku (actually, Heroku costs more, but they bury it in their worker pricing so it looks free), I pay $0.01 per GB. That's right, 1 cent per GB.

Kudos, you also worry about hardware all of the time -- I've got ~2-3 racks and I spend my days worrying about replacement gear, physical security, network topology & all kinds of other things that one running an app. probably doesn't want to concern themselves with. I mitigate this on behalf of my clients, and they send me money for space & bandwidth in return for them not having to worry about it all day.

Heroku & aws do this, too as do many other vendors.

>> While an 8-core machine costs me $0.42/hour all tolled (machine, power, space), you pay almost $0.66/hour on EC2 with no SLA, meaning you're not ALWAYS getting the same machine specs every minute of every hour. You're getting a MAXIMUM commitment of resources, not a MINIMUM commitment.

Colo. is definitely cheaper, at face value, but quite frankly most of the people on HN are concentrating on building applications. Their mental bandwidth needs to be spent on those applications, not hosting (though, obviously hosting is still part of the equation). Those people who are offline right now would be offline in the same scenario if their dc went offline due to power-outage/$random-reasons-things-go-offline.

Why? Because the people offline right now didn't build redundancy into their applications, and they wouldn't have if they had dedicated servers or an entire rack, either.

>> Heroku has been down 3+ hours this time, and last year had a 70+ hour outage. On my own servers, I haven't had 3 TOTAL hours of downtime in 5 years.

Some good points, not all correct.. but we're seeing some major sites out right now that, if I were invested in them at the VC level, I'd be looking at the CTO to justify their decisions for using Heroku/AWS without at least a non-cloud backup. I may even be looking to fire someone.

>> Kudos, you also worry about hardware all of the time

Patently untrue.

I haven't thought about hardware once in three years because I have an admin whom I've personally trained that worries for me. He knows how to scale hardware and software because I've showed him how to do it properly, and he has earned my trust.

I get to spend every minute of every work hour coding solutions. If you're a business owner and YOU still worry about hardware, then you need to fire your admins and hire rockstar-level admins. My admin spends no more than 2 hours a day on colo management because he does it the right way.

>> Congrats. Inevitably, a UPS will overload, a switch will die & you'll eat some downtime too. It happens -- build redundancy into your application / service to ensure that thy facility is irrelevant when the time comes.

I use external DNS to handle dynamic re-routing to an alternate colo should connectivity or power to this one fail. Even with this setup, it would cost more than 2 times as much to do what I do on the cloud, even if I used EC2 committed instances.

What's important is NOT to have NO downtime. What's important is to be PERCEIVED to have no downtime.

Customers should never see downtime from you. It should be transparent to them, giving you a 100% uptime public personna.

>> Some good points, not all correct.. but we're seeing some major sites out right now that, if I were invested in them at the VC level, I'd be looking at the CTO to justify their decisions for using Heroku/AWS without at least a non-cloud backup. I may even be looking to fire someone.

And I'd be asking why they don't have redundancy.

>> I haven't thought about hardware once in three years because I have an admin whom I've personally trained that worries for me. He knows how to scale hardware and software because I've showed him how to do it properly, and he has earned my trust.

But not everyone using heroku / aws / etc. have this same guy, trained by yourself, available. Thus, they use a service that makes that aspect of it invisible to them.

Downtime still happens irregardless.

>> I get to spend every minute of every work hour coding solutions. If you're a business owner and YOU still worry about hardware, then you need to fire your admins and hire rockstar-level admins. My admin spends no more than 2 hours a day on colo management because he does it the right way.

Admittedly, I don't worry about it as much as I'd let on -- but there's still some aspects that I dig into by choice to make certain everything is in good working order, and that there are ample replacements on-site to mitigate the 'worst case scenario'. As a CEO, I fight on behalf of my users & clients daily, even if that means wasting mental bandwidth on what might be defined as someone elses' job.

In a perfect world none of us would have to worry about hardware or downtime. Heroku is responsible for Heroku, and AWS is responsible for AWS -- and every user thereof is responsible for themselves and their operations.

Colo. might be the answer for some of them, but it's not a perfect world either.