Facebook frigiver kildekode - på vej mod open source

Facebook frigiver kildekoden til sit interne C++-softwarebibliotek Folly, der har stået i vejen for at gøre andre projekter open source.

Computerworld News Service: Facebook har frigivet kildekoden til et bibliotek af C++-softwarekomponenter, der bruges til at drive sitet, oplyser det sociale netværk lørdag.

Dette bibliotek ved navn Folly har med sin hidtil lukkede kildekode været en stopklods for at gøre mange andre af selskabets interne programmer open source, fordi de er afhængige af forskellige komponenter i dette bibliotek.

Det har nu ændret sig.

"En klar flaskehals med hensyn til at frigive mere af vores arbejde har været, at ethvert projekt først var nødt til at bryde sin afhængighed af ikke-frigivet intern bibliotekskode, før det kunne gøres open source," skriver software ingeniør hos Facebook Jordan DeLong i et blogindlæg om denne frigivelse af kildekode.

Frigivelsen af denne kildekode blev også offentliggjort ved en konference om C++, som Facebook afholdte lørdag på sin campus i Menlo Park i Californien.

Storbruger af open source
Facebook har i høj grad anvendt open source-software såsom MySQL, PHP og memcached til sit site.

Derfor har selskabet også sørget for at frigive kildekoden til mange af sine internt udviklede programmer såsom PHP-compileren HipHop og software-frameworket Thrift til skalerbar udvikling af services på tværs af programmeringssprog.

I forbindelse med mange af frigivelserne var Facebooks udviklere dog nødt til først at omskrive de dele af funktionaliteten, som kom fra dette bibliotek.

Ved at frigive selve biblioteket kan Facebook nu "fortsætte med at frigive kildekoden til dele af sin software-stack uden at være nødt til at genopfinde sine interne dybe tallerkener," skriver DeLong.

Selvom man som udvikler måske ikke har planer om at anvende applikationer udviklet af Facebook, så bør man alligevel tage et kig på dette bibliotek, da det indeholder mange værktøjer, der kan bruges i andre miljøer, påpeger DeLong.

Mange af komponenterne i Folly kører ifølge DeLong hurtigere end deres modstykker, der er tilgængelige andre steder fra. "Vores motivation var at bygge komponenter, der var hurtigere og mere effektive, end det vi havde brugt indtil da," skriver han.

Disse værktøjer er designet til anvendelse i tunge produktionsmiljøer på tværs af tusindvis af servere.

Komponenterne dækker ifølge DeLong en bred vifte af funktionalitet:

En komponent er designet til at anvende hukommelsen mere effektivt.

En anden reducerer såkaldt software contention, hvor flere forskellige transaktioner konkurrerer om de samme ressourcer.

Værktøjet AtomicHashMap reducerer, hvor lang tid et stykke data i hukommelsen er låst af en proces, hvilket kan nedsætte ydelsen og skabe flaskehalse i miljøer med tung trafik.

Et sæt komponenter til manipulation af strenge bruger færre beregningsressourcer end lignende komponenter i andre C++-biblioteker

Biblioteket Folly er offentliggjort på GitHub og Facebook vil føje nye komponenter til, i takt med at de bliver udviklet, skriver DeLong.

Oversat af Thomas Bøndergaard


Ytringer på debatten er afsenders eget ansvar - læs debatreglerne
Indlæser debat...


Brancheguiden
Brancheguide logo
Opdateres dagligt:
Den største og
mest komplette
oversigt
over danske
it-virksomheder
Hvad kan de? Hvor store er de? Hvor bor de?
Despec Denmark A/S
Distributør af forbrugsstoffer, printere, it-tilbehør, mobility-tilbehør, ergonomiske produkter, kontor-maskiner og -tilbehør.

Nøgletal og mere info om virksomheden
Skal din virksomhed med i Guiden? Klik her

Kommende events
Internet of Things er klar til næste fase: Forretning, teknologi og sikkerhed

Der er blevet talt og skrevet meget om Internet of Things i de senere år. Internet of Things bevæger sig nu ind i en ny fase, hvor løsningerne og anvendelsesmuligheder stiger hastigt i antal samtidig med, at det egentlige potentiale er klart til at blive indfriet. Vi sætter fokus på forretningsmulighederne og på hvordan I kan komme ig ang samt på udfordringer med sikkerhed, privacy og it-drift.

23. maj 2017 | Læs mere


Beyond Data

Der ligger en enorm værdi i big data for din virksomhed, hvor de mange rådata, der ofte flyder ustrukturerede rundt, kan fortælle dig, hvordan du kan forbedre forretningen, processerne, salget og meget andet. Ved at strukturere de mange data kan du øge virksomhedens indtjeningen og reducere omkostningerne.

24. maj 2017 | Læs mere


Få mere fart på og kvalitet i udviklingsafdelingen med DevOps

Få indsigt i den populære DevOps-tankegang, der kendetegner den moderne it-organisation, hvor samarbejde og integration er nogle af nøgleordene. Kom og hør konkrete cases fra virksomheder, der arbejder efter DevOps og mød de førende leverandører, der fortæller, hvordan du kommer derhen, hvor udviklingsafdelingen kan understøtte den digitale innovation med de ideer og i det tempo, som der forventes.

30. maj 2017 | Læs mere






Computerworld
IBM til medarbejdere: Drop hjemmearbejds-pladsen eller find et nyt job
IBM gør op med en årtier lang tradition, der har givet medarbejderne mulighed for at arbejde hjemmefra.
CIO
Ny koncernstruktur bag Morten Gade Christensens exit som CIO i Energinet.dk: "Det er jeg ikke interesseret i at være en del af"
Interview: Morten Gade Christensen, der er kåret som Årets CIO i Danmark, har sagt op som CIO i Energinet.dk. Her fortæller han, hvorfor han har afleveret sin opsigelse.
Comon
Ups - kontroversiel funktion kan afsløre utro Tinder-brugere
En funktion i den populære dating-app Tinder kan betyde, at du uforvarende kommer til at afsløre din dating-profil.
Job & Karriere
Dansk it-firma masseansætter: Skal bruge 90 nye medarbejdere med disse it-profiler
It-virksomheden BEC skal bruge 90 nye it-medarbejdere. Her kan du se de konkrete it-profiler, BEC er på udkig efter.
White paper
Undersøgelse af kritiske anlæg
I 2015 afsluttede Coromatic Group en undersøgelse af kritiske anlæg, der dækkede årene 2000-2013. Undersøgelsen omfattede det nordiske hospitalsmarked og dets afhængighed af to virksomhedskritiske funktioner, strømforsyning og kommunikationsteknologi, under hensyntagen til den øgede mængde af data, der behandles i forskellige systemer.