

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

In fact, Heroku and AWS have a boatload of micro-businesses, one of which you run.<p>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.<p>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.<p>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.<p>No, Heroku/AWS zealots will not agree with me, but they've never run their own data center. They have no experience.<p>Get real people. The cloud is just a REALLY expensive way to sell shared servers.<p>Why do I say this?<p>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.<p>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.<p>Yes, I own my own machines. No, they ARE NOT expensive if you know how to buy them.<p>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.<p>If you want help with server deployment strategy, contact me directly.
======
davidandgoliath
>> 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.

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.

That applies to everyone.

~~~
PythonDeveloper
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.

~~~
davidandgoliath
>> 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.

~~~
PythonDeveloper
Well said.

