If you haven't picked together the hardware for your home server at home, can you really say that you're self-hosting? Or if you haven't really built the components yourself, are you actually self-hosting? If you cannot reasonably quickly debug your hardware faults physically, you're not "self-hosting".
It seems everyone draws the line of "self-hosting" differently. For some, "self-hosting" could be running Wordpress at DigitalOcean. For others, self-hosting means using your residential internet connection and having the hardware at home. I'm not sure one is more "correct" than the other, just different perspectives.
That seems ripe for an alternative version of the popular “loops to goat farming” quote:
> I thought using loops was cheating, so I programmed my own using samples. I then thought using samples was cheating, so I recorded real drums. I then thought that programming it was cheating, so I learned to play drums for real. I then thought using bought drums was cheating, so I learned to make my own. I then thought using premade skins was cheating, so I killed a goat and skinned it. I then thought that that was cheating too, so I grew my own goat from a baby goat. I also think that is cheating, but I’m not sure where to go from here. I haven’t made any music lately, what with the goat farming and all.
Meanwhile, that person learned the valuable skills of programming loops, recording, playing, and making drums, and goat farming; I suspect they may be happier doing some of those things than making music from other people's loops, which is where they started.
I bet they met a bunch of interesting people along the way.
> [Paraphrased] Words mean different things to different people! Anyone can choose any definition they want!
No, words have quite definite meanings. Otherwise, they are not an aid to communication.
Literally not meaning literally is literally an example of the enshitification of language.
> the enshitification of language
Good example of words losing their meaning. “Enshittification” is barely an infant as a word and it has a very specific meaning, but people are already using to mean “something I dislike”.
https://en.wikipedia.org/wiki/Enshittification
That's actually not correct at all.
How is tributes to lords from vassals related to communication? Oh wait, you didn't mean that meaning of the word "aid"? But words only have one meaning...
I think I actually agree with you but the modern definition of the term is more akin to "I own my data" than "I own my own hardware." It's a big tent and it's nice to see people taking an interest in ownership!
I have seen the term “data sovereignty” used occasionally.
If I self-host at home and my internet connection goes down so I can't access anything remotely, then I'm still SOL until I can get home. And millions of people are stuck with crappy upload speeds that make plenty of services that they may want to self-host nonviable if they care about being able to access it from anywhere.
Yes, words have meaning, but most of us will happily disagree with your definition of self-hosting.
What you describe is an unfortunate result of the terrible bandwith situation at your (and others’) location. It is not, however, a compelling argument to redefine a term to suit your liking.
(Also, with 4G, 5G, and satellite-based Internet, an alternate (albeit low-bandwith) route for emergency access is fairly straightforward to set up.)
Reminds me of self sufficiency farming. If you grow your own food you will be impacted by the yield of that farm, rather than going to the supermarket and buy the food there. If the soil is bad then it might be difficult to impossible to do self sufficiency farming.
The meaning is I install my own software and set up as I want. Some of it on my 2 mini servers in my living room, some (prosody and seafile) on a VPS. Calling the latter not self hosted seems weird to me.
> The meaning is I install my own software and set up as I want.
That seems a bit vague. If you tell that to someone who never heard of self-hosting, they’d be excused for wondering if that means downloading from an App Store and opening the settings.
I'd expand on it of my audience weren't HN ;)
Though I guess I missed "on a server"
> I'd expand on it of my audience weren't HN ;)
Fair! Not everyone on HN is a programmer, but there is overrepresentation.
> Though I guess I missed "on a server"
Yes, that’s what I was thinking was missing.
I rent a couple of bare-metal servers from Hetzner, and I have physical servers at home.
On my home hardware I keep things like multiple copies of my photos and documents, as well as experimenting a bit with open LLMs etc.
On the rented servers, I host websites, PeerTube, Forgejo, and keep copies of some data I downloaded from elsewhere.
I’ve also previously hosted email on rented servers. Both on rented hardware and on rented VPSes. For the past few years I haven’t bothered with hosting email myself. I use iCloud provided email instead.
Sometimes I upload videos to my PeerTube instance. Sometimes I upload videos to TikTok.
I don’t have some grand vision of self-hosting everything at home. It is impractical, and comes with its own set of drawbacks. Things that only serve myself and my family go on my hardware at home. Things that I want others to be able to reach go on the rented servers. And other times like with email and TikTok I use services where I have no control whatsoever over what the service provider does with my data.
If someone decides that a particular service is neat to host on rented servers I won’t fault them for it. And I consider things that you manage on your own to be self-hosted even if you don’t own the hardware it’s running on.
You decided to rent a $5 VPS for your email? You’ll still learn things from that even if the server is not in your home. And I will perfectly agree that it fits the name self-hosted email. Same goes for anything else you set up and manage, regardless of whether it’s running on bare metal or in a VPS, and regardless of whether the computer it runs on is in your home or rented from someone else.
> If someone decides that a particular service is neat to host on rented servers I won’t fault them for it.
Neither will I. It is an endeavor worthy of praise.
> And I consider things that you manage on your own to be self-hosted even if you don’t own the hardware it’s running on.
This is where I will disagree and stand fast. If you do not “host” it yourself, you are not “self-hosting”. You might be maintaining it. You might be administrating it. But you are not hosting it.
> You decided to rent a $5 VPS for your email? You’ll still learn things from that even if the server is not in your home.
I agree, and it is certainly something I wish that more people would attempt.
> And I will perfectly agree that it fits the name self-hosted email.
It may be said to be “self-administrated” or “self-maintained”. But it is not “self-hosted”.
> This is where I will disagree and stand fast.
You're welcome to do that but you're wrong as far as the majority of selfhosters are concerned. Spend time on https://www.reddit.com/r/selfhosted/ for more information about how widely people define it.
As someone who self hosts in a VPN, I agree with you. :-)
I did self host on my own hardware for a long, long time. But convenience won.
I had built myself a massive beast. A Xeon board I had purchased cheaply for $200 bucks from a friend.
I put a water cooler(OEM from Intel) and clocked that sob from 2.6GHz to 4GHz. I quickly clocked it down back to 2.6GHz. It never hit temperatures above 30 again.
I installed 24GB RAM, which was the maximum. I installed it in a 3U chassi with the max possible 3.5” hot swap slots. I think 16?
I used FreeBSD with ZFS to run a bhyve virtualisation platform.
It was a lot of fun.
The word "host" is ambigious. Hosts can be virtual or physical.
Self-host to me is a verb, which mean you're running the service, regardless of what hardware it's on. On-prem is better descriptive word for physical hardware.
There is a middle ground there. I self-host, was not at all affected today nor would I be if Google, MS, Cloudfare or any of the big ones go down. But I cannot easily access my server because it is locked in a datacenter 1000 km away.
But it is a bare metal server from Hetzner auction that I got for cheap and it now hosts an entire family&friends cloud for 10-ish people.
It's a spectrum that has been illuminated by time. In the old times you had to do all these. Now you can cut this somewhere:
- Power + cooling, physical security, network. (Old school LAN party)
- Can you access the bare metal OS? (Hetzner/OVH bare metal)
- Can you access a VM and decide what runs on it? (EC2 + associated services, K8s, etc, etc)
- Can you run a function? (Lambda for example)
So the meaning has wandered to something between the first and second, IMO.
There is no such thing as "bare metal OS." Metal is hardware, and an OS is an abstraction over hardware that restricts the software's access to it.
The meaning has only “wandered” due to the marketing of dishonest hosting companies, and their partially self-deluded customers who want to believe the marketing in order to avoid doing the hard work of actually self-hosting.
I'm not so sure. Software people have a tendency towards abstraction, and often the bottom layer in their opinion of their own role is where you have OS control, without knowing much about the network and physical.
Whether that's reasonable, well, I kinda liked the underlayer and thought it was part of a good education. But not everyone agrees.
I think this application of the term still makes sense. There are several services I use that I can "self host" for free or pay for the service's "cloud" option. Whether I "self host" on my own hardware or not isn't relevant to the term in that use case.
> In my opinion, if your services had downtime today, you are not “self-hosting”.
Zero here.
> If you depend on anything which has “cloud” in its name, you are not “self-hosting”.
Minor dependency on OCI but no down time at all for any services I run.
How do you define it? If your ISP has a problem, you can't access that hardware physically, so it would seem this definition rules out anyone that doesn't control an ISP.
This is a common, but disingenuous, objection. People also don’t make their own electricity. Is therefore “self-host” an unreachable goal, which nobody can fulfill in practice? No, this would be a useless definition.
I agree that that's a bad definition, that's my point. The question is how _you_ are defining it since your definition seems to have this problem; if you're going to complain about others' use of the term you should indicate what you think the term should mean!
Some may lament that 'writing' now includes typing, despite having been limited to pen and paper. Frankly it's doubtful that point is taken seriously.
Similarly the core of your 'self-farming' analogy is the direct management of the crops.
The involvement of others in demolishing existing structures, erecting fences, or managing water resources on the land is of little consequence.
Of course, some might argue that unless the farm is directly managed, it does not constitute self-farming.
Real self-hosters use butterflies
completely agree, though it depends on why you self host.
self-hosting: running open source code that you could run on any computer.
if it's convenient to run mastodon on hetzner, that's STILL self hosting; because you /can/ move your app IN ITS ENTIRETY from any computer to any other.
HomeLab elites really are the most insufferable people out there.
Not sure if it's the best source, but Wikipedia says:
> Self-hosting is the practice of running and maintaining a website or service using a private web server, instead of using a service outside of the administrator's own control.
> The practice of self-hosting web services became more feasible with the development of cloud computing and virtualization technologies, which enabled users to run their own servers on remote hardware or virtual machines.
What do you call what the author is doing?
It would be good if there was a nice, simple, positive word for it; people might not feel the need to appropriate “self-host” otherwise. Unfortunately, I don’t know of any.
I asked because I used the term self-host for both my services that I run on a VPS I rent from Dreamhost, as well as services that I host on my homelab and expose over tailscale. I don't have a good set of terminology to differentiate between the two, so I call both of them self-hosting. I was a bit surprised you felt so strongly about it.
The same thing that somebody who clicked "install wordpress" in cPANEL did. They're installing software on a rented server hosted by a company that they rent from.
It would also include the situation where there was a bare metal server you installed your own operating system on it and then wrote your own software and then deployed it to that server. The argument being made is that's not self-hosting. That makes me wonder what it should be called.
I rent VPS's in a data center and run services on them. I feel like I'm self-hosting. The days of me running a server in my own home are long gone. I don't want to deal with the power requirements, the noise, or the hardware.
I'm responsible for all the software that runs on them so I consider it self hosting.
A host is someone who lets people stay in their house. "Self-hosting" and "bare-metal" have gotten debased in such a strange, commercial-marketing aligned way.
The new definition of "self-hosting" is that you play any part in a piece of software that you use (if I click the "install wordpress button in cPANEL, am I self-hosting?), and the new definition of "bare-metal" is "computer." It's just weird. How can you employ a webhost in order to self-host? How can it be bare-metal if it's hosted within an OS that completely abstracts the hardware?
I suspect non-technical people just wanted to fluff their qualifications, and the companies who host for them wanted to help.