14 ms·
You Don't Need the Cloud
- thinkindie 5y agoi have the feeling this article is missing completely the point on the reason why you go for the cloud, or better saying, it's not enough to have everything into a single server (you don't want to have all your eggs in a single basket), unless you are just prototyping a service without real paying customers.
- PragmaticPulp 5y agoActually, rapidly developing a startup (as is the context of this website) is one of the best use cases of cloud services. It’s true: You can set up and maintain all of your own services, create a backup system for them, test it all, and handle your own redundancy. If you have an engineering background, this probably feels natural and will feel like a lot of progress and accomplishment. But in the time it takes to do all of that (usually distributed and interwoven into other activities) you could have been prototyping out your startup. That’s the value of cloud. You can always invest the effort into setting up your own services later as a cost reduction move. Doing the cost-reduction activities before you’ve even prototyped a business isn’t a great use of precious time in a startup’s early days.
- jdvh 5y agoThat's fair, and I'm not dogmatically opposed to the cloud. But when you have underpowered cloud machines you end up having different machines for email, for web workers, for caching, and so on. The complexity you introduce by making your app scalable in that way you just don't have when you stick everything on 1 dedicated server. With dedicated machines I don't need to create a distributed architecture prematurely. It takes us some time to set up dedicated machines, but less than a day. Ansible helps a bunch.
- eropple 5y agoEmail sending, web workers, etc. can all feed off of the same repository, running on different hardware, and have functions subdivided by DNS. "Monolith as services" is a super common pattern. The closest thing I can tease out of this claim that seems like a significant practical criticism is that you need a resilient communications channel for talking from, say, core logic to an email sender--but you need that on one node too, if you aren't using a the right datastore for the job you're asking to staple your hand to your face no matter how many nodes your application runs on. And these days it's pretty trivial to use a lot of AWS free tier stuff--or other clouds, but let's be real, AWS gives you A Lot--for much of what you describe. CloudFront is not my favorite CDN but they give you a bonkers amount of free transfer these days. DynamoDB as an object cache, if you don't want to pay for Redis. SQS is free to like a million API request a month and you can stick a lambda on the other end of it to handle offline/async tasks. And SES turns email sending into an API call. If your concern is velocity, then cloud stuff is almost unassailable. If your concern is price, better cloud stuff is hard to beat, too. If your concern is portability, I hope you're already profitable and that it's worth your time to worry about it.
- brobdingnagians 5y agoOn the other extreme end, I can setup a server in half an hour and deploy my code to it directly. No moving parts to get messed up or poorly configured or compromised. There are a lot of cloud devops things I don't get, but if it is just me, then it is dead simple and cheap, and I can add those later when/if they become important.
- thinkindie 5y agothing is - you don't want to have a single server for your application, even the most simple one. Even having some simple redundancy in place means having 2 webservers, 2 database servers (separated from the webservers). And even for storage, S3 is not evaluated under the only metrics of storage size, but availability and durability too.
- nicoburns 5y agoAs a small startup you don't really need redundancy. Regular backups is likely good enough.
- comprev 5y ago24/7 operations is the norm these days and I'd be surprised if the client doesn't want redundancy.
- secabeen 5y agoI don't work in a small startup (large non-profit), and our SLAs are best-effort only outside M-F 8am-5pm. Not everyone is trying to build a global-scale stack.
- TameAntelope 5y agoAs a small startup you need to be focusing on iterating with your (potential) customers, not on how to securely set up a web server. Most startups are not hard tech problems, despite the very strong desire to make them so by a technical founder.
- samhw 5y agoThis is why I think we need a 'simple cloud' where people can spin up a single server nearly instantly, with sane defaults which are configurable if needed, and a super simple flow to connect it to GitHub (maybe even "Go to your repo and `curl foo.sh/setup?id=ZnVjayB0ZXJyYWZvcm0K | sh`, then commit the result"). There's so much you could do from a UX point of view. Nobody wants to be fiddling around with IAM roles, trying to add the right ingress rules so their server can actually connect to the internet, configuring TCP_NODELAY, etc - and then constantly wondering if their server is secure. Just to run some CRUD React app whose requirements are the same as the other 99.99% of developers.
- eropple 5y agoYou pretty much just described Render. https://render.com https://render.com It's not perfect, and there is probably a point in time for a project where you'll need to evaluate other options, but I haven't found much that's better for small-scale stuff if you don't want to think too hard.
- samhw 5y agoThat's fantastic! I'll have to take a look. Thanks for showing me. I was aware of Heroku, but this seems like the modern equivalent which I had in mind. (I do think you could likely go even simpler, though - there's a whole spectrum of complexity which could accommodate different services at each point.) Edit: Apropos of "there's a point in time where you'll need to evaluate other options": I think a good selling point would be a well-designed flow for 'ejecting' to a self-hosted or AWS/GCP environment. Yeah, yeah, it's not good for lock-in, but by the exact same token it would be a strong selling point. Done well, you could assuage the "we may as well get it out of the way now" concerns by saying that you'll make it easier to set up shop on AWS.
- eropple 5y agoYou could go simpler than Render, and some folks do--but you go simpler at the cost of drastically reducing the value of a thing for whole categories of non-toy projects. For example, if you want to host a static thing there are a lot of pretty easy options, but the second you need something as foreign to the "JAMstack ideal" as "a datastore" like "for a blog with comments" now you're in multiple control panels and you're shuttling secrets around and you're confronted with paying multiple companies just to launch a blog and the whole thing physically hurts. Some mild complexity in deploy (and it is mild, a render.yaml file in your repo's super easy) comes from having the options to actually do things, I think.
- fartcannon 5y agoOr, its the one choice you made that prevents your small business from collapsing under surprise charges from Azure.
- donmb 5y agoexactly. not everyone can afford a sys-admin or has the background OP has
- mythrwy 5y agoIt takes time to learn your way and navigate through the maze that is AWS or GCP cloud as well though. And you never get rid of sys admins, they just get renamed AWS specialists.
- shubb 5y agoBut AWS specialists get paid more, and if as a sysadmin you push these technologies in your business, you will become a highly paid AWS specialist. This is a big driver for the adoption of any tech - internal teams want to gain specific skills and job titles in order to get paid more somewhere else. I know that sounds cynical but as an engineer this has often been at the back of my mind when choosing technologies - either personally, or as a sweetener to get buy in from other engineers on some architectural choice I know they would otherwise object to.
- 99_00 5y agoCynical? I thought that this is what companies wanted me to do when they have me set career development goals. After all, the director of engineering also wants to put "moved operations to the cloud" on their resume so they can get a better paying job somewhere else or a better title.
- tonyedgecombe 5y agoThe fact that there are AWS pricing specialists tells you everything.
- zimbatm 5y ago"The cloud" also includes massive time sinks like Kubernetes or lambdas with a million of AWS services that can also become a huge distraction to building the product. It's perfectly possible to build a MVP using a single VM and rsynched PHP code. The iteration speed (when solo) and amount of control is probably higher than anything you're referencing to. In the end what matters the most if what technologies you're already familiar with.
- nasmorn 5y agoI recently switched all my hosting to k8s and I think it is pretty nice for a bunch of small heterogeneous web services. It is a bit of a time sink initially but at least it seems like pretty portable knowledge
- alzoid 5y agoI find the costs and use cases take up time to try and figure out. I wanted to prototype a IOT device pushing data to the cloud. I used Google IOT Core. After reading a bunch of tutorials I streamed the data to Big Query. I used a device to send about 1000 readings and it cost me around $150 USD. I have no idea why it cost so much. It used 1000 hours of cpu time. I find that so confusing. Why was that much CPU required for so little data? It was 5 JSON fields into a table. Did I choose the wrong thing to ingest the data? Should I use functions? So I am going back and seeing what else is possible. I tried setting up a PostgreSQL Compute VM but then I needed another specialized instance to act as a go between for allowing access for serverless vpc access. I get charged a bit for everything. I just want to build a product and see if people want it. I have no idea what to charge because I don't understand the costs. Do I spend time figuring out the costs of every little thing that is touched or do I install something on a hosted server? I feel like there should be out of the box setups for this stuff in Google cloud. They have so much to offer, I think tying it together in easy to use and price packages would get a lot of people using it who need to rapidly get something made.
- 908B64B197 5y ago> But in the time it takes to do all of that (usually distributed and interwoven into other activities) you could have been prototyping out your startup. That’s the value of cloud. Honestly reinventing the wheel like that to cut costs points to a management/vision issue. The founders should simply raise more money. The cloud is an incredible value proposition when you understand the amount of momentum and time it affords to an organization. And, for larger companies, it also bypasses internal IT when the team just needs resources right now to innovate.
- surfer7837 5y ago> RDS. It’s slow and super expensive. I don’t want to worry about one-off queries or migrations. If you use only 5% of your server capacity you can afford to do inefficient things at times. The author has clearly not had to do a database migration at 3AM. AWS is more expensive but so is my time, so it works out better all the time. Isn’t computer science all about building on abstractions? Where do you draw the line? Should I write a kernel every time because Red Hat /MSFT charges me $100?
- AnIdiotOnTheNet 5y ago> Isn’t computer science all about building on abstractions? Wow, I guess this is why so much software is so slow and fragile these days.
- deleted 5y ago[deleted]
- gwbas1c 5y agoNot every web app is high-scale, constant load. Many are ultra-low load and can do DB migrations by simply warning users about anticipated downtime. I've worked in both environments. It's about understanding your business needs; "cloud" can quickly turn into premature optimization and burn time/money if you don't need it.
- loriverkutya 5y agoRDS is amazing, we upgraded our postgres DBs from 8.something to 11.something with one click/db and 5 minutes downtime a few weeks ago. Bigger/smaller instances and read replicas are also one click away in case you need to scale up or down. The builtin snapshot and backup capabilities are working out of the box, set it up and forget about it till you need to restore. Easily managable via terraform or your choice of infrastructure as code tools.
- TameAntelope 5y agoServerless RDS has been a dream so far, zero complaints. And +1 to Terraform. I really do think these problems are related to experience, with some folks favoring complaints over getting their hands dirty and figuring things out for themselves.
- taubek 5y agoIt all comes down to your tech stack and if you have someone that will take care of your VPS.
- lbriner 5y agoThis article sounds like a strawman. He is saying that you don't need the cloud but is hosting a VM on a cloud provider, which is probably what most "cloud" users do. Cloudflare? Clue's in the name. Use Linux tools for backups? Great. Where to? Cloud storage? Sounds a bit click-baity to me.
- area51org 5y agoYou do have a point, there—he seems to contradict himself—but his larger point is about hosting, specifically.
- smt88 5y agoYes you do. Don't listen to this nonsense if you're starting a company. Managing your own database server is orders of magnitude more costly than using RDS because it is a waste of time.
- bsagdiyev 5y agoYes, understanding your app and stack is a waste of time. Ignore learning efficiency in the name of padding cloud provider pockets, it's the only way!
- yunwal 5y agoHell, write everything in assembly, you'll never get optimal performance using higher level languages. Plus, have you actually read all of the code in the python standard library?
- bsagdiyev 5y agoThat is a stupid straw man and you know it. Knowing what your software stack does it not impossible, people are just lazy and want to pump out resume enhancing features.
- smt88 5y ago> Knowing what your software stack does it not impossible No. It's literally impossible. There is no one working at a startup today who understands their entire stack, from hardware all the way up to web code. Not even the highest-paid people at Facebook could claim to know that. Even the knowledge required to understand the Linux kernel, which almost every software developer works with today, is beyond almost all developers. And guess what? The world keeps turning. People build cutting-edge technical startups without knowing how every part of their stack works. There are millions of person-years of work that go into even a basic web stack. It's insane to think someone can know all of it. And the whole point of the Linux philosophy is so that you don't have to know it -- you have simple building blocks where you can understand the I/O and use them to compose something much more complex.
- donmb 5y agoI can agree with most of the article but consider that not every startup has a sys-admin or can afford one. We are also a startup and we use AWS + heroku because we don't want to focus on setting up a ruby server and handle deployment pipelines and all that. This is the BIG advantage of cloud. Yes we don't use a lot of AWS tools but S3 is "pay as you go" exactly for that reason. The only reason we might need to switch to a Hetzner-like architecture is because our customers want the data to be in Germany. No other reason could move us there tbh.
- lazyant 5y agoFor a simple web server? sure you don't need the cloud (still you'll have to do a lot of things manually and hard to reproduce, maintain your own database etc but yes, makes sense in many cases, esp on a budget).
- ldjkfkdsjnv 5y agoPeople have no clue how productive the cloud is once you are proficient with it, and this is also likely just clickbait.
- mbesto 5y agoHere we go again... Look, this is the bottom line - it depends. There is a thing called TCO - total cost of ownership. If you don't calculate all of the costs associated with cloud vs vps vs bare metal then you're doing the analysis WRONG.
- Nextgrid 5y agoAbsolutely, but there's a frequent misconception that the cloud has less management overhead even though most shops will still end up with one or more DevOps engineers on payroll.
- rytill 5y agoWhat is the cost difference between the Hetzner dedicated machine and an equivalent EC2 instance?
- Nextgrid 5y agoFrom a resources (CPU/RAM/disk/bandwidth) per buck, the difference is extreme. ~50 bucks a month on Hetzner will give you 8 cores (real ones, not vCPUs), 32-64 GB of RAM, several hundred gigs of SSD and 1Gbps unmetered bandwidth. The same on AWS will probably be ~150 bucks just for CPU & RAM alone, excluding storage and bandwidth.
- billconan 5y agois there anything similar to hetzner.com in the U.S. ? the colo price looks really cheap!
- heffer 5y agoHetzner has a presence in the US (for their Cloud offerings) but not for Dedicated or Colo. The Colo looks cheap because it does not include any power usage. But by German standards (and at this time) the price Hetzner charges for power consumption can be considered economical.
- smartties 5y agoOVH ?
- betaby 5y agoOVH Montreal (Beauharnois) is about 8ms RTT to NYC.
- dilyevsky 5y agoNot quite same but there’s equinix metal and vultr
- TheIronMark 5y ago> Lambda? Beanstalk? Glacier? EBS? What even is all this stuff. Yeah, well, if you don't understand something, you're not gonna recommend it. I'm glad they've found a solution, but to make a blanket statement that no one needs cloud is just dumb. also > Identity management. You don’t need it. Oh. Oh, no.
- jcvold 5y agoAgreed. Wait for tomorrow's blog post on this site titled: "Day 12: How to create a controversial post to generate traffic!"
- hn_throwaway_99 5y ago> Identity management. You don’t need it. I had the same "This is just ridiculous" thought when I saw that. The other thing I'd bet is that this person has never had to make sure their infrastructure can pass any kind of security questionnaire or compliance audit. My guess is they would fail in a heartbeat.
- Crosseye_Jack 5y agoMy takeaway from "Identity management. You don’t need it." was talking about AWS Cognito and not identity management as a whole. At least that is what I hope they meant.
- Tainnor 5y ago> The other thing I'd bet is that this person has never had to make sure their infrastructure can pass any kind of security questionnaire or compliance audit. Security audits are a big security theater more often than not, though. At my current workplace, I have to jump through several hoops to do certain things, but it doesn't change the fact that I (or some privileged service) am still the entity that is allowed to jump through all these hoops. I don't want to imply that IAM is necessarily bad, but it is complicated to understand and security is often negatively affected when there is friction involved. Then, processes are implemented that look secure, but they don't necessarily guarantee security and people find workarounds like sharing tokens, defeating the whole point of auditability.
- awayto 5y agoA lot of the comments here are about difficulty cloud tech navigation/adoption. I create a framework built on top of AWS to try to alleviate a great deal of the infra management aspects of running web applications. It sets you up with all the basics out of the box in about 10 minutes (db, api, ui, users, groups, roles). https://awayto.dev https://awayto.dev https://github.com/keybittech/awayto https://github.com/keybittech/awayto Along the same vein as other posts in this thread, startups and contractors need instantaneous test bed environments that support a lot out of the gate, and which can be the basis to scale from. I've been a contractor off and on for a few years and have seen this need first hand. So my tool is meant to fill in the foundations of great ideas, so those ideas can grow faster. I think that's an essential trait of cloud services that you will be hard-pressed to find elsewhere.
- hn_throwaway_99 5y ago> If you’re a startup you want to focus on your product, and all this cloud tech is just a distraction. AWS is for big companies with a lot of turnover that can’t run their own machines. Can't emphasize how wrong this is, and how for our company the exact opposite was true. I don't manage any servers, our infrastructure runs on a mix of serverless technologies. Yes, at some point we may move things around because of cost, but that was planned up front and will be straightforward (our instances are just Docker containers running on Cloud Run and/or App Engine Flexible). The reason this is such bad advice is because there is a ton of shit you need to do on your own (or, more likely, doesn't get done at all in some cases) if you run your own infrastructure: 1. You need to setup all of your own logging aggregation and monitoring systems. That's really a few clicks in a cloud. 2. You need to constantly update your images for security reasons. In a cloud, that is done for me. 3. All the systems I use are autoscaling. If I have a spike in traffic for some reason, probably the time when I most want my servers to be up, I don't have to scramble. If you're a a startup and want to just focus on your product, you should build in the cloud. If you want to focus on your infrastructure, by all means build it yourself.
- squallstar 5y agoYes, tell me about not needing the cloud (aka a managed provisioning and scaling service) when your poorly configured database breaks, or when you need a 3 hours downtime on prod because you need to reboot and reconfigure your services, or your release breaks production because you're using a diff tool to run deployments, or you simply have no option to scale horizontally past your single vps once traffic comes in. Very clickbait article, please don't blindly follow recommendations by someone which obviously doesn't get services even like Elastic Beanstalk, Lambda and Identity management (:shrugh:). Sure, a VPS is fine for a low risk pet project like your portfolio, a blog, some marketing websites, the project I built over the weekend and a few other things. For anything else, there's literally not a single reason for not wanting to use a cloud service / a managed provider.
- Shorel 5y ago> because you're using a diff tool to run deployments I really don't see what using a diff tool has to do with the cloud. This is basically the textbook definition of a straw man argument.
- pbalau 5y agoTo be honest, the tech world is full of dilettantes with too much free time.
- speedgoose 5y agoI don’t know. We used a managed kubernetes cluster at my previous work and it was a shit show. The support was worse than useless and we couldn’t do much about our issues. I now manage kubernetes myself and it’s much better. If there is a problem I can fix it myself and not have to deal with oversea support who barely understand the issue half of the time.
- dilyevsky 5y agoSame here at previous co. The so called “platinum support” on certain providers could be better categorized using a different compound
- 5y ago
- travisgriggs 5y agoIt’s interesting how words evolve. Maybe this was different for others, but when I saw the headline, my expectation was that this would be an article about going back to desktop apps with built in updaters, or something like that. Because I’ve always felt the cloud got used as a business-speak version of internet 2.0. So by TPE, my brain saw that and thought “someone’s writing about dieting from the internet as we know it”. In this case they’re using “cloud” as a drop in for software-infrastructure-as-service. Or “be your own best little cloud”. Which is not wrong. Maybe I’m the one late to the slang party here. Either way, i still find it an interesting example of how these buzzwords morph over time.
- zephyrfalcon 5y agoI had similar thoughts when reading it. They're using servers that are hosted by someone else; you don't even know where they are exactly. That is still the cloud.
- enz 5y agoI'd say it's a matter of what you try to optimize when you start a business. I am starting a business now (not related to IT per se, but we need servers/infra). My limiting factors right now are time and money. I optimize my time by doing boring stuff that I already know: no new tech to learn, and no new techniques to learn. I optimize my expenses by using some free or almost free services, which may involve the "Cloud". Those are the only things I care about at this stage.
- rambambram 5y agoWas exactly my reasoning: no new tech, do it with the skills I already acquired. But I do try some new techniques or new methods once in a while, just to keep stuff enjoyable.
- TameAntelope 5y agoAgreed. It's honestly a luxury to get to decide to be anti-cloud, a luxury paid for by someone else's idea not finding product/market fit for that much longer while you fiddle with nginx settings for another four hours.
- jimbob45 5y agoCame here to say exactly this. When you're sprinting to get to market first, you can't not afford to leverage the cloud. Later on (but preferably before you IPO for billions), you should seek to migrate away from the cloud to a platform you have tighter control over.
- Apreche 5y ago"You don't need the cloud" but then you suggest using a hosting provider. Guess what? That's the cloud. To be not the cloud is has to be your own hardware that you are managing directly.
- rambambram 5y agoAhum... Hosting providers exist for a long time. Way before this hype word 'cloud' was introduced.
- KaiserPro 5y agofor a startup, I suspect that this is mostly wrong advice. Yes, don't yak shave and re-invent things, be cost sensitive, but to exclude the cloud is silly. > RDS. It’s slow and super expensive. I don’t want to worry about one-off queries or migrations. If you use only 5% of your server capacity you can afford to do inefficient things at times. It is expensive. But so is a shitty database thats not backed up, and cant be recovered. The inbuilt security that can come from RDS is a really really good thing, and is worth its weight in not having a DBA. > Identity management. You don’t need it. total bullshit. But its better to use a google domain for that. SSO for all the things. > S3. Unless you store a massive amount of data you don’t need it. No. even as a reformed storage admin, S3 has its place. Yes its shit, yes its slow, but it works for a lot of web based things. The crucial thing is for small amounts of data accessed by lots of things, S3 is actually reasonable. coupled with decent access controls and ephemeral keys, its a goodish build artifact store. And don't overestimate the value of an S3 website. It is utterly shit for fast read/writes of large files. Or if you are editing a file in place. Its also fucking expensive for large amounts of data. but it has its place. > Lambda? Beanstalk? Glacier? EBS? What even is all this stuff. Lambda: CGI-BIN but with a docker twist. Beanstalk: dont ever touch it, its shit Glacier: an expensive way to ignore your data, but cheaper than ignoring it on S3 EBS: Hard drives on demand. For anything that is experimental, or subject to change, or development, the cloud is a good fit. If you are doing stuff that involves non burstable CPU/disk heavy stuff, then its less of a good fit. However I don't think now I'd ever go entirely one way or the other. I'd always have some physical kit I own, or services I'd buy from the cloud.
- tnolet 5y agoThis is fine for the indie hacker / build-100-startups-in -3-days folks. It’s about not scaling prematurely. But once your product sticks, you will suddenly need to explain to your customer where your dev, test, acc, staging environments are. How redundant they are. How they are separated. How you assure a million other identity, logging etc. requirements. And yes, you will need identity mgmt then. And — who would have thought— AWS e.a. gives you that. Congrats, you now need the cloud!
- 999900000999 5y agoI don't understand this article at all, if you're a startup and you're not worried about tech, you'd probably lean more towards fully managed solutions like Firebase. Whying God's name would you have to run your own postgres instance on a server when you can take 30 seconds and create one in AWS?.
- vanusa 5y agoYou can also "create" (i.e. start) one on your VPS if you happen to know how. Which takes about as long to figure out how to do as anything on your control panel. Plus, you learn how things actually work. Not saying there aren't other perfectly good reasons to use cloud services - bu the above argument isn't one of them.
- 999900000999 5y agoAre you telling me that using a VPS is quicker than AWS RDS which already has everything preconfigured ?
- vanusa 5y agoThis is a straw man (and basically pretty silly) argument, of course.
- numlock86 5y ago> Lambda? Beanstalk? Glacier? EBS? What even is all this stuff. > Identity management. You don’t need it. > If you’re a startup you want to focus on your product, and all this cloud tech is just a distraction. The whole point of the article is to create controversy, attention and traffic? This can't be serious.
- sascha_sl 5y ago"The Cloud is bad, instead rely on this service that happens to have a pretty good value free tier called.... uh... Baremetalflare?"
- hardwaresofton 5y agoThis may have better named "you don't need the cloud for high performance". Hetzner is awesome (I'm a huge fan) but what they're offering you is relatively low level and you need to know how to use it properly. As with most things it's a balance -- maybe you don't need the latest 5-10 AWS services that have been launched, but it's pretty reasonable to want to use them if the pricing was reasonable. What people need is the reasonable set of well-managed services, and competition on the provider side to drive down price and produce better solutions (not just complicated ones). There's truth to the fact that AWS is "too much" in many ways, but having every single dev that exists know how to properly configure NGINX, properly lock down a server, or run postgres is a mis-allocation of skills. The cloud landscape needs ubiquitous lower level managed cloud services for prices that don't make people tear their hair out and write articles like this. 99% of profitable CRUD-y apps out there would be fine with the usual app + redis + postgres stack and they'd be able to move faster if they didn't have to run it themselves. Shameless plug for something I'm working on -- Nimbus Web Services[0]. I'm trying to run the managed service layer on providers like Hetzner so others can keep their focus elsewhere. [0]: https://nimbusws.com https://nimbusws.com
- usrbinbash 5y ago> but having every single dev that exists know how to properly configure NGINX, properly lock down a server, or run postgres is a mis-allocation of skills. 1. Why would "every single dev that exists" need to know this? You need a handful of people per company, depending on size maybe as few as one sysadmin and a backup guy, and you're set. 2. The alternative is that every single dev that exists needs to know about whatever the cloud-solution-du-jour may be, because suddenly the product has to be written with the architecture in mind (eg. to not get surprised by huge bills) 3. As a dev who learned all how to configure apache and nginx, manage containers, setup, harden and supervise systems (aka. "sysadmin stuff") I can say its doable, and even fun to learn.
- adampk 5y agoAs a dev that is looking to do the same any recommendations for materials?
- jms703 5y agoStop. This article is click bait satire.
- ggregoire 5y ago> If you’re a startup you want to focus on your product Sounds about right but that contradicts the premise of the article.
- throwaway657329 5y agoA common defense of using the cloud is that it saves you the cost of employing a dedicated sysadmin team and is hence cheaper in total, even once you factor in the higher runtime costs. However, in my experience, as soon as you scale beyond anything from a "hand deployed" MVP, you will need to build tooling around deployment management. And guess what? This tooling is most often developed by a dedicated infrastructure team. So, all-in-all, you don't really save on labor but still pay for the more expensive runtime costs. Oh, and you have vendor lock-in. EDIT (addendum): I'm not advocating to run your own datacenter as soon as your organization grows, because that requires yet another team and has immense initial overhead. The most portable and cost-effective method is to rent servers as you scale or use VPS providers. If you are already using a cloud, stick to the products that have equivalents in non-cloud situations. E.g. managed postgres / your own postgres, virtual machines, kubernetes, kafka. Stay away from special-purpose proprietary systems such as pub/sub systems, "lambdas", cloud configuration, etc.
- didip 5y agoPostgreSQL Aurora alone is worth it to use the cloud (or GCP equivalent of it). IAM role alone is worth it to be on the cloud. Haphazard iptable rules aren’t helping anyone. S3 bucket alone is worth it to be on the cloud. Your deployment/app will inevitably have artifacts and putting them in NFS is just asking for trouble.
- 0xbadcafebee 5y ago> If you’re a startup you want to focus on your product, and all this cloud tech is just a distraction. All technology is a distraction... > AWS is for big companies with a lot of turnover that can’t run their own machines. Or for start-ups that want to pay somebody to manage their machines. I thought you were just complaining about distractions? Isn't running your own machines a distraction? > Unless your startup needs so much compute or storage that running your own dedicated machines becomes unmanageable I think you should just say “no” to all of it. An extremely reasonable decision. I'll just run everything myself until it all falls apart and then struggle to move to the cloud while my business flounders.
- ipiz0618 5y agoI once hosted a side project with a Raspberry Pi at home. One week later I got lots of unknown IPs from China trying to access php admin / other admin URLs I don't remember with default usernames and presumably password. Luckily I didn't set up an admin console. No I don't want the risk of someone trying to enter my network. Even if I have a firewall and the best security practices I may worry about that at night, like strangers trying to break your lock.
- inopinatus 5y agoPlease don't dump untreated content marketing in the reading fountain.
- jb1991 5y agoHere’s the thing: we actually do need the cloud, not just one but actually many clouds. It has been well proven that clouds are a major contributor to the world’s rainfall, and this is extremely useful and convenient. Without a cloud, there are many more hoops you must jump through to get what is necessary.
- frankcaron 5y ago"[1] This blog runs on the cloud but that’s because WordPress is a security nightmare and a cloud VM is the easiest way to sandbox it. Ironic, I know." Really all that needs to be said. Self-defeating post.
- StreamBright 5y agoAs a person who created infrastructure for many startups and migrated some of the largest companies to the cloud, I disagree. Cloud is the next logical progression for information technology. It is similar to the progress we made in agriculture or energy production. The article has some comedy lines like this: >> Dedicated machines offer unparalleled performance and are rock solid. A single node? I wonder how the packets are arriving to this single node. How about electricity? Cooling? Oh yeah, these things are not part of the discussion. Look at the rock solid dedicated machines: https://www.datacenterdynamics.com/en/news/ovhcloud-wont-reveal-the-cause-of-its-disastrous-fire-till-2022/ https://www.datacenterdynamics.com/en/news/ovhcloud-wont-rev... Anyways, for the cloud hating crowd there, please try to make arguments multi dimensional and try to get away from single nodes. Many companies need more than a single node and there are other things than single node performance when talking about purchasing computation of storage resources.
- leocarrera 5y agoFinally, someone talking clear in one point, you don't need amazon with all the flavors for your startup... Most of the time, for the start of the project, you only need one instance with one or max two cores of CPU and a basic installation of some services (Nginx, MySQL, Postgres, node, etc.)... you only need to start your idea and make it profitable, then begin to scale and add some extra service try first on your own and then with some dedicated service (s3, rds, etc.)...
- mwcampbell 5y agoI get the appeal of being able to rent an inexpensive dedicated server, have a whole computer to oneself, and have so much spare computing capacity that one doesn't have to really think about it. It does feel liberating, compared to being nickled and dimed by one of the cloud providers, and having to put up with the overhead of virtualization and networked block storage. But what feels better still is knowing that I can put my phone in airplane mode and trust that the cloud provider will keep my application running, including automatically restarting it on a different physical machine, switching the database over to a hot spare, etc. I could hypothetically script all of that myself in a bare metal setup, but when the shit hits the fan, my home-made solution would be much more likely to fail than AWS auto scaling and RDS.
- StreamBright 5y ago>> having to put up with the overhead of virtualization and networked block storage. Could you point out how much the overhead of virtualization nowadays? What is the downside of networked block storage? In what use cases does it matter?
- gfykvfyxgc 5y agoTotally agree. Just use virtual machines or colocated servers.
- lewisjoe 5y agoI have a slightly parallel hypothesis as to why companies are paying fortunes as AWS and Azure bills. I call it Kubernetes Driven DevOps. While kubernetes is a really great solution to a wide range of problems, often those problems are only faced by large companies with massive scale. But what is really happening in the industry is that, the new age DevOps engineers start their learning with containers and kubernetes as the base truth - and then are hired based on their experience around that ecosystem. This inadvertantly leads to an industry full of kubernetes experts who nail every service with k8s hammer and then drive insane amount of cloud infra bills. I miss the old era cloud where the offerings and the ecosystem were friendly to indie devs as much as they were for BigCorps. Here's a tweet thread where I outline WASM as a potential bet against this kubernetes inflated devops culture - https://twitter.com/vettijoe/status/1484507483788161026?s=21 https://twitter.com/vettijoe/status/1484507483788161026?s=21
- 300bps 5y agoLambda? Beanstalk? Glacier? EBS? What even is all this stuff. This says it all to me. The OP is making a classic mistake in thinking that the cloud just means moving your on-prem servers to a data provider. That is not what Azure/AWS is about. I made the same mistake and cloud made no sense to me whatsoever for years. In the past year, I've learned that cloud means the minimum required resources popping in and out of existence for the exact amount of time required to do a job. That is where most software is headed. It is inevitable in my opinion. If you don't know what an SQS queue is or Lambda or Step Functions or SNS messaging I would really really recommend learning. (Or whatever the equivalent on Azure is)
- IYasha 5y ago"There's no cloud. There's only someone else's computer." said someone here on HN. Cannot agree more. I want control. I want RAID, FDE, IPMI/KVM, etc. etc. That's why I use colocation service. Surely, there are disadvantages: you are responsible for all the maintenance, upgrades, logistics, etc. But my users enjoy fast latencies and no BloatFlare puzzles.
- xtracto 5y agoOn which of the 80 days do they do SOC2, ISO27001 or PCI compliance? Let me know if they still think they don't need cloud services once they get to that day.
- illegalbyte 5y ago
- rob_c 5y agoI'd argue the technologies are for bigger companies, but not even the cloud itself. Self-hosted 'cloud-like' infrastructure is a better future.