Hon har laddat ner en miljon ändringar i källkoden till Android. Hennes analys visar en sak: det är bäst att jobba på Google om man vill få gehör för sina ändringsförslag. Sextio procent av ändringarna hade gjorts av Google.

Det är Alma Orucevic-Alagic som undersökt öppen källkod i sin licentiatavhandling vid Lunds universitet. Hennes slutsats är att öppen källkod är ett hållbart alternativ till företagsspecifika program. Företag har lärt sig att dra nytta av de frivilliga insatserna inom öppen källkod. Men programutvecklingen sker på företagens villkor.

Visionen om en grupp frivilliga entusiaster som samarbetar för det allmännas bästa, som i en demokratisk folkrörelse, är vacker. Men verkligheten är mer krass. Ett fåtal centralt placerade utvecklare har sista ordet.

Det påminner om den mångåriga kritiken mot Wikipedia, där etablerade grindvakter sägs göra det svårt för nya frivilliga medarbetare att få sina ändringar och tillägg godkända.

Delvis är det, kan man säga, en definitionssak.

En programmerare kan ladda ner källkoden till Linux eller Android och förändra den till oigenkännelighet. Det är tillåtet. Frågan är när den nya skapelsen upphör att vara Linux eller Android och blir något annat. Vill man bidra till att förbättra Linux är det troligen ingen idé att göra om Linux från grunden. Det nya ska helst fungera ihop med det gamla. Det nya bör också fungera ihop med det nya som andra utvecklar. Det krävs överblick och erfarenhet för att klara den balansgången. Och det leder nästan oundvikligen till att makten hamnar hos en liten grupp i centrum.

Alma Orucevic-Alagic har analyserat kopplingarna mellan de personer som bidrar till öppen källkod. Hon skiljer mellan en kärngrupp, ”core committers”, externa bidragsgivare, ”external committers” och en blandad grupp. Hennes diagram (sociogram) över förbindelserna är talande.

De som tillhör kärngruppen av bidragsgivare till öppen källkod ingår i centraliserade nätverk. Sociogrammen liknar stjärnor med bidragsgivaren i mitten.

De externa bidragsgivarnas nätverk är mer spretiga.

Kärngruppen samverkar främst inom den egna gruppen. De externa utvecklarna delar sina gracer mellan flera gemenskaper.

Och när det gäller Android så finns alltså kärngruppen på Google.

För Google handlar det inte om att utveckla bästa tänkbara operativsystem för smarta mobiler – även om Google inte har något emot att det blir så. Det viktiga för Google är att tillhandahålla ett pålitligt och standardiserat operativsystem för de mobiltillverkare som använder Android. Android måste också bete sig stabilt och förutsägbart för de tusentals utvecklare som skriver program för Android.

Dessutom kommer en stor del av bidragen och förbättringarna av källkoden från andra företag. Inte sällan handlar det om kod som behövs för att företagets egna program ska fungera bra i Android. Det gör det ännu mer betydelsefullt att Android förblir sig likt.

Ett uttalat mål för öppen källkod, skriver Alma Orucevic-Alagic, har varit att förhindra att något företag får möjlighet att låsa fast källkoden. Men om det inte redan har skett så är det nära. I själva verket har många framgångsrika projekt inom öppen källkod startats av företag. Det uppenbara undantaget är förstås Linux, som bildade mönstret.

Den framgångsrika webbläsaren Firefox, skriven i öppen källkod, kommer från Mozillaprojektet. Mozillaprojektet startades 1998 av Netscape när det blev uppenbart att dess webbläsare Navigator skulle förlora kampen mot Microsofts Internet Explorer. Netscape är borta, men Firefox blev en succé.

Eclipse, en plattform för systemutveckling, är också skriven i öppen källkod. Det var IBM som utvecklade Eclipse och som 2001 släppte det som öppen källkod. I dag står många storföretag bakom Eclipsestiftelsen.

Android startades av Google.

Apachestiftelsen utvecklar och distribuerar ett stort antal program med öppen källkod. En stor del av dem är skänkta av andra företag, vanligtvis för att företagen inte längre tjänade pengar på dem.

Alma Orucevic-Alagic ser öppen källkod som ett sätt för företagen att minska kostnaderna. Program i öppen källkod används som färdigskrivna komponenter i projekten. Det ger företagens utvecklare möjlighet att koncentrera sig på det som är specifikt för företaget. Företagen har lärt sig att samarbeta med utvecklare inom öppen källkod och nya affärsmodeller har uppstått.

Så det kanske är dags att revidera bilden av öppen källkod. Det är inte programmeraren Eric Raymonds vision av ”basaren” där oräkneliga idealistiska programmerare tillsammans skapar bra, fria program. Det är business.

Fakta

  • Grundprincipen för öppen källkod är att programmet levereras tillsammans med sin källkod. Då kan användaren studera hur programmet fungerar och eventuellt göra förbättringar. Det anses självklart att användaren får ändra i källkoden, men vad som sedan är tillåtet varierar.
  • Fri mjukvara är öppen källkod, men det är mer än så. Filosofin bakom begreppet fri mjukvara är att alla användare ska ha rätt att göra vad de vill med programmen. Köra dem, ändra dem, kopiera dem, ge bort dem, sälja dem. För att den rätten inte ska kunna avskaffas måste man, om man ger bort eller säljer fri mjukvara, kräva att mottagaren förbinder sig att också tillämpa principen om fri mjukvara i alla avseenden. Det har lett till juridiska problem med en del företagsprojekt där program med fri mjukvara har försetts med tillägg som inte är fri mjukvara, vilket inte är tillåtet.

Alma Orecuvic-Alagics licentiatavhandling ”Advancing software development efficiency in an open source software context” kan laddas ner som pdf från cswe.se/alagic.