What Is Open Source Software? [MakeUseOf Explains]

Open Source Software Intro   What Is Open Source Software? [MakeUseOf Explains]“Open source” is a term that’s thrown around a lot these days. You may know that certain things are open source, like Linux and Android, but do you know what it entails? What is open source software? How can you tell if a program is open source? And, really, who cares? How does the open source philosophy affect you?

As far as the user is concerned, if a program works, it works – little care is given to who created it and the philosophy behind the program. But like I said before, open source software is a philosophy and it has real ramifications for you as a user.

What Is Open Source Software?

When the average user downloads a program (iTunes, for example) they usually download an installer file that unpacks the program and installs it into the user’s system. From there, the user will access the program using the executable file (.EXE) or a shortcut to that executable. These executables are created from thousands of lines of source code.

open source software 4   What Is Open Source Software? [MakeUseOf Explains]

In the example above, you’ll see some basic source code for a program written in the Python programming language. To the untrained eye, the above may seem complex, confusing, maybe even downright unintelligible. This source code, however, contains a bunch of commands and statements that are eventually compiled into a program executable. Once the executable is created, you no longer need the source code.

So when you run a program like iTunes, you don’t see the source code that was written to create iTunes. You only see the final product. And for most of you, that probably seems all right with you.

Open source software, on the other hand, are programs that are bundled with their source code in the release. Sometimes the developer will compile an executable from the source code and release them together; other times the developer will only release the source code and leave it to the user to compile the final product.

Either way, that’s what open source software is: software where the source code is open (public) as opposed to closed (private).

Why Open Source Software?

open source software 2   What Is Open Source Software? [MakeUseOf Explains]

Imagine a recently-constructed house, complete and available to the public for habitation. You can buy that house and move in. While you own the house, you may rarely ever see the actual foundations of that house – the walls, the electrical wiring, the plumbing layout, the wooden structure itself.

Continuing the example, let’s say that at some point your water malfunctions and you need to fix it. Or maybe you want to add a few extra outlets in a certain room. Or maybe you want to expand the house altogether, extending it with a garage or annex. None of this is possible if you don’t have access to the internal guts of the house.

Similarly, when you install a program, you usually don’t have access to the source code. The plumbing, electricity, structure that makes a program run – you can’t see any of it. What happens if you ever want to alter the program to do something that it doesn’t yet do? What if there’s a critical bug that needs fixing?

Like a house where you must wait for the contractors or electricians or plumbers to fix your problems, you’re out of luck with an imperfect program until the developer fixes it and releases a new version.

Now, a lot of people can work on their own homes (called “do it yourself”) but this is only possible because they have the blueprints to their homes. Using the blueprints, they can make their own alterations to their house. That’s what open source software does – it grants you the blueprints to a program run so that you can view and alter them for yourself if you wish.

The Benefits Of Open Source Software

open source software 3   What Is Open Source Software? [MakeUseOf Explains]

At this point, you might be wondering: If I’m not a programmer, then none of this really matters to me. But even if you can’t write a single line of code, you should still support open source software.

Here are a few reasons why you should.

Open Source Software Promotes Community

When source code is made public, novice programmers can read through it and learn from it, which bolsters their own programming ability. Like a library that leaves knowledge open for anyone who cares enough to grab for it, open source software helps proliferate education, creativity, and inspiration.

Open Source Software Promotes Speed & Co-Operation

If a bug is found in proprietary software, users have to wait for the company to find and implement a fix, and sometimes it takes a long while. With open source software, you have thousands of extra eyes looking at the source code, which means bugs are found and fixed quicker.

Open Source Software Promotes Competition & Variety

How many flavors of Linux are there? How many browsers have branched off of Mozilla Firefox? Did you know that Google Chrome is based on an open source project called Chromium? When someone can take a project and tweak it with their own ideas, you end up with more products than one.

open source software 5   What Is Open Source Software? [MakeUseOf Explains]

Open Source Software Promotes Accountability

When you can see the source code, you can be sure that a developer isn’t doing anything malicious to your computer when you use their program. For example, KeePass is an open source password manager, which means you can check the source code to see if the developer is stealing your passwords (he’s not).

Accountability is important. As a case in point, consider electronic voting booths. Most (if not all) voting programs are closed source. When you don’t have access to the code, you have no assurance that the program truly does what it claims to do, which manifests itself in the form of election fraud. You can only have full assurance by checking the code. This is also important in the cases of patent infringement, where the source codes between programs can be compared to check for software theft.

There are more reasons to support open source software, but I’ll stop there. If I haven’t made my point by now, then no amount of extra words will help. Hopefully you have a better sense of the open source world and why so many people support it. If you have any questions, feel free to ask in the comments!

Image Credit: Paper Community Via Shutterstock

The comments were closed because the article is more than 180 days old.

If you have any questions related to what's mentioned in the article or need help with any computer issue, ask it on MakeUseOf Answers—We and our community will be more than happy to help.

25 Comments -

0 votes

Florin Ardelian

Dead Joel, that actually dolan. Okay, it’s actually Perl.

0 votes

Sas

??

10 votes

Florin Ardelian

The program’s source file is called ‘hello.pl’ and the source code it contains is Perl code, but Joel accidentally wrote that it was an example of Python code. No biggie.

And I also wish I could delete/edit that comment because I meant to write “Dear” instead of “Dead”. Oh, the irony!

0 votes

Joel Lee

Well, that’s embarrassing. Thanks for catching that!

5 votes

Michael Vise

I love so much about open source software. It is like seeing democracy!

0 votes

dragonmouth

“It is like seeing democracy!”

Democracy, like beauty, is in the eye of the beholder. Where you see democracy, Steve Balmer and Microsoft see communism.

0 votes

Kirby

You forgot to mention Apple on that list..

0 votes

dragonmouth

Fruitco has not come out and officially label Linux as “a communist plot”. It would be rather ironic if they did since O/S X is based on BSD.

0 votes

dragonmouth

“It is like seeing democracy!”

Democracy, like beauty, is in the eye of the beholder. Where you see democracy, Steve Balmer and Microsoft see communism.

5 votes

Gregori Gualdron

Open source is what has made google the huge company it’s now. They understood the goal of open source fromthe begining, and now we can see Chrome is almost perfect, Android is getting perfect with every single update (while other closed source competition are decaying).
The same is happening with linux, which is getting better each day, and is one of the most stable OS we have right now.

That all is thanks to the great effort of many eyes making it perfect, instead of a closed group of developers.

0 votes

Joel Lee

I fully support open source software but I think it would be a mistake to completely reject proprietary software. There are successful closed-source projects that have done extremely well. It all depends on the situation and what you’re trying to accomplish as a developer. :)

0 votes

Achraf Almouloudi

Sorry, but I really see no other reason to close the software code other want to get profit from selling it and making sure it’s the only “flavor” of it in the market.

5 votes

tienslebien

Hi,
Some corrections :
* The source code shown is written in perl, not python
* perl and python aren’t compiled they are interpreted
* Open source focuses on code quality, if you want to talk about phlilosophy, you should write about free software.

0 votes

Daniel Escasa

Furthermore, the opposite of open source is not “closed”, but “proprietary”. At least the graphic got that right.

0 votes

Joel Lee

Technically, wouldn’t proprietary be the opposite of free software?

0 votes

Joel Lee

You are technically correct on all accounts. However, the topic of open source as a philosophy is pretty fuzzy and I believe that it can be seen as a philosophy.

0 votes

Edferda

Hahaha I got little bit scared when I saw the picture and you mentioned it was python. I am currently learning python and I couldn’t understand that snippet of code, I thought I hadn’t learned nothing.

0 votes

Joel Lee

Haha, yes. That’s Perl, not Python!

0 votes

Edferda

Hahaha I got little bit scared when I saw the picture and you mentioned it was python. I am currently learning python and I couldn’t understand that snippet of code, I thought I hadn’t learned nothing.

0 votes

Adam Campbell

Good explanation, thanks

0 votes

Keith Swartz

Already knew about Open Source, BUT not this much. Thank you for taking the time to put this article together for the benefit of us ‘novice’ open source users.

0 votes

Lee

One article I’d like to see is how to get started looking at and/or contributing to an open source project.

I’ve downloaded the source for a few projects, but it’s so daunting and I was never really sure where to start.

0 votes

Joel Lee

That’s a little beyond my expertise, but you may find some success by asking over at MUO Answers!

0 votes

Mihovil Pletikos

there is a problem…. chrome isn’t really open source…. yes there is a code for google browser that is basis for chrome, but it isn’t chrome… from that code is compiled chromium in linux, that is simiar but not the same

0 votes

Moez Bouhlel

i had installed ubuntu since 2 years, and i kept windows installed aside it thinking that i may need it from time to time. but, after 1 year, one time i opened win for some reason but it didn’t open just BSOD every time i opened it, so i deleted it. since then, i didn’t install win anymore and i released that i realy didn’t needed it the whole year since i installed ubuntu, but just i was not sure that ubuntu had all the sol/apps i needs