DEV Community

Peter Kim Frank
Peter Kim Frank

Posted on

Explain Open Source like I'm five

How would you explain the concept of open-source to a five year old?

Top comments (21)

gaberomualdo profile image
Gabe Romualdo • Edited

You build a house with Legos, and you're really proud of it.

Your friend Johnny comes over for a playdate and he adds another level to the house, and a different color door.

The next day your friend Oscar comes over and he changes the walls of the building to make it look better.

Your friends Sophie and Alex come over to the day after that, and Sophie builds a new, nicer-looking building and connects it to yours. Alex fixes a few stray blocks in Sophie's new building.

A month passes, and so many of your friends have come over and changed the buildings and added buildings of their own. The original small building you were proud of has now become a city!

And that's all because you worked with your friends to build it.

— Gabriel

nagrass profile image
Nathan Grass

When your friend Johnny comes over, he has an exact copy of your house built using his own Legos. Johnny makes some changes to his copy and shows you what he did. You can then add those to your house, allow Johnny to add them or discard them and keep the left over Legos for free.

eekayonline profile image
Edwin Klesman

Best answer to the OP's question :)

emmabostian profile image
Emma Bostian ✨

Okay but can we talk about the beauty that is this analogy?

jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard • Edited

It's like cooking.
We sell our food to customers,
but we also share our recipes between us,
some follow the recipe line by line,
others interpret it in their own way

Contributing to Open-Source feels like dancing Tango:

  • it feels weird to interact like this with a total stranger
  • keep it simple and focus on making a connection
  • to really understand that social dance, be both a contributor and a maintainer
andrewbrown profile image
Andrew Brown 🇨🇦 • Edited

When mommy wants you to share your legos with your siblings, and you have to let them change or add things, even if you build something, and you can't cry about it.

carsturdy profile image
Carson Sturtevant

😂 Legos are great to use for explaining this concept!

nagrass profile image
Nathan Grass

Except that what you built is still sitting in your hands. Mommy gave each sibling an entire new box of legos.

moopet profile image
Ben Sinclair

I feel these explanations are too optimistic. When simplifying something like "open source" down, we end up missing out important distinctions, and people say things like, "anyone can use it" or "anyone can contribute to it", which isn't always the case.

More importantly - and this is critical to the formative years of a 5-year-old - "Lego" is its own plural. Grr.

ghost profile image

Do something and show how you did it so others can learn and fix it if something is wrong or even making it better.

They have to share what they did, which is great!, they are making your stuff better, for free!.

nagrass profile image
Nathan Grass

They do not have to share what they did. They can share it, and you can choose to ignore it and keep what you built.

ghost profile image

With GPL if they want to redistribute they have to, the owner can choose not to take it, but they do have to share it. Of course you can change it and keep it to yourself without sharing but is a tree falls ...

mellen profile image
Matt Ellen • Edited

(might work for 5 year olds with long attention spans or who are very interested)

fyo: what is open source? Is it like ketchup?

me: No, open source is a way programmers allow people to use their work. Do you remember what a programmer is?

fyo: someone who makes a computer do different things than it already can?

me: that's right, and we do it by writing code. Do you know what code is?

fyo: no

me: code is a special way of writing instructions for a computer to follow.

fyo: ok

me: We call the code that makes up an app "source code", or just "source".

fyo: so the apps on a phone are made of source?

me: exactly. So, as you know my job is a programmer, so I write code for a company. When I write code for them, I have agreed that they own the code, so I can't share it with other people. When someone won't let you see the code for an app, that is called "closed source".

fyo: ok

me: The company doesn't have to hide the code, though. They can let other people outside the company see and use the code to make their own apps. Then the code is "open source".

fyo: oh. thanks.

saurabhdaware profile image
Saurabh Daware 🌻 • Edited

you OPEN the SOURCE code for others to see, change and develop upon.

There are two types of people:

  1. Who like to create
  2. Who like to contribute
  3. Also, a third type who do both.

For people who like to create
It gives them ability to showcase their code, let other people help them in building it and let other people have their own version of your app

For people who like to contribute
it gives them ability to contribute to their favorite apps/libraries.

cool part?
it doesn't ask for experience or no need to go through hectic interviews! just write code and submit it and boom! the new shiny cool famous library would have your code in it!!!

markoshiva profile image
Marko Shiva

Well open-source kido is a way for software engineers programmers to collaborate online with other like minded people that they might never met in person but they do still choose to work on same project which is a common ground for them both.

Also kido there are no bosses here there are people who work more on the project and they usually regulate contributions but in anyway in open source you are always encouraged that if you want to make your own spinoff you just do it take a source code fork it and continue in your direction.

zeslova profile image
Simon Newby

Infinite lego.

clarkio profile image
Brian Clark 💡

It’s like sharing your candy with your class and everyone says it’s yucky

itachiuchiha profile image
Itachi Uchiha

It's like ideas. Sometimes free, sometimes not.

wintercounter profile image
Victor Vincent

Like sandbox at the park.

liviufromendtest profile image
Liviu Lupei

Modern version:
Selling to developers

stantonwjones profile image
Stanton W. Jones

Clean up, clean up. Everybody everywhere. Clean up, clean up. Everybody do your share!