(STANDARD DISCLAIMER: Even though I commit to the project and my development work on Hubzilla is often accepted and committed, I do not speak on behalf of or "for" the project. I speak only for myself.)
It seems to happen every 6-9 weeks. It's happened twice in the past week... A discussion erupts that seems to pit "users" against "developers" and upsets the unity of our COMMunity. Usually it's in the context of a feature request. But it isn't usually the feature request itself that's the problem - it's a number of external topics that get drug into the discussion.
The biggest topic that is usually brought in is "community growth." It comes up in the discussion in a number of ways. One recent discussion said it this way, "If Hubzilla wants to be attractive for the less tech-savvy this needs to be addressed." In another discussion it was in the context of the impending Google+ shutdown and enticing Google+ users to Hubzilla through an import tool.
Very often it is brought up that Hubzilla has a steep learning curve - and underlying the discussion is the premise, "If we make it easier, more people will choose to use Hubzilla." Tied to it is that the developers need to be more responsive to this "ease of use" and not worry about their hangup on other aspects of the project.
It all seems very reasonable and logical, but there is a critical flaw in the thinking.
First off, let's get this straight:
I don't think there is anybody involved with Hubzilla who disagrees that there are many usability aspects that can be improved.
Now that we have that out of the way:
I also don't think the line between "ease of use" and "adoption" is nearly as direct as the discussion often makes it sound.
The plain and simple fact is that Hubzilla (and Zap, but let's stick with Hubzilla for now) is a fundamentally different platform than any of the "Social Media" platforms that exist in the market today. As a decentralized solution that is often self-hosted, you can have full control over your data as opposed to the big name commercial social media applications where you store your data on THEIR servers.
Yet, Hubzilla has security and access control features that allow you to share that data others and still put fine-grained controls so that it isn't entirely "public."
This is different than any other decentralized social media alternative that I know about. With (nearly) all of the others, either you must have an account on the server where the data is stored (i.e., fully centralized) - or the data must be 100% accessible by anyone and everyone (even if it is obscured and difficult to guess exactly where that data is). There MAY be one or two exceptions, but, if you look, I will bet that in those "exceptions" there is a development history that links in with Hubzilla at some point.
While on the surface Hubzilla is "just another social media platform," that is only on the surface. Underneath, it is unlike ANYTHING else available.
THIS is the key distinction that the developers hold as almost a sacred truth - but is often misunderstood by those who only look at the surface. But, I dare say, this difference is what drives the developers' passion about Hubzilla.
Where other projects have a veneer of privacy and data security - it is only apparent. Sharing images, for instance, on ActivityPub requires the image to be 100% publicly accessible. It may have a complicated and unguessable URL - but if anyone gets that URL, they can download the image (or whatever other data is shared via ActivityPUB). The data at that URL is not secured.
With Hubzilla - when you share a file or an image or other item with only certain contacts, only those contacts can access. BUT - those contacts don't need to all have a username/password on the same your hub... they can each have their own channels hosted on any Hubzilla server. And still, you can set very granular access control (file-by-file, page-by-page) on what you share.
This is just one example - but an important one that highlights some of the key differences between Hubzilla and other "solutions."
At the same time, people seem to "flock" to these other solutions. WHY?!?!
IN PART, yes, it is because they are "easier to use." But when you consider it more carefully, these other "solutions" are easier to use primarily because they are not designed with the privacy and security of your data in mind. They are designed first and foremost to be "easy to use" and then security and privacy is an after thought - if it even exists at all.
With limited development resources, many/most other projects have prioritized network growth and front end ease of use over the privacy and security of the data of their users. Hubzilla (for the most part) has done the opposite.
Now, when you compromise privacy and security, it doesn't become obvious that it is a problem, until AFTER it is a problem. So, ActivityPUB solutions have gotten away with it.
On the other hand, when you compromise ease of use, it is immediately obvious - which is why the "go-to" answer for why Hubzilla adoption is much slower than Mastodon is, "Hubzilla is too hard to use." But this isn't REALLY the answer.
"Can't we have both?!" YES! With an unlimited budget of time and development talent, we can certainly have both! When development talent and time are scarce, priorities are going to dictate what gets worked on.
The truth is, people will endure A LOT of pain to hold onto what they value.
Hubzilla's lack of adoption is attributable to one overriding fact.
People simply DO NOT VALUE privacy and security of their data. They do value ease of use.
This is what leads to absolutely ridiculous statements like, "if Hubzilla wants to be attractive for the less tech-savvy this needs to be addressed," and (regarding web development tools), "Users that come from one of the many drag&drop-solutions will have one look at it and go somewhere else."
These are simply self-evident truths! The less tech-savvy don't know that they are putting their privacy and data at risk - they just want it easy and pretty! They frankly don't care --- well --- they don't care until that one picture that they thought they were sharing "privately" ends up on the 6 o'clock news or until that one file containing their awesome business plan ends up in the hands of their competitors! But by then, it's already too late!
I think we simply need to be brutally honest with ourselves as a community and put it in realistic terms:
There is simply no "market" for Hubzilla.
Even though people will constantly complain and CLAIM otherwise:
The masses don't want privacy.
The masses don't want security.
People don't want nearly unlimited choice and decentralized services.
They CLAIM to, but they lie. And ultimately:
The masses simply don't want to consider the consequences of their technological decisions.
Like everything else in this world: The masses simply want something that looks pretty and gives them the easiest way possible to achieve their immediate pragmatic ends for their own personal benefit or gratify their desires. That's it.
THAT is why, "Users that come from one of the many drag&drop-solutions will have one look at [Hubzilla] and go somewhere else," instead of considering using Hubzilla for web development. Not because it is more difficult. But because they don't value what the central core of the project provides - privacy, security, and fine-grained access control. Or, IF they do want it, it ranks FAR below "easy" and "pretty."
Personally, I've made my peace with that. It's just the way it is - and "wanting" anything more isn't going to change it. Pretty and easy to use may make SOME difference. But security and privacy are often completely at odds with "pretty" and "easy" when resources are limited.
Those of us who DO prioritize decentralized privacy, security, and fine-grained access control, will continue to do what we can to help those people who have gotten sick of having their privacy and data security impinged upon. Unfortunately, on that score, the outlook looks bleak. It's clear that very few actually care about privacy and security until it's too late.
When people finally begin to value the things the Hubzilla project values (decentralized privacy & security with fine-grained access control) - those who want the upper-level tools, pretty/easy UI, themes and all the rest to become more fully developed, will find a way to get involved and make that happen.
Hubzilla provides a GREAT base to work on - it takes care of a lot of the low level details in a way that has been thoroughly tested in the real world for nearly a decade at this point. Are there areas that can be improved?? ABSOLUTELY! And those in the community who see those needs and want those things will WORK TOGETHER to create great solutions. That's what a COMMUNITY does. It doesn't point fingers and tear people down and make demands. It unites to figure out what is needed and FINDS WAYS to MAKE things happen.
People in the community will work on these things and support each other in the process because it will suit them and their friends and neighbors or other projects that they need to accomplish to have the tools and resources they need. Whether it's for awesome drag and drop web development on top of a privacy aware and security conscious platform, or a way for families or community groups or even offices and businesses to communicate and share information in a fully decentralized and secure manner.
HOPEFULLY... those who become involved in this way will contribute these changes back in some way so that others may benefit. Some will, others won't. So it is with MIT Licensed software.
Me, personally, I'm already working on some of these things and I've enlisted the help of others behind the scenes - because I know people who need to do some of the things that are only possible with a decentralized, privacy aware, secure with fine-grained access control system like Hubzilla.
To me, that's the best reason and way to develop software - consider carefully what you value and what you need software to do and then make it do that.
After looking at numerous alternatives over several months 2 years ago, I found that Hubzilla provides a best-of-breed base to work on IF YOU NEED decentralized privacy, security, and fine-grained access control.
If you don't want or need decentralized privacy, security, and fine-grained access control of data - then you don't want to be using Hubzilla. It's that simple. We'd still love it if you did!
But unless you want or need these things, your needs do not align with the central philosophy of the project and it likely is going to be a constant annoyance and a battle for you.
So, if you CORE NEEDS are for something other than decentralized privacy, security and fine-grained access control of data - if you are just fine with anyone and everyone being able to access whatever you share with others - let's save everyone a bunch of aggrivation...
Personally, I certainly intend to contribute back to the project because, basically, I'm a nice guy and I think others would benefit. Ultimately do I want to see more people using Hubzilla - but mostly FOR THEIR OWN GOOD - for their own online safety - for their own online security - for their own online privacy - if there is a better solution out there that does what Hubzilla does, GREAT! So far... there has been "talk" of others, but to date, I have seen no production code anywhere (eg., Tim Berners-Lee and SOLID).
Notes about the overall "Development Model" of Hubzilla
From my own experience, it seems that the Hubzilla development model is truly a "community development" model in the "old school" of collaborative and cooperative development that arose in the 70's, 80's and 90's with the building of Unix and what we have now as LINUX (and to some extent FreeBSD) - basically, a significant portion of the underlying technology that runs the Internet today. None of it would be possible without the community development model that sits at the heart of Hubzilla's methodology.
It's a tried and true model which relies on those who see and feel "pain points" to be the PRIMARY force that works on fixing them and then shares their contributions with the rest of the community in a spirit of cooperation and collaboration for the benefit of others.
As I have experienced the Hubzilla development model - the project developers and maintainers loosely consider and discuss prioritization of larger scale direction, but there is no centralized "top-down" development roadmap.
If "less tech-savvy people" want and need what Hubzilla does (decentralized privacy & security with fine-grained access control) along with the ability to create awesome websites with a drag and drop interface or a pretty and easy UI - it will be necessary for them to somehow find a way to contribute to make that happen, or they will need to wait until someone else needs it, does the work, and then hopefully chooses to give it back to the project. There is simply NO OTHER WAY given the constraints of time and development resources. (Of course, another option is, have a huge bake sale and find and hire a PHP coder to make it happen for you - and then out of the kindness of your heart, contribute that code back for others).
In truth, beyond what they do WITH Hubzilla, project developers gain nothing but headache and stress by publicly working on this project and participating in the development discussions. While I think all of us would certainly LIKE to see greater adoption, and certainly many in the community would like to see and would benefit from growth in adoption, that is not a primary motivator for contributions to the project.
For me... I contribute back to the project and participate in development as a member of the community and because I already derive benefit from using the software and am able to make it better and like to make the lives of others better.
Personally, that's what I would want others to do, so that's what I do.
I want the online world to actually be a safer and better place for my neighbors WITHOUT onerous government regulation and laws that make it impossible for good software to be written. So I work toward that end where and how I can because I see Hubzilla as the only working and deployed project on the scene that actually has a real shot at achieving those ends while still allowing me to customize it and use it to help those smaller communities with which I am associated to achieve their goals.
!!zotlabs.org | Hubzilla Development
!!Hubzilla Support Forum