DEV Community

Whittington
Whittington

Posted on

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

I recently had a conversation with a professor about programming and open source after he started a conversation about my hacktoberfest shirt. I told him about hacktoberfest and tried to explain what open source was, but I didn't know how to explain it to him in a way that made sense, but I tried anyway and I ended up confusing him. He was shocked by the amount of work that goes into open source and was confused as to why people "work for free" as he put it. Does anyone have suggestions about how to explain open source to people who lack a programming background?

Top comments (16)

Collapse
 
doomhammerng profile image
Piotr Gaczkowski

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.”

Via: medium.freecodecamp.org/the-defini...

Collapse
 
bitdweller profile image
Pedro Pimenta

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.

Collapse
 
doomhammerng profile image
Piotr Gaczkowski

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

Collapse
 
mayokunadeniyi profile image
Mayokun

🔥 x infinity

Collapse
 
realkvejk profile image
Thomas Schmied

This is genius.

Collapse
 
doomhammerng profile image
Piotr Gaczkowski

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

Thread Thread
 
realkvejk profile image
Thomas Schmied

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

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

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".

Collapse
 
cjbrooks12 profile image
Casey Brooks

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.

Collapse
 
kennycoc profile image
Kenneth Cochran

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

Thread Thread
 
mortoray profile image
edA‑qa mort‑ora‑y

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". :(

Collapse
 
molly profile image
Molly Struve (she/her)

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.

Collapse
 
easyaspython profile image
Dane Hillard

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!

Collapse
 
mferrier profile image
Maxime FERRIER

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.

Collapse
 
kennycoc profile image
Kenneth Cochran • Edited

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.

Collapse
 
antonfrattaroli profile image
Anton Frattaroli • Edited

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

(The rest of the video is great too)