Open source software is software waarvan de broncode openbaar is. De broncode is de leesbare tekst die programmeurs schrijven en waaruit een programma wordt gemaakt. Bij open source mag iedereen die code bekijken, aanpassen en verder verspreiden, binnen de voorwaarden van de licentie. Bij gesloten software, ook wel propriëtaire software genoemd, houdt de maker de broncode voor zichzelf en krijg je alleen het kant-en-klare programma.
Hoe het is ontstaan
In 1983 startte Richard Stallman het GNU-project, met als doel een volledig vrij besturingssysteem. Hij richtte later de Free Software Foundation op en sprak van vrije software: software die je vrij mag gebruiken, bestuderen, aanpassen en delen. Het woord “vrij” slaat daarbij op vrijheid, niet op de prijs. In 1998 werd de term open source geïntroduceerd en werd het Open Source Initiative opgericht, met een meer praktische nadruk op de voordelen van openbare code. De twee stromingen overlappen grotendeels, maar verschillen in uitgangspunt.
Licenties
Een open source licentie legt vast wat je met de code mag. Grofweg zijn er twee soorten:
- Permissieve licenties, zoals MIT, BSD en Apache. Je mag de code vrijwel overal voor gebruiken, ook in gesloten software, zolang je de oorspronkelijke auteurs vermeldt.
- Copyleft-licenties, zoals de GPL. Verspreid je een aangepaste versie, dan moet die onder dezelfde licentie vallen en moet je ook de broncode beschikbaar stellen.
Open source is niet hetzelfde als gratis
Veel open source software is gratis te gebruiken, maar dat is niet het punt. Er bestaat ook gratis software waarvan de code gesloten is, zogeheten freeware. Omgekeerd mag je open source software in principe ook verkopen. Veel bedrijven verdienen geld met ondersteuning, hosting of extra functies rond open source software.
Waar je het tegenkomt
Open source is overal, vaak zonder dat je het merkt. Linux is het bekendste voorbeeld, maar ook veel browsers, kantoorpakketten, mediaspelers, webservers en programmeertalen zijn open source. Voordelen zijn dat iedereen de code kan controleren, dat software niet verdwijnt als één bedrijf stopt en dat je haar zelf kunt aanpassen. Nadelen kunnen zijn dat ondersteuning afhangt van vrijwilligers of een gemeenschap en dat sommige projecten weinig onderhoud krijgen. Wil je zelf bijdragen, dan is programmeren een goed begin, al zijn vertalingen, documentatie en foutmeldingen ook waardevol.