11 ms·
Startups should run on cloud providers
- Doctor_Fegg 9y ago"Rule 4: Keep burn low" is exactly why I'm on dedicated Hetzner hardware rather than AWS.
- HugoDaniel 9y agoHow is the experience going ? How is the latency for clients across the ocean ?
- CSDude 9y agoMy 39 euro Hetzner dedicated server provisoned quicker than AWS EC2. Not an apples to oranges, but if all you need is basic Linux Servers, it can be a good choice, if you can manage some basic stuff on your own, but ofc AWS is not EC2 only. My 39 euro server ks faster than most ec2 instances at a fraction of the cost.
- brianwawok 9y agoMy cloud cost is less than 5% of my bussiness costs using GCE. Would be foolish to move it to lower my costs 2%.
- cardine 9y agoThis 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.
- cookiecaper 9y agoMoved from Linode to a dedicated rental. Half the monthly cost for 3x the specs, and a night and day difference in the site's performance. High-quality hardware is deeply underappreciated. Would've cost me $1k/mo to get something equivalent on AWS. Note: I did move back to Linode because the traffic all went away, and now I just run it on a fairly-small node there. Cloud has a role, but mostly it just tricks you into leaking a lot of unnecessary cash with nickels and dimes, so you don't really realize how much you're spending.
- polote 9y agoIf 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
- jacquesm 9y agoNot 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.
- dejv 9y agoMost 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 9y agoThe 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 9y agoFrankly 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
- hamandcheese 9y agoFrankly, as long as my business was growing I would focus my efforts elsewhere. But to be frank I've also never ran a startup.
- klodolph 9y agoAre you trying to see how many times you can use the word "frankly" in one paragraph?
- fundabulousrIII 9y agoNo 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.
- drdaeman 9y agoWell, one can probably set up a "that shit doesn't really do anything serious" MVP on something even awfully host-prohibitive like Heroku, while preparing for a real deployment. Just to show off "we have a product and working on improvements". Would probably work just fine if they don't do anything heavyweight but just some CRUD/form processing with a billing integration and a few extras, like many websites/webapps essentially are. ;) In this sense it's probably a reasonable to not bother about the initial infrastructure before you actually need it. Just don't tie yourself to the cloud, because it'll bite very painfully.
- eldavido 9y agoWhere is the "PT SA 45K" coming from? Somewhere in the interior US or overseas? That would be difficult to do in California.
- fundabulousrIII 9y agoCalifornia is not indicative. Northern Virginia (example) a lot of guys would bite on that with certain key caveats
- devrandomguy 9y agoThen don't. Why shouldn't a sysadmin work from home?
- tarr11 9y agoThis 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
- falcolas 9y agoI'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 9y agoMake 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 9y agoPerhaps 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.
- orf 9y agoI'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
- vosper 9y agoJust make sure you're taking backups. Even if it's just a midnight MySQLdump + zip and upload to S3. Just do something. You can get your code back from Github if the disk on your one server crashes, your data maybe not so much.
- 0xCMP 9y agoYes, just cause it has RAID 5 doesn't mean the processor can't die (happened), or the RAID card in the data center you've never been in can't die (happened), or an unclean shutdown of a VM causes your sparse LVM Volume to die (happened).... Back up your stuff. Probably good to have two servers and have backup versions of your service ready to go on there in event of a disaster + a place to restore your S3 backups in to.
- twothamendment 9y agoI worked at a place that was too cheap/cash strapped/stupid to care about backups. We did nightly backups, but then one day I decided to replicate to my own server. I had plenty of room and bandwidth. Why not? It made me sleep better.
- djsumdog 9y agoIt depends on time, money and staff. At my last shop, we ran DC/OS and it worked great, but had an eleven person platform team behind it. Using hosted solutions (can we please stop saying cloud?) can save a lot of initial costs. The important thing is you need to devops from the start. You need to design your base so it can be easily ported to another provider or your own. Resist the urge to use AWS or Google specific offerings. Every large shop I've worked at has been in the process of moving off hosted solutions to save money. But they typically got to where they were thanks to being able to quickly stand up servers. There are tools like Terraform that are suppose to make this easier, but often I ended up fighting it so much I started writing my own: http://penguindreams.org/blog/bee2-wrestling-with-the-vultr-api/ http://penguindreams.org/blog/bee2-wrestling-with-the-vultr-... Hiring one dev ops person who can build infrastructure with code can get you really far when trying to save hosting costs early in a startup, plus it will cut down on technical debt later.
- eldavido 9y agoThe 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 9y agoYou 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.
- joshribakoff 9y agoLinode 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.
- cookiecaper 9y agoAlso note that Linode is not even non-cloud. The fact is just that AWS is very expensive.
- beagle3 9y agoAws 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 9y ago> 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.
- ty_a 9y ago1. 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.
- hudo 9y agoDon'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.
- khana 9y agonay youngster.
- deleted 9y ago[deleted]