Koda, ki je »uničila« internet

Avtor: Uredništvo, Objavljeno: 19. 04. 2024 05:04:00, Kategorija: Računalništvo

Pred osmimi leti se je, čeprav tega najverjetneje niste občutili, odvijala prava internetna drama…

Koda, ki je »uničila« internet
Teh enajst vrstic programske kode, ki jih vidite na naslovni sliki, je leta 2016 povzročilo veliko težav skrbnikom cele vrste spletnih strani oziroma storitev, tudi Facebooku, Netflixu, Spotifyju in še komu. In kako lahko nekaj tako »trivialnega« sesuje tako komplekse spletne strani?

Programerji so po svoji naravi malce leni oziroma bolje rečeno iznajdljivi, praktični in pragmatični. S svojo kodo pogosto hočejo kaj doseči, a nimajo časa, da bi to tudi sprogramirali. Zato gredo v posebno podatkovno bazo in v njej pogledajo ali je kaj takšnega naredil že kdo drug. Ker gre za odprtokodne projekte, je te mogoče uporabiti brez posebnih težav z avtorskimi pravicami. Programer to kodo vzame, jo uporabi v svojem projektu, ki je lahko končni izdelek ali pa spet nek nov modul, ki ga lahko uporabi nekdo drug. Nekako podobno kot če bi vzeli kocke Lego, naredili iz njih zid, nato bi vse skupaj vzel nekdo in dodal svoje zidove, nato bi tretji v skladu s svojim projektom na te zidove postavil streho, nekdo drugi pa bi, spet v skladu s svojim projektom, te zidove uporabil recimo kot pritličje večje hiške… Skratka gre za gradnike, ki se lahko uporabljajo na najrazličnejše načine.

Na tak način je, kot lahko slišite in vidite tudi v spodnjem videu, zgrajen več ali manj ves internet. Ker je teh blokov kode, modulov, paketov ali kakorkoli jih že imenujemo, veliko, obstaja poseben »organ« za njihovo upravljanje, imenovan NPM (Node Package Manager). Zdaj pa k težavi, o kateri pišemo.

Turški programer Azer Koçulu je napisal enega takšnih modulov in ga poimenoval kik. Kaj je ta modul počel, pravzaprav ni bistveno. V istem času je obstalo tudi kanadsko podjetje Kik, ki je razvijalo svoj program za neposredno sporočanje in je želelo izdati svoj modul in ga prav tako poimenovati kik. Kaj je njihov modul počel, je tudi nepomembno, pomembno je, da imena niso mogli uporabiti, ker ga je že uporabil Azer. Prosili so ga, če bi ime zamenjal, a ker je šlo za večmilijonsko korporacijo na eni in programerjem, ki prisega na odprto kodo na drugi strani, pogovori niso potekali po načrtih. In ker imena ni hotel spremeniti prostovoljno, so se nadenj spravili z odvetniki in tožbami in uspeli. Azer je bil seveda jezen in je, namesto da bi spremenil ime, 23. marca 2016 iz podatkovne baze odstranil oziroma odjavil  več kot 270 svojih modulov, ki jih je do takrat napisal in dal v uporabo.

Med temi moduli je bil tudi eden, ki se je imenoval Leftpad, napisal pa ga je kar nekaj let pred tem. Modul oziroma paket v osnovi ni bil nič posebnega, saj je vseboval le 11 vrstic kode, katere naloga je bila le, da pred neko besedilo doda - presledek. Vse skupaj se zdi trivialno, a izkazalo se je, da je ta presledek, bolje rečeno Leftpad, še kako pomemben. Tisti trenutek, ko ga je Koçulu »odjavil« iz baze, so se po vsem svetu pričele pojavljati težave v delovanju spletnih strani, vključno z velikimi, kot so Facebook, Netflix, Spotify in še katerih. Izkazalo se je, da Leftpad na tak ali drugačen način v svoji kodi uporablja ogromno spletnih strani in ker gre za eno od »osnovnih Lego kock«, je odstranitev povzročila sesutje vsega, kar se je gradilo nad njimi. Nekako podobno kot če bi odstranili eno od nosilnih kock v stolpu Jenga.

Uporabniki kot taki tega zaradi predpomnjenja (cache) tega sicer nis(m)o kaj dosti občutili, skrbniki sistemov pa so bili v precejšnjih težavah in so od programerjev seveda zahtevali rešitev. Težava je bila k sreči hitro identificirana in NPM je naredil to, kar ni do takrat še nikoli – modul Leftpad je kar sam vrnil nazaj v bazo. S tem so spletne strani spet pričele normalno delovati, Koçulu, Kik in NPM pa so se, vsak na svoj način oziroma na svoji spletni strani, opravičili za nevšečnosti.


Vir: Half as Interesting/YouTube

preberite še to

Računalništvo
Hitreje do zaporednih števil

Hitreje do zaporednih števil

Excelu je tudi do dolga zaporedja števil ne predstavljajo težave

Računalništvo
Hitro v BIOS

Hitro v BIOS

Če vam gre na živce način, kako priti v BIOS vašega računalnika, lahko so storite s preprostim trikom.

Računalništvo
Prevajanje v Excelu in Google Preglednicah

Prevajanje v Excelu in Google Preglednicah

Obe preglednici znata tudi prevajati iz enega jezika v drugega… Do neke mere…

Računalništvo
Vedno pri vrhu

Vedno pri vrhu

Trik, ki vam bo krepko olajšal iskanje datotek…

Računalništvo
Kako računalniki stisnejo besedilo

Kako računalniki stisnejo besedilo

Kako zmanjšati količino podatkov, ki jih shranjujemo? Če pri sliki zmanjka kak odtenek barve ali pri zv...

Računalništvo
Zastave na poznavalski način

Zastave na poznavalski način

Excel zna kar sam ugotoviti, za katero državo gre in narisati njeno zastavo

Računalništvo
YouTubove »ročice«

YouTubove »ročice«

Vaš kanal na Youtubu je pred časom dobil nov, skrajšani naslov…

Računalništvo
Preprost uvoz tabel

Preprost uvoz tabel

Uvoz tabel iz spletnih strani v Excel je včasih prava nočna mora. Res?

Računalništvo
Hitro odpiranje programov

Hitro odpiranje programov

Programe je mogoče hitro zagnati tudi s tipkovnico

Računalništvo
Naključno besedilo

Naključno besedilo

Trik, ki ga boste v Wordu uporabili redko, a boste takrat zelo zadovoljni, da obstaja

Računalništvo
Samsung je predstavil novo linijo monitorjev 2024 Odyssey OLED, Smart Monitor in ViewFinity

Samsung je predstavil novo linijo monitorjev 2024 Odyssey OLED, Smart Monitor in ViewFinity

Promocijska vsebina
Samsung je predstavil novo linijo monitorjev 2024 Odyssey OLED, Smart Monitor in ViewFinity

Računalništvo
Hitro gor in hitro dol

Hitro gor in hitro dol

Kako v Wordu najlažje »premetavati« vsebino tabele.