?

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 24
Buy for 200 tokens
Этот пост -- заказной. Меня его попросила написать одна моя хорошая знакомая, с которой мы знакомы такое количество лет. что аж страшно становится. Как говорит в таких случаях мой младший брат -- "Да ну нафиг. Столько и не живут". Живут... к сожалению. Ладно, это было лирическое…

Comments

( 8 comments — Leave a comment )
vinnichenkoav
Dec. 29th, 2016 02:03 pm (UTC)
ЭТО БЫЛО БЫ МУДРОЕ РЕШЕНИЕ...
ИНТЕРЕСНО - СКОЛЬКО ПОСЛЕ ОТКЛЮЧЕНИЯ ПРОДЕРЖИТСЯ НЫНЕШНИЙ ИМПОРТОЗАМЕЩАЮЩИЙ РЕЖИМ?
(Deleted comment)
nachbar
Dec. 29th, 2016 02:14 pm (UTC)
вебдизигеры оне такие, вебдизигеры!
torin_kr
Dec. 29th, 2016 03:30 pm (UTC)
Да там не дезигнеры, там скорее веб-прогеры. Дезигнеры и слов-то таких буржуйских -- npm, hode.js -- не знают...
nachbar
Dec. 29th, 2016 06:57 pm (UTC)
Вы правы, напраслинину я на дизайнеров накатил. А программисты с прямыми руками, действительно редкость!
smenavech
Dec. 29th, 2016 04:11 pm (UTC)
скажите, вы правда разбираетесь в том, что пишете? И если да, почему бы вам, папример, не задуматься, что бы можно было сделать в етом случае (я уж не говорю о том, на каком основании и какое государство может запретить доступ к свободной библиотеке, ему не принадлежащей)
torin_kr
Dec. 29th, 2016 07:59 pm (UTC)
Государство не может, а вот сама организация npm может. Вы думаете Россия тока с США воюет? Нет, по факту она уже воюет со всем интеллектуальным сообществом планеты Земля. А на войне, извините, как на войне...
smenavech
Dec. 29th, 2016 11:29 pm (UTC)
ну это только ваша идея. Пока Запад борется с неолибералами, пытающимися его втянуть во всякие войны (насколько вообще Запад сусжествует). И все-таки, простая задачка - ресурс с библиотекой блокируют. Что делать?
( 8 comments — Leave a comment )