?

Log in

No account? Create an account

Previous Entry | Next Entry

Последнее время одной из самых модных тем в российском официозе стала тема ""ИТ-шного импортозамещения". Это не случайно, именно ИТ -- это та область где РФ максимально зависит от международного сообщества, причем именно ЗАПАДНОЙ его части. "Но ничего -- бодро вещают в различных СМИ всяческие российские "клименки" -- еще немного и мы полностью перейдем на наше, РОССИЙСКОЕ программное обеспечение и полностью перестанем зависить от проклятого Запада". О том, сколько именно займет это "немного" при нынешнем уровне отставания росийского ИТ-сектора от мирового уровня я уже писал неоднократно, сейчас же я хочу рассказать некую историю, ставящую под сомнение принципиальную возможность для какой-либо страны добится полной автаркии в Ит-области.

История абсолютно реальная, произошедшая в марте этого, 2016, года.
Не знаю знаете вы об этом или нет, мои уважаемые френды, но сейчас практически нет в мире сайтов или веб-сервисов, не использующих в своей работе JS-скрипты. Причем если изначально JS-скрипты использовались исключительно для всякого рода "приколов и украшалок" -- типа бегающих строк текста или тикающих часиков в углу экрана -- то теперь без правильной работы JavaScript  работа сайта просто невозможна.
 
23 марта 2016 web-разработчики со всего мира заметили, что с их программами на JavaScript что-то не так. Одно из предупреждений гласило: «npm ERR! 404 'left-pad' is not in the npm registry». Это означает, что для запуска проекта требуется пакет под названием left-pad, но получить его не удается. Многие разработчики не могли понять, что случилось: они никогда не использовали такой модуль.
 
Разработка на JavaScript сейчас устроена примерно таким образом. В глобальной системе хранения пакетов npm находятся модули, которые при сборке скачиваются на компьютер разработчика или на сервер, где работает сайт. Один модуль может требовать наличия другого модуля, тот — третьего и так далее. Разработчик, используя в своей программе модуль, рассчитывает, что все модули доступны в npm, и не задумывается, от чего зависят используемые пакеты.

Азер Кочулу

На фото программист-разработчик Азер Кочулу из Калифорнии-- человек, который  некогда написал очень простенькую программку,  насчитывающую всего 11 строк кода,  тот самый модуль left-pad. Затем он совершенно безвозмедно,то есть даром, разместил его в той самой глобальной системе хранения пакетов npm, о котором написано выше.  Этот модуль был скачен и установлен в самые разные программы НЕСКОЛЬКО ДЕСЯТКОВ МИЛЛИОНОВ РАЗ!!! В некий момент времени, поругавшись с организацией, управляющей облачной системой хранения пакетов npm, он просто удалил этот модуль из хранилища -- как владелец он вполне имел право это сделать. Тем самым  он стал недоступен для дальнейшего использования при разработке, но это бы еще полбеды. Беда в том, что примерно в каждом десятом проекте вместо физического наличия строк кода из этого модуля была ССЫЛКА на его расположение в хранилище npm, сам же текст модуля должен был ДИНАМИЧЕСКИ подставляться  в момент выполнения программы. Естественно. ссылка не работала, ничего не подставлялось и как результат -- не работал весь код. Оказалось, что от крохотного модуля могут зависеть даже такие крупные проекты как React от Facebook.
 
В течении нескольких часов npm связалась с Азером Кочулу, причина конфликта была устранена и он востановил свой модуль. Но несколько часов весь интернет и всех интернет-разработчиков буквально лихорадило. И сделал это ОДИН человек, удаливший всего ОДИННАДЦАТЬ строк кода. А представьте, что завтра все российские сайты и всех российских интернет-разработчиков принудительно отключат  от всего хранилища npm...
promo torin_kr december 5, 2015 19:43 26
Buy for 200 tokens
Этот пост -- заказной. Меня его попросила написать одна моя хорошая знакомая, с которой мы знакомы такое количество лет. что аж страшно становится. Как говорит в таких случаях мой младший брат -- "Да ну нафиг. Столько и не живут". Живут... к сожалению. Ладно, это было лирическое…

Comments

nachbar
Dec. 29th, 2016 06:57 pm (UTC)
Вы правы, напраслинину я на дизайнеров накатил. А программисты с прямыми руками, действительно редкость!