LWN.net Logo

Heilmann: Don’t call it “open source” unless you mean it

On his blog, Christian Heilmann examines the gap between making a source repository public and maintaining a "real" open source project. "Several times during the talk he explained that he does have a job and that he has no time to answer every email. After all, there should be no need to ask questions or get support as the code is available and on Github and people could help each other and be happy that the code was released as open source. How come there was no magical community appearing out of nowhere that took care of all this?" Short answer: if you aren't interested in other people's patches, it's not really an open source project.


(Log in to post comments)

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 16:20 UTC (Mon) by bmillemathias (subscriber, #54343) [Link]

Hey Virtuoso (virtuoso.openlinksw.com), I'm looking at you when reading this article.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 16:41 UTC (Mon) by hholzgra (subscriber, #11737) [Link]

I'm actually looking in the general direction of Oracle ...

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 23, 2012 8:04 UTC (Tue) by deepfire (subscriber, #26138) [Link]

What, you think that OpenVZ is a suboptimal open-source project?

Do you even know about cgroups and where they originated?

Are you aware of the effort they spend to mainline OpenVZ?

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 23, 2012 10:54 UTC (Tue) by adobriyan (guest, #30858) [Link]

It Virtuoso, not Virtuozzo.

Entitlement

Posted Oct 22, 2012 17:01 UTC (Mon) by man_ls (subscriber, #15091) [Link]

Am I the only one to think that this post is a bit abusive? So you spend your free time developing something out of love, generously put it at the disposition of your peers, take some time out of your presumably busy schedule... and then people demand that you do a lot of grunt work to help them, out of the goodness of your heart.

We could also get pedantic and argue that the open source definition does not mention "spending your free evenings answering unpaid mail instead of being with your family or whatever else you fancy". Not even Free software (which is philosophically more demanding) demands anything like that. No, releasing code at the disposition of others so they can improve on it is perfectly valid morally.

The guy might have a point if he was talking about companies doing code drops, but only because the cost of developing in the open is not significantly higher than otherwise -- it is only a matter of trust in the community. As it is, it feels a bit trollish IMHO.

Entitlement

Posted Oct 22, 2012 18:25 UTC (Mon) by michel (subscriber, #10186) [Link]

Agreed. Perhaps this is targeted at companies as you point out.

Entitlement

Posted Oct 22, 2012 18:32 UTC (Mon) by av500 (guest, #66665) [Link]

even companies doing "code drops" is still fine, since when did it become mandatory to develop in the open in order to be called open source?

Entitlement

Posted Oct 22, 2012 19:40 UTC (Mon) by man_ls (subscriber, #15091) [Link]

Yes, you are right. It is not a good measure for community-building, but as our editors always point out and as others have commented on this very item, community-building is not equivalent to open-source (in either direction).

Entitlement

Posted Oct 23, 2012 12:00 UTC (Tue) by Corkscrew (subscriber, #65853) [Link]

Morally it's fine... but it's not Open Source.

I'd draw a distinction here between Open Source and Free Software. As we all know from reading RMS's highly entertaining rants, Free Software is a moral philosophy. Software is Free if it obeys the four freedoms. "Dumped" code is certainly Free.

In contrast, as we all know from reading Torvalds & co's equally entertaining responses, Open Source isn't a moral philosophy; it's a very pragmatic development methodology. The point of Open Source is that, when you structure a community in certain ways, and give them a certain level of access to a code-base, good things happen.

Code dumps do not follow the Open Source methodology, hence they don't get the Open Source results. Calling them Open Source regardless is like saying you've used the Waterfall model because someone scribbled out a half-page spec a year ago. You may have ticked one of the boxes, but you certainly haven't gotten into the spirit of things.

As another example, OpenOffice under Sun was Free Software because you could download the source code, but it was about as far away from Open Source as it could get without a spaceship. As a result, the software basically worked but had lots of annoying long-term bugs that no-one at Sun cared enough about to fix.

Entitlement

Posted Oct 22, 2012 19:09 UTC (Mon) by geofft (subscriber, #59789) [Link]

I think he was specifically responding to people who are under the impression that merely releasing your code under an open source license will cause the open source community to embrace it.

In other words, it's the folks who go "look at my code, my code is amazing" and don't attempt to cultivate a community who are feeling entitled when they complain that no community spontaneously arises.

If you just want to do a code drop under an open source license with no expectations, by all means do a code drop. If you have expectations of the community helping you, the community expects you to participate.

Entitlement

Posted Oct 23, 2012 8:10 UTC (Tue) by khim (subscriber, #9252) [Link]

If we are talking about "community building" then why all the talks are about "answering mails" and "cultivating a community"?

There are other way and it may be easier for the companies (as opposed to the individuals): just create a competitive product. Android is as "open-source-hostile" (in the terms of discussed article) as they come (hidden development, no community involvement, most principal authors never answer questions, etc), yet there are vibrant Android-related communities. Why? Well, because there are over million new Androids activated every day.

Similarly with "pasture source": yes, project can be popular and even thrive when company closes it's development - but only if it's the only if other real alternatives are proprietary (and popular).

Entitlement

Posted Oct 23, 2012 8:41 UTC (Tue) by cabrilo (guest, #72372) [Link]

I think the author makes the case. Obviously there is nothing wrong with just showing your code without further involvement, but from my perspective many people do it for completely wrong reasons.

I may be a selfish coder-for-hire, but my time is expensive and my tools are valuable. I only consider open sourcing my code when:

a) I want the project to grow and be seen by many eyes and I expect patches and improvements,
b) or I want somebody else to take over the project eventually - because I might find it useful in the future but currently don't have time to develop it any more.

Such projects, which are open source for selfish reasons, tend to flourish.

Projects which are put up on github or sourceforge or whatever kids these days use, just to get the free hosting or to be able to put on a resume "Leader of an open source project (and in fact the only contributor to it)" tend to be just noise (with some notable exceptions).

So, it's not about bashing people who don't engage the community, it's about telling them that if they want to have a successful and meaningful project, they should know it's a full time job.

Entitlement

Posted Oct 23, 2012 11:39 UTC (Tue) by man_ls (subscriber, #15091) [Link]

Think about the following situation, which seems to fit the case mentioned in the blog post. (I think that most of us can relate to it; at least I do.)

A developer creates some software which she hopes will bring her fame, glory and dev-cred. She spends considerable time building the package and polishing it. Patches and improvements are slow in coming, but user requests pile up. After a while help has not materialized, and she has little else to learn from it: maintaining the package does not make sense any more. But still the project is useful in its current form, or it may be some day; some people from all over the world are using it.

So the world is a better place because of the package, even in deep maintenance. But judging from the blog post the software is not "real open source". I cannot agree with that view.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 17:09 UTC (Mon) by skvidal (subscriber, #3094) [Link]

I believe this is a common fallacy.

It's open source if the code is open and under an open source license.

otherwise you're knee deep in 'no true scotsman' territory and it all gets more pearshaped.

http://en.wikipedia.org/wiki/No_true_Scotsman

I understand what he's trying to say - and it should be "better open source projects help people and interact with users". Ones who do not are still open source, they just may not be the best open source projects to use.

Let's not create new definitions of existing words - that helps no one.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 21:23 UTC (Mon) by pboddie (subscriber, #50784) [Link]

Agreed.

The term "open source" is so routinely debased by the likes of the closed collaboration factions of the academic world, to name just one example, that the author would be better off directing his rant at those people instead, especially when those people, after expressing a vague fondness for the meanings of the separate words, put those words together and then parade the "open source" term around in order to mislead others into thinking that a mere pretence of openness - a concession to get people through the door - is what the term and the associated movement is all about.

In other words, the people who need telling off are not the people already doing the right thing, even if they could be running transparent projects with completely open governance.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 17:12 UTC (Mon) by cantsin (guest, #4420) [Link]

Heilmann's argument may sound intuitively right, but formally it is wrong. None of his criteria are part of the Open Source Definition . You may release software and call it Open Source that matches this definition even if all you do is provide the code as-is, with no whatsoever feedback or community building.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 17:40 UTC (Mon) by b7j0c (subscriber, #27559) [Link]

thank you. i wish more people would actually READ licenses.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 18:33 UTC (Mon) by nhippi (subscriber, #34640) [Link]

Agreed. The author is trying to shift the meaning of Open Source. Please invent a new term instead of trying to hijack "Open Source". Howabout "Open Community" or "Open Development" ?

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 23, 2012 9:36 UTC (Tue) by njwhite (subscriber, #51848) [Link]

Well, I'm not sure I agree entirely. The term "Open Source" has generally been used to refer to the power of different development methodologies and communities, even if the official definition focuses on the legal/licensing aspects.

Calling it 'hijacking' the term is certainly too strong; words are flexible and used in different ways to mean different things all the time, even if they have a fixed formal definition.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 26, 2012 12:45 UTC (Fri) by juliank (subscriber, #45896) [Link]

That's what I'd use free software for. Open Source really is just legal stuff, and has nothing to do with communities.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 17:26 UTC (Mon) by marduk (subscriber, #3831) [Link]

I hereby place my source in the public domain (with open-source-like restrictions).

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 18:30 UTC (Mon) by cmccabe (guest, #60281) [Link]

The author is getting confused between open source, which is a licensing choice, and the style of upstream management.

Some projects are managed by a community including multiple companies. Others are dominated by a single company or individual. I've heard the term "community project" applied to the former. I don't know if we have a term for the latter.

I agree with another poster here who suggested that re-defining Open Source risks turning into a "No true Scotsman" scenario. I often hear this argument used to justify people going with a proprietary solution (like Windows phone), because the competing solution(s) (like Android) are not "open source enough." It's BS.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 18:41 UTC (Mon) by iabervon (subscriber, #722) [Link]

It should be clear to anyone who's been following Open Source (and Free Software) long enough, that it's actually about giving sufficiently motivated people all of the information they need to make the software work for them (assuming that this information was what you used to make the software in the first place), and allow them to share their work with others. The point is that you aren't dependant on the original author. I would actually make the exact opposite claim from this article: something isn't really Open Source unless, were the entire community to get wiped out by a pandemic, a user would still be able to keep the software running, with sufficient skill and motivation, based on what's available from github.

On the other hand, I think there's a need for some sort of useful label for projects which are maintained effectively, in that somebody is coordinating the people who are making modifications with each other and with other people who could benefit from them.

But you can't really legitimately complain about somebody else not maintaining a project well unless you've offered to take over maintaining it. And, with git, it's actually entirely reasonable to have two people maintain the same thing separately for a while to see who's actually more interested. It can actually even be helpful to the maintainer for somebody else to pick up patches and pull requests and have a tree of stuff the maintainer hasn't accepted.

Open Source vs. Open Development

Posted Oct 22, 2012 18:50 UTC (Mon) by rgmoore (✭ supporter ✭, #75) [Link]

It seems to me that this post highlights a common problem, which is that the formal definition of Open Source and what people commonly think about as Open Source differ. Open Source means that the software has to meet the Open Source definition, which defines things about the source being available, modifiable, and redistributable. What he's complaining about is project management and the development environment, which can vary wildly within projects that are formally Open Source.

Maybe we need to have some kind of "Open Development" definition that goes along with the "Open Source" definition to define a development style that matches what we've come to expect from really open projects. It would define things like public access to developer discussions and bug reports, accepting code from outside the core development group, a way for new developers to be formally accepted to the core group, etc. It would probably be more of a sliding scale from completely closed to completely open, rather than a single threshold the way Open Source is, but it seems that some kind of recognition that not all Open Source projects are equally Open is definitely needed.

Open Source vs. Open Development

Posted Oct 23, 2012 6:54 UTC (Tue) by marcH (guest, #57642) [Link]

> Maybe we need to have some kind of "Open Development" definition that goes along with the "Open Source" definition to define a development style that matches what we've come to expect from really open projects.

Writing a definition could prove really hard. "Open Development" and "Open Project" sound clear enough to me as they are. Dropping the "source" word makes it quite clear this is beyond just making the code available.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 19:21 UTC (Mon) by atai (subscriber, #10977) [Link]

open sources indicate the term open source has been abused

The key word is "project"

Posted Oct 22, 2012 21:06 UTC (Mon) by abartlet (✭ supporter ✭, #3928) [Link]

I think the key way to intelligently split the difference between our licence and community definitions is the suffix "project".

There is much open source software (RHEL comes to mind specifically) that is very much developed on a 'no community input' basis. It still meets our licence definitions, and we can re-use the result.

But what we value far, far, more is the open source project. These are the lifeblood of our community, because they are about community, and I see that term abused far less often.

The key word is "project"

Posted Oct 23, 2012 8:32 UTC (Tue) by khim (subscriber, #9252) [Link]

But what we value far, far, more is the open source project. These are the lifeblood of our community, because they are about community, and I see that term abused far less often.

I would not be so sure. Yes, most "cornerstone projects" of FOSS are developed in the open now, but they all started on 'invitation only' (and sometimes even 'no community input') projects. When GLibC finally become a community project? GCC? X? These are all fundamental.

In fact I'm pretty sure the opposite is true: it's very hard, basically almost impossible to jumpstart sizable project if you try to build community around it right from the start. If the project is tiny you may do that in a couple of days (irker went from the 'mere idea' to the 'community project' in a few days), but when project becomes larger this time grows (git was under Linus control for a few months till Linus deemed it "good enough" for his needs - and all ideas which Linus had no use for were rejected out of hand at this period) and when project is millions lines of code years may be needed (some huge projects like KDE were created as community projects from the start - but they explicitly used closed-source predecessor as a combination of blueprint and roadmap: KDE is called KDE because it tried to become "better CDE", after all).

Of course if you try to keep projects in 'invitation only' state when it's mature enough (== when rate of change subsides) then you either get some "true open source project" as a replacement (Linux vs *BSD), or sometimes your project is forked (already mentioned XFree86 ⇒ X). But that's at later stages of the development. How and when to correctly transition from 'invitation only' (or 'no community input') to proper 'community project' is not yet clear: both successful and unsuccessful attempts are wildly different…

Article which will serously investigate that process will be much, much, MUCH more interesting then this "we prefer open development process" rant.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 21:13 UTC (Mon) by akeane (subscriber, #85436) [Link]

Well, maybe the project he's working on is boring...

Considering the article pointed to was possibly one of the most trite, dull, uninformative things I have ever read, I am not surprised no one wants to get involved with the code.

But still, he does use bullet points, and I do admire his sense of pomposity:

"we shouldn’t be surprised if we get less contributors than we think"

Well, so what?

The world is not obliged to provide you with free time and resources just because you put stuff on github, at least make it interesting and, if you have to inflict "articles" on us, throw in a few jokes in at least, make it readable somehow!

"Don't call it \"bland\" unless you mean it"

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 21:36 UTC (Mon) by ikm (subscriber, #493) [Link]

The title is misleading. What author implies is "open source project", but the last word is omitted, which causes confusion. Clearly if you release a piece of software under an open source license, not calling it "open source" would be just weird.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 22, 2012 23:30 UTC (Mon) by bronson (subscriber, #4806) [Link]

That's why forking is so great. If you're not pleased by an open source project's community, fork it and make some of your own. (do try to re-integrate whenever possible of course)

Also, completely agree with previous comments that "real open source project" is in "no true Scotsman" territory.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 23, 2012 7:46 UTC (Tue) by nhippi (subscriber, #34640) [Link]

This Blogger/Evangelist doesn't seem to practice what he preaches - There is no comments section on the blog.

Heilmann: Don’t call it “open source” unless you mean it

Posted Oct 24, 2012 15:07 UTC (Wed) by ParadoxUncreated (guest, #87037) [Link]

Open Source is not neccesarily about other peoples patches. I am doing fine without other peoples patches, it is the kind of project that does well without patches. I am doing all the development, and it is world class. (Audio DSP plugins http://sourceforge.net/projects/pxu/files/ )

A big plus here is ofcourse the possiblity to compile on any architecture with a supported compiler.

If anyone should have any patches, I won`t reject them ofcourse, as long as they are good. Or they can maintain their own patched versions. But I don`t think most people can jump in there and improved DSP that has iterated for 10 years.

Noone came up with this at concentrated audio-developer meetpoints as KvR. They indeed copied some of my earlier versions in their designs instead. So you know open-source may not be neccesarily about patches, but about architectures and really freeing an algorithm, to the open-source world, making it free of corporations and bankrupcies, never needing to go through the development and testing-phases again.

Open-source is very good in that respect, acting as a library, of what eventually becomes very good algorithms for many things.

Peace Be With You.

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds