So I did something crazy. Or maybe it's the sanest thing I've done in years—I can't tell anymore.
I built a production server in my living room.
Yeah, you read that right. While most of us are still dumping money into AWS, Azure, or whatever hot cloud service(AWS wrappers), I'm here running my whole startup infrastructure on a Desktop PC running ubuntu server that cost me less than two months of what I'd pay in the cloud.
And you know what? It's fucking beautiful.
The DHH Moment
If you haven't read DHH's article about leaving the cloud, please give it a read. That article hit me like a ton of bricks. Here's this guy running Basecamp and HEY, profitable companies—and he's basically saying "the cloud is a scam for most of us." Not in those exact words, but you get it.
Then I saw that tweet where the 37signals team is literally celebrating deleting their AWS account. The energy in that room! These people looked genuinely happy to be free from AWS cloud bills.
The Reality Check
Let me paint you a picture of where most of us are:
You've got a startup idea. Maybe a SaaS product, maybe an app. You're bootstrapping because who has VC money falling from the sky? So you do what every tutorial tells you to do: spin up some cloud instances.
A small backend server. Maybe $20-40/month if you go with FlyIo, Linode (the "cheaper" options).
A database. PostgreSQL managed service? That's another $15-25/month for something basic.
A frontend. Could be static hosting (cheap) or another server ($20-40/month).
Maybe Redis for caching. Add $10-15/month.
Backups, monitoring, bandwidth overages... the bills keep coming.
You're easily looking at $80-150/month, and that's if you're being really careful and picking the budget options. Scale up a tiny bit? Suddenly you're at $300-500/month. Need staging environments? Double it.
And here's the kicker—you don't own any of it. Turn off the payments, and everything's gone.
My "Screw It" Moment
I was looking at my cloud bills one day (around $120/month for a project that was barely getting traction) and I realized something stupid: I was paying more for servers per year than a decent computer costs.
So I did some basic math that would make DHH proud:
- Dell OptiPlex desktop (Core i5 10th gen, 512GB SSD, 16GB RAM): 320,000 RWF (~$240 USD)
- UPS for backup power: Around 100,000 RWF (~$75 USD)
- Fiber internet: 28,000 RWF/month (~$21 USD)
- Total first year cost: ~$567
Compare that to cloud hosting for the same period: $1,440 minimum (at $120/month).
I'd save $873 in the first year alone. And year two? Only paying for internet. That's $252/year vs $1,440.
What I'm Actually Running
This isn't some toy setup. I'm running real production stuff:
- Next.js frontend websites (2 sites and planning to add more)
- NestJS backend API
- PostgreSQL database (both for staging , beta and production)
- MySQL database (both for staging , beta and production)
- Redis (for caching and queues)
- Multiple apps via PM2 (process management)
- Nginx (reverse proxy)
- Docker (for my containerized backends)
The best part? I control everything and its super fast. Need to check logs? SSH in. Need to scale? Pop open the case and throw in another drive or more memory.
Try doing that with AWS. You can't even SSH into their managed services half the time , and lets not talk about their dashboard , u mostly need to be certified to use it.
The whole setup took me a weekend to figure out properly. Now deployments are as simple as git push and GitHub Actions handles the rest.
The Downsides
Let's be real—this isn't perfect for everyone.
Power outages are a real concern in a lot of African countries. Your server goes down, your app goes down. But here in Rwanda? Power's actually pretty stable. And I've got that UPS giving me atleast an hour of backup. That's enough time for most outages.
Internet stability can be sketchy depending on where you are. Again, Rwanda's fiber is solid. I'm getting consistent speeds and uptime that rivals what I'd get from a datacenter's connection.
No geographic distribution. If you need servers in multiple continents for latency reasons, you're kind of stuck. But for most African startups serving regional users? A server in Kigali works so great.
You're the sysadmin. If something breaks at 3 AM, you're fixing it. Though honestly, with proper monitoring and a UPS, this rarely happens. And when it does, at least you're not waiting for support tickets.
The middle ground option
Now, if you're getting more serious traction or you've got some VC funding but still want to avoid the cloud pricing trap, there's another route. This is what DHH and 37signals actually did—they don't have servers in someone's living room. They work with colocation providers or managed hardware companies. Basically, you buy your own servers, but they sit in a proper datacenter with redundant power, fast internet, and 24/7 support. You get the cost benefits of owning hardware without worrying about your home internet going down or power outages. Companies like Hetzner, OVH, or even local datacenter providers like AOS can handle the physical stuff while you control everything else. It's like the best of both worlds—you own the hardware, avoid cloud markup, but someone else deals with the building staying online.
The Mental Shift
The hardest part wasn't the technical setup. It was getting over the mental hurdle of "this is how it's supposed to be done." We've been conditioned to think cloud = professional, self-hosted = troubles or more work.
That's not right, 37signals is running massive applications on their own hardwares. Most of us—bootstrapped founders, small teams, side projects—we're paying for infrastructure we don't need and its so costly.
What This Means for African Tech
This hits different when you're building in Africa. Cloud services charge in dollars. Our money is in Rwandan francs, Kenyan shillings, Nairas , u name it, that make those monthly bills hurt even more.
But a one-time hardware purchase? That's doable. That's an investment you can plan for.
And here's something wild to think about: if more African startups owned their infrastructure, we'd be building technical expertise in our communities too. You learn so much more when you're managing actual servers versus just clicking buttons in a cloud dashboard.
Plus, your data stays in your country. There's something to be said for that too.
Am I Saying Everyone Should Do This?
No, don't be ridiculous.
If you're venture-backed and have some money laying around , fine, use the cloud or use the middle ground option.But if you are bootstrapping a startup ,building a SaaS with a few hundred to a few thousand users , running multiple small projects or you are actually concerned about profitability ,then seriously, consider this approach.
The Challenge
Look, I know I'm probably wrong about some things here. Maybe there are costs I'm not seeing yet. Maybe I'll hit a wall in six months and regret everything.Because at the end of the day, DHH might be right. The cloud might be one of the biggest cases of "we've always done it this way" in modern tech.
Not just because I'm saving money (though that's nice). But because I'm in control. I understand every piece of my stack. When something breaks, I can fix it. When I want to try something new, I just do it—no pricing calculator needed.
Top comments (0)