Страх и ненависть Линуса Торвальдса: кому создатель Linux рекомендует выпить йаду
Создатель Linux никогда не стеснялся в выражениях: мы собрали топ-10 людей и явлений, которые вызывают ненависть у старины Торвальдса.
Торвальдс скромно называет себя самым умным, невероятно красивым и скромным человеком. А ещё едва ли не каждый день что-то или кого-то ругает. Разберёмся, что же так нервирует одного из гениальнейших разработчиков нашего времени.
Mach и FreeBSD — за что-то непонятное
Разработчиков Mach и FreeBSD Линус назвал некомпетентными идиотами, а сообщество OpenBSD и вовсе обозвал группой мастурбирующих обезьян.
«Я утверждаю, что люди из Mach (и, очевидно, FreeBSD) — некомпетентные идиоты. Играть в игры с VM — плохо. Копии памяти — плохи, но, честно говоря, у них меньше недостатков, чем у игр с VM».
Торвальдс утверждает, что cow-механизм receiving zero copy, сделанный во FreeBSD плох, так как повторный page fault приведёт к заметному падению производительности. Смысл в том, что данные копируются из сетевой карты в память компьютера, а затем подставляются в VFS cache или userspace pages, при этом в обязательном порядке происходит как минимум 1 TLB flush, а если после этого пользователь что-то пишет на этих страницах, то генерируется page fault, обработка которого занимает очень много времени. В этом и суть претензий Торвальдса.
Вы что-нибудь поняли? Мы тоже думаем, что к людям, которые способны совершать такие сложные и непонятные ошибки, можно отнестись с большим уважением :)
Debian — за слишком сложную установку
В Debian Линусу не понравилась сложность установки. Создатель Linux очень ценит простоту интерфейса, поэтому в одном из своих интервью 2007 года он раскритиковал Debian.
«Можете закрыть уши, если вам не понравятся мои слова, но я считаю, что операционная система должна устанавливаться легко, — чтобы я мог просто продолжить спокойно разрабатывать ядро».
В общем, Линус считает установку Debian абсолютно бессмысленным занятием. Именно поэтому он чуть-чуть хвалит «дочку» Debian — Ubuntu (хотя и предпочитает другой дистрибутив — Fedora Linux).
«Я пару раз пробовал Ubuntu — в основном потому, что она прекрасно сумела сделать Debian пригодным для использования».
GNOME — за излишнюю простоту
Это может показаться забавным на фоне предыдущего пункта, но рабочую среду GNOME Линус обругал за чрезмерную простоту. Ещё в 2005 году он открыто призывал пользователей переходить на KDE, а в 2007 году снова проехался по рабочей среде и её разработчикам — даже написал большое письмо.
«Похоже, GNOME разрабатывают интерфейс-фашисты, для которых постоянным оправданием неделания чего бы то ни было является не „это слишком сложно сделать“, а „это может запутать пользователя“».
По его мнению, разработчики поначалу и правда сделали очень простую и понятную графическую оболочку, но так увлеклись минимализмом, что в результате сделали простоту интерфейса карго-культом и пренебрегли элементарной полезностью.
«Быть только простым в использовании — плохо. Ведь это означает, что, преодолев начальную кривую обучения, вы не можете сделать нечто большее — то, что хотите. Это гораздо хуже, чем сложный интерфейс».
Основа конфликта в том, что Линус стремится предоставить пользователю максимальную свободу в настройке и управлении всеми элементами, а в GNOME основной акцент сделан на юзабилити и стабильности. То есть из графического интерфейса нельзя получить доступ к потенциально опасным для системы опциям.
Но в 2007 году скандал не закончился — пять лет спустя отец Linux заявил, что новый GNOME 3 — полный провал с точки зрения пользовательского опыта. Теперь для простейших операций и настроек приходится устанавливать дополнения, которые, ко всему прочему, могут оказаться несовместимыми с новой версией GNOME.
«Extensions.gnome.org мог бы быть отличным начинанием, но на практике у него серьёзные проблемы с юзабилити. Сам подход GNOME 3 „мы не предоставляем по умолчанию базовых инструментов для исправления простых вещей, но вы можете решить проблемы с помощью неофициальных расширений“ представляется полным провалом пользовательского опыта».
C++ — за чушь
2007 год вообще был для Торвальдса богатым на скандалы — так, он назвал C++ ужасным языком программирования.
«C++ — ужасный язык. И он становится всё ужаснее из-за того, что многие плохие программисты используют его — ведь на нём намного легче генерировать полную чушь. Откровенно говоря, я бы выбрал C даже за то, что в твой код не будут вмешиваться C++-программисты».
NVIDIA — за нежелание сотрудничать с комьюнити
В 2012 году Линус заявил, что NVIDIA — худшая компания из всех, с которыми приходилось иметь дело сообществу Linux. Он раскритиковал NVIDIA прямо во время своего выступления перед студентами финского Университета Аалтo. Причина недовольства — в том, что NVIDIA не хочет сотрудничать с сообществом Open Source и скрывает от Linux-разработчиков код своих графических драйверов.
В конце выступления он нецензурно послал NVIDIA, сопроводив это характерным жестом: «NVIDIA, FUCK YOU!»
NVIDIA не остались в стороне и тут же заявили, что не собираются менять политику в отношении Linux:
«Поддержка Linux важна для NVIDIA, и компания понимает, что есть пользователи, которые очень сильно радеют за Linux как open-source-платформу, так же, как мы желаем предоставить им самые быстрые видеодрайвера.
Недавно был поднят вопрос о том, что NVIDIA не поддерживает для Linux технологию Optimus. Выпустив её, мы обеспечили поддержку только для Windows 7. Тем не менее люди из сообщества Open Source сплотились и самостоятельно создали проект по поддержке Optimus — Bumblebee…
Мы понимаем, что многие предпочли бы, чтобы мы выпустили подробную документацию о внутреннем устройстве наших видеодрайверов или чтобы мы более активно участвовали в обсуждениях, касающихся ядра Linux, но мы решили поддерживать Linux путём задействования максимально возможного количества общего кода с Windows, а не вкладывая ресурсы в разработку отдельного кода под Linux. Такое решение… позволит нам предоставить одинаково высокое качество работы с нашим оборудованием вне зависимости от платформы».
Да уж, эти ребята знают толк в канцелярите — после их письма невольно проникаешься пониманием к выходке эксцентричного финского шведа.
ZFS — за проблемы с лицензированием
Это свежий участник личного антирейтинга Линуса. Файловую систему ZFS Линус раскритиковал в своей рассылке уже в 2020 году:
«Не используйте ZFS. Это же так просто. Я думаю, что её популярность — лишь дань моде, а не что-то серьёзное. К тому же из-за проблем с лицензированием лично я точно не буду иметь с ней дела».
Некоторые разработчики уже добавили поддержку ZFS в свои дистрибутивы — например, в Ubuntu под эту задачу даже создали отдельный модуль ядра.
Проблема в том, что юристы всё ещё не могут определиться, как классифицировать прослойку совместимости: как часть ядра или как производную от ZFS. Во втором случае использование файловой системы становится незаконным.
К тому же производителю ZFS, одиозной Oracle, Торвальдс не доверяет — и правильно делает. Этот технологический гигант знаменит своими исками к другим компаниям — так, уже 10 лет тянется суд против Google из-за использования Java в экосистеме Android. Поэтому Линус заявил, что не будет чувствовать себя в безопасности, если интегрирует ZFS в ядро Linux с помощью отдельного модуля.
«Меня не интересует прослойка совместимости с ZFS, которая, как некоторые думают, разделяет проекты. Это не даёт нам никаких преимуществ, учитывая историю исков от Oracle. Я не думаю, что такое решение устранит проблемы с лицензированием».
Чтобы включить ZFS в основное ядро, Линус потребовал от Oracle предоставить подписанное письмо о том, что ZFS находится под лицензией GPL. Oracle ожидаемо отмалчивается.
AVX-512 от Intel — за низкую производительность
«Я надеюсь, что AVX-512 умрёт мучительной смертью и Intel начнёт фиксить настоящие проблемы, а не создавать каждый раз новые магические инструкции и писать под них тесты, чтобы эти инструкции выглядели хорошо».
Эта порция ненависти тоже свежая — из 2020 года. И появилась она в дискуссии об Advanced Vector Extensions 512 (AVX-512), которые можно найти на некоторых процессорах Intel.
«Производительность у Intel FP отстойная — и для них это не важно. Что происходит за рамками тестов, абсолютно никого в Intel не волнует… У AVX-512 есть недостатки. И я бы предпочёл, чтобы мощь транзисторов задействовали для более нужных вещей. Просто дайте мне больше ядер с хорошей однопоточной производительностью — без мусора вроде AVX-512».
Windows — за то, что это Windows
Linux — идейная противоположность Windows. Но Билла Гейтса, насколько известно, Торвальдс никуда не посылал. И даже утверждал, что Microsoft не зло, просто у них паршивые операционные системы. В своей книге Торвальдс в шутку пишет, что это скорее в Microsoft его ненавидят:
«Расклад тут такой: с одной стороны, огромная коварная корпорация Microsoft и злобный, жадный, отвратительно богатый Билл Гейтс, а с другой — любовь и бесплатный софт для всех плюс скромный (с виду) народный герой Линус Б. Торвальдс. Многие ребята заканчивают учёбу и устраиваются в корпорации, принося с собой любовь к Linux. И те из них, кто проникал в недра Microsoft, рассказывают, что видели моё лицо на мишенях для дартса. И у меня только один вопрос: „Как можно промахнуться мимо моего носа?“»
К сожалению, мы не нашли статистику по попаданиям дротиков в нос Торвальдса в Microsoft, поэтому поверим гениальному и эксцентричному создателю Linux на слово.
Хотите понять, правду ли говорит Линус Торвальдс про C++? Записывайтесь на курс «Профессия Разработчик на C++» в Skillbox.