Hjemmeside » hvordan » Hva er Open Source-programvare, og hvorfor betyr det?

    Hva er Open Source-programvare, og hvorfor betyr det?

    Geeks beskriver ofte programmer som "åpen kildekode" eller "fri programvare." Hvis du lurer på nøyaktig hva disse begrepene betyr og hvorfor de betyr noe, les videre. (Nei, "fri programvare" betyr ikke bare at du kan laste den ned gratis.)

    Enten et program er åpen kildekode eller ikke, spiller ikke bare for utviklere, det gjelder i siste instans også for brukerne. Open-source programvarelisenser gir brukerne friheter de ikke ellers ville ha.

    Bilde Kreditt: Quinn Dombrowski på Flickr

    Definisjonen av åpen kildekode

    Hvis et program er åpen kildekode, er kildekoden fritt tilgjengelig for brukerne. Brukerne - og noen andre - har muligheten til å ta denne kildekoden, endre den og distribuere sine egne versjoner av programmet. Brukerne har også muligheten til å distribuere så mange kopier av det opprinnelige programmet som de vil. Alle kan bruke programmet til noe formål; Det er ingen lisensavgifter eller andre restriksjoner på programvaren. OSI har en mer detaljert definisjon av "åpen kildekode" på sin nettside.

    Ubuntu Linux er for eksempel et operativsystem med åpen kildekode. Du kan laste ned Ubuntu, lage så mange kopier som du vil, og gi dem til vennene dine. Du kan installere Ubuntu på ubegrenset antall datamaskiner. Du kan lage remixer av Ubuntu installasjonsplaten og distribuere dem. Hvis du var spesielt motivert, kan du laste ned kildekoden for et program i Ubuntu og endre det, og skape din egen tilpassede versjon av dette programmet - eller av Ubuntu selv. Open-source-lisenser tillater alle at du gjør dette, mens lukkede lisenser plasserer begrensninger på deg.

    Det motsatte av open source-programvare er programvare med lukket kilde, som har en lisens som begrenser brukere og holder kildekoden fra dem.

    Firefox, Chrome, OpenOffice, Linux og Android er noen populære eksempler på åpen programvare, mens Microsoft Windows er trolig den mest populære delen av lukket programvare der ute.

    Open Source vs Free Software

    Open source-applikasjoner er generelt fritt tilgjengelige - selv om det ikke er noe som hindrer utvikleren fra å lade for kopier av programvaren hvis de tillater omfordeling av applikasjonen og dens kildekode etterpå.

    Men det er ikke det som "fri programvare" refererer til. Den «gratis» i fri programvare betyr "fri som i frihet", ikke "fri som i øl." Den gratis programvareleiren, ledet av Richard Stallman og Free Software Foundation, fokuserer på etikk og moral for å bruke programvare som kan være kontrollert og modifisert av brukeren. Med andre ord fokuserer den frie programvaren på brukerfriheter.

    Richard Stallman. Bilde av Fripog på Flickr.

    Open-source programvarebevegelsen ble opprettet for å fokusere på mer pragmatiske grunner for å velge denne typen programvare. Open-source-advokater ønsket å fokusere på de praktiske fordelene ved å bruke åpen programvare som ville appellere mer til bedrifter, i stedet for etikk og moral.

    I siste instans utvikler både åpen kildekode og fri programvare fortalere samme type programvare, men de er uenige om meldingene.

    Typer av lisenser

    Det er mange forskjellige lisenser brukt av open source-prosjekter, avhengig av hvilke utviklere foretrekker for deres program.

    GPL, eller GNU General Public License, brukes mye av mange open source-prosjekter, for eksempel Linux. I tillegg til alle ovennevnte definisjoner av åpen kildekode, spesifiserer vilkårene i GPL at hvis noen endrer et åpen kildekodeprogram og distribuerer et derivatarbeid, må de også distribuere kildekoden for deres derivatarbeid. Med andre ord kan ingen ta åpen kildekode og lage et lukket kildeprogram fra det - de må frigjøre endringene tilbake til samfunnet. Microsoft refererte til GPL som "viral" av denne grunn, da det tvinger programmer som inneholder GPL-kode for å frigjøre sin egen kildekode. Selvfølgelig kan et program utviklere velge å ikke bruke GPL-kode hvis dette er et problem.

    Noen andre lisenser, for eksempel BSD-lisensen, plasserer mindre restriksjoner på utviklere. Hvis et program er lisensiert under BSD-lisensen, kan alle innlemme programkilden til et annet program. De trenger ikke å gi sine endringer tilbake til samfunnet. Noen ser at dette blir enda mer «gratis» enn GPL-lisensen, da det gir utviklere friheten til å innlemme koden i sine egne lukkede programmer, mens noen ser det som mindre "gratis" fordi det tar rettigheter vekk fra sluttbrukerne av det avledede programmet.

    Fordeler for brukere

    Dette er ikke alle tørre, ubetydelige ting som bare er viktige for utviklere. Den mest åpenbare fordelen med åpen kildekode-programvare er at den kan fås gratis. Eksemplet på Ubuntu Linux ovenfor gjør det klart - i motsetning til Windows, kan du installere eller distribuere så mange kopier av Ubuntu som du vil, uten begrensninger. Dette kan være spesielt nyttige servere - hvis du setter opp en server, kan du bare installere Linux på den. Hvis du setter opp en virtualisert klynge av servere, kan du enkelt duplisere en enkelt Ubuntu-server. Du trenger ikke å bekymre deg for lisensiering og hvor mange forekomster av Linux du har lov til å kjøre.

    Et åpen kildekodeprogram er også mer fleksibelt. For eksempel, Windows 8s nye grensesnitt skuffet mange brukere med lang tid desktop Windows. Fordi Windows er lukket kilde, kan ingen Windows-bruker ta Windows 7-grensesnittet, endre det, og få det til å fungere skikkelig på Windows 8. (Noen Windows-brukere prøver, men dette er en omhyggelig prosess med omvendt engineering og modifisering av binære filer. )

    Når et Linux-skrivebord som Ubuntu introduserer et nytt skrivebordsgrensesnitt som enkelte brukere ikke er fans av, har brukerne flere alternativer. For eksempel, da GNOME 3 ble utgitt, ble mange Linux-skrivebordsbrukere også slått av. Noen tok koden til den gamle versjonen, GNOME 2, og endret den slik at den kjører på de nyeste Linux-distribusjonene - dette er MATE. Noen tok koden til GNOME 3 og endret den slik at den fungerte på en måte de foretrukket - dette er kanel. Noen brukere har bare byttet til eksisterende alternative stasjonære datamaskiner. Hvis Windows var åpen kildekode, ville Windows 8-brukere ha mer valg og fleksibilitet. Bare ta en titt på CyanogenMod, en populær, fellesskapsdrevet distribusjon av Android som legger til funksjoner og støtte for nye enheter.

    Open-source-programvare tillater også utviklere å "stå på skuldrene til gigantene" og lage sin egen programvare. Vitne Android og Chrome OS, som er operativsystemer bygget på Linux og annen åpen kildekode programvare. Kjernen til Apples OS X - og dermed iOS - ble bygget på åpen kildekode også. Valve arbeider rasende med å portere sin Steam gaming plattform til Linux, da dette vil tillate dem å lage sin egen maskinvare og kontrollere sin egen skjebne på en måte som ikke er mulig på Microsofts Windows.


    Dette er ikke en uttømmende beskrivelse - hele bøker er skrevet om dette emnet - men du bør nå få en bedre ide om hva åpen kildekode programvare egentlig er og hvorfor det er nyttig for deg.