I don’t have a home server yet but I’m exploring and sometimes I get confused about some posts here.
For example I saw a post asking for recommendation for a “self hosted budget management app”. Can’t you just install this type of app to your phone or pc? What’s the purpose here, will you host it and access it from a browser? Or do you only want to backup its data to your server?
I hope I don’t sound stupid please enlighten me.
“self hosted budget management app”. Can’t you just install this type of app to your phone or pc? What’s the purpose here, will you host it and access it from a browser? Or do you only want to backup its data to your server?
I don’t want some third party having access to all of my transaction history and knowing what I spend and where.
I hope I don’t sound stupid please enlighten me.
Your question isn’t stupid. There is an important decision you need to make on “is the juice worth the squeeze.” While you can selfhost a lot of stuff sometimes there’s better reasons not to. Email is primary example that gets brought up a lot. Sure you CAN self host it, but for a lot of people on this sub it’s not worth the effort required to do so.
Each person has to make that decision for each of the things they choose to self host. Budget apps are no different.
Can’t you just install this type of app to your phone or pc?
Sure, but then the data is, in most cases, not mine. It’s shared with some 3rd party. “Free” apps aren’t ever free. No such thing as “free”. You’re always paying with something.
Other than that, it’s a hobby. Learning hosting, docker, containers, servers, Linux, etc.
Most of the time it’s just a hobby and I enjoy the challenge of solving a “problem” we have at home.
But for payment related stuff, I prefer having control over my own data. Granted I upload encrypted backups to a Google Drive via duplicati for important data - so technically Google still holds my data. But they aren’t the ones in control and I have local backups too.
Of course, I don’t back up terabytes of media. I’m considering backing up my own rips, harder to find stuff as well as my music (some, I don’t even remember where I got it, because it’s been on external drives for well over a decade).
Think of it like the difference between renting and owning something. When you rent a home, you do not own it. You don’t get to choose. Want a nicer water heater? Not your choice. The owner takes 100% of the responsibility, but often isn’t penalized for misbehavior. So they can for instance, decide that they don’t like you, and you no longer can use their servers. Or perhaps they dislike other companies, and strip features from the rental agreement. Even worse, all your valuable data, along with everyone else’s, is all stored in a single valuable location, becoming a prime target for thieves. I half expect some of the “data breaches” we see are inside jobs, where the company leaves a loophole open, tells the “thieves” about it for a small sum of cash.
I personally like self hosting. Once you get into it, and understand how to reverse proxy, and set up a domain, you can essentially self host anything ridiculously easily. Like, for me, setting up a container, and funneling it into my reverse proxy maybe takes like 30-60 minutes, ironing out bugs and stuff? Sometimes if it’s particularly easy, it takes like 5 minutes lol.
Security. Having your data in your own control instead of blindly trusting companies, where it’s more likely than not your data is being sold.
Choice. If there isn’t a feature, add it yourself, switch frameworks, change everything if you want, no more “we’re working on it” status updates when something isn’t working or a feature isn’t out. All the options are in your hands.
Pricing. Why pay monthly for “premium features” when you can have the most premium tiers for free. Especially true on anything with storage limits, 1tb of storage drive being cheaper than a few months of 1gb storage on some apps.
Speed. Sometimes it’s just more streamlined when there’s less bloat and you’ve hosted the exact thing you need on your subdomain with a single login page between you and the exact page you need. Less interaction needed to get where you’re trying to go.
After a while, you start to get tired of apps and other online services either disappearing or changing in ways you don’t like.
Because we can. Just because we can.
Total control. Let’s take the budgeting app for example. I started using Mint in 2009. There’s more than a decade worth of banking, spending, and investment information in there.
Mint is shuttering in about a month. They gave all their users a month and a half notice. When it’s gone, it’s gone.
When a self hosted app is used (with appropriate backups, orchestration, etc) YOU the user get to decide when you’re done.
If something isn’t working for your life anymore, you can find an alternative and migrate everything over on your own schedule.
There’s more than a decade worth of banking, spending, and investment information in there.
That’s the real reason I would self host something like a budget app. I don’t want a company like Mint to have (and sell) my purchasing and financial history.
Too bad all the payment processors are already doing this anyways, regardless or not if you are using your own budgeting software.
Basically if you’ve ever used Plaid for anything, the company that you’re using Plaid for has all of your accounting history.
Not saying you shouldn’t use your own budgeting software too (I do) just pointing out how completely helpless the situation is if you are in the US.
Also valid. I had to take a pragmatic approach with it to also meet SAF. The internet was also a very different place 14 years ago.
When you use a “free” app, you pay with your data.
Thats something a lot of us don’t want to. Additionally, it makes fun and is kind of a hobby to build and maintain this stuff.
Even when you pay for an app, chances are you are still paying with your data.
I got sick and tired of throwing my money at unreliable, overpriced hosting solutions, only to discover I could do it at a fraction of the cost at home, and without ever opening a single port to the public.
Can’t you just install this type of app to your phone or pc?
For one instance of app, it’s possible to install it onto a single machine.
Things get tricky when you want to access the data from multiple devices. Even trickier, when several people want to access it. After a certain point, it’s easier to have a “cloud” solution. And since “cloud” is just somebody’s else computer, why not make this a computer YOU own?
top 4 highest rated comments on this post say it all
This is exactly it - storage is the best example
Could I run all of my stuff using a cloud service? Of course, but it would be very expensive and only available if my internet works (and there’s a lot of hops between me and my data in the cloud)
I can buy a 2TB HDD for £64 - most cloud providers charge that much per year for 1TB
ideally youd buy like a 14-20 TB hard drive for less than 200 GBP. economies of scale!
I ❤️ this answer.
This, above all other reasons given in other replies.
Exactly- I have a desktop and a laptop and want the same experience on both. I do have file sync setup with Nextcloud so that is handled, but for some things a hosted version makes sense. I’ve come a long way from using briefcases on a 3.5 floppy to have my data where I want it.
if someone wrote an open source free solution for you to self-host i think its just rude not to use it. so self-hosting is just being polite
I like this logic.
I think for a lot of people as well, a big factor is when you share that data between multiple devices, if you use your own solution, then you don’t have to trust other companies with your data.
No, but now you have to trust yourself with security.
It seems to me to be a bit of the fly vs drive debate. Flying is objectively safer, but lots of people get more freaked out by it because they have zero control over the outcome.
Flying is only safer than driving until the fuel runs out, then you’re much safer in a car 😉
actually when a plane runs out of fuel it doesn’t drop out of the sky, a trained pilot can glide the plane down (eg Hudson River landing ) mow if u r on a highway and u run out of fuel the car behind u might hit u
I think the threat model is sufficiently different enough for self hosters versus commercial offerings that it is possible to maintain a comparable level of security to what you’d enjoy elsewhere with significantly less technical training. E.g., I run a home server using a point-to-point Wireguard configuration such that only devices I’ve explicitly set up with Wireguard can access any of its services. My ports are very quiet.
Thanks! This answer is really helpful for someone new to this!
So we retain control over our private data. Do not trust corporations to value me or my data.
So I can backup and move my data as I please. Also means if it’s self hosted I can access it from anywhere.
An easy reason to self host apps: share media with the household. Sure you can have a samba share and have people browse trough a folder to find the good movie. Or they can load jellyfin or Plex and have a netflix like interface that remembers where you left off and all the fun stuff. You can then add other stuff that will automatically search, download and organize new TV shows episodes for your, etc…
Another reason is some stuff are only possible when hosting. For instance, grocy is an app that lives on a server and manages your stock of food. You can scan goods with your phone and add them to your stock. You can scan them when you throw the can/box etc to say you used it up.
Then it generates a shopping list for you. The nice thing is that it lives on your server, not on your phone. So if more than 1 people do the shopping, you can have a synchronized shopping list, and update it in real time. And the self in self host part is cool because you decide who sees this and no Google or Amazon makes a profile out of your shopping habits.
You can have an online office suite that works in your browser without anyone unauthorized seeing your files.
You can have a bookstack wiki, where you put notes about the house, or whatever you want, and gave it being reachable only by you and people you allow, without a lot of account management.
You can have your own nextcloud, so you have file sync, calendar, etc, without it going at Google or apple. And it is on your server so you can have as much or as little data backup as you want. And often a good fiber line is cheaper than a VPS or a full dedicated server…
With all of this, you can seamlessly switch between multiple computers . You can also manage the loss/destruction of your laptop. Or phone. You can have a local equivalent to Google photos with photoprism.
You can have a frigate server for video surveillance and object recognition, but all in local, your video files don’t leave your house. A s it will do local AI stuff.
Last but not least: when you self host your stuff, you can still do a lot when the internet is down. You can replicate services on your laptop if you want. You do whatever you want.
Grocy sounds exactly like the kind of app I’m currently looking for - thanks!
Heading over to github, I assume it’s there?
Some of it has to do with open source. For example, the budgeting app I use in proprietary and is excellent and I happily pay for it. However if the company went bust or was acquired or something else unfavourable happened, I’d be up a creek without a paddle. At least if it’s open source there’s some hope of it at least not completely disappearing