
Startups should run on cloud providers - sajid
https://increment.com/cloud/why-startups-should-run-on-cloud-providers/
======
orf
I'd say this is a terrible generalisation. Buy a dedicated server with 32gb
ram, 16 cores and 4tb of disk for $40 a month and host it there to begin with.
Same steps: pay with your card, set up the server and go.

Once you get to the point where your cat photo sharing startup cannot be
offline for more than 1 minute and so needs geographic failover with scaling
load balancing your making enough money to pay for it.

Makes no sense to pay thousands of dollars to handle one request a minute and
save you running "apt-get install mysql nginx" \+ spending half a day
configuring it

~~~
hardwaresofton
Hey would you mind pointing to where you've seen prices like those? So far the
best dedicated servers (VPSes) I've seen have specs like:

4 cores 8GB RAM 160TB disk

for ~$36/mo.

Here are the places I'm talking about: INIZ (iniz.com) (I currently use them,
but they don't have the bes tprice)

[https://cc.delimiter.com/cart/dedicatedcore-
vps/](https://cc.delimiter.com/cart/dedicatedcore-vps/)

[https://www.delimiter.com/](https://www.delimiter.com/)

The last two I am thinking of switching to soon.

~~~
Veratyr
VPS are not dedicated servers. A dedicated server is a physical hunk of metal
for your sole use. You get the entire machine, not a slice of one. A VPS is a
regular virtual machine in KVM or Xen or something like that.

OVH's SoYouStart has 4c/8t (Xeon E5-1620v2) + 16GB DDR3 ECC + 2x2TB HDD and
unmetered 250Mbps bandwidth for $34.99/mo:
[https://www.soyoustart.com/us/essential-
servers/](https://www.soyoustart.com/us/essential-servers/) (and there are a
bunch of other options if you're wiling to go to $42).

Online.net has a Xeon D-1531 (6c/12t) + 32GB DDR4 ECC + 2x250GB SSD and
unmetered 300Mbps bandwidth for 29.99 EUR/mo:
[https://www.online.net/en/dedicated-server/dedibox-
classic](https://www.online.net/en/dedicated-server/dedibox-classic) (and
again, more options slightly higher)

Hetzner's serverbidding has a Xeon E3-1245v2 + 16GB DDR3 ECC + 2x3TB HDD and
unmetered gigabit for 33.61 EUR/mo: [https://robot.your-
server.de/order/market](https://robot.your-server.de/order/market)

There are other options around too, these are just the big, well known ones.

~~~
hardwaresofton
Wow, thanks for the info, I thought you might have meant an actual physical
server but you didn't mention rackspace rentals or bandwidth costs or whatever
so I figured you must have meant VPS. I thought you were suggesting renting a
physical machine and then putting it in a data center myself...

I had no idea renting entire dedicated servers was so cheap (and came with all
those other things as well) -- makes me wonder why VPS is even a thing since
if you go the KVM route you have to set up everything yourself anyway... What
am I missing?

~~~
Veratyr
> I thought you were suggesting renting a physical machine and then putting it
> in a data center myself...

That's an odd kind of colocation. Typically you'd buy a machine outright,
colocate it and maybe sell it when you're done.

> makes me wonder why VPS is even a thing since if you go the KVM route you
> have to set up everything yourself anyway... What am I missing?

VPS are much smaller and are typically used by people buying on the very low
end of the market, people who won't pay $40/mo for a server. They're also much
easier to find in places like the US. There aren't many budget dedicated
server providers in the US like there are in Europe.

Typically cost efficiency looks something like this: owning DC < colocation <
dedicated server < VPS < Cloud

But also, the speed and ease with which you can change your infrastructure
looks something like this: Cloud > VPS > dedicated server > colocation >
owning DC. There's a tradeoff to be made.

------
jacquesm
Not all startups should run on cloud providers. For many it makes sense but as
soon as you have

\- a very large amount of storage

\- a lot of data transfer

\- a lot of computation (for instance, on GPUs)

Then it could be a very worthwhile exercise to figure out what the trade-off
in cost vs convenience will be if you decide to roll your own. For some
projects the cloud absolutely makes sense, if you have just a few servers and
the total cloud hosting bill would be a small fraction of what you'd pay a
team of sysadmins to keep things up and running you are probably fine going
with the cloud.

But if you are going to spend thousands or 10's of thousands of $ per month on
cloud hosting then make sure that your resources are allocated properly.

------
hudo
Don't really like the article. Like it's written by manager, for some upper
manager.

As many of people said here in the comments: 1\. cloud is expensive as hell.
Its much faster and cheaper to rent some dedicated server. Sure, it can fail
since there's no failover/scaleout, but startups should fail fast, right? With
good backup and acceptable downtime in case of failed hardware, dedicated hw
is good enough for this stage of company development, imho

2\. article assumes that building distributed system takes equal amount of
time and knowledge as building one monolithic app.

3\. you replaced one sys admin with dev ops. Sure, dev is dev ops, as I was
dev and sys admin before, so don't see any difference there.

4\. vendor lock in. Looks like at the end of the day, only AWS profits here
(gold rush and seller of shovels 100+ y ago, anyone?)

5\. let me just add this one; unpredictable cloud behaviour. Basically cloud
providers forces you to scale out from beginning, since services can go down
anytime, network can drop, etc. So instead of delivering features you're deep
in aws metrics and logs, trying to understand why DynamoDb lost some random
writes.

With right team, amount of money and resources, cloud makes sense. Same like
running on your own rented dedicated/vm machines makes sense.

------
eldavido
The biggest cost many young companies face is people, both salaries, and
management/coordination overhead.

Assuming you need to pay someone at least 10k/month fully-loaded (and this is
hard in SF) to manage all of this, I wouldn't bat an eye at staying on a PaaS
until I got to 10-20k/month in expenses. Maybe even 30k. Managing operating
systems, networking switches, datacenter contracts, linux distros,
provisioning scripts, etc? No thanks.

I guess if you're worried about single dollars or tens of dollars/month you're
just in a completely different place/situation than I am. With dev salaries
being what they are today, the market is clearly signaling you need to
optimize to use as little of it as possible.

Another thing, this article doesn't talk about serverless at all, where there
isn't even compute to provision.

~~~
cookiecaper
You want "provisioning scripts" no matter what. That's what ensures your
systems are uniform and that you can easily and semi-sanely maintain them.

Deploying a server without some type of scripted process is like deploying a
codebase without version control. You're just crossing your fingers and
jumping off the bridge with a hope and prayer that something that happened in
the background sometime in the past makes it all work, and no way to track
what's really happening.

This is even more precarious with servers than with code because servers have
tons of little highly-specific config changes that are much more difficult to
transfer than copying and pasting `BOBS_PROGRAM_v2017-08-04.EXE`.

\-----

A small shop should be able to manage their own servers as long as they remain
reasonable with it (i.e., don't "scale out" to an infrastructure with 40
microservices running 8 instances each). You don't need to pay a guy $10k/mo
to admin the 4-6 boxes that may actually be needed.

If people are the key to a good startup, why forward the equivalent of 2
coders' pay to Amazon?

The frequently-unacknowledged reality behind AWS et al is that many devs
aren't what they're cracked up to be.

------
polote
If you want to prove something is good for startups don't put Lyft and
DoorDash names in your article, these are not startups, they have a valuation
of more than $1bn ...

> Why spend days messing around with your own infrastructure, when you can get
> what you need out the door as soon as it’s ready?

If you have to spend days to make your product online it is not a problem of
hosting. Stop pretending that copying lines of bash commands over ssh is too
complicated.

Yes cloud can be convenient, but it is not essential at all

------
joshribakoff
Linode is 40x cheaper for bandwidth than aws. It's also easier to setup an
nginx cache than screw around with cloudlfare and the associated vendor lock
in. I also found that my PDF files don't load in internet explorer if hosted
on aws, but load fine when hosted on my linode. Apparently having a $1,000 aws
bill doesn't qualify us to receive support. Be wary of the cloud and the
associated hype and lock in.

~~~
beagle3
Aws is comparable to linode if you don't use all the amazon services (and you
shouldn't use them - it's vendor lock in at its best. Best for amazon).

But comparing cloud flare to nginx cache is apples to oranges. Linode nginx
cache cannot sink a modern DDOS attack

~~~
joshribakoff
> But comparing cloud flare to nginx cache is apples to oranges.

I disagree. I don't know what Amazon is using but it could be nginx.

> Linode nginx cache cannot sink a modern DDOS attack

Which are we talking about here? linode or nginx? Linode has 40 Gbps network
in, with an API to spin up more servers (implement your own auto scaling).
With AWS they absorb the attack & bill me thousands of dollars. That DDOS
attack will shut you down financially, but yes you will stay online. With
Linode I can not only stay online, but I can afford the hosting bill after the
fact.

------
Doctor_Fegg
"Rule 4: Keep burn low"

is exactly why I'm on dedicated Hetzner hardware rather than AWS.

~~~
cardine
This is exactly what I'm doing as well.

The price difference between Hetzner and AWS is large enough that it could pay
for 4x as much computational power (as much redundancy as you'd ever need),
three full time system admins (not that you'd ever need them), and our office
lease... with plenty of money left over!

And it's not like AWS is any easier to use than Hetzner - they both take just
as much time to setup and Hetzner is at least as intuitive as AWS.

I'm always surprised when resource scarce startups are paying ridiculous
amounts for AWS instances. It is a huge waste of money and I have a hard time
telling if it is laziness, following the herd, or ignorance as to how
expensive cloud hosting is.

------
dejv
Most of small to mid sized applications are really happy running on VPS like
Linode or Digital Ocean, especially if we are talking about CRUD apps.

There are multiple pros of those setups:

1\. They are cheap: $10-$20/month will be ok for smallish scale/b2b
application. (You can always add more nodes later if you want).

2\. As your application grows, it is much easier to migrate to another VPS or
dedicated HW.

3\. It is much easier to switch to cloud platform like AWS than trying to
change provider or migrate into your hardware. Platform lock is real.

I do hear that managing your own servers is hard, but you can totally do it
after reading couple of articles or paying couple hundred dollars to some
competent sysadmin.

~~~
awinder
The flip side of this is if you're only spending $10-20 on a vps setup you're
probably going to be nicely covered by the free tier on AWS. Either for at
least a year or possibly for the eternity of your account.

------
twunde
Frankly cloud providers have become the default way to run startups and small
to medium-sized companies but frankly they're significantly expensive. You do
get about a year of runway, which may make sense if you're able to close a VC
funding round, but frankly you can spend 10-20k/year vs most startups that are
spending 100k+/year at their cloud provider

~~~
klodolph
Are you trying to see how many times you can use the word "frankly" in one
paragraph?

------
ty_a
1\. Start with Heroku or similar 2\. Get customers 3\. Profit??? 4\. Hire
people to help migrate to Kubernetes or similar

Stick with what you are good at and pay for everything else.

------
falcolas
I'd say go for it.

With a caveat: don't tie yourself to that cloud provider, so if you want/need
to make a move you can without re-building your entire stack. Most providers
only make financial sense at scale if your load is wildly variable.

There's also something to be said for still being online when the rest of the
internet is dark because of an AWS outage - for being able to take action when
something goes wrong.

~~~
dabei
Make sense however platform independence is very hard in reality. As a startup
you have to try to squeeze the biggest bang for your buck. That means to fully
exploit what the platform offers and stretch to its limit. Moving to another
platform requires redesigning a lot of optimization or even architecture.

~~~
falcolas
Perhaps I'm just a jaded sysadmin (wait, I AM a jaded sysadmin), but the bells
and whistles are rarely worth the cost of those bells and whistles.

Kinesis is a great example. Sure, on paper it looks cheap - fractions of a
penny per hour and per million put operations. But just to handle logs for a
dozen servers, you're looking at spinning up over 8 shards (for the read
capacity mostly), an equal number of lambda aggregators, and a storage service
(like managed elasticsearch). This alone can end up costing several hundred
dollars a month. And you still want/need a specialist for managing
elasticsearch!

I've worked for two companies now where they pay out more money for their
infrastructure than they do for their entire payroll. There's something that
rubs me very wrong with that.

------
fundabulousrIII
No way. AWS is prohibitively expensive at scale as are decent managed servers.
Several jobs back. Startup with 150k to spend on IT.

* Buy 75k hardware. * Two colos <= 30k yearly + full managed support. * One PT SA 45K.

That AWS budget doesn't touch scaling like the ability to scale across two
sites and physical hardware for multiple years.

~~~
tarr11
This solution has the following problems:

1\. Over provisioning

2\. Under provisioning, burstability

3\. Prefers capex to opex

4\. Requires hiring SA / IT forever

5\. Changes in architecture become prohibitive

~~~
moduspol
It's got some great benefits, though:

1\. Makes use of the skillset I already have (sysadmin managing servers),
rather than requiring me to learn something new

2\. Doesn't allow developers to build and iterate quickly without my
permission / allowance

3\. Allows me to be paid a salary and benefits that I will never factor into
the costs when comparing to cloud infrastructure

4\. Allows me to manage my own backups, deal with vendor finger-pointing,
respond to and handle any hardware failures, amortize and replace hardware on
some schedule, etc.

5\. Allows me to pat myself on the back for ensuring the company theoretically
avoids platform lock-in, which unsurprisingly results in more lowest-common-
denominator architecture (servers needing managing, which of course, I'll
manage), even if it greatly increases time to our minimum viable product

