Vyma­za­ním 11 riad­kov kódu zne­funkč­nil tisíce apli­ká­cií po celom svete

Michaela Líšková / 28. marec 2016 / Zaujímavosti

Tento týž­deň sa jed­nému prog­ra­má­to­rovi poda­rilo roz­pú­tať poriadny chaos na plat­forme npm, ktorá spra­vuje roz­ší­re­nia pre mnohé prog­ra­mo­va­cie jazyky, naprí­klad aj Node.js, a to jed­no­du­chým aktom – vyma­zal svoj prog­ram pozos­tá­va­júci z 11- riad­ko­vého kódu.

Teraz je našťas­tie už všetko v poriadku. Ale bol to veľmi zvláštny prí­pad, ktorý zahŕňa práv­ni­kov, uráž­li­vého deve­lo­pera a pohľad do záku­li­sia toho, ako tech­no­lo­gickí giganti, akými sú Face­book, Spo­tify a Netf­lix fun­gujú pod povr­chom.

Celé to začína vývo­já­rom menom Azer Koçulu, ktorý napí­sal kód Kik, ako roz­ší­re­nie pre popu­lárny prog­ra­mo­vací jazyk Node.js. Koçulu svoj Kik modul zave­sil na npm, čo je prak­ticky App Store pre prog­ra­má­to­rov Node.js.

ted livingston kik-8817

Tvorca Kik — Ted Living­ston; foto: Michael Seto

Ten druhý Kik

Kik, popu­lárna sociálna sieť s rov­na­kým menom, si tento akt všimla a Koçulu od nich dostal email s požia­dav­kou, aby zme­nil názov svojho modulu. Podľa Aze­rovho pri­zna­nia v tomto poste, prvotná požia­davka “dru­hého” Kiku bola opod­stat­nená. Napriek tomu však neus­tú­pil.

Koçulu píše: “Keď som začí­nal prog­ra­mo­vať Kik, netu­šil som, že exis­tuje spo­loč­nosť s rov­na­kým náz­vom. A nech­cel som, aby ma spo­loč­nosť donú­tila zme­niť jeho meno.”

Spo­loč­nosť Kik sa Aze­rovi po tom, čo odmie­tol, podľa jeho slov vyhrá­žala . Napí­sali mu: “Nech­ceme byť ču*áci, ale je to regis­tro­vaná obchodná značka vo väč­šine kra­jín sveta a ak open source pro­jekt s náz­vom kik nezme­níš, naši práv­nici ti budú búchať na dvere, uzavrú ti všetky účty atď…”

Po tom, čo Koçulu stále odmie­tal zme­niť názov, spo­loč­nosť Kik sa skon­tak­to­vala s npm a Koçulu tvrdí, že CEO Isaac Sch­lu­e­ter mu odňal právo na vlast­níc­tvo modulu bez akých­koľ­vek otá­zok.

Potom Koçulu v blo­go­vom prís­pevku vyhlá­sil, že z npm úplne vymaže svoj Kik, a to aj so všet­kými roz­ší­re­niami, ktoré napí­sal pred­tým.

Ted-Livingston-talks-Kik-with-Mike-Kirkup-2015-10-07-229

Tvorca Kik — Ted Living­ston; foto: news.communitech

Možno by celá situ­ácia vyze­rala ako nič vážne, nebyť faktu, že Koçulu je AJ tá osoba, ktorá vytvo­rila známy npm model zvaný “npm left-pad”. Má 11 riad­kov a v pod­state nemá za úlohu nič kom­pli­ko­vané. Len bol stia­hnutý už vyše 575 tisíc ráz.

A keď tento kód zmi­zol, vývo­jári na Red­dit, Twit­teri a iných sie­ťach si to defi­ni­tívne všimli.

Dom­ček z karát…

Tu sa nám to začína zamo­tá­vať.

Modul ako npm left-pad je viac­me­nej skratka, ktorú využí­vajú vývo­jári, aby nemu­seli napí­sať celý základný kód od nuly. Ak teda vývo­jár žiada o npm modul, je to ako keby zadali „vlo­žiť tento kód neskôr“ a soft­vé­rový kom­pi­lá­tor skrátka kód stiahne, keď príde ten správny čas.

Vo väč­šine prí­pa­dov všetko doko­nale fun­guje. Ibaže nie­kedy sa stane, že soft­vér sa spo­lieha na niečo, čomu sa hovorí dom­ček z karát : Jeden modul Node.js sa spo­lieha na ďalší, ten potom na ďalší, a ten ďalší znova na ďalší. Znovu treba pove­dať, že oby­čajne to všetko fun­guje v poriadku – až do momentu, kedy je npm lef-pad zrazu off­line.

rts3lgf (1)

foto: busi­nes­sin­si­der

BUM!- a takto sa nám zrú­til dom­ček z karát. Známe soft­vé­rové pro­jekty ako Babel, ktorý pomáha Face­bo­oku, Netf­lixu a Spo­tify spúš­ťať kód rých­lej­šie, a React, ktorý vývo­já­rom pomáha vytvo­riť lep­šie roz­hra­nia, zrazu pre­stali fun­go­vať a nič sa nedalo robiť. Podľa npm blogu bolo týmto aktom pos­ti­hnu­tých cel­kovo vyše tisíc soft­vé­ro­vých pro­jek­tov.

Rie­še­nie tohto prob­lému by vyža­do­valo, aby prog­ra­má­tori pre­zreli všetky časti kódov a uis­tili sa, že abso­lútne nič z toho, čo vytvo­rili, nie je závislé na už spo­mí­na­nom 11- riad­ko­vom kóde.

A tak sa stalo, že po tom, čo „zapla­kali“ vývo­jári na celom svete, npm boli prak­ticky donú­tený znovu sprí­stup­niť kód a odo­vzdať ho do rúk novému vlast­ní­kovi.

V sérií postov zve­rej­ne­ných na Twit­teri CTO npm Lau­rie Voss hovorí, že spo­loč­nosť nebola úplne sto­tož­nená s tým, že musela Koçu­luho duševné vlast­níc­tvo odo­vzdať nie­komu inému, ale soft­vé­rový prie­my­sel sa touto prob­le­ma­ti­kou poza­sta­vil a museli konať.

Screenshot 2016-03-26 00m

Našťas­tie tá naj­hor­šia časť búrky už pre­hr­mela a npm left-pad je opäť online. Nie­ktorí však tvr­dia, že rany boli hlboké a stále ich cítia. Tento blo­gový prís­pe­vok sa pýta “Zabudli sme, ako prog­ra­mo­vať?” a nalieha na vývo­já­rov, aby si pre­mys­leli, ako budú svoje apli­ká­cie ďalej vytvá­rať.

Medzi­tým sa Koçulu vyjad­ril, že hoci ho mrzí, že mno­hých ľudí týmto spô­so­bom “vyru­šil” pri práci, keď sa na to pozrie z dlho­do­bého hľa­diska, spra­vil to pre dobro komu­nity. Hovorí, že mono­pol npm už nebudú voľ­nej soft­vé­ro­vej komu­nite viac nič dik­to­vať.

Zdroj: busi­nes­sin­si­der, Titulná foto: huf­fing­ton­post

Pridať komentár (0)