I think if you take care of the basic concepts, the rest is easy. Technical details about server organization are not really that important. The root problem seems to be that people have trouble looking past the app/program that they interact with.
It is still quite common for people to think of the web as IE, Chrome etc. Because it is for them. It is a legitimate thing to think. There are undoubtedly people out there that think of Gmail as the thing that they use to communicate with people. That is unless they again consider the browser as the thing that does that.
I have a friend who refers to the XMPP network as "Xabber" simply because that is the app she uses to chat with me. She is entirely uninterested in any details of the network. Suggestions that she switch to a better XMPP client are met with confusion.
Perhaps we need to teach the concept of a "protocol" in school. There are a lot of important concepts we fail to teach people these days. That is probably one of them.
Perhaps we need to start accepting that not everyone wants to know the particulars of the things that we care about. The need to teach new things is one of the big forces standing in the way of wide adoption of a lot of open solutions.
It's not about teaching everyone how to setup a PT instance, but how things works for the best outside a totaly centralised and company-owned system.