Selfhosting is time consuming, expensive, and for the average person the downsides out weight the benefits.
But you're not the average person. Self-host anyway.
Do you trust a million-dollar company with your pictures? Do you trust yourself in your ability to keep a server online? Do you trust open source software?
The benefits of being the single owner of your data is great. I don't have to worry about the privacy of my photos because they're on my server and they have no way of going anywhere further. I can use any feature of most open source apps without giving a damn about privacy or data collection, since these only have opt-in telemetry at most.
Worried about features being discontinued? I'm not (just mildly), I can choose to upgrade or not.
I'm also responsible for downtimes, which is annoying but has nice flip-side: I'm very up to date with how long it will take to restore services, since I do the fixing. So I'm at no-ones mercy, except the eventual ISP outage because I did not invest in a USP and backup network.
There's, in theory, nothing of value in having a separate device to mess around, since the laptop you use to control a server is more than capable of simulating both lightweight and full virtual machines. Most of the added experience comes from trying to host something reliably: what happens when your programs run for months, what breaks, and how do you fix it?
If you end up enjoying some open source project, that's one more person who might be willing to contribute, financially or with work, to the project itself. The web is becoming more centralized, with most internet users using a handful of social media apps and ditching search engines.
Selfhosting is a nice way to regain some independence from these omnipresent monopolies.
You could also join many of several decentralized networks and contribute to them.
If you want to have a domain, you need to pay. There are free domain providers and very cheap domains too, but most nice domains have a price tag. This domain costs about 20€ a year.
The domain must point to some ip. Your house could have a dynamically assigned ip or be behind some huge NAT. For dynamically assigned ips there are patchy solutions, but DNS problems are generally annoying to troubleshoot, and using dynamic dns is a huge source of complexity. You can sometime ask a static ip address from your ISP, or you can opt to pay for a small VPS and a cloud provider's ip. I pay roughly 7€/monthly for the latter arrangement.
The rest of the price is electricity, which could be really small if you get a server very low on power consumption. If you don't need to host anything public, you can skip the domain name and the VPS. There are services like tailscale that connect your phone and server at home securely (wireguard, p2p), for free, regardless of network topology.
AI companies have bought insane quantities of RAM and other components, causing a worldwide shortage of RAM. Prices spiked! AI companies are using all this RAM to build data centers that will compute things for you, lessening the need for powerful devices in the hands of unworthy users. But if you grab an old computer lying around you can get reasonably far in selfhosting, as most services are just bookeeping and do not require any actual computing power.