Adrian Schneider
Active member
tl;dr - adrian ranting again.
It would be nice to see more of a community effort around collaboration to try and tackle the larger add-ons. Galleries, portals, stores, etc. Every decent CMS takes hundreds of hours or thousands of hours from a community to get it right, rather than relying on a single guy (or gal) to do it.
While I have nothing against the current paid vendors who are selling, or perhaps privately building these types of projects, it's definitely something we all want yet compete for. It's disappointing to see crowdfunding campaigns go sideways, because let's face it, most add-on developers are not doing this full time. We either have other jobs, or have to do a ton of consulting on the side in order to make a go at it. And that doesn't usually last long.
It's a lot of weight to carry, and even if you are getting something like 5 grand, that really isn't enough to cover the costs to do something to the level that we actually want. Even if it was 20 grand, would you really want to put all your eggs in that basket? It's a lot of risk for both parties. And it'll likely go sideways, and we're back to square one.
It would sure make things easier if we worked together.
I've been doing XF development for the past few months full time. I've probably done a few thousand hours of vBulletin add-on development as well, and luckily most of the knowledge transfers. However, since I also work outside of these bizarre communities, like many other developers here, I've also seen collaboration done right. And what I'm seeing now is not even remotely close to that.
Here are a few things that I'd like to see happen, and I really think this will help the add-on community flourish more.
Development Environment & Add-on/Theme Skeletons
We need a better development environment that let's us build things on top of a filesystem. WebDAV works, but is horribly slow. Copy/pasting is a joke, and there's really no excuse for that nearly 10 years after the plugin system for vBulletin was built.
We need a basic skeleton that we can clone, where we can dive in and start editing things, and seeing our changes in real time. And we need that skeleton to be isolated and versionable, so it can be shared with others.
The end result should allow me to go into a new directory
And start editing the project. And when I make changes, I should see them. And when I'm done
Getting there isn't hard. In my spare time, I've probably gotten 60% of the way there, but my approach requires some crazy linux mounts to work. It's not ideal, but it works for me.
Online Collaboration
Everyone is working in a silo. We all have our different brands or accounts we release things under, rather than working together. I understand there is a little competition here as far as brands go, but I think we can also recognize contributions rather than solo efforts.
I'd rather see us work on add-ons that are unique and make forums better rather than porting things from vBulletin, or IPB, and perpetuating the current norm. I want to see more unique stuff... it's just too bad that we're all building the same things instead.
I'd have no problem getting a basic gallery|portal|whatever system going if I have some spare time. Let's get it functional with some basic tests behind it. After that, everyone is welcome to contribute, or someone else can take over as project lead after a while. That's what is happening everywhere else.
Effects on XenForo
Tons of admins I talk to are more tied to the ecosystem of the software than the software itself. They won't migrate until X is ported, or until there are more add-ons around. And for fading software, they can't migrate because they have too much custom software that isn't ported or they can't find people to continue the mess they do have. They end up having to shell out big bucks to finally port, but at that point it's out of desperation. It's too late.
The other effect is the quality will rise. Instead of one person having to do all of the work, we can share the load. Organized bug tracking, help with testing, small patches, large feature improvements. Managing a software release is a lot of hard work, and I'm sure we've all seen dozens of good projects be abandoned.
The surrounding ecosystem is very powerful. Unfortunately, it's not very organized compared to other product communities. (Not competing ones, but still). At the very least I wanted to bring some attention to this, as it's something I've been struggling with every day for a long time. Hopefully we see better tooling come officially, but since I doubt that, it's really up to us if we want to see it.
If you are a dev reading this, please chime in with your thoughts. I feel it's such a huge waste that I have to build tons of tooling and processes around something that should (or could) already exist. And that's just the groundwork.
XenForo - we need better tooling and standardization
Addon/Theme Devs - we need to work together and step up, if XF won't
Addon/Theme Devs - we need to work together and step up, if XF won't
It would be nice to see more of a community effort around collaboration to try and tackle the larger add-ons. Galleries, portals, stores, etc. Every decent CMS takes hundreds of hours or thousands of hours from a community to get it right, rather than relying on a single guy (or gal) to do it.
While I have nothing against the current paid vendors who are selling, or perhaps privately building these types of projects, it's definitely something we all want yet compete for. It's disappointing to see crowdfunding campaigns go sideways, because let's face it, most add-on developers are not doing this full time. We either have other jobs, or have to do a ton of consulting on the side in order to make a go at it. And that doesn't usually last long.
It's a lot of weight to carry, and even if you are getting something like 5 grand, that really isn't enough to cover the costs to do something to the level that we actually want. Even if it was 20 grand, would you really want to put all your eggs in that basket? It's a lot of risk for both parties. And it'll likely go sideways, and we're back to square one.
It would sure make things easier if we worked together.
I've been doing XF development for the past few months full time. I've probably done a few thousand hours of vBulletin add-on development as well, and luckily most of the knowledge transfers. However, since I also work outside of these bizarre communities, like many other developers here, I've also seen collaboration done right. And what I'm seeing now is not even remotely close to that.
Here are a few things that I'd like to see happen, and I really think this will help the add-on community flourish more.
Development Environment & Add-on/Theme Skeletons
We need a better development environment that let's us build things on top of a filesystem. WebDAV works, but is horribly slow. Copy/pasting is a joke, and there's really no excuse for that nearly 10 years after the plugin system for vBulletin was built.
We need a basic skeleton that we can clone, where we can dive in and start editing things, and seeing our changes in real time. And we need that skeleton to be isolated and versionable, so it can be shared with others.
The end result should allow me to go into a new directory
Code:
xf clone $repo $targetLocation
And start editing the project. And when I make changes, I should see them. And when I'm done
Code:
xf build $addonName $outputDirectory
Getting there isn't hard. In my spare time, I've probably gotten 60% of the way there, but my approach requires some crazy linux mounts to work. It's not ideal, but it works for me.
Online Collaboration
Everyone is working in a silo. We all have our different brands or accounts we release things under, rather than working together. I understand there is a little competition here as far as brands go, but I think we can also recognize contributions rather than solo efforts.
I'd rather see us work on add-ons that are unique and make forums better rather than porting things from vBulletin, or IPB, and perpetuating the current norm. I want to see more unique stuff... it's just too bad that we're all building the same things instead.
I'd have no problem getting a basic gallery|portal|whatever system going if I have some spare time. Let's get it functional with some basic tests behind it. After that, everyone is welcome to contribute, or someone else can take over as project lead after a while. That's what is happening everywhere else.
Effects on XenForo
Tons of admins I talk to are more tied to the ecosystem of the software than the software itself. They won't migrate until X is ported, or until there are more add-ons around. And for fading software, they can't migrate because they have too much custom software that isn't ported or they can't find people to continue the mess they do have. They end up having to shell out big bucks to finally port, but at that point it's out of desperation. It's too late.
The other effect is the quality will rise. Instead of one person having to do all of the work, we can share the load. Organized bug tracking, help with testing, small patches, large feature improvements. Managing a software release is a lot of hard work, and I'm sure we've all seen dozens of good projects be abandoned.
The surrounding ecosystem is very powerful. Unfortunately, it's not very organized compared to other product communities. (Not competing ones, but still). At the very least I wanted to bring some attention to this, as it's something I've been struggling with every day for a long time. Hopefully we see better tooling come officially, but since I doubt that, it's really up to us if we want to see it.
If you are a dev reading this, please chime in with your thoughts. I feel it's such a huge waste that I have to build tons of tooling and processes around something that should (or could) already exist. And that's just the groundwork.