Skip to content

An Open Source Overview

steveklabnik edited this page Sep 13, 2010 · 3 revisions

New to this whole Open Source thing? Here’s the lowdown on how all of this stuff works.

What does “Open Source” mean?

When people write software, they release it with a license, and that lets you know what you’re allowed to do with the software. Different people have different ideas about what others should and should not be allowed to do with those creations, so we got lawyers involved, and they wrote licenses. If you check out a LICENSE file like the one with Hackety, it’s full of all kinds of legal mumbo jumbo! But what an ‘open source license’ means is this:

  • You can give this software away if you’d like
  • I’m giving you the source code for this program.
  • You can change it if you’d like.

There is a big, huge list of details here, but that’s the gist of it. Hackety Hack is distributed with the MIT license. This is an open source license. Hack away!

It’s more than just a license, though!

While technically any software released under an Open Source license is an “open source project,” there’s also some social factors that play into it as well:

  • The original author is called the “Author.”
  • If the Author is no longer involved with the project, the person who is is called the “Maintainer.”
  • Anyone who’s helped out is called a “Contributor.”
  • The contributors and the author/maintainer communicate on the internet somehow, often via a mailing list.
  • There’s a web site that explains the project, explains who everyone is, has documentation, and explains how to get the source code and how you can get involved.
  • If a contributor has made an improvement they’d like to be included in the main version, they submit their “patch” to the maintainer, and they decide to include it or not.

All of these different things play a really big, important role in how a project works.

Clone this wiki locally