Kaos
Internet pao zbog obrisanog koda od 11 redova
Tekst članka se nastavlja ispod banera
Ovog tjedna nastao je sveopći kaos na internetu kada je u okviru važnog softvera obrisano 11 linija koda developera Azera Koculua. Sada je sve u redu, ali za kratko vrijeme bili su ugroženi brojni tehnološki giganti poput Facebooka, Spotifya, Netflixa i drugih.
Sve je počelo kada je Koculu dio koda, ekstenziju popularnog programskog jezika Node.js, nazvao Kik i stavio je na NPM. Kik, istoimena društvena mreža, zamolila je Koculua mailom da promijeni ime koda, što je on odbio učiniti, piše "Business Insider".
"Kada sam počeo kodirati, nisam znao da već postoji kompanija sa istim imenom. A nisam želio dozvoliti da budem primoran da promijenim ime koda", napisao je Koculu u svojem blog postu.
Nakon odričnog odgovora, Kik je programeru počeo slati opomene jer je riječ o zaštićenom imenu i kršenju autorskih prava, objavio je B92.
Kompanija se nakon toga obratila vodećem kadru NPM, čiji je izvršni direktor Isaac Schlueter oduzeo Koculu autorstvo u vezi sa modulom, bez pitanja i njegovog znanja o tome. Kik je u potpunosti uklonjen sa NPM, zajedno sa još jednim programerovim kodom, a Koculuov nalog je ukinut.
To ne bi bio tako veliki problem da upravo Koculu nije osoba koja je stvorila popularni NPM module zvani npm left-pad. Npm left-pad dugačak je 11 redova i ne čini ništa posebno, ali je do sada preuzet više od 575.000 puta. Kada je nestao, developeri Reddita, Twittera i ostalih tehnoloških kompanija svakako su to primjetili.
I tu nastaje glavni problem. Module npm left-pad je u osnovi skraćenica koja programerima služi da izbjegnu pisanje osnovnog koda ispočetka. Ovaj sustav većinom vremena funkcionira bez ikakvih problema, ali istovremeno znači da se softver oslanja na neki način na kulu od karata. Jedan Node.js module poziva se na drugi, ovaj na treći i tako dalje.
Dakle, sve je bilo u redu dok npm left-pad nije nestao s interneta, što znači da se istog trena urušila cijela kula od karata, prenosi B92.
Popularni softveri poput Babela, koji omogućava da kodovi Facebooka, Netflixa i Spotifya fukncioniraju brže, i Reacta, koji omogućava developerima da grade bolje interfejse, odjednom su pali i sa njima se više ništa nije moglo učiniti. Ukupno je bilo ugroženo više od tisuću softverskih projekata.
Da bi riješili problem, programeri su morali 'prečešljati' sve međuzavisne dijelove kodova i postaraju se za to da se nijedan softver ne oslanja na kod od 11 redova. Kik je u međuvremenu vraćen u opticaj i dodijeljen drugom vlasniku, a npm left-pad je također opet tu.