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.
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).
Because we can. Just because we can.
Most if not all apps on phones will require you to sign up and your date is out of your control as it is not hosted by yourself. Plus you are usually limited to doing everything on your phone which is a pita.
Selfhosting is a way of life. I enjoy providing services to myself and my family that I control with the peace of mind of knowing that data stays with me. And it’s fun doing it too!
My guess is once you start selfhosting yourself, you’ll eventually come to the same conclusions.
However, selfhosting isn’t without it’s dangers. You have to ensure you have backups of the data. You are also responsible for securing it and you have to maintain your infrastructure as well
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.
After a while, you start to get tired of apps and other online services either disappearing or changing in ways you don’t like.
It’s mostly about syncing data between your different devices, without having to use a cloud service. I want to be able to organize the budget on my PC and look it up on my phone for example, without having to keep my PC running or manually sync them.
Another aspect is backups and redundancy. My NAS has all my data, and it does an encrypted cloud backup every night. I don’t have to remember that or make sure it gets the latest changes, because it’s always running and always up to date.
It’s also just a fun little hobby to tinker with it and figure things out.
Self hosted budget management app is like more advanced user stuff rather than the normal users would do. So hosting that kind of things might sound very weird to you, I get that.
But it is more like a tendency. Most users start their homelab with very basic services like storage management, video streaming, photos, or note taking. There is a huge steep learning curve to run all of them safely and robustly, but once you get over it and there is a wide and very flat area you literally can do anything whatever you want.
Budge management app is like that thing. Many of us wouldn’t start hosting budge management app, but we will get there eventually. Because we can.
Typically if someone wants to self host something like that it’s because they want to interact with it using a mobile app.
Without that aspect, you’re correct that desktop software would be the more typical way to go.
Using the budgeting example, self hosting would be to provide something like Mint rather than something like QuickBooks.
Privacy.
Those free (or even paid) apps on your phone are selling all of the data you give them to other companies.
For me it’s mainly the fun. I’m less privacy minded than other people here but I’m sure that I will be happy to own all my data at some point in time.
You can access it from any device (assuming relevant client apps and its over the network)
Selfhosting is a journey of motivation, frustration and learning.
Perks are: Appliable knowledge in the IT space and understanding of virtual concepts be it Software Stacks or Networking interactions, “offline” Data i.E. selfhosted and not under someone elses thumb/control/exposureSince you have access to all data, you can basically do magic behind closed doors and reap the benefits.
Setting up a selfhosted Environment means you can pipe in offline ressources just aswell as share access to specific entities without handing the keys over to a 3rd party.
In the case of a budget management app - it’s finances. Not everybody is cool with having their finances hosted in an app on a device that can crash or get stolen, we’d rather have access to it when we need and want, but still have that data when all my devices used to access it usually are gone.
i.e. when the Service Provider decides to shut down - this one aint. (shot at google)
--
I’ve started with one ThinClient, then bought two more to cluster them up and experiment with HighAvailability and shared CEPH-Storage between the nodes for 10s Migrations of fullblown VMs… then bought a Dell Workstation with Two Server CPUs and … basically virtualized that ProxMox cluster within my ProxMox Baremetal Dell host.
With the knowledge i managed to gather in the last year alone, I’m able to setup a coherent Work Environment for 50+ People with reliable SSO and 2FA mechanisms, shared FAST storage with dedublication of files and continous nightly backups that get checked for validity and automatic pruning of old unneeded backups on - 1 external NAS + Cold Storage on a buddys Datacenter with 20TB of encrypted storage just for me.
--
I basically have no care in the world for the data in my house at this point, since everything’s backed up nightly.
I can restore from House fire by setting up a new host with ProxMox, mounting the network storage and restoring the NAS and BackupVM - then just clicking restore on everything…
Since the Services are all on a subnet that’s managed virtually by a OPNSense VM and VPN is run on the ProxMox host, everything is drag and drop + Setup your own VPN Solution - if I ever want to gift someone my done work without the data, basically.--
Why do i NEED this?
To break the spiral of neccessairy skills and knowledge for ‘entry level’ jobs in technical positions and understanding behind security implications, proper troubleshooting, documentation and service culture i.e. there’s so many technologies i’m somehwat familiar with now, that I understand what others in the buisness world need of me to properly process errors, requests, whatever.Because the government will use my data to train the AI overlords.
Also because i can and enjoy running my own services and infra. Helps me land a better job and expand my skills
Mainly for control and privacy of our data so it doesn’t get stolen or others don’t bank off of selling our data