A home server is not the cheapest way to host most things. That is partly why I like having one.
Abstractions get physical
Cloud platforms are good at making infrastructure disappear. For normal product work, that is often exactly what I want. But it also lets me keep a fuzzy mental model of what is happening underneath.
On a machine I own, ports matter. DNS matters. Certificates expire. Storage fills. Containers restart at inconvenient times. The words stop being architecture vocabulary and become actual failure modes.
Failure is the curriculum
The useful part is rarely the successful installation. It is the hour spent figuring out why two containers cannot talk, why a reverse proxy is returning the wrong certificate, or why something that survived ten restarts disappears on the eleventh.
Those annoyances build a much less theoretical understanding of persistence, networking, process supervision, backups, and recovery.
Not a cloud replacement
I do not want to self-host everything. Reliability is valuable, managed services are often worth the money, and I enjoy sleeping.
The server is closer to a workshop than a production strategy. I can take things apart there, make questionable decisions, and learn enough to make fewer questionable decisions elsewhere.