Ulempene ved Open Source Software
CyanogenMod er død, drept av morselskapet Cyanogen. Samfunnet forsøker å plukke opp brikkene og opprette et nytt prosjekt, LineageOS, basert på koden. Men det er en påminnelse om at open source-programvare ikke er alt solskinn, regnbuer og stabilitet: det kan faktisk være veldig rotete.
Selv om et prosjekt er åpen kildekode, er det ikke nødvendigvis selv responsivt overfor samfunnet, mye mindre en pålitelig programvare du kan stole på. Prosjekter varierer: Noen drives av en eller to utviklere som en hobby, andre samler utviklere betalt av mange massive selskaper, mens andre drives av et enkeltforeldre. Hver situasjon har sine egne problemer og drama.
Vi elsker åpen kildekode-programvare - gjør oss ikke gale - men det presenterer et visst antall utfordringer. La oss ta en titt på noen få.
Åpen kilde lider ofte forsinkelser og et glacial utviklingstrinn
Mange åpne kildeprosjekter ser ut til å lide av et sakte utviklingsfrekvens, hvor nye versjoner blir uendelig forsinket, nye funksjoner kommer sakte om noensinne, og det er vanskelig å prioritere vanskelige men viktige funksjoner.
Se bare på Ubuntu's forsøk på å lansere sin Unity 8 desktop og Mir display server, slik at den kan vise seg "konvergens". Denne nye versjonen av Linux-skrivebordet skulle være stabil for mange år siden, og er fortsatt ikke. Prosjektet har beveget seg i et istid, så mye at Canonical ble slått til slag av Microsoft, som annonserte sin egen visjon PC-drevet av smarttelefon før Windows 10 og ble levert på den. Canonical har fremdeles ikke levert sin langlatte visjon ennå. Kanskje det blir stabilt om noen få år.
Mozilla har også hatt problemer med å prioritere. De har fortsatt ikke levert multi-prosess og sandboxing funksjoner i Firefox. Disse er avgjørende for å holde nettleseren sikker, hindre krasjer fra å ta ned hele nettleseren, og bedre utnytte flere prosess-CPUer. Alle andre store nettlesere har levert disse funksjonene, inkludert den haterte Internet Explorer. Mozilla crated "Electrolysis" -prosjektet for å legge til disse funksjonene, men stoppet det i 2011 fordi det var for vanskelig. Mozilla måtte da starte den på nytt i 2013. Denne funksjonen ser ut til å ankomme i 2017, noe som virkelig er veldig sent. I mellomtiden har Mozilla bortkastet tid på å jobbe med Firefox OS, et mislykket smarttelefonoperativsystem.
Når et prosjekt bruker så mange frivillige utviklere, kan det være vanskelig å finne folk å gjøre det harde arbeidet som ikke er morsomt å gjøre.
Intern Drama begynner gafler, gafler og flere gafler
Et kildekodeprosjektets kildekode er tilgjengelig for alle som kan endre. Det er poenget! Hvis et åpen kildekodeprosjekt endres på en måte du ikke liker, kan du eller samfunnet ta den gamle kildekoden og fortsette å jobbe med det som et nytt prosjekt. Men samfunnsprosjekter er ofte så innpakket i internt drama at de får ting til å skille seg i flere prosjekter, forvirrende og fremmedgjørende brukere.
For eksempel, da GNOME 3 startet og mange brukere av GNOME 2 ikke var lykkelige, var det ikke en åpenbar måte. Utviklere måtte gaffel GNOME-koden til andre prosjekter som MATE og kanel. Ett skrivebordsmiljø ble til tre, og utviklingsressursene er mer spredt mellom prosjekter. Som et resultat tok det litt tid for samfunnet å få disse nye prosjektene til å gå.
På samme måte var OpenOffice-fellesskapet ikke glad da Oracle kjøpte Sun. Oracle selv omdøpt sin egen, ikke-åpen kildekode kontor suite StarOffice til "Oracle Open Office". Samfunnet måtte lage en ny gaffel, LibreOffice, basert på OpenOffice-koden. Det har blitt de facto åpen kildekode-kontorpakken for mange mennesker, men andre bruker fortsatt OpenOffice fordi de ikke er klar over den bedre gaffelen og dramaet som omgir den. OpenOffice har bare mye bygget opp navngjenkjenning.
Og selvfølgelig er det CyanogenMod. Cyanogen Inc trakk nettopp pluggen på CyanogenMods online-tjenester, noe som betyr at de helst vil drepe den mest populære tredjeparts Android-ROMen, enn overlate den til samfunnet, i stedet tvinge samfunnet til å lage en ny gaffel av CyanogenMod kalt LineageOS. Hvorfor overfører ikke Cyanogen bare CyanogenMod-prosjektet til samfunnet? Svaret ser ut til å være internt drama (ser du et mønster her?). Cyanogen var selskapet hvis CEO lovet at de ville "sette en kule gjennom Googles hode", tross alt. Det endte med å sette en kule gjennom CyanogenMods hode, i stedet.
Dette hele bare ender opp med å skade CyanogenMods brukere, som fikk svært lite varsel før CyanogenMods servere og tjenester vil bli stengt. Telefoner vil fortsette å fungere, men praktiske oppdateringer og andre tjenester går opp i røyk nesten over natten. Brukere må bare håpe LineageOS-prosjektet vil raskt bli en erstatning.
Ikke alle åpne kildeprosjekter er fellesskapsdrevne
Åpen kildeprosjekter er ikke alltid drevet av samfunnet. Å si et program er åpen kildekode betyr bare at koden er tilgjengelig for å gjøre det du liker med. Selskapet som utvikler programvaren, trenger ikke nødvendigvis å kjøre det som et fellesskapsprosjekt, eller de kan ha interesse i å bruke prosjektet for å markedsføre sin andre programvare.
CyanogenMod er et godt eksempel på dette. Når Cyanogen Inc. kom fram, bryr de seg ikke om CyanogenMod. Cyanogens nye mål ble markedsføring av Cyanogen Modular OS-plattformen til produsenter, som handlet på CyanogenMods store navnegjenkjenning etter å ha drept prosjektet. Kanskje det er bare hvor pengene er.
Oracle brydde seg aldri om OpenOffice, men ønsket først å bruke navnet til å drive salg av sin OfficeOffice-kontorsuite ved å merke den med navnet "Open Office". Deretter donerte prosjektet til Apache etter at de fleste frivillige utviklere igjen.
Google bryr seg ikke særlig om Android som et fullstendig åpen kildekode-prosjekt, og derfor blir flere og flere deler av "Android Open Source Project" (eller "AOSP") etterlatt. Google ønsker å holde Android åpen slik det er enkelt for produsenter å tilpasse, men åpen kildekode applikasjoner som tastaturet og dialeren blir stadig mer utdaterte. På en Android-enhet for forbruker bruker Google bare sitt eget lukket tastatur, oppringingsprogram og andre apper. Google virker forpliktet til en åpen kildekode fra Android, men ikke et helt åpent operativsystem som folk kan bruke uten Googles programvare og tjenester. Tross alt forbedrer Android Open Source-prosjektet bare Amazonas Brann-OS, en konkurrent til Googles Android-enheter. Hva er poenget med det?
Open Source kan mangle alvorlig arbeidskraft, til tross for bruk av millioner
Hvis et prosjekt er åpen kildekode, kan alle bruke det uten å bidra til jevnlig store bedrifter. Dette fører til problemer når et viktig, mye brukt prosjekt har en alvorlig mangel på arbeidskraft og midler.
Vi så resultatene av dette med Heartbleed-sikkerhetshullet tilbake i 2014. Heartbleed utnyttet et sikkerhetsproblem i OpenSSL. OpenSSL er et viktig krypteringsbibliotek som brukes av mange gigantiske teknologiselskaper og hundrevis av tusenvis av webservere. Men det hadde bare en heltidsmedarbeider uten utenfor sysselsetting og $ 2000 i året i donasjoner. Prosjektet tok inn ekstra penger fra kommersielle støttekontrakter og rådgivning, men bare en enkelt heltidsansatt virker sjokkerende lav for et kritisk stykke infrastruktur som brukes av flere milliarder dollarskorporasjoner som Google og Facebook..
Heartbleed gjorde oppmerksom på hvordan underfinansiert dette kritiske programvaren var, så store teknologibedrifter forpliktet seg til å kutte i penger hvert år for å finansiere utviklingen av OpenSSL og andre viktige prosjekter som en del av "Core Infrastructure Initiative".
Det er et godt resultat for denne spesielle historien, sikkert - men bare fordi så mye oppmerksomhet ble trukket på det. Når du stole på et åpen kildekodeprosjekt for å aktivere infrastrukturen din, er det lett å ende opp avhengig av det og anta at noen andre opprettholder det godt nok. Hvilket annet viktig open source-prosjekt er kritisk underfinansiert? Vi kan ikke legge merke til før det er et annet stort problem.
Bildekreditt: snoopsmaus