Новости
Кошка бросила котят – OpenSource всё виноват

Кошка бросила котят – OpenSource всё виноват

Давненько не было крупных скандалов вокруг OpenSource. И вот Log4j дал повод пошуметь и высказаться экспертам всех мастей. Не буду отмалчиваться и я :-)

В очередной раз программисты (а значит и компании) столкнулись с большими проблемами класса "решето". Самой громкой за последнее время оказалась уязвимость в крайне популярной библиотеке логирования для Java – Log4j. Её уже успели назвать одной из самых крупных уязвимостей в истории как агентство по кибербезопасности и защите США, так и независимые специалисты по безопасности.

log4j meme

Разбирать суть уязвимости я здесь не буду. Тем более что патчи шли один за другим, а проблемы с логгером так и не решались полностью. Мне в этом всём интереснее подход людей, которые напрямую или опосредовано пользовались этой библиотекой. А может и не пользовались, а может и не пострадали – благо свобода слова, каждый может высказаться.

Почему программисты такие криворукие и не могут ничего написать без багов? Потому что заняты подсчётом зарплат и путешествиями

Один из популярнейших комментариев на TJ

Понятна "классовая ненависть" менеджеров к программистам. Однако, стоит заметить, что библиотека открытая и разрабатывается на энтузиазме нескольких программистов. К примеру, с 2010-го года всего 99 программистов внесли в неё хоть какие-то изменения. Только 10 из них внесли изменения более 10 раз. Если посмотреть на год до "шумихи": 27 участников, 4 из них с более 10 коммитов.

one more meme

То есть это популярная библиотека, которая разрабатывается на альтруизме и ЧСВ пары десятков программистов. Используется в AWS, Cloudflare, iCloud, Minecraft, Steam. В общем, миллионы (а может и сотни миллионов) компьютеров и серверов внезапно оказались в опасности из-за ошибок в чьём-то pet-project? Да, и всегда так было.

and more

Уязвимости есть в любом более-менее сложном проекте. Чем он популярнее, тем больше проблем это может доставить. Казалось бы, прописные истины... Но в очередной раз поднялась волна "большие корпорации наживаются на opensource", "кто там говорил, что в Java нет уязвимостей", "почему программисты не могут писать без ошибок" и прочее-прочее. У кого что болит...

Но если не пытаться в этом всём искать происки масонов, заговор рептилоидов, то всё до смешного просто.

  • Есть программисты, что пишут код, который распространяется под Apache License 2.0. Раз пишут, значит их всё устраивает.
  • Есть другие программисты, использующие данный код бесплатно, не участвуя в разработке данного кода. Раз используют не глядя, значит их всё устраивает.
  • Есть компании, нанимающие людей из пункта выше, получающие фичи быстрее за счёт OpenSource. Код не их, код открытый с отказом от ответственности. Раз нанимают, значит их всё устраивает.
  • Есть клиенты, использующие/покупающие услуги или товары компаний из пункта выше. Подтвердившие лицензионное соглашение (отказ от ответственности). Раз покупают, значит их всё устраивает.

И, чёрт возьми, всех всё устраивает, пока что-то не ломается. И даже потом всех всё устраивает, просто остаётся "осадочек".

Те, кого не устраивает открыто заявляют об этом, как например разработчик PLC4X. Он заявил о прекращении разработки своего проекта, если не сможет решить проблемы с финансированием. Проект популярный, аудитория – отнюдь не рядовые пользователи ПК. Думаю, к нему прислушаются компании, которые экономят на его библиотеках десятки миллионов вечно-зелёных. В своё время Торвальдс также заявлял о том, что для продолжения работы ему нужно финансирование. И получил его.

Главное, если не устраивает – говорить об этом. Не делать то, что тебя не устраивает.

Опять же можно поступить как Азер Кочулу – просто удалить свой проект (тот самый left-pad с npm). Правда, это в очередной раз вызовет сбой в работе у многих программистов, а в интернетах появятся разного рода бурления... Но это не так уж и важно. Главное – чтобы всех всё устраивало!