Tech stuff explained colorfully and simply.

What the fuck is Open Source Software?

Say you speak English but you come across some Spanish sentences. You can recognize the letters that make up that language and you know that language is used to communicate to a specific group of people, but you maybe don’t know more than that. You recognize the letters, but you can’t read the language. Programming languages are like that. They’re made up of reasonably recognizable letters, numbers and symbols that help communicate from one party to another. In this case, the second party happens to be a computer.

The collection of programming language “sentences” is called source code. Source code is the unique grouping of instructions that help create a product. Good source code makes an awesome Mercedes. Bad source code makes a piece-of-shit LeBaron convertible. Companies may protect their source code, or keep it ‘closed’, as a competitive advantage.

Open source software is software that is made where the source code is free and open for anyone to take, read and use. How the fuck do they make money, then? Well, that’s a bit more tricky. Most often, open source software itself doesn’t make money for the individuals or companies that create it. (Or maybe through donations… but probably not that likely, because people can be cheap bastards) They’ve created this as a labor of love, because programming is a passion, or they’ve been given things for free, and they want to give back.

Sometimes programmers who use primarily open source tools say they do open source programming. That can mean that they give away their software for free or that they keep it protected. The term refers to the building blocks of the program, not always the end result.

Companies can make money with open source software by offering services for a fee. You can get the software for free, but they may provide paid support or paid configuration offerings. For example, a company who programs in open source PHP can’t and won’t charge for access to PHP, but they will charge you to create a custom combination of the features of PHP that make up a unique configuration: your program.