Underlying every piece of software you use is source code that issues the commands and handles the data that allow the software to do what it does. The question of who should have the right to look at, alter, or redistribute that source code has long been one of fundamental ideological divides within the world of computing.
Proponents of open source software, as the name implies, come down on the side of openness; they feel that people should have the right to access the source code of the software they use. As we’ll see, though, in practice there’s a lot of variety that falls under that label. Various kinds of open source software exist in just about every niche you can think of—in fact, open source dominates many of them.