DEV Community

Cover image for Every Developer Needs to Self-Host
Jonas Scholz
Jonas Scholz Subscriber

Posted on • Originally published at sliplane.io

276 10 8 11 13

Every Developer Needs to Self-Host

I used to think self hosting was something only sysadmins or homelab nerds did.

You know, the kind of people who run Proxmox clusters in their basements and talk about ZFS at parties.

But then I self hosted my first service.

And everything changed. (insert dramatic music here)

Today, I run Sliplane.io, a platform for managed Docker hosting, but it all started with something incredibly simple: spinning up a Minecraft server for my friends when I was a teenager.

And while I didn’t know it then, that decision to self host set me on the path to becoming a cloud infrastructure engineer, building distributed systems, and ultimately launching my own cloud company. Self hosting is not just about saving money or going off grid.

It is about learning the skills that power the internet and unlocking opportunities you might not even know exist yet.

Here is why I believe every developer should self host at least once.


Self Hosting Teaches You How Software Really Runs

When you self host something, you go beyond "npm start" and start thinking like an operator.

You need to:

  • Make sure your app does not crash silently using something like systemd or PM2
  • Expose the right ports to the outside world
  • Persist data across reboots
  • Understand how the operating system manages services and files

You stop thinking like just a developer and start thinking like someone responsible for keeping systems online.

That is not something you learn from pushing to Heroku or clicking a deploy button. (Yes, this is ironic coming from someone building a platform that does just that)


You Learn Networking by Doing

Self hosting forces you to figure out:

  • How DNS records work
  • What a reverse proxy does
  • How to issue SSL certificates
  • What causes a misrouted request

When I was 13, I had no idea what a CNAME was. I just wanted my Minecraft server to be reachable at a nice looking domain.

But in the process, I learned more about DNS, NAT, and port forwarding than I ever did in school (and even university!).

Those same skills apply to modern stacks like Kubernetes and cloud infrastructure. The fundamentals do not change.


You Start Thinking About Security

When you expose software to the internet, you begin asking better questions:

  • Is there an admin panel open to the world?
  • Is my database protected by a strong password? Should it even be exposed?
  • Am I using HTTPS correctly?

If you have ever accidentally left an ssh instance or Redis port exposed, you learn quickly that the internet is not a friendly place. Just look at how many ssh login attempts you get on your server that are not from you!

These lessons make you a better developer. You stop building only for functionality and start thinking about safety and resilience.


You Learn DevOps Without Trying

I never set out to learn DevOps.

I just wanted to run a few services for personal use. A website. A Minecraft server. A file sync tool.

But I ended up learning:

  • Docker and Docker Compose
  • Persistent volumes and health checks
  • How to recover from crashes
  • How to automate deployments

That accidental education became a rabit hole and then a career. Later I worked on serious production infrastructure, and my early self hosting experience gave me a huge advantage.

You do not need to become a DevOps engineer to benefit from this. Self hosting gives you a mental model of how the internet works. That is valuable no matter what you build!


Self Hosting Builds Confidence

Self hosting teaches you how to troubleshoot problems in the real world.

  • SSH into a server and read logs? No problem
  • Debug a DNS issue? You have done it before
  • Migrate a database without downtime? You know what to watch for

Once you have hosted something yourself, production environments stop being scary.

You become comfortable with the tools and processes that keep real applications online.

You think like a builder, not just a coder.


It Can Lead to a Career

Hosting Teamspeak and Minecraft servers as a teenager eventually led to something much bigger.

I became a cloud infrastructure engineer. I started building my own orchestrators.

Eventually I launched Sliplane.io, a platform that helps developers run and manage containers without dealing with the complexity of Kubernetes or AWS.

I am not the only one with this kind of story! Many indie hackers, freelancers, and startup founders began by self hosting something.

That small step sparked curiosity and opened doors.

If you are starting now, it is not too late. Self hosting one tool can lead to a real career and give you superpowers as a developer.


Where to Start

You do not need a rack of servers or a ton of time to self host something useful.
I would always recommend hosting something you use every day. If you need some ideas, here are some great options to begin with:

  • n8n for no code workflow automation
  • Uptime Kuma to monitor your websites
  • Plausible Analytics for privacy focused web analytics
  • Postgres with Adminer to explore databases
  • Caddy or Traefik for auto HTTPS and reverse proxying

Pick one and deploy it on a cheap VPS. You get 20 Euros for free on Hetzner. That is enough to run a server for ~4 months :)

Break things. Fix them. Break them again.

You will learn more in a weekend than in a month of tutorials.


Final Thoughts

You do not need to self host everything.
You do not need to be a system administrator.
But you should try it at least once.

Start small. Start messy. Start now.

You might just surprise yourself :)

Cheers,

Jonas, Co-Founder of Sliplane.io

Sentry image

Make it make sense

Only the context you need to fix your broken code with Sentry.

Start debugging →

Top comments (39)

Collapse
 
nicholaswmin profile image
Nicholas Kyriakides • Edited

not to nitpick but Developer != Web Developer.

Also, please DO NOT self-host your startup, especially one that has people trusting you with their money - with only amateur self-hosting skills. there are many catastrophe scenarios from which you are guarded by a PaaS these days..

When and if you product starts gaining traction, you're ineitable going to become a target by automated bots by the uptick in popularity/indexing, as soon as they detect a misconfigurtion you become a chosen target.
This is only 1 of them many catastrophe scenarios and not the most srious one either.

Collapse
 
inspiraller profile image
steve

Surely this is part of the journey of discovery. Ship fast and break things?

Collapse
 
melroy89 profile image
Melroy van den Berg

Agree. Setting up server at home it part of the journey and learning. I highly recommend it if you like to know more about the hardware side of thinks. And have the money to invest into FS switches, dac cables and firewalls. It's fun!

Collapse
 
aavash_parajuli_72 profile image
Aavash Parajuli

I was just about to comment this. Dev != WebDev

Collapse
 
code42cate profile image
Jonas Scholz

I dont really understand, do you think its not necessary to understand how the internet works if youre an embedded dev?

Collapse
 
abhnv42 profile image
Abhinav Gupta • Edited

btw, who is a Developer? Is it someone working with C++, building low level systems?

Collapse
 
melroy89 profile image
Melroy van den Berg

Depends on your skills. How good you are with networks. As well as your hardware setup. I have dedicated firewalls. Load balancers and core switches at home. So Yea, it's possible.

Collapse
 
code42cate profile image
Jonas Scholz

doesnt change it imo as long as you are a software developer thats relevant! Even for embedded, robotics, whatever:)

Collapse
 
xwero profile image
david duymelinck

Why stop at hosting? Go all the way and host a server on an old laptop or buy a raspberry pie or something similar.

When I got into computers the cheapest way was to build one yourself. So I was in a hobbyclub where we learned from each others mistakes. Once laptops became cheaper i never looked back.
Getting down to the machine makes you appreciate all the cloud services that are available today.

I wouldn't bother with adding a ssl certificate manually, there are enough services that offer them for free and have an easy setup. The task isn't that hard to begin with.

The most common mistake is picking the wrong type of certificate.

Collapse
 
code42cate profile image
Jonas Scholz

Agree, but i think a vps is a bit more accessible for a lot of people in the beginning! My first server was also pieced together from electronics trash pile because I didnt have a bank account to get a vps! :D

Collapse
 
melroy89 profile image
Melroy van den Berg

I think today people moved too fast to the cloud and missing the opertunity to learn from the hardware setup. I also started small with an old pc. Some kind of 3 core amd cpu (when amd couldn't made a stable 4 core cpu). Yeah those times.

I think with the rising costs of cloud it's a better time then ever to learn the hardware side of thinks.

Collapse
 
craig_webster_aeeef7dd140 profile image
Craig Webster

Lol maybe change that cover photo

Collapse
 
code42cate profile image
Jonas Scholz

why?:D

Collapse
 
craig_webster_aeeef7dd140 profile image
Craig Webster

Because it's theft

Thread Thread
 
code42cate profile image
Jonas Scholz

... because its AI generated?

Thread Thread
 
craig_webster_aeeef7dd140 profile image
Craig Webster

Because it's specifically taking another artist's copyrighted art style, and that artist has issued a cease and desist to OpenAI regarding its use. While that legal warning doesn't apply to users of DALL-E, it's still a shitty and lazy move.

Thread Thread
 
rumforestrum profile image
Mladen Konkolj

what was the cover photo? im curious now

Thread Thread
 
code42cate profile image
Jonas Scholz

It's still the same. I think he is referencing to the "studio ghibli" style

Collapse
 
jimmyyouhei profile image
Quan Nguyen • Edited

Actually I did self host too. To build a whole platform on cloud is terriblely expensive each month even when my platform is not yet popular and especially I know what I am doing as a veteran devops and solution architect

One sample is my current skill-wanderer.com/ also come with a wordpress blog and a moodle lms . Clouflare can help a lot for security and act as dynamic dns also

For now with my calculation I saved about 70 usd each month as I self host a complete k8s at home

Collapse
 
melroy89 profile image
Melroy van den Berg • Edited

I also dislike the fact that very website is behind cloudflare. Cf is eating too much from the market. And making the internet too centralized by a single company. I understand why people are using it... I just don't like the movement and the promotion of cloudflare.

I know; today we have way more bots and ddos attacks than ever before. Yet I think it's possible to do something about it. Maybe a good firewall. Maybe some kind of Lua scripting with OpenResty... But anything is better than going to cf in the long run...

Collapse
 
puspamadak profile image
Puspam Adak • Edited

I had also started out my freelance journey with 0 knowledge about management stuff. Someone gave me the task of hosting a website in a VPS. I had to configure things apart from my area of interest, such as DNS and SSL.
I have learnt a lot from that task, and now I feel comfortable about the devops things.
Just mere learning won't teach much. The best way to learn is to do stuff practically. This post should be an inspiration for all.

Collapse
 
code42cate profile image
Jonas Scholz

Nice! Thanks for sharing:)

Collapse
 
spo0q profile image
spO0q

Break things. Fix them. Break them again.

You don't have to break anything.

Collapse
 
code42cate profile image
Jonas Scholz

if you dont break anything youre not learning

Collapse
 
spo0q profile image
spO0q

see yur point, but totally disagree.

Thread Thread
 
code42cate profile image
Jonas Scholz

why?

Collapse
 
melroy89 profile image
Melroy van den Berg • Edited

I like to host everything myself. I never went to the cloud or vps to host my services. I run everything locally. And you should to. Just start small. Using old hardware or a raspberry pi perhaps. And continue from there. It's fun to learn both the network and hardware setup as well as the software deployments.

It will also safe you money in the long term, vps is not cheap anymore today. It might not sound much but $/€ 30 per month for only one small vps adds up (besides other costs like the domain). I have a high count cpu and enough memory. Also thinks like storage is not cheap in the cloud anymore. I now have terabytes of very fast ssd storage, something that is not cheap when you go renting. And adding more storage is very easy and cheap. No increase in monthly fees, just a one time invement.

Sure you need to learn how to setup all this but that is party of the journey!

Collapse
 
gates profile image
SHOKH

This really resonated with me especially the part about how self-hosting builds confidence. There’s something powerful about struggling through real-world problems (and eventually fixing them) that no tutorial can teach. I also love the reminder that you don't need a giant setup to start; even a small VPS project can completely change how you think about building and deploying things. Thanks for sharing

Collapse
 
yemapi profile image
Kris

Is this entire website just Ads disguised as articles? AI generated content to self promote your cloud hosting. It's all just hosting providers writing posts as if they were people

Collapse
 
code42cate profile image
Jonas Scholz

im an actual person actually writing articles :D

Collapse
 
nevodavid profile image
Nevo David

Insane how the whole journey can kick off from just spinning up one little server, I always end up learning way more by messing with this stuff than any tutorial ever taught me.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.

Billboard image

Try REST API Generation for Snowflake

DevOps for Private APIs. Automate the building, securing, and documenting of internal/private REST APIs with built-in enterprise security on bare-metal, VMs, or containers.

  • Auto-generated live APIs mapped from Snowflake database schema
  • Interactive Swagger API documentation
  • Scripting engine to customize your API
  • Built-in role-based access control

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay