As someone who has run many services for a while now, I feel I can speak
to the advantages and disadvantages of self-hosting. In my case, the
benefits have more than made up for the drawbacks. Still, each person or
organization must decide for themselves whether the pros outweigh the
cons.
Learning more about system administration and software stacks by
building it yourself. Few teachers beat hands-on experience. When I
first started, I didn’t even know what the term “A record” meant (for
those who don’t already know, an A record refers to a Domain Name System
(DNS) record that maps a domain to an Internet Protocol (IP) address).
Control and choice. For instance, you can decide what operating
system to use. Often many software choices exist for a particular
use case, and you can control the configuration details.
Transparency. Self-hostable software typically uses open source
code. Because you assembled the pieces, you can more readily understand
how everything fits together. That means when something goes wrong, you
have some idea of where to start looking.
Repairability. When something breaks, you can fix it yourself
without waiting for someone else to get to it.
Privacy. This relates to the other points—because you have
control and transparency, you can know how the system processes
sensitive data and what parties can gain access to it.
Drawbacks
Time investment. Learning the necessary skills and setting
everything up takes patience, and the time investment doesn’t end there.
Managing your own server requires regular system maintenance. This
involves making sure everything still functions correctly and performing
upgrades, among other tasks.
Full responsibility. You bear responsibility for everything that
happens on your server. Not only can you fix it yourself, you must
fix it yourself. Sometimes this creates real inconvenience because
things often break at inopportune times.
Ongoing costs. Self-hosting typically costs money. Recurring costs
for a virtual private server and domain name can add up over time. But
these may cost less than what you would otherwise pay for cloud
computing, so context matters here.
Security risk. You can create vulnerabilities without
even realizing it. This is why taking your time and acquiring the
knowledge needed to do things right matters. Starting small also helps.
For example, hosting a static website carries little risk.