So, pondering further about services… there are two fundamental issues with an open source product offering services as a revenue generation mechanism for sustainability and if the project considers itself a community. They are not insurmountable but if you are going to go down that path you need to acknowledge these issues and think carefully about them.
Firstly, maybe i say something about the community aspect. Many consider open source to be a synonym for community. Infact, thats not the case. Many OS projects are open source in license only. You can use the product but there has been no intentional design to include ‘others’ outside of the initial team/solo lead. I say here also intentional design because if you want community I believe you have to design for it. You have to design the tone of your project, the pathways in, the processes etc – in other words, you have to design the projects culture. If you don’t do that the history of open source shows that you will probably end up with either:
- no community, or (potentially worse)
- a community you don’t want
The second item is interesting because it explains a lot about the lack of diversity in open source. If you don’t intentionally design your community, its probably going to look exactly like you or (even more probable) a worse version of yourself on a bad day. If you want me to unpack that the price is one (good) margarita.
So… lets say you do want a community, and you are setting about intentionally designing for it. So… at the same time, or at least at some point along the same path, you decide you need to start thinking about how to make this growing ‘thingy’ pay for itself. One idea you have is services…
The tricky thing about services, is that as you build up a community an ecology of ‘stuff’ will start to evolve. People doing things that are related to the original project, but are not the original project. This is a good sign of success. An ecology of associated activities evolves. It might be slow at first… someone blogs about what you are doing, someone else starts demoing the project to others… etc… its the first stages of adoption..you don’t have a large market share at first and your product is still young…so the first people you have in the community are the early adopters…they fill in the gaps they see as necessary which, at that stage, aren’t that many…but they also put in the energy to do it…they are the passionate ones.
Then things start to get serious. You actually might have people asking if they can hire someone to do some dev. Or maybe they want to use the product and they don’t know how to. They might not even know how to install it. Who knows?
You can manage this for a while, somehow, but then you are also growing and you think…hang on…someone should be paying for all this….
And you start thinking about services.
At that point you have to clear your schedule for a few days and step back and have a think….the basic problem is this…
If you offer services, and lets be explicit about this – most of my thinking around this (though not entirely) is linked to hosting services for open source platforms – then you will fulfill a need for your growing community. That is true. But also there is a cost.
First of all, the community has been stepping in and filling out some of the stuff that needs to be done… when you start offering services to the community, then your relationship with them fundamentally changes. They are now your customer. And as such they have certain expectations for service and support etc. They want to be able to get something very explicit from you and they want it in a timely fashion and they want it done in a professional fashion. They may even want you on the end of a phone at any hour should something go wrong.
This type of relationship is entirely inconsistent with the idea of a community. This kind of relationship is a service – client relationship. I know that many in the publishing world (to throw a rope around it) consider this kind of grouping to be a ‘community’ but it isn’t. I have heard of such groupings being referred to as ‘community meetings’ but the description of these events sounds to me more like a congregation of Stockholms Syndrome sufferers.
Community, is all about good faith transparent collaboration. Where everyone is working together towards the same vision. It is an opt-in situation and its important that the power dynamics are level. All community members should be equally valued. One community member cannot, and should not, be allowed to lord it over the other.
Service – customer relationships are not this. I know some modern blahblah language will try and frame it this way but its all semantic slight of hand. Building a community is not the same as building a customer base. The tone of the relationship is substantively different, the power dynamic is also completely different, and they do not mix.
So, when you set up a service you are changing your community. They are going to expect different things from you and you are going to have to do it. No more ‘we are all in this together’..rather, you are now on the end of a rope and they have every right to pull on it.
IMHO this is not good if what you want is a community. This will cause you and the community pain. This hybrid service-community approach will tear at the fabric you have created and probably make you miserable.
If you don’t want community, as I have described it, then go for it. Become a service organisation. But we aware there are other costs… first… members of your community, important members, may have been thinking of doing the same thing. Now you are in competition with them. You are in competition with the very people you were once working with. Not only that, its hard for that to go well because you ‘are’ the project as well as the service. Which puts you in a privileged competitive position. Those that go up against you are probably going to either drift away or, potentially, end up getting pretty passive aggressive.
So even if you do go down the service path, and abandon community, its going to be weird and rough.
Anyways…so thats my 2cents. If you are going to develop a community and are thinking about services by advice is that if community is really important to you then let the community supply the services… don’t fret it…work with them and who knows, maybe they will help you with sustainability also. AND…while you are at it… think about intentionally designing your community with thoughts to the community providing these services going forward…they will be better at it and if the community goes into competition with each other then that is healthy – shows your impact is growing and also the more services there are the more your impact will grow…