7 ms·
Stop Doing Cloud
- colesantiago 3y agoI ain't reading all that. I am happy for you though. Or sorry that happened. I kid, but the cloud may be expensive, but I too have used the cloud serving hundreds of thousands of users and have nowhere near the huge costs (around $100-130 a month), making well over $100K MRR. Sometimes it depends on your business model and if you value your time. Running a bunch of dev scripts on a VPS for me just wastes my time when I can just heroku push, point click and done, back enjoying my vacation.
- bastawhiz 3y agoExactly. My AWS bill is $800-959/mo and 90% of that is split between storage and egress (a few tb each). I could get a colo and buy my own storage servers or move that stuff to Hetzner or R2 and maybe make my money back in a year or two, but I could also just not think about it and make slightly less money. The cost of me not having to worry about hardware or disks filling up or additional complexity is acceptable for me.
- Sytten 3y agoThis article doesn't offer any compelling argument IMO. When you are a startup you have to focus on getting to PMF, it doesn't matter that you spend more for managed services. In fact your time is much better spend building your service and iterating faster than dealing with server updates, backups, high availability, etc, etc.
- teaearlgraycold 3y agoAlso a lot of startups right now need 1 - N GPUs on demand. I do not think the author has ever worked on a growing product.
- gcapu 3y agoRight now GCP and lambda cloud have almost no GPUs available. I would have done better on prem.
- tptacek 3y agoDo they? Why?
- gadflyinyoureye 3y agoStartups are about hype. Current hype is AI. Google’s CPU based AI training system, whose name I’m blanking on now, doesn’t out perform GPU on smaller loads. Can’t say, “This pen is worth paying $10k unless you include ‘with AI’”.
- tptacek 3y agoRight, I get the "AI -> GPU" connection, I'm asking: literally what does a startup do with an on-demand GPU? What is the workload?
- dvfjsdhgfv 3y agoSadly, even if you do something absolutely non-"AI" related, you need to add "AI" somewhere, it's a kind of SEO for VC. Yesterday it was blockchain, tomorrow it will be something else.
- optimalquiet 3y agoDid blockchain startups ever provide any real value to end-users? Like, at all? Speaking from my technical but not SWE perspective, the only things I'm familiar with using the blockchain are cryptocurrency (obviously) and NFTs, which as far as I'm concerned are a scam. AI does seem different in that regard, I think it is providing tremendous value to people. Just probably not in the random places where people are throwing it in where it doesn't actually fit.
- 3y ago
- omoikane 3y agoPart of it seem to be in the format of the "stop doing math" meme[1], so I am not sure how much of it is serious. [1] https://web.archive.org/web/20200418170753/https://twitter.com/WTMMP/status/1251285960819687426 https://web.archive.org/web/20200418170753/https://twitter.c...
- cmrdporcupine 3y agoThat makes sense with yesterday's low interest rate and high VC investment, sure, and for startups that are VC funded so have cash to burn. But we're entering leaner times. Many younger people haven't been through this before. Others may not remember. Investors are going to demand more responsible spending, and better balance books, sooner. If you can start on a shoestring and hold on until you need to scale, you have an advantage in this market that you didn't have 5 years ago. That and a lot of the cloud stuff comes with an inherent complexity. Architecting for cloud hosted K8 and various cloud services comes not only with a $$ cost but a software architecture complexity & labour overhead. A single server can do a lot these days. Many many businesses think they need to scale out of the box a lot more than they do.
- snoman 3y agoI’m sorry, are you advocating to do k8s on-premise as opposed to cloud? Or are you straw-manning “cloud architecture” by assuming that k8s is somehow some cloud requirement vs a single box you paid for yourself in a colo? You can spin up a single server in the cloud as simply (or more so) than in a colo. Then you can add a load balancer and auto scaling in a few hrs (or less depending on experience) if you reach the point where you need to scale.
- gigatexal 3y agoI dunno ... been there done the startup thing. Had we not gone with k8s and just gone with a vm -- even without docker compose -- but just a monolith we'd have been 1000% further along than when I left. Even doing everything cloud native means learning how to package your stuff for that provider and go through their docs, learn their idosyncracies, etc. BUT!!!! Let's say you hire a kid whose been tinkering with servers in their room since they were teens and know their way around a Linux distro and can package python and run a proxy etc etc There's a lot of compelling reason to simplify the tech stack and cloud/k8s/etc makes sense only when the scale requires it. --- That being said -- Hetzner is not the panacea its pricing might suggest. We run our self hosted gitlab on it and we've had 2-3 incidents in the last month that required them to either power cycle a machine or fix some networking thing etc etc. I kinda expected more. But it's hella cheap: where else will you find so much hardware for 200 a month.
- deleted 3y ago[deleted]
- YZF 3y agoIf your entire application fits in one VM forever - fair enough. If you're running a whole fleet of VMs and need to manage them the pain of doing that is quickly going to exceed the "pain" of using k8s. Do you need something like k8s ingress? Do you need the ability to move workloads if a machine goes down? certs? external-dns? Are you going to deploying tooling that's available off the shelf for k8s? (lessay Prometheus/Grafana?). VMs have overhead and likely waste a lot of resources. I've seen this "monolith" and I've seen containerized/k8s. For anything that needs to scale and needs similar abstractions you get out of k8s you definitely should not try to reproduce this using VMs.
- toast0 3y ago> If your entire application fits in one VM forever - fair enough. A lot of applications can fit on a single machine. Single machines have gotten so big: 256+ cores, terrabytes of ram, huge amounts of fast storage, 100+Gbps NICs. Yeah, you should have 2-4 for continuity, but that doesn't need orchestration. You really don't need to start thinking about horizontal scaling unless you're getting close to filling a single big machine. Especially since the longer it takes for you to scale to big machines, the bigger the machines will be when you get there. If your application is very latency sensitive, then maybe you need to run machines in more places, and maybe you want something to orchestrate that...
- codegeek 3y agoI think you are missing the point of the article. What I took from it is that majority of cases do not need the complexity that cloud brings including tons of unnecessary tools that are part of a cloud deployment. Yes u need to get to Pmf first but you can do that without a kubernetes architecture or deploying a highly available app in 5 different zones.
- vidarh 3y agoWhether it matters depends on how much your hosting costs make up of your burn rate. I agree it's a distraction for some startups, but I've also done startups where using AWS would've meant the company wasn't viable at all.
- mongol 3y ago> To be honest most of you will be fine running a single dedicated bare-metal server Someone that says this has never even reflected about availability requirements.
- bastawhiz 3y agoIt's 100% uptime as long as you never have to reboot!
- lakomen 3y agoAnd even if you have to reboot, how long does it take? A minute? How much does that minute downtime cost? It can cost a lot and for that case you have HA. Not rocket science tbh
- bastawhiz 3y ago> And even if you have to reboot, how long does it take? A minute? How much does that minute downtime cost? It can cost a lot and for that case you have HA. HA shouldn't mean "we deploy a few times a day which drops our uptime to three minutes so we have to spend a lot". One redundant server and a load balancer is hardly HA and increases costs by tens of dollars a month. And frankly, a minute of downtime is the optimistic case. It all goes to hell when you have a failed software deploy that needs to be rolled back. Or when the application server has a bug that causes crashes and needs to restart every few hours. A single-server setup is only useful for companies where the technology matters far less than the service being provided. If you can tolerate an uptime of only 2-3 nines, great, but that's absolutely not reasonable for companies where the technology is the service. It's not rocket science that paying customers are going to be pissed if your site is unreliable.
- dijit 3y agoI could write a novel in response to this. Top comment reflects on how "getting to market fast" is the most important thing, much more important than costs. I agree. Second comment reflects on reliability. Reliability is only a concern when you actually have a product that people want to use. Cold hard truth: If you are trying to get to market as fast as possible, most of the cloud abstractions are going to slow you down in most situations. It can be worth it, but your MVP should be as fast to develop as possible and there's nothing faster than writing code and running it. Second, the reliability of a single machine is much more than you think. Until recently AWS didn't even cover their own reliability of a single instance, if they needed to boot you off a node and shut down your EC2 instance: you might get a bit of notice. Ironically, you don't even need five-nines in most cases, and if you do, cloud only gives you a toolbox to get there, it's not going to get you there without serious human investment. You will get 2-3 nines of availability with a bog standard PHP+MYSQL on a single machine. You know how I know? Because we all did this 15 years ago and truthfully: servers and operating systems are significantly more robust now than they were then, so it's only gotten better for those who do things "wrong".
- mathfailure 3y agoThat's just raging idiocy, not a worthy article.
- spxneo 3y agovery refreshing to read. theres just so much complexity behind myriad of decisions just to build simple apps/websites and this is not a coincidence. by draining cognitive resources you are able to manipulate people into making poor quality decisions. ex) mainstream news, aisle of grocery items, FANG-led development mythos and over-engineering the last one is especially susceptible to manipulation. "but we have to scale", "i read HN article from an ivy league founder", "someone with lot of followers on twitter said so" and boom you are no longer in control of your mind or aware of losing control. marketing is just like herding cattles, DDOS their cognitive resources so they can't think for themselves and gaslight each other, make them use your npm/pip package with a subscription/metering from day 1, get em while they are young.
- samcat116 3y agoI agree maybe there's a bit of over adoption of architectures built for FANG companies, but arguing everyone is using the cloud due to "DDOSing of their cognitive resources" is a terrible take.
- spxneo 3y agoi think you should read the article again because thats exactly what i mean. people saying you are wrong without really offering rebuttal.
- underdeserver 3y agoFirst of all, should be (2023). Second, he starts with sudo. Where's that command line coming from? Who installed the OS? Who maintains it? What about availability zones and fast failover? You can do self hosting if you want, but it's not as easy or as cheap as he's making it out to be. Cloud is still better for early stage startups, that's why everyone's using it.
- codegeek 3y agoYou are missing the point. You may not need multiple availability zones when you are starting out and majority of cases never reach that point anyway. We are over optimizing too much because of "cloud" and dumbing us down further.
- deleted 3y ago[deleted]
- giantrobot 3y ago> Second, he starts with sudo. Where's that command line coming from? Who installed the OS? Who maintains it? What about availability zones and fast failover? I've noticed most of these anti-cloud articles omit this exact point consistently. So we'll replace "the cloud" with docker compose! Because apparently docker compose just spins up resources ex nihilo. There's also often the contrived assumption that "the cloud" means a bunch of huge bills because you automatically launch every service available and run them constantly. Also you run the largest instances because reasons.
- snoman 3y agoWhen people provision resources in the cloud in the same way they provision resources on-premises, they tend to massively over-provision.
- goostavos 3y ago>What about availability zones and fast failover You're making OP's main point. He's arguing that (to use his numbers) 90-95% of startups don't actually need to worry about that. Hell, I would argue that a lot of services at established companies don't actually need to worry about it (and the ones that do, need to worry about it a lot). Tons of stuff inside of $megacorps is running on crummy "non-scalable" architectures because somebody sat down and did the "engineering" part of "software engineering" and went "y'know, I think all we're really ever need is..." >Cloud is still better for early stage startups My preference is cloud these days (especially if I'm just quick and dirty clicking buttons in console rather than CDK-ing things together). However, there are still lots of cases where sinning up a $10 droplet and running `docker compose` completely satisfies "the architecture" part of the business.
- objektif 3y agoJust the thought of hosting my own DB makes me feel like fainting. No thanks.
- passion__desire 3y agoChoice of using cloud vs bare metal is similar to wasting time learning assembly vs higher level language. Similar affordances.
- elwebmaster 3y agoTry again. More like comparing Excel with VB macros (cloud) to a programming language. Artificial proprietary restrictions and inexplicable intricacies.
- objektif 3y agoThe thing is this type of argument often ignores opportunity costs of resources. There are a lot of other things that you can learn.
- bodantogat 3y agoI spend quite a bit on cloud, and despite that I would not spend my time setting up my servers/firewalls /auth .. Just not worth the time.
- danjl 3y agoThis reads like promotional literature for using Cloud services. Why do all this crap when you can just use AWS or GCP? Heck, as a bonus, you can blame them when it breaks instead of getting fired!
- bastawhiz 3y agoI scrolled for a few minutes and realized I could replace probably this whole article with 300 lines of terraform and still pay less than $200/mo.
- codegeek 3y agoSo if you use AWS and screw up a deployment in production, you can blame AWS and get away with it ? Even if it was your fault ?
- mjr00 3y agoI kind of agree with the premise, which is essentially "don't overcomplicate things at the beginning" but the article seems to keep conflating requirements. Does your company have a 10-person devops team or are you a solo enterpreneur? Are you servicing 2 requests per second or do you need a 80-core, 128GB RAM box for hosting your service? The reason many start with cloud is that most businesses quickly grow, or at least hope to quickly grow, to the point where they'll need it. Standardized cloud tooling helps onboard new developers more quickly. It drastically speeds up audits like SOC2 or ISO. Much easier scale-up/scale-down. etc etc You also pretty quickly get to the point where your cloud costs are negligible compared to the rest of your business expenses. If you're employing 20 people and paying ~$200k/mo in salaries, is reducing your cloud bill of $2000 to $200 going to materially impact your business, especially given the opportunity cost of not doing other revenue-generating work?
- codegeek 3y ago"The reason many start with cloud is that most businesses quickly grow, or at least hope to quickly grow, to the point where they'll need it" And most don't. That's the point of the article.
- mjr00 3y agoMost don't, but you can get a t3.micro RDS database and EC2 instance for less than $20/month, to service those two requests per second you're getting. I would assume most startup founders in the US can afford this. If they can but consider it too unlikely they'll recoup these costs, you're getting into "hobby project" territory rather than business.
- erik_seaberg 3y agoThis. A single dedicated bare metal server sacrifices too much availability, in return for capacity that you probably don't need yet. Better to use a fraction of a few different servers.
- gadflyinyoureye 3y ago
- louwrentius 3y agoI’m not unsympathetic to the thoughts behind this headline but I find the article not compelling. I think that with modern tools running your own / or rented metal (collocated) is doable and could make sense, but the could solves so many things that you don’t need to be responsible for, you really have to have a clear (businesses)case why you should not start in the cloud or migrate away. I’m rooting for 37signals, but I’m not sure their move away from the cloud (which I root for in particular) will be really that effective in the end, but I hope it will.
- _fat_santa 3y agoThere's a certain value proposition to the cloud that I think the author is completely missing. Yes it is cheaper to run all this stuff yourself on a VPS but you still "pay" for those things with your time. Right now I run a SaaS platform entirely in the cloud. I am fully aware I am paying more for a managed Postgres cluster versus spinning one up myself and I'm paying more for a managed docker service than I would if I just spun up some EC2's myself or went for a VPS. But right now I'm also working on the project entirely solo so I have to be careful about what I commit my time to. Sure I could save some $$$ by managing my own infra but the time it would take to spin that up and maintain it will cut into the time I have to build new features for my app. I could hire a contractor to help me maintain that infra but then it goes from being the cheapest option to the most expensive option because I'm paying someone to help with it. The cloud isn't cheaper than running your own infra, but it's sure as hell cheaper than running your own infra + paying someone to help you run it. Down the road when (hopefully) my company has more scale and we have dedicated folks for infrastructure, then I can start looking into lowering costs on the cloud side because those infra folks are gonna be working for me regardless of where I run the app, but for now when it's between doing it myself and hiring someone to help me, the value prop of a managed service is undeniable.
- sylens 3y ago100% spot on. You can tell this is written by an IC engineer and not a manager/director who would be well aware of the resource costs of doing all of the manual install/configuration work outlined in the article.
- rubyfan 3y agoNot necessarily. Professional managers can overvalue managed service because they perceive scarcity of skilled resources. Cloud and managed services has an overall negative effect on engineers ability to develop talent thereby exacerbating the scarcity issue. It’s actually harmful for managers as well… over time we’ll need less of them too (since they outsourced part of the job of managing).
- vidarh 3y ago
- tootie 3y ago$200/mo is the cost of like 1-4 developer hours/mo depending on where you are.
- emersonrsantos 3y agoHappy to onboard a startup like this and have them spend thousands of $ on me just on consulting on how to migrate to AWS/GCP/Azure without downtime.
- readthenotes1 3y agoWhich they might have now that they have a running business...
- mekoka 3y agoA nicer problem to have.
- deleted 3y ago[deleted]
- conqrr 3y agoExtremes choices are usually bad. Do nothing on Cloud, Do everything on Cloud... An ideal middleground is to do what you can with a VPS and offload things like Database (Supabase etc), emails to Cloud Providers. You can skip the VPS and go bare metal too if that's your expertise, but it's not for everyone. So, Stop doing (all managed) Cloud. Added bonus is you can shop for each category too and you aren't tied to one Cloud provider
- tayo42 3y agoIf you click on his LinkedIn and see his experience I think you can see why he thinks cloud isn't worth it in favor of running everything on a single server and saying things like don't worry about back ups. Being relatively new to the industry and never spending more then a year at a company you will never suffer the consequences of architecting something poorly. Cloud or not, I think depends on your unique circumstances. Just becasue you can apt install everything once doesn't necessarily mean you should.
- oron 3y agoI couldn't agree more. I use a similar setup and serving over 500K monthly users on this single machine. The only thing I would change is that in my experience docker-compose isn't stable enough and it's hard to run predictable workloads without resetting the machine from time to time. I opted of K3S which give me two benefits. 1. Predictable stable containers running and also restarting all the deployment automatically and 2. If I do need to migrate to bigger cluster / AWS cloud, I got everything ready in my K8S yml files.
- gabeio 3y agoThat’s fine so long as you don’t need a nearly 100% up time, require disaster recovery along with other checkboxes for high availability. Things which might not be required for your industry but to broad stroke all startups is naive of the author.
- temptemptemp111 3y ago[dead]
- poisonborz 3y agoAll this "not worth it", "fast to market", "raging madness to consider it". And all this is most understandeable individually. But is it really a necessity that all those services are globally scaleable and have five nines? What is the endgame, architecturally? How healthy is that the internet, all served bandwith increasingly is hosted by a few vendors?
- elwebmaster 3y agoArticle is totally spot on! However, people have been so brainwashed by cloud marketing that they don’t even know what dedicated hardware means anymore. Even the comments here are talking about VPS. Almost everybody has accepted underperforming and unpredictable infra for double the cost of dedicated. OP is spot on, I do exactly the same.
- readthenotes1 3y agoCloud is the a better proposition than EJBs and look how long it took that to die off. The bright shiny object / resume building in software decisions is in some ways fascinating
- sevagh 3y agoIf anything, cloud is shinier resume building than handrolling. Handrolling: "wrote a few systemd services" Cloud: put the EC2 in the VPC with an ENI and attached the EBS to connect to the RDS
- drchaos 3y agoHow do you handle downtime due to project/package/os upgrades?
- sevagh 3y agoDon't upgrade unnecessarily. Then you won't get backdoored by xz releases. Same security industry convinces you to upgrade every 15 seconds and then sells you solutions for when those upgrades fuck you over.
- metaltyphoon 3y agoOr don't upgrade unecessarily and still have backdoors :P
- lakomen 3y agokexec
- elvis19 3y agowe soon have a new generation of developers who never saw whats possible with just „apt install“ and „apt update“
- Nextgrid 3y agoCloud and cloud-related tooling providers are laughing all the way to the bank.
- ultim8k 3y agoYeah, agreed cloud is bad. I have one question though. Who is going to keep updating bloody ubuntu or any other linux distro along with all the packages that may break? Who is going to enable automatic database backups or do backups with 1 click? I've done these things countless times and they are still time consuming and involve guesswork every single time.
- lakomen 3y agoAnd you don't have that problem on public cloud VMs?
- metaltyphoon 3y agoNot really if you are using FaaS (lambdas)
- snoman 3y agoIn AWS, AMIs are kept up to date and all you have to do is roll your instances inside an ASG (which is a 1 button thing) to have them updated with zero downtime. RDS takes backups, out of the box with zero configuration, and further customization is very easy.
- ptdorf 3y agoI agree with most of the article's sentiment. Cloud provider costs can pile up quickly. But the most undersold value of the cloud, and where I see so far unbeatable value, is automation (single, unified API) and the ecosystem of tools it allows to flourish from it. Yes, Ansible could replace some Terraform, CloudFormation or ARM/Bicep but it doesn't manage out of the box a component's lifecycle. That is, knowing how and when should a resource be created, storing that last applied state somewhere and, when there's a new change, knowing if a resource should be recreated or just updated. But when there's a demand there's (eventually) tools.
- drchaos 3y agoI do run a pretty similar setup for some projects, and in general I tend to agree with the author, especially when bootstrapping cloud services can cost quite some bucks for mediocre performance. There is, however, one big disadvantage one should be aware of, and that is downtime. There will be downtime when you * push a new version of your project * install package updates for docker, postgres, ... * install a new kernel and need to reboot * need to upgrade the base OS because you can't stay on Ubuntu 16.04 for the next 10 years (this one can take hours) Of course there are projects which can live with that. If your target audience is 9-5 office workers, some downtime at night might be acceptable. At least if you don't have customers in other timezones. IMHO, the sweet spot would be to have two identical servers with automatic failover, but I did not find a good solution for that yet. Would be very interested if someone here has a solution for that and is willing to share.
- GordonS 3y agoAFAIK all the well-known proxies/load balancer support automatic failure in one way or another - Caddy, Nginx, Traefik, HAProxy. I prefer Caddy myself, for it's simplicity. On load balancing, it can detect when an upstream server isn't working, and remove it from the list of upstream until it's working again. Sometimes you want control of this, for example for OS updates - Caddy has an admin API you can use to remove a server from upstreams and wait until all connections are drained, then you can perform the updates and add the server back again. Then do the same for other upstream servers. (I haven't actually used the Caddy admin API in production yet, but plan to soon).
- temptemptemp111 3y ago[dead]
- deleted 3y ago[deleted]
- Fourier864 3y agoThe best part about the cloud for me is that it scales down to ZERO. We used to get large on-prem servers that could handle the worst case, only for them to sit idle 90% of the time. Now we just spin up the 5-10 EC2s we need a couple days a week when we receive new data.
- dijit 3y agoI keep hearing the same, but truthfully I have never seen someone scale to zero. Usually it's only a single component of the architecture that does (if any). But; A) You have to engineer your system to scale to zero, engineering time isn't free B) The overhead cost of service (5x for Linux compute, 11x for Windows compute, 7x for managed DB -- based on my last reads) can easily swallow any savings, especially if you're not scaled to zero almost all the time. It only takes about 8hrs of being "non-zero" and it would have been cheaper just to have a whole machine for a day somewhere that wasn't a hyperscaler cloud provider.
- Fourier864 3y agoYeah 8 hours would be quite a bit for a day. I'll tell you our use case. We receive a large dump of data 2 times a week, and we spin up 5 machines to process the data files. We have one machine that uses a GPU, one that needs like 128GB of RAM, and a few smaller ones. They're up for maybe 3 hours each.
- lakomen 3y agoHonestly, of you're doing docker, might as well go full retard with k8s. The most simple setup is a some git repo software (forgejo, gitea, goes, etc...) with hooks and client side deploy script. Can't get more simple. You have systemd watching. You don't need docker at all. Even 100Mbit/s is enough when you have nothing to show for.
- mekoka 3y agoI think before one knee-jerk reacts to the article, they should evaluate how their response benefits the targeted audience, small and emerging startups where (1) someone in the team is actually capable to set up the described infrastructure, and (2) there's little prospect to reach 100K monthly users (at least in the short term and to be conservative). That's a lot of startups. From reading comments in this thread it seems that many are completely oblivious to the complexity that the cloud can bring to an architecture. It's as though it doesn't cost any time. AWS documentation for everything that you opted in? Downloaded at night in your brain? What about Kubernetes? Just a pill away? When I hear someone say that they're choosing the cloud for their new project because "managing" their own infra is too much, as someone who is familiar with what the author is pointing at, I wonder "what exactly is there to manage?" Are we talking about the few Python or PHP scripts that speak to Postgres and Redis? Scaling up and down? What are we talking about? Getting to PMF first as a criteria to not consider the simpler alternatives suggested here is also a premature optimization. The author of this post is boasting a bit by saying that he can show you how to do this in less than 15 minutes and for less than 200$/m. I think it'd still be worth it if it took an entire day to set up. What kind of product are you building that can't spare a day to address your infrastructure? If the cloud is so seamless and your project becomes so successful that it actually ends up needing all its toys, then you have nothing to worry about. When the time comes, you'll simply turn those magic keys and enter paradise.
- moltar 3y agoStop building restaurants with foundations and secure access. Here’s a plan for building a food cart for serving your first 1000 customers. Yes, this might be a viable option for some use cases. In fact in Thailand and other SEA countries many restaurants never graduate past the food cart by choice. But there are environments and some business plans that require a certain level of maturity, security posture from the get go. At the same time I can deploy an application on AWS using IaC (AWS CDk) methods in minutes and use mostly serverless services without paying $200/mo.
- nurettin 3y ago> In the article I assume you have a server running somewhere. Preferable a dedicated one. Isn't Hetzner Robot still technically "cloud"? You would have to hire rack space in a data center and put your computer in there if you want to really self-host.
- Nextgrid 3y agoIn such discussions “cloud” is generally used to refer to “modern” price-gouging providers selling underpowered VMs at exorbitant prices. The provider you’re talking about is more like a conventional “hosting provider”.
- samcat116 3y agoBoth of the following can be true: - A lot of companies and startups can get by with a few modest sized VPSs for their applications - Cloud providers and other infrastructure managed services can provide a lot value that justifies paying for them. Edit: also why the obsession with dedicated hardware and so anti vCPU? For the vast majority of people this is an implementation detail that doesn't matter at all. A lot of that dedicated server is sitting idle.
- Nextgrid 3y ago> why the obsession with dedicated hardware and so anti vCPU? Because it is the reason an application that appears fast and snappy on your mid-range laptop slows down to a crawl when deployed. It’s the difference between a database query taking minutes (and blocking everything else) vs seconds. vCPUs and the lack of persistent direct-attach storage is the reason I personally don’t use the cloud for anything I build.
- neoecos 3y agoI've been running my startup for more than 3 years in cloud credits, and now we have 2 more years in another provider ($250k). We've been careful not to use a vendor lock in for a "expensive" service.
- fourfour3 3y agoI don't disagree with the article's main sentiment. You don't always need AWS. I advocate quite a bit for self-hosting when it makes sense. But if you're going to manage your own servers, you need to do it right. This article is a perfect example of what I've seen in the past with not doing it right. It's inconsistent, it doesn't take backup seriously, and it doesn't take availability seriously. Postgres is installed from their repo. Caddy is installed via & managed via ansible (instead of using something like caddy-docker-proxy). Actual backends are managed via docker compose. Backups are via a hacky script instead of something maintained & that another developer will be able to find docs on like borgmatic. Nothing is thought about for making sure the database state is consistent during backups (eg barman). Monitoring is an afterthought. Firewalling isn't even mentioned. This setup is one hardware failure away from spending days or weeks trying to recover.