wohoo!
i love
minimal
Joomla!

Why is it so hard to contribute to Joomla?

Disclaimer: First of all, let me make this clear: All that I'm stating here is completely subjective and I might be completely wrong about all of this. Maybe this also already has changed and I'm just writing this due to things that happened a looong time ago. So don't take any of this as given and 100% true. :-)

So I was at J! and Beyond 2011 in Kerkrade and it was a damn good time. But when talking to other people about contributing to Joomla, there was a recurring theme: "Its not easy to contribute to Joomla"

The actual reasoning was different, some said "I'm not going to invest my time if there is no chance in getting this in", others said "I don't know how" and yet other people brought other concerns forward. I don't want to re-hash all the conversations, but I think the subtext of most of it was "I want to pitch this idea to someone from the Joomla project and have their honest opinion about it. If that works out, I will invest my time and get this rolling."

So this means that we need a form of communication between those with the ideas (and of course willing to actually make it happen) and those in the lead of the project. Yes, I know that there are several mailinglists and that you can communicate with some of the PLT members on there. There are also IRC chats like #joomla and #joomla-dev and websites like ideas.joomla.org and the possibility of creating a branch to show the actual code. So where do we need more communication?

Yes, there are lots of possibilities, but "lots" does not say anything about quality or effectivness.

Lets talk about the mailinglists first. From past experience I have two problems with the Joomla mailinglists, the first being that especially with complicated proposals you rarely get a response, especially from the people in charge and second, writing a mail about an idea is complicated when you haven't fleshed it out completely already yourself. You are even more in a problem with the mailinglists, because for people to respond to you, you have to give your idea so much form already, that they are interested and completely understand it, but in a lot of cases this also already means, that you are setting so many aspects already, that others misjudge the maturity of your proposal and don't start on the overall idea but on little details or don't respond at all.

So what about the IRC channels? IRC would actually be perfect to have a talk about ideas, but from my perspective the Joomla IRC channels are, sorry for this, crowded with idlers and n00bs. (Counting myself in on the idlers) And with regards to the connection to the PLT: None of the PLT members have been in the #joomla-dev channel for at least a month, in most cases it was closer to a year that they've been last seen there.

We've got ideas.joomla.org and the branch creating thingy left. The first one is like writing to the mailinglist, but with less audience, while the second one actually forces you to provide a working example of something that you just started thinking about. Both is not really interesting for me when it comes to pushing my enthusiasm to involve myself more and invest into this.

What is making all that talking about ideas so important to me? In the last few months I experienced the Molajo project and I'm also following the Nooku mailinglist and both have an environment where you talk about ideas and where you pitch concepts and rough drafts and get instant feedback. This is just extremely productive! I can't even say how many times just a simple chat brought up new ideas, new ways to tackle a problem and even simplified a lot of stuff.

A simple example how more communication in this area would have helped: When I wrote the system for template parameter sets in Joomla 1.6, I didn't communicate this with others. Instead I just wrote the code. The result is, that we have a pretty complex getTemplate function in JApplication, but no setTemplate function. So instead of being able to do this in proper OOP style, you have to set some environment variable. This for example prevents us from disabling the core behavior of changing the template with the &template= URL parameter.

Solution to the problem? I don't know. You can't expect all the members of the PLT to always hang around in IRC and listen to anybodys crazy idea, especially since you can't expect everybody from the PLT to be knowledgeable with every single code snippet in core or webtechnic out there. On the other hand you can't expect anybody to invest time (and money) without any hint to the needs, ideas and interest of the project. Which brings me to a nice point: I can ask you!

Do you agree with my assessment? Am I completely wrong? How would you solve the problem?


blog comments powered by Disqus