The recent discussion about OpenStack API vs Implementation had led to several discussions about “OpenStack Values.” While entertaining, they ultimately show that we have a lot of conflicting desires and opinions about the project. In fact, the term “values” is itself hard to define.
Consequently, I wanted to try to capture what I see as OpenStack’s current values (not my personal ones for the project – those are in the post script). I’ve tried to put everything in positive terms, but value choices always have positive and negative impacts.
Rank | Value | Provides | Possible Downsides |
1 | Upstreaming | Share code base and community effort | “First in” wins
Latest over stability Measure value in commits |
2 | Vendor’s taking initiative | Broad Participation
Free marketing buzz |
No one wants to say no because of Vendor bias perception |
3 | End-to-end open source | No licenses required for scale users and developers | Build, don’t buy wastes a lot of effort
Does not align with users who want to pay for services |
4 | Developer leadership | Lots of code being created | Not many user requirements being considered |
5 | Figuring out API via implementation | Fast iterations | Frustrating APIs
API depreciation |
6 | Passionate discussion | Diversity of opinion
Drama attracts attention |
“Unfriendly” community
Loudest voice wins Cross culture challenges |
7 | Being able to contribute broadly | Generally maintainable platform | Deep skills in subject matters
Best tool for the job |
In my experience, if you don’t align with a communities values then you’re going to be very unhappy in the community. I’ve watched this happen to project founders and the community changed around them. Let’s all RAGE QUIT!
So, this makes me reflect on my own open source values. I’d start with pragmatic utility, transparent action, principle driven decisions, iterative design and data driven decisions.
What do you value most in open communities?