How do you explain open source to people who lack a programming background?

Joseph Whittington on January 31, 2019

I recently had a conversation with a professor about programming and open source after he started a conversation about my hacktoberfest shirt. I ... [Read Full]
markdown guide

At most restaurants, if you went to the chef and asked, “I’m sorry, I love your burrito; could I get the recipe?” they would refuse — this is not Open Source. Open Source is when, in addition to the product, you also have access to all the ingredients and the recipe, meaning you can replicate the whole burrito right at home.

Now imagine you start making this burrito, but you come to the conclusion that you want to cut down on the meat. So you replace it with avocado. In that case, you take the recipe, exchange the meat for the avocado, follow the rest of the steps to the letter, and check what comes out.

It may turn out that your dish tastes better than the meal at the restaurant. If the restaurant were run like an Open Source project, you could then go to the chef and say, “Hey, your burrito is great, but I’ve added avocado and now it’s even better! You can add it to your menu.”



Recipes was the first thing that came to mind when reading the question. You summed it up really good.

I'd like to add that the money isn't made from the recipe itself. It's made in the restaurant, by having a service, other features, ingredients, etc... Same with open source. Vim doesn't make you any money, but what you produce with Vim might.


Ha! Haven't thought about it this way. You're right that this analogy goes even deeper than I imagined :)


Thanks, though I disagree. It's just a fitting metaphor, in my opinion :)

That's why I find it genius. It is a very fitting metaphor understandable by anyone with common sense.


Compare it to open access research. It's not about doing work for free, it's about making the results public, and sharing your research. "Open" is about granting everybody access, as opposed to keeping secrets. It's let people know how a product works.

If he hooked onto the "free" argument perhaps you described "free software" as opposed to "open software".


Great point - "free" vs "open" is a really important distinction.


I prefer the libre vs gratis distinction. It's free as in speech

I still come from the old world and just don't consider most "open" software to be free. It's a movement that kind of co-opted the original free movement. There is very little "free" software in mass use anymore. Of course, most software isn't even "open". :(


Even in commercial products, it often makes sense to open source the codebase. The more people looking at the code, the fewer bugs there will be, the closer it will be to what the users actually want, and the easier the support will be because you've got a community helping answer questions and find solutions.

Ultimately, open source software is much more about building open and inviting communities than it is about providing a product for free.


Here, the "money" is trust and knowledge. You can verify by yourself the code you're using and you can learn by being corrected by others and reading code at the same time. So improve your own projects, and improve projects of people who will read yours.
And that's not all the time a "work for free". Just see the price of a some opensource tools' certificates or the cost of a support.


My go-to is Wikipedia. It's similar enough to explain the basic concept, and familiar enough that everyone knows about it. Though, as other people have pointed out, open access research may be a better fit to explain to a professor.


was confused as to why people "work for free"

I would compare it to having research published in a journal. You have to do all this work to get published, but in the end, the journal doesn't pay you for it. However, if you are published in highly respected journals, that helps build up your reputation and career. I view OSS the same way. You don't get paid directly by an OSS project, but the bigger and more prominent ones you contribute to, the more it boosts your reputation and career.


To continue the analogy, it also means others can corroborate and build upon your work, often citing it in order to get their own work done!


People mix ideology with a business model, open source is both. First, it is an ideology (that it's way early than Linux, any "open source foundation" or GNU). And for another part, it is a business model.

Why people work for free?. Now, that's the business model (not the ideology).


For your specific issue with the professor, I recommend this video (@6:45)

(The rest of the video is great too)

code of conduct - report abuse