Open Source Software och Forking The Good, The Great och The Ugly
Det finns en stor missuppfattning om open source-världen.
Alltför många tror att det helt och hållet består av personer som arbetar tillsammans för ett gemensamt mål. Att de som väljer att skriva kod, och ge bort den gratis, är Digital Hippies; skäggiga, skönhetsklädda, sandalbärande folk som, om de aldrig hade upptäckt datorer, skulle sitta runt en lägereld, strumma en gitarr och sjunga Kumbaya.
Falsk. Helt fullständigt felaktigt.
Det har förekommit tider då allvarliga rift har uppstått i open source-samhället, vilket gav bittera fejder, schism och dåligt blod som inte har noterats sedan Oasis's hejda dagar och de ökända stormiga Gallagher Brothers.
Men medan Noel och Liam Gallagher löser sina skillnader med flygande nävar och kvicka en-linjer väljer den öppna källan i stället ett (vanligtvis) mer produktivt sätt. förgrening.
Vad är Forking?
Forking har inget att göra med din redskapslåda. Det gäller snarare den riktning som ett open source-projekt tar.
Mest öppen källkodsprogram är licensierad enligt öppna, tillåtna licenser Licenslicenser för Open Source: Vad ska du använda? Open Source Software Licenses: Vilka ska du använda? Visste du att inte alla öppna källkodslicenser är desamma? Läs mer som tillåter användaren att utnyttja de fyra friheterna från Free Libre Software. Free Software Foundation beskriver dem sålunda:
Friheten att köra programmet som du vill, för något ändamål (frihet 0).
Friheten att studera hur programmet fungerar, och ändra det så gör din dator som du vill (frihet 1). Tillgång till källkoden är en förutsättning för detta.
Friheten att omfördela kopior så att du kan hjälpa din granne (frihet 2).
Friheten att distribuera kopior av dina modifierade versioner till andra (frihet 3). Genom att göra detta kan du ge hela samhället chansen att dra nytta av dina förändringar. Tillgång till källkoden är en förutsättning för detta.
När en programmerare "forks" ett program tar de en kopia av någon redan skriven kod och behandlar den som ett helt separat projekt. De kan byta namn på det, och eventuella ändringar kommer endast att återspeglas inom den särskilda "gren".
Det finns många anledningar till varför en mjukvara kan bli förkörd. Ibland har slutanvändaren stor nytta. Ibland görs gaffeln under ett ludd av vrede, hat och fiendskap. Låt oss titta på några exempel: en bra, en stor och en ful.
The Good - LibreOffice och MariaDB
Under nittiotalet och tidigt noughties fanns ett företag som heter Sun MicroSystems. Sun var ett ganska stort företag, med tusentals anställda, och intäkterna dvärgade (då skadade) Apple.
Sun Microsystems byggde en serie processorer som heter SPARC (som i många avseenden hade mycket gemensamt med de ARM-chips som driver de flesta mobiltelefoner och surfplattor, och vissa Chromebooks) samt servrar som drivs av dem. De byggde också en stor mängd programvara som fortfarande används kraftigt idag.
Programvara som Java-programmeringsspråket / virtuell maskin och MySQL-databasen. Programvara som OpenOffice, som nästan slutade Microsofts absoluta monopol.
Tyvärr måste alla goda saker slutligen sluta, och under 2009 togs Sun Microsystems över av Larry Ellisons Oracle Corporation. Detta spooked Open Source-samhället, med tanke på oracles dåliga rekord för öppenhet och jämlikhet när det gäller fri programvara. Detta exemplifierades 2010 när Oracle tog Google till domstol för att bryta mot upphovsrätt och patent på Java-programmeringsspråket som används i Android-mobila operativsystem.
Det här var strået som bröt den ordspråkiga kamelens rygg. Medlemmarna av open source-samhället tog två av de viktigaste Oracle-produkterna och forkedde dem. MySQL blev MariaDB, medan OpenOffice blev LibreOffice LibreOffice - En gratis Office Suite för Windows, Linux och Mac LibreOffice - En gratis Office Suite för Windows, Linux och Mac Läs mer .
Detta steg säkerställde att dessa produkter skulle kunna användas under de kommande åren, visst fortfarande under en tillåten licens och utan kostnad för konsumenten. Avgörande är att Oracle inte skulle kunna göra något åt det.
LibreOffice LibreOffice - En gratis Office Suite för Windows, Linux och Mac LibreOffice - En gratis Office Suite för Windows, Linux och Mac Read More är en av de mest använda kontorsyxorna i världen och kommer som standard med ett antal Linux distributioner; OpenOffice har tagits över av Apache-stiftelsen och är nu känt som Apache OpenOffice. MariaDB har också haft stor framgång och har ersatt MySQL på ett antal Linux distros, inklusive Fedora från version 19 Fedora 19 "Schrödinger's Cat" är levande och full av nya funktioner och förbättringar Fedora 19 "Schrödinger's Cat" är levande Och fullt av nya funktioner och förbättringar Glädje till världen, en ny version av Fedora kodnamn "Schrödinger's Cat" har släppts! Tidigare har Fedora lämnat ledarskap i open source-samhället, som håller fast vid sträng öppen policy, kontinuerlig ... Läs mer .
The Great - Node.js och Node Forward
JavaScript är ett av de grundläggande byggstenarna på Internet Vad är JavaScript, och kan Internet existera utan det? Vad är JavaScript, och kan Internet existera utan det? JavaScript är ett av de saker som många tar för givet. Alla använder det. Läs mer . De flesta sidor, inklusive den här, använder den för att presentera innehåll, hantera interaktivitet och exakt styra användarupplevelsen.
För några år sedan gjorde JavaScript språnget från webbläsaren till servern med Node.js Vad är Node.JS och varför ska jag bry sig? [Webbutveckling] Vad är Node.JS och varför ska jag bry sig? [Webbutveckling] JavaScript är ett helt enkelt programmeringsspråk för klientsidor som körs i webbläsaren, eller hur? Inte längre. Node.js är ett sätt att köra JavaScript på servern; men det är så mycket mer också. Om ... Läs mer
Det gjorde det möjligt för utvecklare att bygga servrar applikationer och back-end funktionalitet webbplatser med det bekanta JavaScript programmeringsspråk. Vad gjorde det verkligen speciellt var dock NPM-paketchefen. Liknande apt-get Vad är en Ubuntu PPA & Varför skulle jag vilja använda en? [Teknologi förklarad] Vad är en Ubuntu PPA & Varför skulle jag vilja använda en? [Teknologi förklaras] Läs mer eller OneGet Windows får en pakethanterare - Ladda ner programvara centralt Via OneGet Windows får en pakethanterare - Ladda ner programvara centralt via OneGet Microsoft lägger till ännu en Linux-funktion till Windows. Pakethantering kan allvarligt öka produktiviteten, öka säkerheten och i sista hand spara mycket huvudvärk. Vi visar dig hur det kommer att fungera. Läs mer, det tillät programmerare att installera tillägg och bibliotek via ett bekvämt kommandoradsgränssnitt. Utvecklare älskade det.
Den stora patriarken i Node World var Joyent, ett stort molnföretag baserat i San Francisco. Även om Node var öppen källkod var det beroende av Joyent för ekonomiskt stöd och många började känna att Joyent hade tagit rollen som "välvillig diktator för livet" och hade utövat för mycket kontroll över Node-projektets riktning.
Några kärnutvecklare, känner behovet av Node att ta en mer självständig riktning, gaffelkod. Node Forward föddes.
Denna schism har varit ganska traumatisk för samhället, men det är hoppas att beslutet att gaffla Node kommer så småningom att resultera i ett mer öppet och mer demokratiskt sätt att utveckla ett av de viktigaste mjukvaruprojekten i världen.
Du kan bli involverad eller följa deras framsteg på Github.
The Ugly - SystemD
Kallelse SYSTEMD kontroversiell är lite som att beskriva djupt stekt smör som "något ohälsosamt". Sanningen är att systemet nästan delade Linux-gemenskapen i två.
Men vad är det? Tja, först, låt oss prata lite om hur Linux fungerar. Fram till nyligen, när en dator som kör Linux startades upp, skulle den först starta ett program som heter init. Detta skulle löpa tills datorn slutligen stängdes av och ansvarar för att starta datorn och hantera föräldralösa processer.
Problemet är, Init är inte så bra. För det mesta eftersom det är långsamt. Tycka om, verkligen långsam. Det beror på att det lanserar uppgifter seriellt, eller en i taget. För en ny uppgift att starta måste den först vänta på den sista som ska slutföras. Även om det här kan ha varit en användbar funktion för länge sedan, när datorerna blev kroniskt underbyggda, är det inte riktigt så användbart år 2015, där de flesta datorer är multi-core behemoter med gigabyte RAM.
Så, systemd skapades. Problemet var att systemet bröt en viktig designfilosofi om hur systemverktyg för Linux ska fungera. I stället för att göra en sak och göra det bra gjorde systemd flera saker förutom att starta datorn. Det låter oskyldigt, men i Linux-världen är det så nära som möjligt storförräderi.
Vid denna tidpunkt delade Linuxvärlden i två läger. En som desperat ville dölja den gamla, långsamma och föråldrade initdemonen. Den andra protesterade starkt mot systemd principiellt och ville inte att den skulle vara någonstans nära sina Linux-maskiner.
Sakerna har värmts.
Bloggare testade vad som skulle vara "slutet av Linux" som de visste det. Linus Torvalds, skapare av Linux-kärnan, gick så långt som att förbuda en nyckel systemd-utvecklare från att arbeta på Linux-kärnan, även om han senare uppgav att han hade "inga starka tankar" på systemd kontroversen.
Med schism i Linux-världen som hämtade kolumn inches i teknologipressen noterade griefers och trolls och började orsaka kaos i ett antal stora Linux-postlistor och forum.
När fler och fler distros meddelade att de skulle flytta till systemd, tog en grupp frustrerade programmerare saker i egna händer och lanserade en systemdriven gaffel av Debian som heter Devuan.
Spins och derivat av befintliga distros är inte exakt sällsynta, men av alla räkenskaper har Deuvan plockat upp en imponerande mängd ånga. Utvecklare arbetar hårt för en framtida offentliggörande av operativsystemet, medan arrangörerna redan har börjat söka efter donationer.
Trots att Debians gaffel utan tvekan kommer att leda till större val när det gäller hur Linux används och kan en dag bli en viktig aktör på Linux-landskapet, är det viktigt att komma ihåg varifrån det kom. En tumultig, akrimonisk plats som nästan medförde ett av de mest kulturellt och kommersiellt betydande open source-projekten på knä.
En gaffel för långt
Systemd kontroversen visar att forking kan vara en indikation på en schism eller en djup konflikt inom ett projekt. Men i samma andetag kan det också vara ett rop av självständighet från en uppbärande, företagsledare. Faktum är att forking ibland kan garantera att fri programvara förblir precis det. Fri.
Vad tror du? Jag skulle gärna höra dina tankar. Släpp mig en kommentar nedan, och vi chattar.
Photo Credits: Silver Forks (Nana B Agyei), Forking med HyperBob (HyperBob), img_7809 (Michael Hicks), Joyent välkomnar node.js knockout (Nina Baidley), systemd statusmeddelanden (Kai Hendry)
Utforska mer om: Open Source.