Learn how to use Hubzilla.
As a user (i.e. as a private individual or as an association), you can create one or more web identities. The web presence of an identity is bundled within Hubzilla: A visitor of the web identity gets to see content related to that identity in one place, available through the main menu (which lists all available apps for that identity).
Internally, within the software, an identity is called "channel". But for a visitor, the word "channel" means one specific app belonging to the identity, namely the pinboard where the (possibly) federated posts of the identity are shown in a stream based timeline.
In the following, we understand channels as identities: As a logged in user, you can switch between your channels to edit the content for each channel, i.e. to publish posts or to create one or several channel profiles, websites, wiki pages and more. Per channel you can also manage files in a cloud, tag and name photos and show the photos in a web gallery. Events of the channel can be shown in a calendar.
If allowed to do so, identities on Hubzilla connect with each other across server and administrative boundaries through the communication protocol Zot (and if provided by your server, also throught the protocols ActivityPub and Diaspora).
Except for posts / messages, all published content stays your server. While you can publish content publicly, it is also possible to share local content with only some specified connections. Latter is only possible with connections through Zot (thus with identities on Hubzilla, Zap, Misty, Osada, Redmatrix and Roadhouse).
In summary, Hubzilla is thus not a central website, but a decentral network of independent servers: You can register with any site in the network (and even operate your own) to connect and communicate to people on all other sites. The sites communicate with each other via their mutual protocol - Just like Email is not one website, but a network between the Email-server of your choice and other POP/IMAP/SMTP servers. What is special about Hubzilla is that it "speaks" most other protocols of the Fediverse, cross-connecting to almost all other networks. It also provides an incredible range of social formats, so there is hardly any social purpose with any user in the Fediverse (and beyond) that Hubzilla is not capable of. An account on an Hubzilla server gives you nearly universal access to nearly all open social media.
Your content can be "visited" by those Zot based connections who got the permission to do so from you. By assigning your connections to connection lists (so-called "privacy groups"), you can also permit access to specific content to all members of that list.
You can send posts / messages (also using the ActivityPub or Disaspora protocols) to one connection, to a privacy group or to the public. It's possible to define a duration for expiring a post / message.
"Do you know me? -- Yes I do, welcome!"
"Visiting" non public content on a remote server should only be possible when you can authenticate yourself to that server. Fediverse software which only use the ActivityPub or the Diaspora protocol can authenticate only accounts from the local server though.
The Zot protocol on the other hand has built in a mechanism which makes it possible to a server to grant or refuse access to content and actions to identities which are registered on a different (remote) server.