I thought it would be a good idea to try and engage you – the fine openSUSE community – in discussion about "Us" the Community. We seemed to have been spoiled by having a Community Manager, people kind of seemed to let him do the work or worse expected him to do so. Now that we don't have that position any more we need to go back to basics and start rolling our sleeves up. We've started but we have much to do. As such this is the first in I'm not sure how many posts on the subject.
To save me having to repeat myself constantly I'll do a small disclaimer now:
THESE ARE MY OPINIONS AND THOUGHTS AND NOT GOSPEL! I AM NOT EMPLOYED BY NOVELL! I WANT TO GET A DISCUSSION GOING NOT A FLAME WAR!
In my opinion this topic is linked to my previous post about the "Planning For The Future". The key here is to remain agile, able to flex, roll, bounce, jump and basically move with the times. If we impose strict rigid requirements then things will start to crack and crumble.
So what do I see as key items needed to enable more community contributions, and get more non-Novellians involved in taking a more (pro)active role in the Project?
- Tools - we need an enabler of sorts that lets people start off small and get to grips with how things move, from there they can grow out and up.
- Transparency - ensuring that the decisions that are made are clear concise and understandable. I'm ure not everyone will like the decisions but if they can see the reasons behind it then they can work with it and maybe come up with a better alternative.
- Communicate - this is something that has improved a lot over time but still has some ways to go. There are certain parties that still don't understand how to communicate with the wider community but they can and are an integral part of the ecosystem, we need to educate and help them get better.
- Coach - no-one can get to a suitable proficiency in any subject whether it be academic/sporting/whatever without some form of tutelage. To help lighten the work load on the employees that are trying to juggle between their enterprise workload and community workload we need to have them spend some time away from their corporate duties to help with some knowledge and skill sharing.
- Teamwork - stop depending on individuals, whether they are Novellian or non-Novellian one person can't do it all in their supposed subject matter of expertise.
- Educate - self market, not just to the outside world but internally too. The openSUSE community is too modest for it's own good at times, we need to be more vocal about all the fantastic stuff we do. We have to be clear and concise in the message we send out across the community.
- Learn - look at our peers and take a leaf out of their book sometimes. Believe it or not they do do things right sometimes ;-) I'm not saying copy, but try and take the bits that are needed and roll it into what you want.
- Collaborate - work with our peers on universal matters. This doesn't just mean cross-desktop, but also cross-project and cross-distro.
- Listen - take a moment to hear what is being said. Just taking that little bit of extra time can help isolate the noise from the message and help you understand what is being said/asked. Remember that not everyone is a native speaker of your language so things might get lost/confused in translation, which is where that little bit of time will help.
- Lead - you don't have to do things by committee. If you see something that needs/can be done just do it! We dither around far too much waiting for someone else to do it. Do what you can and then communicate what you've done and what if anything is outstanding.
All the above link into one another almost inextricably, so not doing one will most likely have an detrimental effect on the rest.
We already have several items that are great examples of how the community can get on and do something great, a sample of those are:
- openSUSE Education - this team started from very little and have created one of the best educational derivatives of any distro. There is a good mix of people involved, and no-one is paid to do it, even on the Novell side. They're a well knit team of contributors that are more than happy to help people wanting to help them. They saw a gap and filled it, by taking a leaf out of one of our peers' book and enhanced it.
- Packman - the great resource for the common user. They are one of the oldest community based projects relating to openSUSE or its earlier iterations that I remember. They're approachable friendly and have a heck of a lot of knowledge. They saw a need and did it.
- LXDE - a new desktop environment that is only a couple of years old. It has effectively been packaged from scratch by one person and is now included in Factory and the upcoming 11.3 release. There was no committee discusion about doe we want it in or should we have it in, there was an opportunity and it was capitalised on.
Now I'd love to hear from people on what they think is missing or blocking them from doing any/all of the above, I'd also like to know what it is that people find awkward or difficult in joining in and being more active. Don't get me wrong I appreciate one of the most precious and costly commodities is pretty much standard across the board - that of time. I suffer from that problem as much as anyone, but it doesn't stop me from contributing, sometimes I just ave to slow down and trickle the contributions rather than pour them. So let's start the conversation and get ideas and complaints out in the open. If you don't say it how are people going to know about it?
Remember that this is an open dialogue. Pot shots, defamation of character, flaming, and anything non-constructive will NOT be tolerated. Let's keep it clean and helpful. Listing things that our peers do better than us and also what they do worse than us would most likely open eyes.
How one gets to the future greatly depends on how one deals with the present and learns from the past.
If anyone has been following my tweets/dents, you will have noticed that I sporadically mention something about "Operation Factory" followed by a pile of tags. Well for the curious, Operation Factory is basically getting the latest and greatest Moblin into openSUSE.
Basically the process involves the following:
- Get the latest code from the Novell internal Build Service, and import it into the OBS.
- Rebase all the patches and tag them
- Upstream as many patches as possible
- Get as many patches as possible into openSUSE
- Use as many in distro packages as possible
- Put Moblin specific packages in their own devel project on the OBS
OK so that doesn't look too bad now does it? Not entirely no, apart from the fact that my employer doesn't really want to know about what I'm doing and as such would much rather I spend my time doing annoying/boring/beneficial to shareholders work :-( (that's my obligatory moan out of the way).
Michael managed to architect a good plan on how to actually start getting things moving with the help from Aaron and others (I might have stuck my oar in just to feel involved :-) )
Vincent was kind enough to import from the IBS to the OBS, and started linking to distro packages. I have pretty much linked all the remaining packages that could be with ease (as in there were no patches or differences).
Federico has done a lot of work tagging and highlighting patches that need to be sent upstream/included into openSUSE over in the wiki. Problem is that he has other critical priorities (like fixing bugs/work beneficial to shareholders/etc) which means he hasn't been able to go through the whole list of packages. So that means that I or anyone else needs to do the work on the Still ToDo part of the list. I have started to merge the identified and "cleaned" packages, I still have a way to go but I'm hoping I can juggle things a bit so that I can at least finish that part of the list.
Another thing that needs to be done, is get all the Moblin specific packages submitted to their own devel project before they can be sent into Factory. We have a devel home ready, it's just a matter of going through all the packages and sr'ing them there.
I have commented on the wiki against the packages that I have linked, patches upstreamed etc. to make it easier for people who may want to join in the fun (just incase no one noticed, that was a hint!). Basically the repository setup is like this:
- Moblin:2.2 is the new home for building Moblin. This will effectively be an aggregate for the different devel components. This is also the repository that will provide the base to build the images for people to install (no I don't have a date for when these will be available yet). It is also the home for packages that can't get merged into Factory due to too many patches or weird tweaks should there be any.
- Moblin:UI is the new devel project for the Moblin specific components. This is where things like moblkin-panel-web etc. will live, and where they will be worked on prior to being sr'ed up to Factory.
- All the other packages should be in distro, so the maintenece aspect of things should be much simpler unlike now.
The keen eyed among you will have noticed the name of the aggregate repo - yes it will house the new release once we have merged everything. We are starting off with 2.1 and then we can easily see diffs etc between versions when they are submitted.
So all in all things are moving in a positive manner, just not as quickly as I would have liked. If you are disappointed in the speed at which things are progressing pop into irc or send a mail to the mailing list (make sure you subscribe first). Please do get involved! There is lots of useful work for people to do, and importantly lots of fun to be had :-)
Thanks to AJ for pointing this out to me
It's been over a week now since I came back from the fantabulous FOSDEM, and have had a chance to digest a lot of the conversations I had whilst there. One of the conversations I had was with a senior developer who was in a sort of Special Interest Group. He mentioned to me that his management had asked the SIG to formulate a plan for where they wanted to see their project in five years, and how they aimed to get there.
Now I thought about that idea for a while, and to be honest I find it a really difficult question to answer properly. So I thought I'd ask my fellow community members (whether that's openSUSE, Bongo or whatever) how would you answer that question in relation to your chosen project? I can invariably only come up with a partial answer, not a full where and how. Let me try and show you what I mean.
I'll take Bongo as my first example. For those that have no idea what Bongo is let me explain: Bongo is an evolution of some forward thinking by some people who used to work at Novell. It started out as the Hula Project; then Novell sold the related assets off due to strategy alignments (or whatever); a few of us wanted to continue and forked the code and created the Bongo Project. OK so that's a brief history but what is it? Bongo is a lightweight and simple e-mail & calendaring solution, it is based on proven technology – the heritage goes back to NIMS if I'm not mistaken. Whoopee do there are like a million and one e-mail solutions out there. Yes but not all in one solutions that are light on resources and contain all functions. Bongo is NOT a groupware product, it is aimed at SMBs, geeks education and pretty much anyone that just wants e-mail, calendaring and contacts. Think of it as a FOSS solution to provide the functionality of Gmail+Google Calendar. Here endeth the history lesson.
Back to the example. So I need to list where I would like to see Bongo in five years time, OK how about:
-
Used by a large number of education and SMBs
-
Shipped with all the major distributions
-
Mimicked but never beaten by potential competitors
-
Partnering with other projects to maximise reach
-
Leading edge web front end
-
Hooks for multiple languages/frameworks
-
Large developer community
-
Large user community
-
Global domination
Now the trickier part – how to achieve those goals. So far all I can come up with is (in no particular order):
-
Canvas more developers that are interested in the e-mail/calendaring space to join in
-
Advertise and market Bongo
-
Actually get a working WebUI done
-
Look at existing solutions and try and learn from them
-
Speak to distributions and see if they can help
-
Win the lottery
As you can see the list for where is larger than the list for how. Sure I could expand the latter a bit by being more detailed but this is supposed to be a bullet list with summaries not an essay. In my view one needs to get a list to work from and then expand on it, maybe even categorising the bullet points to see what/how/where/when and also explaining why.
Now Bongo is a relatively simple project with a small user base and community, and a very defined focus. The other project that I'm involved in and care for is openSUSE, and lord knows that is no simple beast :-)
Let me try the same with openSUSE. The where:
-
At the forefront of distributions
-
Large developer base
-
Better toolsets for developers
-
Working better and closer with fellow distributions
-
Have a foundation that manages the project
-
Get more community contributors involved to lessen the load on Novellians
-
Learn from other projects to help improve us
-
Keep momentum going
-
Grow the user base
-
World domination
Now the how:
-
More active marketing
-
Speaking to developers of different projects to find ut what they feel is missing
-
Win the lottery
As you can see I'm woefully short on how on earth I am to achieve anything. I'm open to suggestions :-)
I know for a fact that there may be one or two items that I've listed that could be contentious, and do you know what? I sincerely hope so :-) Now don't get me wrong, I really do appreciate and am grateful for all the work effort and money that Novell has invested in openSUSE; but it isn't fair at all for Novell to keep carrying the Project. If anyone thinks they're not, you are living in lala land. Sure some of it might be their own doing, but a lot isn't and it is up to us the community help them so that we can benefit even more.
I really do hope people start thinking, and doing it seriously about where they would like to see their preferred project in five years time. I would also love to see people's responses as to Where & How they would do it. Anyone that starts screaming like my 21month old daughter about this or that will get a sound thrashing and ignored. There is absolutely ZERO room for pettiness in the community. If you disagree with something then great! Just make sure you are as detailed and as calm as possible about why and also how you propose to do it differently. This doesn't just apply to this whole five year plan thing, but to general discussion.
Don't loose your passion, just learn to use your passion ;-)

