Before diving into technical or feature suggestions since as a developer I’m automatically wired to go via that route, I thought about asking non-technical people about the product, BuddyPress, itself.
I recently participated in the WordCamp US and had the chance of talking to a few people, besides conversations I had online (Slack, etc). I think the overall feedback I gathered is that BuddyPress needs to find its product-market fit.
## Product-market Fit
The overall argument is that BuddyPress made sense when it was created because organizations needed a unique social network. Nowadays this is easily solvable with other tools that weren’t available at the time like Slack, Discord, Telegram, Facebook Groups, etc.
It’s much easier now to create social communities/networks using those tools than using BuddyPress. So as a project, we are not only competing against other open source projects but also with big companies which provide a solution to this problem in a much better way.
So far, all the conversation I’ve read about this issue sort of understands this new reality but the solutions presented miss this important point. So finding a new “place” for BuddyPress in this new scenario might actually be the most important thing we can do and that will define how we spend our resources going forward.
## BuddyPress’ problems
### Complexity
Before I became a BuddyPress contributor, I used to build small communities for clients. One of the first things I noticed about this niche was that all communities were the same but different. There was always a small tweak or a small feature on top of an existing component needed. BuddyPress was perfect for business. Clients didn’t know how to do it, so they hired me to build or extend it for them.
Even to this day, I still think BuddyPress suffers from this “problem”. If you are not a developer, BP is too hard to change. In BuddyPress’ marketing, it sells itself as flexible software, which is, but only if you are a developer extending or building something on top of it. Not to the regular users that install or try to use it.
I think this is an area where other tools thrive in comparison. People don’t usually build social networks with BuddyPress because it is open source. That also includes WordPress. They use WordPress because it is easy, a good solution for a problem at hand: “how do I make my own dam website?”.
Quoting feedback I got recently:
Every good product is a tool that helps people execute their creative vision, saves them time on boring tasks, or entertains in some way.
On top of that, BuddyPress is still considered expensive to many, be that due to the need to hire developers, to buy themes and plugins to accomplish their creative vision.
### Feature Set
I think BuddyPress has a strong foundation of features to create a social community. But as mentioned before, users are trying to execute this creative vision, so there is always something more needed.
This is an area where BuddyPress lacks as a project and in extensions (plugins that add features to BuddyPress) as well.
The most emblematic examples are the Follow Feature and the Media component. The first one because it is so basic in the land of social networks. And the latter in the lands of Instagram and photo apps. But the core BuddyPress plugin lacks both.
On top of that, features/components are pretty hard to integrate or extend as mentioned. Whereas other tools, provide an almost seamless experience, a rich set of features in a Jetpack-like style where you only need the click of a button to get something working and showing in the default theme.
### Conservatism
Here speaking as a contributor and observer of both WordPress and BuddyPress.
BuddyPress is still too conservative when it comes to changes or new features, however small they are. There seems to be a philosophy or approach that it’s practiced not against change but I’d argue that it is an almost “orthodoxical” concern to changes and new features which in my opinion is impeding the project to evolve.
A recent example was the introduction of PHPCS support which to me it would be considered a no-brainer but that it took more time to convince than I anticipated or expected.
And this is also an overall theme with BuddyPress. I see a willingness of the project to experiment and a desire to evolve but we still move at a very slow pace (even in the heyday of the project).
There is a “desire” to change and evolve but over years I also see a hesitation which “drags” the project a little bit.
### Low number of contributors
BuddyPress has been suffering from a low number of contributors in recent years. The reasons for that could be varied. It is also not clear if that’s actually a big problem for the project. I’d argue that it is not that big.
But it is clear that identifying what’s turning possible contributors away is a very good first step. And what we can do to revert that.
## Finally, some suggestions for the project
### Decide on a product market fit
This should have a high priority. Whatever we decide here will dictate how resources will be spent. What features will be built. What areas will have the most attention. IMO, this might be the most consequential decision for the future of the project.
### Improve the feature set
As mentioned previously, basic features of a social network are still missing in BuddyPress. Privacy, social networking, and following features are all missing. In the past, the argument I’ve always heard/read was that those features were better off served by plugins. Whereas users would be more likely to expect them inside the core plugin.
So I think BuddyPress needs a more complete set of social networking features. And that those features should be more integrated with each other and other parts of the site.
h3. Improve the project’s marketing
I think we need to do a better job of marketing what we offer. Not only look and feel but also of presenting information to the user.
–
That’s it! Not a lot of suggestions but I’m purposefully not adding technical suggestions to the project because I feel this is secondary. As long as we do not get into a new product market fit, we might not be addressing the real issue of the project.
=)