Програмистът, който изтри 11 реда и „счупи“ интернет

ное. 10, 2023 | Истории

Програмистът, който изтри 11 реда и „счупи“ интернет

10 ноември 2023 | Истории

Можете да чуете тази Дигитална история в  Storytel

23 март 2016 г. можеше да бъде апокалиптичен ден в историята на дигиталния свят, който надали ще се повтори. Netflix, Facebook и Spotify са само част от безбройните сайтове, които изведнъж се оказва, че… няма как да бъдат поддържани и обновени.

Защо ли? 28-годишният програмист Азер Кочулу просто е изтрил 11 фатални реда компютърен код.

Но как е възможно един непознат програмист да блокира сайтовете на световните гиганти? Защо в странния днешен онлайн свят неочаквано се оказва, че огромни, мултимилиардни проекти се крепят на раменете на доброволния труд на ентусиасти? Какво ли е накарало Азер да се ядоса толкова, че да отприщи в най-страховития му вид ефекта на пеперудата?

Понякога най-малките и уж безобидни редове код обръщат програмата…

 

Азер Кочулу

 

Бекъп дупка не прави

Прелюбопитна е дигиталната история на JavaScript – езикът за програмиране е създаден само за 11 дни и… понякога му личи, въпреки че оттогава извървя дълъг път. Превърна се в жизнената сила, проправила пътеките на днешния интернет, какъвто го познаваме. Докато преди сваляхме програми за какво ли не, инсталирахме ги чрез операционната система, днес почти всичко се случва в браузъра.

Промяната дойде толкова бързо и неусетно, колкото не можехме да предположим… А също толкова бързо всичко може и да се срути, както личи от историята на днешния ни герой.

Възходът на уеб приложенията съвпадна с едно друго важно явление в софтуерния свят – масовото навлизане на софтуера с отворен код. Първопроходник беше създателят на Linux и Git Линус Торвалдс, а през последните десетилетия върху програмите, които са открити и се споделят свободно, се крепи огромна част от днешната софтуерна индустрия.

Особено що се отнася до света на JavaScript. Най-популярната платформа за това се нарича NPM и притежава буквално милиони проекти, които изпадналият в нужда програмист може да използва. Всеки е добре дошъл да остави своите парченца код, които, по един или друг начин, да бъдат използвани от всички останали.

 

Азер Кочулу

 

Бързата работа, срам за програмиста

Тази система работи по повече от впечатляващ начин. Постоянно се появяват нови библиотеки, най-успешните биват сваляни и използвани от разработчиците милиони пъти на ден.

Нещо повече, постепенно този тип проекти се превръщат в огромни вавилонски кули, защото библиотеките със софтуер се крепят една на друга, всяка следваща използва малко парченце код от предишните…

Което в един момент, въпреки цялото удобство, може да се превърне в проблем. Точно както в историята на Азер Кочулу.

Мнозина иронизират факта, че за да създадеш нов проект чрез модулите, които ти се налага да използваш, трупаш гигабайти в папката node_modules, които в един момент тежат повече от Вселената… но това, в крайна сметка, не засяга крайните потребители и определено е по-малкият проблем.

 

Казана дума, хвърлен бъг

По-големият риск със сигурност е сигурността, която става все по-трудна за проследяване с използването на море от код. Именно напомняне в тази посока е случката с мигранта от южната ни съседка.

От малък Азер Кочулу е запален по идеите за софтуера с отворен код. Заедно с основната си работа, има и своеобразно хоби – да създава библиотеки, които да качва на платформата NPM, давайки на останалите програмисти.

Някои от проектите му се радват на сериозен успех, а и той изпитва удовлетворение. До прословутия 23 март 2016 г. е публикувал цели 273, някои от които имат стотици хиляди използвания за седмица. И точно тогава той получава имейл, който го разгневява…

Пише му Боб Стратън, патентен специалист от фирма на име kik. Азер е създал малка софтуерна библиотека със същото название и за да не стават грешки, адвокатите го призовават да смени името на своя проект.

 

Азер Кочулу

 

Шушу-мушу сайта разваля

Знаете, понякога нещата в онлайн комуникацията ескалират бързо, нали? Е, няколко имейла по-късно Азер започва да хвърля огън и жупел с речник, на който би завидял и герой на сръбски филм. Категорично отказва да смени името на библиотеката, дори и когато са му предложени $30 000. Казва, че идеята му е друга и че на полето на отворения код не бива да са водещи търговските интереси.

Прочел интересни неща за близките си роднини, патентният адвокат разбира, че по този начин няма да се получи. Затова решава да се свърже направо с организацията, която може да му помогне.

Макар че NPM е напълно некомерсиална платформа, тя си има компания собственик, която се грижи за правилата и инфраструктурата. Именно на нея пише патентният адвокат на kik, явно успява да впечатли получателите и този път вместо цветист отговор, среща съгласие.

Азер получава нов имейл, този път от NPM, в който го информират, че библиотеката му е отстранена заради проблеми с авторските права. Тъй ли? Възмутен, че платформата се поддава на шантажа и погазва собствените си правила, той с едно движение изтрива всичките си 273 библиотеки.

 

Азер Кочулу

 

Капка по капка – бъг

Така стигаме до следобеда, когато хиляди програмисти от цял свят получават една и съща грешка – някаква библиотека, за която почти никой от тях не е чувал, не може да бъде заредена. Това означава, че те са блокирани в работата си, а някои, които са имали лошия късмет тъкмо тогава да изпращат новия си код към потребителите, се озовават с напълно неработещи сайтове. И всичко това, само заради един от проектите на Азер.

Но как никой не е чувал за липсващата семпла библиотека, след като за последния месец преди това тя е била свалена от цели 2 550 569 програмисти?

Как така всички са използвали кода му, без дори да са чували името му? Как компании като Netflix, Facebook и Spotify са се доверили в крайна сметка на външен софтуер, който би могъл дори да нанася неподозирани вреди?

Отговорът отново се крие в пирамидата на днешния уеб софтуер. Всеки разчита на външни библиотеки, които пък разчитат на предишните.. в огромна кавалкада от взаимни зависимости.

Азер просто е бутнал първото парченце домино… „Това просто счупи интернет“, гласи коментарът, събрал най-много радостни отзиви по темата в платформата за програмисти GitHub.

 

Три пъти мери, един път коди

Е, същото се е случило и с работата на Азер. Оказва се, че огромен брой от най-използваните приложения са използвали точно най-малкия от всичките му 273 проекта – наричан Left-pad и състоящ се от… 11 реда код:

Азер Кочулу

 

Ако дори сте се докоснали до програмирането, бързо ще прецените, че става дума за елементарна функция, която буквално би могла да бъде написана за минути от всеки, познаващ на базово ниво JavaScript. И, все пак, вместо да си я направят сами, са решили да я използват наготово някои от най-популярните библиотеки, на които се крепи мрежата.

Най-много проблеми идват от това, че Left-pad по това време е част и от Babel – много важна и разпространена библиотека, която се използва, за да „превежда“ кода така, че да бъде разчетен и от по-стари браузъри. Babel се използва, на практика, навсякъде. Списъкът включва сайтовете на Facebook, Netflix, PayPal, Yahoo, Spotify, Reddit, Slack, LinkedIn.

И така… „онлайн апокалипсисът“ бързо е избегнат. Първото работещо решение се появява 42 минути, след като проблемът е споменат за първи път. Няма и два часа по-късно в NPM вече е качен нов пакет със същото име, което веднага решава проблема.

 

Азер Кочулу

 

Не е луд който яде бъговете…

После идва време за анализа след мача. И Азер, и kik, и NPM влизат в обяснителен режим, за да разкажат на общността какво се е случило, картината бързо се избистря.

Азер казва, че се е ядосал, защото „тази ситуация ме накара да осъзная, че NPM е нечия частна земя, където корпорацията е по-силна от хората. А аз създавам отворен код, защото „силата трябва да е в хората“. Той моли за прошка всички, които са пострадали, но казва, че това е тъкмо нужната възможност да се говори повече за това как решенията в общността трябва да се вземат именно от нея, а не от централизирани институции.

Остават обаче по-важните въпроси. Ако ставаше дума за много по-комплексно решение, то буквално би могло да блокира работата на милиони програмисти по цял свят и би застрашило почти всички най-големи сайтове.

Още ли ни звучи толкова примамлива идеята за софтуера с отворен код?

 

Азер Кочулу

 

Програмата се кове, докато е гореща

За щастие, оказва се, че тя е още по-магнетична и работеща от всякога. И именно подобни случаи го показват.

Защото общността, която включва огромен брой специалисти, може да реагира бързо и да реши подобен проблем. Днес Азер е с десетилетие по-опитен, натрупал е сериозни успехи като програмист, вече е с по-семпла прическа, може би дори е забравил, че в един момент за малко не „счупи интернет“. Но опитът от този случай даде идеята за по-строги правила кой и как може да изтрие дадена библиотека с код. Днес това би отнело много повече време, всички, които я използват, биха били предупредени навреме, за да вземат мерки.

Ето че когато комерсиалният елемент е елиминиран, понякога могат да се случват чудеса.

Софтуерът с отворен код продължава да властва, както никога. Защото е един от онези не чак толкова много примери, които ни връщат към основната идея на интернет. Възможността да сме обединени, равни, да си помагаме… Пък дано се научим как да го правим и в социалните мрежи.

Дигитални истории

Дигитални истории е и ще си остане изцяло некомерсиално начинание, на което посвещавам доста време и усилия. За създаването на сайта обаче са нужни определени разходи. Ако имате възможност и желание да подпомогнете сайта, вече можете да го направите. Разбира се, все така важна подкрепа си остава всяка добра дума, всяко споделяне на темите.

<a href="https://karamanev.me/author/georgik" target="_self">Георги Караманев</a>

Георги Караманев

Програмист, журналист и писател. Още за мен – тук.
Дигитални истории

Най-нови публикации:

ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

Изкуственият интелект е неоправдан медиен шум или големият фактор, който ще промени бъдещето ни като вид? Ще отвори невероятни възможности пред хората, или ще превърне света в дигитален концлагер?...

повече информация
Петко Динев, който дава „очи“ на НАСА

Петко Динев, който дава „очи“ на НАСА

Българин и екипът му създават камери, с чиято помощ НАСА е насочила поглед към Луната, а после и към Марс. Неговите разработки се използват от всички най-големи авиационни компании, а освен че вече...

повече информация
„Ако е красиво, има ли значение, че е написано от ИИ?“

„Ако е красиво, има ли значение, че е написано от ИИ?“

Apollo ex machina – така се казва първият у нас конкурс за поезия, създадена с помощта на изкуствен интелект. Сега е моментът да се включите! Заглавието на начинанието е специално, а негов автор е...

повече информация
Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Бихте ли предположили, че българските ИТ лидери четат „Хари Потър“ или пък Достоевски? Аз не бих, поне допреди седмица, когато ги попитах и се оказа, че е точно така. Няма да се уморя да повтарям,...

повече информация
„Инженери ще се търсят винаги. Но уменията ни трябва да се променят“

„Инженери ще се търсят винаги. Но уменията ни трябва да се променят“

Работата в софтуерния свят вече се промени из основи с идването на изкуствения интелект. Не вярвам, че някой би го оспорил, независимо дали в положителен или отрицателен аспект, с ентусиазъм или...

повече информация

Още публикации по темата:

От рубриката:

Виж ти! Когато гледането стане изкуство

Виж ти! Когато гледането стане изкуство

Да виждаш и да разпознаваш вече не е обективно умение и наука. Технологиите и хората вече не са способни да ни доказват кое произведение е човешко и кое – не, с достатъчна степен на убеденост, че да има смисъл. Тогава не е ли време да погледнем на гледането, на търсенето на истината, на проверката на факти… като на изкуство?
В една сумрачна зала неколцина млади лекари са се скупчили пред прожекционен екран. Но не, на него не се показват рентгенови снимки, нито лабораторни резултати, залата не е в болница или университет, а… в музей. Докторите разглеждат репродукции на картини от разни епохи – от Гоя, та до древноегипетски статуи.
Жената отпред им обяснява, че целта е да анализират какво виждат, сякаш е медицински случай. На екрана се появява хаотична мозайка от сиви, черни и бели „лепенки“. „Това е прочуто произведение на изкуството“, подсказва тя. Следва неловка тишина. „Испанско е, на един от най-известните художници на XX век…“ Накрая един от лекарите се престрашава: „Пикасо?“.
Оказва се прав – пред тях е „Герника“, емблематичната картина за ужасите на войната, която никой от присъстващите досега не е разпознал. Младите медици, потънали досега в учебници по биохимия и дежурства в болницата, изведнъж са изправени пред задача от съвсем различно естество – да търсят знаци, символи и истории, скрити в изкуството. Но защо им е нужно? Оказва се, че по неочакван начин това умение може да им помогне да откриват и анализират по-добре симптомите на своите пациенти.

повече информация
ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

Изкуственият интелект е неоправдан медиен шум или големият фактор, който ще промени бъдещето ни като вид? Ще отвори невероятни възможности пред хората или ще превърне света в дигитален концлагер? Вашето мнение е изключително важно и ще съм благодарен от сърце, ако го споделите в кратка анкета! Очакват ви и награди – избрани книги!
Отговорите се събират до 31 декември. Можете да изберете въпросите, на които да отговорите. Анкетата е анонимна.
Всяко попълване, всяко споделяне е безценна помощ за това да видим как се отнасяме днес към голямата технологична тема на нашето време!

повече информация
Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Бихте ли предположили, че българските ИТ лидери четат „Хари Потър“ или пък Достоевски? Аз не бих, поне допреди седмица, когато ги попитах и се оказа, че е точно така.
Няма да се уморя да повтарям, че ти си това, което четеш. В навечерието на Деня на будителите изпратих на 30 забележителни за мен личности кратка покана – да препоръчат 3 свои любими книги на читателите на Дигитални истории. Постарах се палитрата от гости да е възможно най-пъстра – от хора на лидерски позиции до такива, познати като лектори; от работещи отвъд океана до чужденци, които секторът е довел в България; представители на най-пъстри технологии и на различни поколения.
Получих цели 20 отговора, като днес имам удоволствието да ви представя втората половина от отговори (първата е тук)! Отново ще отбележа, че не са групирани по определена логика, защото се оказаха прекалено пъстри и неочаквани, за да е възможно, предлагам ви ги в поредността, в която ги получих.
Приятно четене!

повече информация

Най-новите:

Виж ти! Когато гледането стане изкуство

Виж ти! Когато гледането стане изкуство

Да виждаш и да разпознаваш вече не е обективно умение и наука. Технологиите и хората вече не са способни да ни доказват кое произведение е човешко и кое – не, с достатъчна степен на убеденост, че да има смисъл. Тогава не е ли време да погледнем на гледането, на търсенето на истината, на проверката на факти… като на изкуство?
В една сумрачна зала неколцина млади лекари са се скупчили пред прожекционен екран. Но не, на него не се показват рентгенови снимки, нито лабораторни резултати, залата не е в болница или университет, а… в музей. Докторите разглеждат репродукции на картини от разни епохи – от Гоя, та до древноегипетски статуи.
Жената отпред им обяснява, че целта е да анализират какво виждат, сякаш е медицински случай. На екрана се появява хаотична мозайка от сиви, черни и бели „лепенки“. „Това е прочуто произведение на изкуството“, подсказва тя. Следва неловка тишина. „Испанско е, на един от най-известните художници на XX век…“ Накрая един от лекарите се престрашава: „Пикасо?“.
Оказва се прав – пред тях е „Герника“, емблематичната картина за ужасите на войната, която никой от присъстващите досега не е разпознал. Младите медици, потънали досега в учебници по биохимия и дежурства в болницата, изведнъж са изправени пред задача от съвсем различно естество – да търсят знаци, символи и истории, скрити в изкуството. Но защо им е нужно? Оказва се, че по неочакван начин това умение може да им помогне да откриват и анализират по-добре симптомите на своите пациенти.

повече информация
ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

ИИ – революция или маркетингов шум? Мнението ви е важно! (анкета)

Изкуственият интелект е неоправдан медиен шум или големият фактор, който ще промени бъдещето ни като вид? Ще отвори невероятни възможности пред хората или ще превърне света в дигитален концлагер? Вашето мнение е изключително важно и ще съм благодарен от сърце, ако го споделите в кратка анкета! Очакват ви и награди – избрани книги!
Отговорите се събират до 31 декември. Можете да изберете въпросите, на които да отговорите. Анкетата е анонимна.
Всяко попълване, всяко споделяне е безценна помощ за това да видим как се отнасяме днес към голямата технологична тема на нашето време!

повече информация
Петко Динев, който дава „очи“ на НАСА

Петко Динев, който дава „очи“ на НАСА

Българин и екипът му създават камери, с чиято помощ НАСА е насочила поглед към Луната, а после и към Марс. Неговите разработки се използват от всички най-големи авиационни компании, а освен че вече са „стъпвали“ на нашия спътник, летят и на хиляди спътници в орбита.
Петко Динев през 90-те заминава за Флорида, където започва работа в НАСА. После създава своя компания, която се откроява на световно ниво с опита си в създаването на промишлени камери.
Пътят му тръгва от Казанлък – той е първият български златен медалист по физика и ученик на знаменития Теодосий Теодосиев – Тео. Гостът ни е и сред главните герои в новия документален филм „Социално силните“, даващ думата на златните медалисти от школата на Тео.
Как човек случайно стига до НАСА? Как един учен създава компания, превърнала се в световен еталон в своята индустрия? Как можем да променим това, че днес половината ученици от гимназията, която е завършил, не успяват да изкарат и тройка на матурата по математика? Как да превърнем науката в мода и да дадем шанс на технологиите? Как да наваксаме изоставането си като хора от огромното им развитие? Огромни въпроси имаме да обсъждаме с този изключителен събеседник.
„Да, живеем в интересни времена. Даже може би твърде интересни. Аз не мисля, че сме стигнали предела на технологиите. Мисля, че сме още в увертюрата…“

повече информация
„Ако е красиво, има ли значение, че е написано от ИИ?“

„Ако е красиво, има ли значение, че е написано от ИИ?“

Има ли място за поезия в епохата на TikTok и изкуствения интелект? Как да върнем това изкуство на заслужения пиедестал? Могат ли и трябва ли да бъдат инфлуенсъри днешните поети? Плашещо или мечтано е времето, в което изкуственият интелект вече не може да бъде разделен от поезията?
Apollo ex machina – така се казва първият у нас конкурс за поезия, създадена с помощта на изкуствен интелект. Сега е моментът да се включите! Заглавието на начинанието е специално, а негов автор е днешният ни гост. Освен член на журито на конкурса, той е и управител на издателство Scribens, което ще издаде в стихосбирка най-добрите стихове от него.
Георги Гаврилов е поет и… физик. Създава издателство Scribens, за да дава шанс на млади български автори да стигнат до читателите си.

повече информация
Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Ще има ли български автор? Книжните препоръки на ИТ лидерите III

Бихте ли предположили, че българските ИТ лидери четат „Хари Потър“ или пък Достоевски? Аз не бих, поне допреди седмица, когато ги попитах и се оказа, че е точно така.
Няма да се уморя да повтарям, че ти си това, което четеш. В навечерието на Деня на будителите изпратих на 30 забележителни за мен личности кратка покана – да препоръчат 3 свои любими книги на читателите на Дигитални истории. Постарах се палитрата от гости да е възможно най-пъстра – от хора на лидерски позиции до такива, познати като лектори; от работещи отвъд океана до чужденци, които секторът е довел в България; представители на най-пъстри технологии и на различни поколения.
Получих цели 20 отговора, като днес имам удоволствието да ви представя втората половина от отговори (първата е тук)! Отново ще отбележа, че не са групирани по определена логика, защото се оказаха прекалено пъстри и неочаквани, за да е възможно, предлагам ви ги в поредността, в която ги получих.
Приятно четене!

повече информация
„Инженери ще се търсят винаги. Но уменията ни трябва да се променят“

„Инженери ще се търсят винаги. Но уменията ни трябва да се променят“

Работата в софтуерния свят вече се промени из основи с идването на изкуствения интелект. Не вярвам, че някой би го оспорил, независимо дали в положителен или отрицателен аспект, с ентусиазъм или отвращение, с нетърпение за бъдещето или опит да останем в миналото.
Колко обаче са различни нещата и докъде ще стигнат?
Джемал Ахмедов ще ни покаже отговорите на 29 ноември в уъркшопа на conf.ai. Той ще впрегне ИИ агентите, които ще заработят като цял софтуерен екип.
Преди това обаче е време да поговорим. За хаотичното настояще и неясното бъдеще на софтуерния свят в годините на напредналия изкуствен интелект. „Винаги ще имаме човек в процеса по създаване на софтуер“, казва Джемал. Така ли е наистина?

повече информация
Share This