Hva er åpen kildekode-programvare?
Open Source viser til minst to ting. For det første er det et varemerke for Open Source Initiative®, og en lisens som Open Source Initiative® gir Open Source Software (OSS) som oppfyller visse kriterier, kalt Open Source Definition . Det er imidlertid andre ideer om åpen kildekode-programvare som ikke holder de samme standardene og tilbyr åpen kildekode under forskjellige typer lisenser. En ting som all open source-programvare har felles, er tilgjengeligheten for brukeren av kildekoden, noe som betyr at brukeren kan se nøyaktig hvordan applikasjonen eller programmet ble kodet og ofte har lov til å endre den. Avhengig av hvilken lisens den har, kan brukere kanskje endre og distribuere åpen kildekode-programvare.
Uansett hvilken type lisens det kommer med, er open source-programvare et motstykke til proprietær kommersiell programvare. Eiendomsmessig kommersiell programvare er basert på at et selskap utvikler og eier kildekoden. Produktlisensen tillater brukeren å bruke produktet slik det er laget av det kommersielle foretaket. I noen tilfeller er brukere tillatt og / eller oppfordres til å lage plugin-moduler eller tilleggsprogrammer for å forbedre proprietær kommersiell programvare, men det er grenser for hva de har lov til å gjøre. Dette for å beskytte programvareutviklerens investering.
Det er flere mål bak open source-programvarebevegelsen. En tanke er at separasjonen av programvareutvikling fra profittmotivet vil oppmuntre utviklere til å gjøre det som er best for programvaren og brukerne, noe som fører til produkter som har økt brukervennlighet og færre feil. Det antas også at fagfellevurdering uten begrensninger for en kommersiell utgivelsesdato, vil bidra til programvare som fortsetter å oppgraderes kontinuerlig, i stedet for å ha nøye tidsbestemte større utgivelser som ikke forekommer veldig ofte, og lar brukere ha buggy programvare i mellom. En annen vurdering er at ved å åpne koden, vil et stort antall utviklere, som hver og en kan ha tanker om forbedring av programvaren, bringe sine spesielle ferdigheter og innsikt, så vel som sin tid, for å bidra til prosessen og fremskynde utviklingen og ta den i mange retninger, utvide programvarens omfang.