mandag den 29. juli 2013

Hvad er open source?


Open source er et begreb, som betegner et produkt, hvor det grundlæggende design er offentligt tilgængelig.

Oprindeligt var det alene betegnelsen for en bestemt type software, men begrebet dækker efterhånden også mange andre ting, som f.eks, hardware og design. Overordnet er der tale om en måde at arbejde på, hvor værdier som ”deling”, ”samarbejde”, ”deltagelse”, ”gennemsigtighed”, ”meritokrati” og ”fællesskab” er i højsædet.

Hvad er open source software

Open souce software[1] er betegnelsen for software, hvor kildekoden[2] er tilgængelig for offentligheden, og hvor enhver har mulighed for (og ret til) at forbedre og distribuere programmet.

Kildekoden er en del af programmet som de fleste brugere aldrig ser og ikke interesserer sig for. Man kan populært sige, at kildekoden er opskriften til et program. Programmører kan til gengæld se hvordan programmet fungerer, og desuden foretage ændringer i koden.

Hvad er specielt for open source?

Alle programmer er bygget med kildekode, men mange leverandører sælger deres software uden at give kunderne mulighed for at se eller få kontrol over kildekoden. Leverandøren holder altså kildekoden for sig selv. Denne type software kaldes ”proprietær” eller ”closed source” fordi kildekoden er leverandørens ejendom, og leverandøren er den eneste som på lovlig vis, kan kopiere eller ændre i programkoden. Microsoft Office og Adobe Photoshop er eksempler på denne type software. For at opnå ret til at benytte proprietær software, skal brugeren erklære sig enig i betingelserne (underskrive en licenserklæring eller EULA[3]) og normalt (men ikke altid) betale for retten til at benytte programmet.

Open source software adskiller sig ved at kildekoden er gjort tilgængelig for alle. Eksempler på denne type programmer er kontorpakken LibreOffice og billedbehandlingsprogrammet GIMP. Som med proprietær software skal brugeren erklære sig enig i licensbetingelserne, men betingelserne adskille sig grundlæggende fra proprietær software. Open source licenser opfordrer nemlig til at programmet videredistribueres og deles med andre. Desuden opfordres brugeren til at bidrage til udviklingen ved f.eks. at foretage ændringer og forbedringer og levere disse forbedringer tilbage til det oprindelige produkt. Hvis brugeren udfører forbedringer, som alene er til eget brug, er der ingen forpligtelser i forhold til licensen. Hvis brugeren derimod distribuerer sine forbedringer til andre, skal det ske i overensstemmelse med den oprindelige licens. Der er forskellige open source licenser, som hver i sær har forskellige vilkår for videredistribution. F.eks. er der mange open source licenser, hvor brugeren kun må distribuere forbedringer, såfremt det sker på samme eller mindst lige så restriktive vilkår som den oprindelige kildekode blev distribueret med. Dette kaldes copyleft[4]. Organisationen Open Source Initiative har lavet en definition[5] af, hvad open source software er:
”Open source betyder ikke bare at du har ret til kildekoden og ret til at benytte programmet. Det betyder også at du har ret til at ændre koden efter dit behov, men du har ikke ret til at forhindre andre i at gøre det samme.”

Hvorfor er open source at foretrække?

Først og fremmest fordi du har kontrol over programmet. Du kan se præcist hvordan det virker, og dermed sikre dig, at programmet ikke gør noget, som du som bruger ikke ønsker det skal gøre.

En anden bevæggrund kan være, at programmet er mere sikkert, netop fordi du kan sikre dig præcist hvordan det fungerer. Desuden – fordi alle har adgang til kildekoden – viser det sig, at open source programmer ofte bliver opdateret hurtigere end proprietær software. Rationalet er, at hvis der er svagheder vil det sandsynligvis blive opdaget af en af de programmører, som kigger i koden. Det vil også være umuligt at ”skjule” fjendtlige funktioner, f.eks. spionprogrammer eller virus.

Mange som vælger at benytte open source software gør det af den grund, at de vil sikre sig imod at en enkelt leverandør pludseligt kan afskære dig fra at benytte programmet, eller måske sætte prisen for programmet op. Det beskytter også imod konsekvenserne af, at leverandøren af programmet eventuelt skulle gå konkurs. Hvis det skulle ske, kan brugerne blot – med kildekoden i hånden – bede en anden leverandør om at tage over.

Det er ikke alle brugere, som er kvalificerede til selv at forbedre programmet, men det kan ske via 3. parts leverandører, som har specialiseret sig i at forbedre open source programmer på vegne af sine kunder.

Er open source software gratis?

Normalt er open source software gratis, idet de fleste open source projekter gratis tilbyder installationsfiler. Men grundlæggende er det kun kildekoden der er gratis, og i visse specielle situationer, kan der være en udgift med at få kildekoden konverteret (kompileret[6]) til et program.
Som privatperson vil de fleste opleve at det er gratis at benytte open source software.

Men hvis en virksomhed, organisation eller offentlig myndighed ønsker at benytte open source software, opstår der et ”problem” i forhold til ansvaret. Når en kunde køber et stykke proprietært software, indgår virksomheden en kontrakt med en leverandør, og opnår derved visse rettigheder, f.eks. hvis der er fejl i programmet. Disse rettigheder du man ikke, når du bruger open source software. Du har ikke betalt for programmet og du har ikke indgået en aftale med programmøren. Derfor har du ikke krav på at få rettet evt. fejl. Dette forhold kan for nogle kunder være alvorligt, specielt hvis det er et ”kritisk” system.

Forholdet kan uden problemer løses ved at tegne en service- og supportkontrakt med en 3. parts leverandører, som har specialiseret sig i at yde denne service til sine kunder.

Kilde

Denne artikel er en oversættelse og omskrivning af artiklen ”What is open source”[7] som er licenseret som Creative Commons.

Henvisninger

  1. Wikipedia: http://da.wikipedia.org/wiki/Open_source
  2. Wikipedia: http://da.wikipedia.org/wiki/Kildekode
  3. Wikipedia: http://da.wikipedia.org/wiki/EULA
  4. Wikipedia: http://da.wikipedia.org/wiki/Copyleft
  5. The Open Source Definition: http://opensource.org/docs/osd
  6. Wikipedia: http://da.wikipedia.org/wiki/Compiler
  7. What is open source? https://opensource.com/resources/what-open-source