Avatud lähtekoodiga tarkvara kõrvalekalded
CyanogenMod on surnud, mille tappis emaettevõtja tsüaankloriid. Kogukonna eesmärk on koodide põhjal tükid üles võtta ja luua uus projekt, LineageOS. Kuid see on meeldetuletus, et avatud lähtekoodiga tarkvara ei ole kõik päikesepaiste, vihmavari ja stabiilsus: tegelikult võib see olla väga räpane.
Isegi kui projekt on avatud lähtekoodiga, ei pruugi see olla isegi kogukonnale reageeriv, palju vähem usaldusväärne tarkvara, millest saate sõltuda. Projektid varieeruvad: mõningaid haldab hobiks üks või kaks arendajat, teised toovad kokku arendajad, keda maksavad paljud suurettevõtted, teised aga üksikettevõtja. Igal olukorral on oma probleemid ja draama.
Me armastame avatud lähtekoodiga tarkvara - ära saa meid valesti, kuid see kujutab endast teatud arvu väljakutseid. Vaatame mõned.
Avatud lähtekoodil on sageli viivitusi ja liustiku arengu tempot
Paljud avatud lähtekoodiga projektid tunduvad kannatavat aeglase arengu tempo all, kus uued versioonid on lõputult hilinenud, uued funktsioonid tulevad aeglaselt, kui kunagi varem, ja raske on tähtsate funktsioonide tähtsust.
Vaadake lihtsalt Ubuntu katseid käivitada oma Unity 8 töölauale ja Mir kuvaserverile, võimaldades selle nägemust „lähenemisest”. See Linuxi töölaua uus versioon pidi olema stabiilne mitu aastat tagasi ja pole ikka veel. Projekt on jäänud sammu tempos, nii et Canonical peksti Microsofti löögile, mis teatas omaenda nägemusest PC-toega nutitelefonist enne Windows 10-i ja edastas selle. Canonical pole ikka veel pikka aega lubanud visiooni andnud. Võib-olla on see mõne aasta pärast stabiilne.
Mozillal on olnud ka raskusi prioriteetide seadmisega. Nad ei ole Firefoxis ikka veel pakkunud mitut protsessi ja liivakasti. Need on kriitilised, et hoida brauserit turvaliselt, vältida kogu brauseri allakukkumist ja paremini kasutada mitme protsessiga protsessoreid. Kõik teised suuremad brauserid on need funktsioonid andnud, sealhulgas vihkatud Internet Explorer. Nende funktsioonide lisamiseks küündis Mozilla projekt „Elektrolüüs“, kuid peatas selle 2011. aastal, sest see oli liiga raske. Seejärel pidi Mozilla 2013. aastal selle taaskäivitama. See funktsioon tundub saabuvat 2017. aastal, mis on tõesti, väga hilja. Vahepeal raiskab Mozilla aega, mis töötas Firefoxi operatsioonisüsteemil, mis oli ebaõnnestunud nutitelefoni operatsioonisüsteem.
Kui projekt kasutab nii palju vabatahtlikke arendajaid, võib olla raske leida inimesi, kes teevad rasket tööd, mis ei ole lõbus teha.
Sisemine draama algab kahvlid, kahvlid ja muud kahvlid
Avatud lähtekoodiga projekti lähtekoodi on kõigile võimalik muuta. See on asi! Kui avatud lähtekoodiga projekt muutub nii, nagu teile ei meeldi, siis saate teie või kogukond võtta selle vana lähtekoodi ja jätkata selle töötamist uue projektina. Kuid kogukondlikud projektid on sageli nii sisemises draamas, et nad jagavad asjad mitmeks projektiks, segavad ja võõrandavad kasutajaid.
Näiteks kui GNOME 3 käivitati ja paljud GNOME 2 kasutajad ei olnud õnnelikud, ei olnud otsest ilmset teed. Arendajad pidid GNOME-koodi teistesse projektidesse nagu MATE ja Cinnamon viima. Üks töölaua keskkond muutus kolmeks ja arendusressursid on projektide vahel rohkem hajutatud. Selle tulemusena kulus kogukonna jaoks nende uute projektide elluviimiseks aega.
Samamoodi ei olnud OpenOffice'i kogukond õnnelik, kui Oracle omandas Suni. Oracle nimetas isegi Oracle'i avatud kontoriks lühidalt ümber oma varalise, mitte avatud lähtekoodiga kontoripaketi StarOffice. Kogukond pidi OpenOffice'i koodi alusel looma uue kahvli, LibreOffice. Sellest on saanud paljudele inimestele de facto avatud lähtekoodiga kontoripakett, kuid teised kasutavad endiselt OpenOffice'i, sest nad ei ole teadlikud parematest kahvlitest ja seda ümbritsevast draamast. OpenOffice'il on lihtsalt palju ülesehitust.
Ja muidugi, seal on CyanogenMod. Tsüaankloriid Inc lihtsalt tõmbas pistik CyanogenModi võrguteenustele, mis tähendab, et nad pigem tapavad kõige populaarsema kolmanda osapoole Android-ROMi kui annavad selle üle kogukonnale, sundides kogukonda looma uue kahvli CyanogenModi nimega LineageOS. Miks ei anna tsüaankloriid CyanogenModi projekti kogukonnale üle? Vastus tundub olevat sisemine draama (kas te näete siin mustrit?). Tsüaankloriid oli ettevõte, mille tegevjuht lubas, et nad „panevad kuuli Google'i peaga”. Selle asemel pani selle asemel CyanogenModi pea.
See lõpeb lihtsalt CyanogenModi kasutajatega, kes enne CyanogenModi serverite ja teenuste sulgemist said väga vähe teadet. Telefonid jätkavad tööd, kuid mugavad uuendused ja muud teenused suitsetavad peaaegu üleöö. Kasutajad peavad lootma, et LineageOS projekt muutub kiiresti asendajaks.
Mitte kõik avatud lähtekoodiga projektid ei ole kogukondlikud
Avatud lähtekoodiga projekte ei aita alati kogukond. Programmi öeldes on avatud lähtekood, tähendab see seda, et kood on saadaval, et teha seda, mida soovid. Tarkvara arendav ettevõte ei pea tingimata seda kogukonnaprojektina käivitama või võib neil olla huvi selle projekti kasutamise toetamiseks oma muu tarkvara reklaamimiseks..
CyanogenMod on selle hea näide. Kui tsüaankloriid Inc tuli, ei huvitanud nad CyanogenModist. Tsüaankloriidi uus eesmärk sai Cyanogen Modular OS platvormi turustamiseks tootjatele, kes müüsid CyanogenModi suurepärase nime tunnustamise pärast projekti tapmist. Võibolla see on just see, kus raha on.
Oracle ei ole kunagi hoolinud OpenOffice'ist, kuid algselt tahtis oma nime kasutada oma StarOffice'i varalise büroopaketi müügi juhtimiseks, nimetades selle „Open Office” nimega. Seejärel annetas ta projekti Apache'ile pärast enamiku vabatahtlike arendajate lahkumist.
Google ei huvita ka Androidi kui täieliku avatud lähtekoodiga projekti, mistõttu üha enam osa „Android Open Source Projectist” (või „AOSP”) jäetakse maha. Google tahab hoida Android avatud, nii et tootjad saavad seda hõlpsasti kohandada, kuid avatud lähtekoodiga rakendused, nagu klaviatuur ja helistaja, on üha vananenud. Tarbija Android-seadmes koondab Google lihtsalt oma suletud lähtekoodiga klaviatuuri, helistaja ja muud rakendused. Google tundub olevat pühendunud Android avatud lähtekoodiga südamikule, kuid mitte kogu avatud lähtekoodiga operatsioonisüsteem, mida inimesed saavad kasutada ilma Google'i tarkvara ja teenusteta. Lõppude lõpuks aitab Android Open Source Projecti täiustamine lihtsalt Amazon'i Fire OS-i, mis on Google'i Android-seadmete konkurent. Mis see on?
Avatud lähtekoodiga võib olla tõsiseid tööjõudu, hoolimata miljonite kasutamisest
Kui projekt on avatud lähtekoodiga, võib igaüks seda kasutada ilma massiivsete ettevõtete panuseta. See toob kaasa probleeme, kui olulisel, laialdaselt kasutataval projektil on tugev tööjõu ja vahendite puudus.
Me nägime selle tulemusi 2014. aastal Heartbleed'i turvaauguga. Heartbleed kasutas OpenSSLi haavatavust. OpenSSL on oluline krüpteerimisraamatukogu, mida kasutavad paljud hiiglaslikud tehnoloogiaettevõtted ja sadu tuhandeid veebiservereid. Kuid tal oli ainult üks täistööajaga töötaja ilma välistöötajateta ja 2000 dollarit aastas annetustes. Projekt võttis täiendavat raha kaubanduslikest toetuslepingutest ja konsultatsioonidest, kuid ainult üks täistööajaga töötaja näib šokeerivalt madal, kui kriitiline infrastruktuur, mida kasutavad mitme miljardi dollari ettevõtted, nagu Google ja Facebook.
Heartbleed juhtis tähelepanu sellele, kuidas see kriitiline tarkvara oli alarahastatud, nii suured tehnoloogilised ettevõtted, kes pühendusid igal aastal raha laotamiseks, et rahastada OpenSSLi ja teiste oluliste projektide arendamist osana „Põhiinfrastruktuuri algatusest“.
See lugu on kindel, kuid ainult seetõttu, et sellele pöörati suurt tähelepanu. Kui kasutate oma infrastruktuuri lubamiseks avatud lähtekoodiga projekti, on lihtne sellest sõltuda ja eeldada, et keegi teine säilitab selle piisavalt hästi. Milline teine oluline avatud lähtekoodiga projekt on kriitiliselt alarahastatud? Me ei pruugi märgata, kuni on veel üks suur probleem.
Pildi krediit: snoopsmaus