Re: BBpress. Mindset, features and where now? discuss…
Firstly, sorry about the gender thing (I blame going from French to English – to simplify I make everything masculine).
I’ve used the categories in 1.0alpha CK, and they do work wonders in the back end.
You make a number of really good points here, really good ones so if it’s cool I’ll go through them one by one.
It’s not just that I don’t “immediately see the solution” (though I admit I don’t), but lets run with that for a bit There is no documentation, there is no list of tags I can use and their features (e.g. https://codex.wordpress.org/Template_Tags) which starts to make a lot of template development guesswork. Are we honestly at the stage of saying that any theme designer or developer out there now needs to be a PHP guru and also know BBpress inside and out to be able to produce a non-liner theme?
If we are, maybe, just maybe that why we’ve found it so hard to get people to use BBpress; and maybe that’s why almost all of the themes out there look the exactly same.
Heck, even when I did manage to code a solution, I found that so much of the template is NOT in the actual editable template but in the damned /bb-includes/template-fucntions.php file that I was close to giving up. (this btw is another example of how NOT theme developer friendly BBpress is – there is NO documentation on how to overwrite these functions in a theme, and I’m somewhat confident that it’ll need a plugin – which also can’t be distributed in a theme).
I totally understand and am impressed with BB1.0alpha’s understanding of categories and forums in a parent/child hierarchy. The backend totally seems to grasp them – and in fact I’ve used the ‘forum is categories’ plug-in with 0.9 and it worked really well (congratulations and thanks whoever developed it).
But you’ve hit on the crux of the problem with “the data is just not presented outside of loop form because no-one has needed/asked for it yet”.
This is the ‘mindset’ I was talking about originally. You’re coding and what you’ve given this community is amazing and without reproach, so hopefully you won’t mind me using you as en example.
What we’re doing is effectively plastering over the crack. We’re fixing the… visible bit of the problem (does that make sense in English, it’s a bit like “tip of the iceberg” thing which makes no sense in french). Let me hark back to your impressive Unread Posts plug-in (which is wonderful). Rather than actually say ok this FORUM or TOPIC that we’re iterating though has unread posts, you coded a plug-in that ONLY worked it out when building the CSS of the actual forum name. It’s like, shooting the small fish downstream and then having to constantly go back upstream when someone points out that the bigger fishes are still there.
People want Parent/Child? Sure we’ll make the change in the DB and admin.
People want Categories? Sure we’ll give it to them in the DB and admin.
People want to make changes to the template? Sure we’ll only work out if its’ a parent/child in the CSS because no-one has specifically asked us via a letter from the queen to give it to them in the $GLOBAL[‘forum’] variable 2 lines above. I mean, we COULD work it out before hand, but why would we do that, because then people could do what they wanted with the theme and CSS – heck they wouldn’t be stuck to using tables in a linear fashion and… oh, no, wait…
It’s… fire fighting, it’s fixing the visible bit of the problem without actually tackling WHY people might have spotted the issue. It’s not a complaint, truly it’s not, the coding that’s been done is wonderful and I’m always impressed by it; but the mindset the thought process behind these features, isn’t wide enough.
You yourself can see how scarce this and bbshowcase forums are, it’s hardly a bustling thriving community. If we’re honestly waiting for someone to specifically come and ask for processing to be done at the earliest stage possible and not just at the CSS level then we may be waiting a long while.
I appreciate that it’s “Very easy to write a plugin to present the forum data any way you’d like” for someone of your obvious expertise, but not everyone in the community could do that. And while I think I could make a decent stab at it, not everyone here could, and certainly not everyone who could design/develop a theme could. Not to mention that as a THEME we’d need to specify plugins that need to be installed at the same time. Surely the good developers here at BBpress can see that’s not how a THEME works in wordpress.
What we’re effectively doing is adding a double step. We’re saying that to be a theme developer, you need to be able to code PHP plugins and be able to read, sift, assume and work out all the relevant tags/functions/classes/object without any documentation. That’s a massive massive assumption. Which is what my original mindset point was – we’ve effectively built a piece of software that’s really good for us the “open source loving / developing / community” but not good for the average user/owner.
BBpress has so much potential, and whether people in the community think that my particular examples are valid or not (we are all entitled to our opinion), surely we can all agree on certain points:
Making BBpress website structure and look fit into a more wordpress.org format will help people stick around:
Increasing the documentation will make things a lot easier.
Not presuming that template developers are PHP wizards.
Making the structure of the core files match WordPress more.
I, like all of you, want BBpress to be better. But right now we’re going down one path, and the more we go down it, the harder it will be to allow people to take their BBpress forum in it’s own direction.