There seems to be a fad for "self hosting" things now. What I don't understand is: what happened to just having a single device and having it run the code directly and show you the result directly? For example, why can't the thing that connects to the Spotify API just... do that, from a program that runs locally, independent of a web browser, with a GUI created using a standard non-web GUI toolkit? Why would I want to use it by pointing my browser at a machine name (of another device I own) and port number, rather than by launching a dedicated program?
A lot of the stuff we're selfhosting just.... isn't a standalone application. My mastodon server has to run always to get messages. My nexcloud has to be always on to get my phone backups.
The only thing that might make sense to be local is media, but only if you don't share with someone else and you want to maintain an offline copy of your library on each device you use.
In general, it's stuff that needs to be shared or needs to run 24/7. A lot of that just doesn't make any sense as a desktop application.
All rationalization aside, it's a hobby. It's fun. People spin up hulking enterprise gear at home and run jellyfin just for kicks. It's not supposed to be at all practical or to even make sense. It's silly nonsense on purpose.
I deplore this weakening and dilution of the term “self-hosting”. In my opinion, if your services had downtime today, you are not “self-hosting”. If you depend on anything which has “cloud” in its name, you are not “self-hosting”. If you cannot reasonably quickly access your hardware physically, like inserting or replacing an add-on card, you are not “self-hosting”.
EDIT: It’s like saying “I don’t take the bus! I ‘self-drive’ my own car! (By which I mean that I employ an agency to provide a driver to drive a car for me, which I rent!)” or “I self-grow and self-harvest all my own food! By which I mean that I pay a farmer to grow food and harvest it for me.”
Self hosting does not, and never did, mean solely running a physical server yourself. It means that you are running the services from a server you control. That can be a physical server, but a VPS fits the bill just fine. You're correct that terms have meanings, but this term has never meant what you're trying to constrain it to.
But are you really self hosting if you don't build your server silicon from first principles :)
I think in your analogy a VPS is more like renting a (normal) car rather than buying one - you're still in control over where it goes and its up to you to obey the traffic laws but if there are any major issues that are not your fault it's up to the rental company to make sure you get a replacement.
I'm curious what your goal is with your language crusade? Being precise with your language can be important when the distinction matters, but does it really matter here?
> If you depend on anything which has “cloud” in its name, you are not “self-hosting”.
What if it didn't have cloud in its name when I signed up but some marketing bozo adjusted the description since then? Did it stop being self hosting even though nothing technical about the setup changed.
Self hosting is great. The examples in this article are not exactly shining examples: an API that shows your Spotify stats?
If we’re going to talk about self hosting music, I’d like to mention Roon, which is loved by audiophiles. It aims at creating a magazine like experience for navigating and discovering music. Been using it since COVID and it’s completely transformed my experience of listening to something else than the same playlist over and over.
You can always "do more" yourself. I think we all can agree that it would not be reasonable to build your own server (including) from first principles so it's always a question of where you want to draw the line. IMO what matters is how much you influence the end result and how well you are equipped to deal with bs from those your solution depends on. A VPS just means you let someone else deal with hardware issues but are still fully controlling the software - and the interface between the two is a relatively standard virtual machine which makes it easy to migrate elsewhere when the provider decides to sequeeze you.
How come everything is "opinionated" these days, and since when has that become a compliment? I don't want software to have opinions, I want it to do what I tell it.
I agree. Good software should be configurable, not opinionated. It's fine to have defaults, but if you can't change the defaults to suit you then the software isn't very good.
Me too, but writing software that does whatever user tells it to do, in a consistent and robust way, is very hard. Making it accessible and developing good UX for that kind of software is even harder. This is why a lot of heavily-customizable software, IMO, is so hard to use and maintain in the long run.
On the other hand, if the developer, who is by definition immersed in the domain, can use their experience to make good decisions and enforce them with limitations, the resulting software has a higher chance to be easier to use and easier to maintain.
I tend to gravitate towards "opinionated" software with very limited customizability because in my experience that kind of software is of better quality, on average.
Something pikapods looked neat at first then soon I realised the costs add up and add up a lot. One day I was calculating it at pikapods at I realised I had crossed 27 USD/m and I wasn't even finished. Like those streaming services - everything on a new streaming service i.e a new pod and they cost separately. I wish there was a service which would take away the pain of installation and maintenance away from me but let me host a lot of absolutely single user (i.e. only I'd access that of course) and as light weight as it can get and as low in usage at it gets on one single "pod" or "instance" or "box" and charge for that. Also, it's not a pikapods or pikapods' problem, it's a general problem I believe.
26 comments
[ 2.5 ms ] story [ 46.8 ms ] threadThe only thing that might make sense to be local is media, but only if you don't share with someone else and you want to maintain an offline copy of your library on each device you use.
In general, it's stuff that needs to be shared or needs to run 24/7. A lot of that just doesn't make any sense as a desktop application.
All rationalization aside, it's a hobby. It's fun. People spin up hulking enterprise gear at home and run jellyfin just for kicks. It's not supposed to be at all practical or to even make sense. It's silly nonsense on purpose.
New to me might not mean new to others.
Self hosting is not valued on what someone else self-hosts, it's about what you self host that's valuable to you.
EDIT: It’s like saying “I don’t take the bus! I ‘self-drive’ my own car! (By which I mean that I employ an agency to provide a driver to drive a car for me, which I rent!)” or “I self-grow and self-harvest all my own food! By which I mean that I pay a farmer to grow food and harvest it for me.”
Words have meaning.
(Further: <https://news.ycombinator.com/item?id=21240357>)
I think in your analogy a VPS is more like renting a (normal) car rather than buying one - you're still in control over where it goes and its up to you to obey the traffic laws but if there are any major issues that are not your fault it's up to the rental company to make sure you get a replacement.
I'm curious what your goal is with your language crusade? Being precise with your language can be important when the distinction matters, but does it really matter here?
> If you depend on anything which has “cloud” in its name, you are not “self-hosting”.
What if it didn't have cloud in its name when I signed up but some marketing bozo adjusted the description since then? Did it stop being self hosting even though nothing technical about the setup changed.
If we’re going to talk about self hosting music, I’d like to mention Roon, which is loved by audiophiles. It aims at creating a magazine like experience for navigating and discovering music. Been using it since COVID and it’s completely transformed my experience of listening to something else than the same playlist over and over.
Wait, I thought self hosting meant having your own hardware at like home running all your services. Not DigitalOcean.
Me too, but writing software that does whatever user tells it to do, in a consistent and robust way, is very hard. Making it accessible and developing good UX for that kind of software is even harder. This is why a lot of heavily-customizable software, IMO, is so hard to use and maintain in the long run.
On the other hand, if the developer, who is by definition immersed in the domain, can use their experience to make good decisions and enforce them with limitations, the resulting software has a higher chance to be easier to use and easier to maintain.
I tend to gravitate towards "opinionated" software with very limited customizability because in my experience that kind of software is of better quality, on average.
Compliment in that it’s supposed to mean something akin to principled I guess
Been colocating for 10 years now, the best of both worlds.
But it was fun to and educational to build and could pretty easily be extended to add more features.
I would recommend just going for it if you are interested in writing one. It's not as hard as it sounds.
1. siyuan - a lightweight note-taking website like obsidian
2. readeck - a lightweight bookmark website scrapes original page to the local server while keeping the original formatting.
3. leantime - a lightweight project management website