Ove nedelje nastao je sveopšti haos na internetu kada je u okviru važnog softvera obrisano 11 linija koda developera Aleksa Kočulua. 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 Kočulu dio koda, ekstenziju popularnog programskog jezika Node.js, nazvao Kik i stavio je na NPM.
Kik, istoimena društvena mreža, zamolila je Kočulua mejlom da promijeni ime koda, što je on odbio da učini, piše “Business Insider“.
“Kada sam počeo da kodiram, nisam znao da već postoji kompanija sa istim imenom. A nisam želio da dozvolim da budem primoran da promijenim ime koda”, napisao je Kočulu u svojem blog postu.
Nakon odričnog odgovora, Kik je programeru počeo da šalje opomene jer je riječ o zaštićenom imenu i kršenju autorskih prava.
Kompanija se nakon toga obratila vodećem kadru NPM, čiji je izvršni direktor Isak Šluter oduzeo Kočulu autorstvo u vezi sa modulom, bez pitanja i njegovog znanja o tome, piše B92.
Kik je u potpunosti uklonjen sa NPM, zajedno sa još jednim programerovim kodom, a Kočuluov nalog je ukinut.
To ne bi bio tako veliki problem da upravo Kočulu 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 primijetili.
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 sistem većinom vremena funkcioniše 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.
Popularni softveri poput Babela, koji omogućava da kodovi Facebooka, Netflixa i Spotifya fukncionišu brže, i Reacta, koji omogućava developerima da grade bolje interfejse, odjednom su pali i sa njima više ništa nije moglo da se učini. Ukupno je bilo ugroženo više od hiljadu softverskih projekata.
Da bi riješili problem, programeri su morali da ‘prečešljaju’ 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đe opet tu.