

Ask HN: Cloud Infrastructure Hosting - to be or not to be? - tolliator

Say you have a small startup idea in mind - you can't get any help (read, hire) so everything will be made by you. The prototype, the selling, the marketing, administration. No way you can do it all efficiently, so something has to go. Marketing and the legwork can't be outsourced as easily as basic admining, so is it worth it? Do you get "bad" habbits from using services such as Pagoda/Heroku?<p>I always used to host and configure all my machines (VPS, basic AWS or dedicated). It's fine on a small scale, but maintaining 5-10 small boxes is a time killer, especially when you have a tall technology stack.<p>Not planning to get alot of traffic at first, but the structure has to be there from the beginning - then I will scale.<p>So basically, are these infrastructure providers:<p>- Cost effective compared to VPS/Cloud hosting (Linode, AWS)<p>- Really do scale as advertised? Being removed from low level optimizations one can do to LAMP setup can be VERY limiting...Does the scaling part is as easy and offsetting?
Not knowing the precise my.cnf or httpd.conf settings is enough to give me nightmares.<p>- Are crack heroin? Will usage of such provider give one terrible coding and architecture decisions? Will the move away to dedicated require large changes to the actual codebase?<p>Thank you!
======
RyanPorter
You learn "good" habits from using cloud systems. You shouldn't be spending
your time manually configuring your machines, you should be using DevOps to
use source code to configure your machines. And building your own hardware is
a great way to save money but you're still making capital expenditures when
you could shift those expenses to operational expenditures, which is really
the biggest benefit of cloud computing.

The systems all scale differently, depending on how their abstraction works.
With Heroku yes, it's very easy to throttle up to more "dynos". They deal with
the details for you. With Engine Yard, you have more control and so it's a
little more involved because you instantiate new app server instances but it's
still just as easy.

And using cloud systems also actually improves your architecture too. Instead
of using local storage, you'll have to use a CDN like S3/CloudFront, which
really is what you should be doing in the first place.

