Öppen källkod är gratis
Ja och nej. Öppen källkod kan laddas ner gratis, men tjänster som hosting, support, drift etc. måste köpas från en leverantör (eller så måste du göra det själv). Underhåll och anpassning av kod kostar mantimmar i den egna organisationen eller externt. Om du vill bidra till att säkerställa ett hållbart projekt är det bra att stödja projekt med öppen källkod ekonomiskt. Så det finns kostnader för öppen källkod eftersom digitalisering är mer än en statisk kodbas.
Öppen källkod är ohållbart
– För att man som företag inte kan tjäna pengar på öppen källkod.
Nej. Det finns flera sätt att skapa ett företag med öppen källkod, till exempel hosting, underhåll, utveckling och support. Öppen källkod bidrar till att stimulera konkurrensen mellan IT-leverantörer, som kan konkurrera med sin utvecklingsförmåga och förståelse för teknik.
Öppen källkod är utan kontroll
– Vem som helst kan trycka in koden (ändringarna) som de vill.
Nej. En open source-lösning har en (eller flera) förvaltare (”projektledare”) som tittar på nya förslag på ändringar eller tillägg i koden och väljer ut efter vad som är bäst för kodbasen och dess vision. Hos Sambruk leds förvaltningsarbetet av en Förvaltningsledare och vi arbetar utifrån vår Förvaltningsmodell där samverkansformerna finns dokumenterade. För att alla parter som är involverade i förvaltningen av ett objekt ska ha möjlighet att påverka och besluta har vi etablerade former för hur beslut tas och hur utveckling genomförs.
Är inte mogen programvara
Ja och nej. Linux (operativsystem), Drupal (webbplatser) och OpenSSL (en uppsättning krypteringsverktyg) är exempel på mogna och välstrukturerade projekt med öppen källkod. Om ett open source-projekt inte är moget kan det bero på kvaliteten på organisationen och/eller finansieringen, eller att det helt enkelt inte finns det behov som lösningen kommer att adressera. Som med all annan programvara måste du bedöma grunden bakom själva lösningarna.
Öppen källkod är inte för offentliga myndigheter
Jo det är det. Organisationen Free Software Foundation Europe (FSFE) har drivit en kampanj som heter Public Money Public Code, där de bland annat argumenterade för att mjukvara som är gjord av offentliga medel ska vara öppen så att alla kan titta på koden.
Detta skapar transparens i den offentliga sektorn och säkerställer i sin tur att en myndighet kan välja mellan flera leverantörer eller byta längs vägen. Det är så du kan stimulera konkurrensen och se till att medborgarna får det bästa och mest för sina skattepengar. Och det innebär också att det är möjligt för företag och privatpersoner att upptäcka säkerhetshål och på så sätt stärka säkerheten i koden. Ett exempel är Italiens ”Open by Default”-princip för den offentliga sektorn. Kolla också in Foundation for Public Code samt Tysklands Sovereign Tech Fund.
Brist på stöd
– Det finns ingen garanti för support eller service från en leverantör.
Det är sant att det inte finns någon direkt stödkanal i första hand, eftersom programvara med öppen källkod utvecklas av en frivillig gemenskap. Det finns ingen enskild leverantör som ansvarar för att tillhandahålla support. Support kommer dock nästan alltid att finnas tillgänglig i denna gemenskap, och för nästan alla projekt med öppen källkod är det också möjligt att ingå service- och supportavtal med en leverantör. Styrkan är att du kan välja leverantör och omfattningen av det stöd som behövs.
Många stora open source-projekt har också ett företag bakom sig, till exempel IBM, Red Hat, Google, Meta, Amazon och många andra som har publicerat open source-projekt som de också ser till att underhålla. Det finns också många projekt som ingår i en stiftelse, till exempel Linux Foundation, Eclipse Foundation eller Apache Foundation. Det finns därför gott om möjligheter att hitta och använda open source-projekt där det finns tillgång till gott om support och service.
Precis som med all annan programvara är det viktigt att genomföra en efterlevnadskontroll för att känna till riskerna och möjligheterna och väga dem mot organisationens egna kompetenser.
Då Sambruk engagerar sig i ett öppet källkods objekt samverkar intresserade parter om såväl förvaltning av koden och ofta även om drift och support.
Komplexiteten i underhållet
– Det kräver intern expertis för att underhålla och uppdatera programvara med öppen källkod.
Att välja att ta ansvar för att underhålla och uppdatera källkod och teknik kräver rätt kompetens. Det är dock en styrka med programvara med öppen källkod att ha detta fria val. Du kan välja att hantera det själv om din organisation har den kompetens som krävs. Alternativt kan du välja att köpa tjänster från en extern leverantör eller kombinera båda. Du har alltså stor frihet, och det är här komplexiteten uppstår – plötsligt måste du förhålla dig till det fria valet.
För de produkter med öppen källkod som finns inom Sambruk ser vi till att det finns möjlighet att köpa tjänster från minst en leverantör. Samtidigt etablerar vi ett kunskapscommunity som ser till att ni delar engagemanget och därmed också varandras kompetens.
Sårbarheter
– Öppen kod kan utnyttjas av illvilliga aktörer om den inte underhålls på rätt sätt.
Ja, både öppen källkod och stängd källkod kan potentiellt utnyttjas av skadliga aktörer om de inte underhålls på rätt sätt. I all källkod som inte underhålls på rätt sätt kommer det att vara möjligt att hitta och utnyttja sårbarheter, och här kommer vissa att tycka att det är lättare när källkoden är fritt tillgänglig. Men det betyder inte att öppen källkod är mer osäker än sluten källkod.
Faktum är att öppen källkod kan vara säkrare i många fall. Just för att koden är öppen för alla kan den granskas och förbättras av en global gemenskap av utvecklare. Detta kan leda till snabbare identifiering och lösning av säkerhetsproblem jämfört med sluten källkod som endast kan granskas av ett begränsat antal personer. Det är också välkänt att utvecklare i det öppna är mer noggranna än utvecklare som skriver kod som ingen kan läsa.
Viktigast av allt, oavsett om programvaran är öppen källkod eller sluten källkod, måste den underhållas på rätt sätt. Detta inkluderar regelbundna uppdateringar och korrigeringar för att åtgärda eventuella säkerhetsproblem. Om detta inte händer kan båda typerna av programvara vara sårbara för attacker. Återigen finns det en större transparens kring öppen källkod. Här har du faktiskt möjlighet att kontrollera om en källkod hålls uppdaterad och av vem den hålls uppdaterad.
”Säkerhet genom dunkel” har aldrig varit en erkänd säkerhetsmetod – det vill säga något är inte säkert bara för att det är dolt, och något är inte osäkert bara för att det är öppet.
Fragmentering
– Det finns en risk för olika versioner och inkompatibilitet mellan komponenter med öppen källkod.
Ja, det finns en potentiell risk för fragmentering i projekt med öppen källkod. Eftersom öppen källkod är fritt tillgänglig kan alla utvecklare ta koden och göra sin egen version av programvaran. Detta kan leda till att olika versioner av programvaran är inkompatibla med varandra, även känt som ”forking”. Forking kan vara en styrka, då det kan leda till innovation och anpassning, men det kan såklart också skapa utmaningar med kompatibilitet och standardisering.
Det är därför viktigt att ha en bra projektledning och en stark gemenskap kring öppen källkodsprojekt för att minimera risken för olämplig forking. De seriösa och etablerade open source-projekten har regler och procedurer för bidrag för att säkerställa att alla förändringar ligger i linje med projektets övergripande inriktning och mål. Inom Sambruk arbetar vi för att säkerställa detta.
Att forka till olika versioner kommer bara att vara ett problem om du har ett projekt utan en gemensam riktning och ett primärt utvecklingsspår. Om du har kontroll över det primära projektet kan det i princip förgrena sig så mycket som behövs, utan att det har en negativ inverkan på huvudprojektet.
Längre implementeringstid
– Programvara med öppen källkod kan ta längre tid att anpassa och implementera än kommersiella lösningar.
Det är en vanlig missuppfattning att implementering av programvara med öppen källkod alltid tar längre tid än kommersiella lösningar. Tidsramen för implementeringen kan variera mycket beroende på flera faktorer, bland annat komplexiteten i det specifika projektet, tillgången till nödvändig expertis och support samt omfattningen av nödvändiga anpassningar till det specifika användningsfallet. I vissa fall kan programvara med öppen källkod vara snabbare och enklare att implementera eftersom den är mer flexibel och kan anpassas mer exakt för att passa användarens behov. I vissa fall kan det dock behövas mer tid för anpassning och implementering om omfattande anpassning krävs, eller om tillgången till support och expertis är begränsad. Samma sak kan och kommer att gälla för standardiserad kommersiellt utvecklad programvara.
I grund och botten är all programvara standardiserad för specifika behov och kommer därför att kräva anpassning av en eller annan grad, oavsett om det är öppen källkod eller proprietär. Missförståndet uppstår med största sannolikhet eftersom du med öppen källkod har en större frihet och flexibilitet i förhållande till anpassning, och därför tenderar att göra detta snarare än att anpassa dina affärsrutiner.
I Sambruk fokuserar vi på att lösningarna ska vara generiska och baserade på gemensamma behov. Detta skapar också gemensamma lösningar.
Begränsad funktionalitet
– Öppen källkod kan sakna några av de avancerade funktioner som finns i kommersiella lösningar.
Det är en missuppfattning att programvara med öppen källkod har begränsad funktionalitet jämfört med kommersiella lösningar. Faktum är att många program och system med öppen källkod är otroligt kraftfulla och fulla av avancerade funktioner. När det gäller funktionalitet beror det på den specifika mjukvaran och inte om det är öppen källkod eller inte, därför är det viktigt att utvärdera programvaran utifrån dina specifika behov.
Det är värt att notera att eftersom programvara med öppen källkod är öppen för alla, finns det en enorm kollektiv intelligens för att förbättra och förfina dessa verktyg. Detta kan ofta resultera i en snabbare implementering av nya funktioner och förbättringar jämfört med kommersiella lösningar.
Slutligen ger programvara med öppen källkod dig friheten att anpassa och utöka programvaran efter dina behov. Om det finns en funktion du behöver som inte redan finns där kan du (eller en kunnig programmerare) lägga till den. Detta är helt enkelt inte ett alternativ med de flesta kommersiella produkter.
I Sambruk fokuserar vi på att utveckla programvara med robust funktionalitet som uppfyller våra medlemmars behov. Vi lyssnar på användarna och arbetar ständigt med att förbättra och utöka erbjudandena utan att kompromissa med exempelvis risken för fragmentering av projekt.
Färre garantier
– Det finns inga officiella garantier eller ansvar för fel eller haverier i programvara med öppen källkod.
Det är sant att programvara med öppen källkod inte kommer med samma garantier som kommersiell programvara. När du laddar ner och använder programvara med öppen källkod är den vanligtvis ”som den är”, utan garantier för dess funktion eller ansvar för eventuella fel eller haverier.
Det betyder dock inte att det inte finns stöd eller hjälp att få. Många open source-projekt har aktiva communities av användare och utvecklare som kan hjälpa till att lösa problem, och för de större och mer etablerade projekten finns det också möjlighet att köpa kommersiellt stöd och tjänster från professionella aktörer.
Dessutom är det viktigt att komma ihåg att etablerade projekt med öppen källkod ofta används globalt, och många människor förlitar sig på att lösningarna fungerar. Därför kommer det också att finnas hjälp att få eller hjälp att köpa.
Dessutom låter programvara med öppen källkod dig fixa buggar och förbättra programvaran själv, vilket inte är ett alternativ med de flesta kommersiella produkter.
Naturligtvis är det viktigt att vara medveten om dessa skillnader och göra en grundlig analys innan man bestämmer sig för att använda programvara med öppen källkod i ett kommersiellt sammanhang.
Problem med skalning
– Det kan vara utmanande att skala upp till mycket stora system eller organisationer.
Det är en missuppfattning att skalningsproblem bör vara specifika för programvara med öppen källkod. Huruvida programvara är skalbar har inget att göra med om den är öppen källkod eller inte. Det är i större utsträckning kopplat till programvarans arkitektur och design. Men ja, precis som alla andra typer av programvara kan det finnas utmaningar förknippade med att skala programvara med öppen källkod. Skalning kan vara en teknisk utmaning, beroende på programvarans arkitektur och design. Men det är viktigt att notera att många lösningar med öppen källkod är utformade för att vara mycket skalbara och används i mycket stora system och organisationer.
Utmaningen kan också vara organisatorisk, eftersom implementeringen i större skala kräver samordning, kompetensutveckling och eventuellt kulturella förändringar. Det kan vara nödvändigt att ha tillgång till lämplig teknisk expertis, antingen internt eller genom externa leverantörer, för att säkerställa en framgångsrik implementering och drift.
I Sambruk fokuserar vi på skalning från början och arbetar tillsammans för att säkerställa att lösningarna kan hantera kraven på skalning i stor skala.
Komplex licenshantering
– Vissa licenser för öppen källkod kan vara komplexa och svåra att förstå och följa.
Ja, vissa licenser för öppen källkod kan vara komplexa och kräva noggrann hantering för att säkerställa att alla villkor uppfylls. Det är dock viktigt att notera att de allra flesta projekt med öppen källkod använder standardlicenser som GPL, MIT eller Apache, som är välkända och allmänt förstådda inom mjukvaruindustrin. Dessutom finns det verktyg och resurser tillgängliga för att hantera licenshantering. Naturligtvis är det viktigt att förstå licensvillkoren innan du integrerar programvara med öppen källkod i dina projekt, precis som du skulle göra med kommersiell programvara.
I Sambruk har vi tillgång till kunskap om öppen källkodslicenser och kan hjälpa till att skapa en överblick och förståelse för de licenser som ingår i ett programpaket.
Det är också viktigt att notera att praktiskt taget all programvara innehåller projekt med öppen källkod. Även kommersiell programvara använder sig av öppen källkod, och här har du inte insyn i vilka licenser leverantören har inbäddade i sin programvara, såvida inte leverantören kan tillhandahålla en så kallad Software Bill Of Materials (SBOM).
Beroende av samhället
– Utveckling och underhåll är beroende av samhällets engagemang och resurser.
Ja, det är sant att utveckling och underhåll av programvara med öppen källkod beror på samhällets engagemang och resurser. Detta är både en styrka och en utmaning med öppen källkod. Detta är en styrka eftersom det innebär att många olika personer och organisationer bidrar till utvecklingen och förbättringen av programvaran. Detta är en utmaning eftersom det kan innebära att om samhället förlorar intresse eller resurser för att upprätthålla ett projekt kan det bli övergivet eller föråldrat. Många projekt med öppen källkod har dock robusta, aktiva gemenskaper och många olika bidragsgivare, vilket bidrar till att säkerställa deras fortsatta hälsa och framgång. Det är också det faktum att en programvara har öppen källkod, vilket bidrar till att säkerställa att bidragsgivare kan ersättas, och bristande intresse från en bidragsgivare kan leda till ett blomstrande intresse från nästa. Omvänt finns samma risk i kommersiell och sluten programvara. Om leverantören upplever att kundbasen (intresset) försvinner kommer de med största sannolikhet att sluta prioritera utveckling och på sikt fasa ut produkten. Här kommer det inte att vara möjligt för en ny bidragsgivare att kliva in, eftersom det är proprietär programvara.
Brist på professionell dokumentation
– Dokumentationen kan vara ofullständig eller ostrukturerad jämfört med kommersiella produkter.
Ja, det kan vara sant att vissa projekt med öppen källkod inte har samma nivå av professionell dokumentation som kommersiella produkter. Kvaliteten och kvantiteten på dokumentationen kan variera mycket från projekt till projekt. Detta gäller oavsett om det är öppen källkod eller proprietär och kommersiell programvara. Marknadens efterfrågan dikterar kvantiteten och kvaliteten på dokumentationen. Det är viktigt att notera att många projekt med öppen källkod har omfattande och detaljerad dokumentation, ofta mycket bättre än vad du annars ser. Dessutom bidrar den öppna och samarbetsinriktade karaktären hos öppen källkodsgemenskaper till att säkerställa att luckor eller fel i dokumentationen ofta identifieras och korrigeras snabbt.