Definition och exempel på programvara med öppen källkod

click fraud protection

Programvara med öppen källkod (OSS) är all datorprogramvara som distribueras med sin källkod tillgänglig för modifiering. Det betyder att det vanligtvis innehåller en licens för programmerare att ändra programvaran på vilket sätt de väljer: De kan fixa buggar, förbättra funktioner eller anpassa programvaran för att passa deras egna behov.

Kriterier för öppen källkod

Open Source Initiative (OSI), en global ideell organisation som grundades 1998, fungerar som en ledande auktoritet på OSS. Dess definition av mjukvara med öppen källkod inkluderar tio kriterier, relaterade till frågor som:

  • Omdistribution av programvara
  • Källkods tillgänglighet och integritet
  • Distribution och egenskaper för licenser
  • Härledda verk
  • Antidiskriminering

Licenser

Olika licenser tillåter programmerare att modifiera programvaran med olika villkor. Enligt Black Duck KnowledgeBase, en databas med cirka två miljoner open source-projekt, är fem av de mest populära licenserna:

  1. MIT-licens
  2. GNU General Public License (GPL) 2.0
  3. Apache-licens 2.0
  4. GNU General Public License (GPL) 3.0
  5. BSD License 2.0 (3-klausul, ny eller reviderad)

När du ändrar källkoden kräver OSS inkludering av det du ändrade samt dina metoder. Programvaran som skapats efter kodändringar kan eller kanske inte göras tillgänglig gratis.

Kommersiell programvara

Kommersiellt tillgänglig programvara, även kommersiell eller proprietär programvara, ger inte tillgång till sin källkod eftersom programvaran är någon annans immateriella rättigheter. Som ett resultat betalar användarna ofta för det. OSS, å andra sidan, är ett samarbete; Programvaran är delad immateriell egendom mellan alla som har hjälpt till att utveckla eller ändra den.

Gratis mjukvara

Även om termerna ofta används omväxlande, skiljer sig OSS något från fri programvara. Båda handlar om möjligheten att ladda ner och modifiera programvara utan begränsningar eller avgifter. Men fri programvara – ett koncept som utvecklades på 1980-talet av en datavetenskaplig forskare från MIT, Richard Stallman – definieras av fyra villkor, som beskrivs av den ideella Free Software Foundation. Dessa "fyra friheter" understryker användarnas förmåga att använda och njuta av programvara som de tycker är lämplig.

Däremot placerar OSS-kriterierna, som Open Source Initiative utvecklade ett decennium senare, mer betoning på modifiering av programvara och konsekvenserna av att ändra källkod, licensiering och distribution.

De två överlappar varandra; vissa skulle säga att skillnaderna mellan OSS och fri programvara är mer filosofiska än praktiska. Ingen av dem ska dock förväxlas med gratisprogram. Freeware hänvisar vanligtvis till proprietär programvara som användare kan ladda ner utan kostnad, men vars källkod inte kan ändras.

Fördelar

Även om bristen på kostnad är en viktig fördel, har OSS flera ytterligare fördelar:

  • Dess kvalitet kan enkelt och avsevärt förbättras när dess källkod skickas runt, testas och fixas.
  • Det erbjuder en värdefull inlärningsmöjlighet för programmerare. De kan tillämpa färdigheter på de mest populära programmen som finns tillgängliga idag.
  • Det kan vara säkrare än proprietär programvara eftersom buggar identifieras och åtgärdas snabbt.
  • Eftersom det är allmänt tillgängligt och ständigt uppdateras, finns det liten chans att det kan bli otillgängligt eller snabbt föråldrat – ett viktigt plus för långsiktiga projekt.

Populära typer

Teknik med öppen källkod hjälpte till att etablera mycket av internet. Dessutom är många av de program som används varje dag baserade på öppen källkodsteknologi. Exempel: Android OS och Apples OS X är baserade på kärnan respektive Unix/BSD open source-teknologier.

Andra populära program med öppen källkod är:

  • Mozillas webbläsare Firefox
  • Thunderbird e-postklient
  • PHP skriptspråk
  • Pytonorm programmeringsspråk
  • Apache HTTP-webbserver

Utvecklare

OSS-projekt är samarbetsmöjligheter som förbättrar kompetensen och bygger kontakter på fältet. Områden som utvecklare kan arbeta med inkluderar:

Kommunikationsverktyg

E-post, meddelanden i realtid, forum och wikis hjälper utvecklare att hitta lösningar eller studsa idéer från varandra.

Distribuerade revisionskontrollsystem

När flera utvecklare på olika geografiska platser ändrar data och filer, hanterar dessa system de olika versionerna och uppdateringarna.

Buggspårare och uppgiftslistor

Dessa funktioner tillåter storskaliga projekt att övervaka problem och hålla reda på deras korrigeringar.

Test- och felsökningsverktyg

Dessa funktioner automatiserar testning under systemintegration och felsöker andra program.

Poängen

Programvara med öppen källkod är ett alternativ till proprietär programvara. Att delta i ett OSS-projekt kan vara en väg till att bygga en karriär inom mjukvaruutveckling, vilket gör att programmerare kan finslipa sina färdigheter genom att arbeta med de största mjukvaruprogrammen i världen. Facebook, Google och LinkedIn släpper alla OSS, så att utvecklare kan dela kunskap, innovativa lösningar och bidra till stabila, funktionella produkter.

Hur man skriver ett evenemangsplaneringstjänstförslag

Ditt evenemangsförslag är först och främst en återspegling av din kund. Eftersom att planera ett evenemang kräver att evenemanget anpassas för att passa din kunds behov och budget, bör ditt förslag återspegla en händelse som är personlig och unik...

Läs mer

Redovisningsbeteckningar i Kanada

Vad står CPA för? Eller CGA eller CMA? De är alla olika typer av revisorer, och du vill veta skillnaderna om du driver ett kanadensiskt litet företag. Historiskt har det funnits tre olika redovisningsbeteckningar i Kanada; CA (Chartered Accounta...

Läs mer

Hur teknik förändrar juridiska karriärer

I takt med att framstegen inom juridikteknik revolutionerar dagens juridiska landskap, har rollen som jurister utvecklats. Automatiseringen av juridiska processer har föranlett advokater, jurister, juridiska sekreterare och andra jurister för att...

Läs mer