<?xml version="1.0" encoding="utf-8" ?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:tt="http://teletype.in/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"><title>Андрей Жаркевич</title><subtitle>Пишу статьи, готовлю обзоры новостей и аналитические исследования. Специализируюсь на ИТ и ИБ, финансах и инвестициях. Увлекаюсь ЗОЖ и фитнесом.</subtitle><author><name>Андрей Жаркевич</name></author><id>https://teletype.in/atom/azhark</id><link rel="self" type="application/atom+xml" href="https://teletype.in/atom/azhark?offset=0"></link><link rel="alternate" type="text/html" href="https://azhark.cc/?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><link rel="next" type="application/rss+xml" href="https://teletype.in/atom/azhark?offset=10"></link><link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></link><updated>2026-06-05T18:41:30.633Z</updated><entry><id>azhark:digital-legacy</id><link rel="alternate" type="text/html" href="https://azhark.cc/digital-legacy?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Вот и всё, что останется после меня — путеводитель по цифровому наследству в России</title><published>2026-06-04T20:21:51.560Z</published><updated>2026-06-04T20:21:51.560Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/da/1e/da1ebc34-865b-4c9c-903d-f9f642f98108.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/52/ab/52abd19b-e840-48bc-9863-e31b1cc43d82.png&quot;&gt;У среднего россиянина за двадцать лет интернет-жизни накопилось примерно столько цифровых активов, сколько физических за всю историю его семьи. Тридцать-сорок аккаунтов в разных сервисах. Несколько тысяч фотографий, которые лежат не в альбоме на полке, а в облаке. Переписка с близкими за десять лет в Telegram и других мессенджерах. Документы на Яндекс и Гугл Диске. Возможно, криптокошелёк с какими-то активами. Деньги в банковских приложениях. Подписки, которые продолжают списываться. Электронная подпись для общения с налоговой. Аккаунт на Госуслугах — главный цифровой паспорт российского человека сегодня, через который проходят все взаимодействия с государством.</summary><content type="html">
  &lt;figure id=&quot;QqJk&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/52/ab/52abd19b-e840-48bc-9863-e31b1cc43d82.png&quot; width=&quot;1672&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;UsJx&quot;&gt;У среднего россиянина за двадцать лет интернет-жизни накопилось примерно столько цифровых активов, сколько физических за всю историю его семьи. Тридцать-сорок аккаунтов в разных сервисах. Несколько тысяч фотографий, которые лежат не в альбоме на полке, а в облаке. Переписка с близкими за десять лет в Telegram и других мессенджерах. Документы на Яндекс и Гугл Диске. Возможно, криптокошелёк с какими-то активами. Деньги в банковских приложениях. Подписки, которые продолжают списываться. Электронная подпись для общения с налоговой. Аккаунт на Госуслугах — главный цифровой паспорт российского человека сегодня, через который проходят все взаимодействия с государством.&lt;/p&gt;
  &lt;p id=&quot;Sf3e&quot;&gt;Что произойдёт со всем этим, если завтра вас не станет?&lt;/p&gt;
  &lt;p id=&quot;aNqD&quot;&gt;Если сильно упростить, то почти ничего. Российское право и российская инфраструктура цифровых сервисов сегодня устроены так, что родственники после смерти близкого оказываются перед непробиваемой стеной. Доступ к большинству аккаунтов получить невозможно. Деньги, которые лежат на счёте у умершего, придётся вытаскивать через нотариуса в течение полугода, и то не все и не всегда. Аккаунт Госуслуг останется висеть как зомби (буквально — в 2024 году обнаружилось, что в Сети идёт активная торговля «мёртвыми» аккаунтами Госуслуг). Криптокошелёк, к которому никто не знает seed-фразу, исчезнет навсегда. Переписку прочитать не сможет никто, если вы пользовались секретными чатами Telegram или мессенджерами с e2e-шифрованием. В случае с госмессенджером Макс ваши переписки будут храниться в течение полугода. Как, впрочем, и переписки в ВК и Одноклассниках.&lt;/p&gt;
  &lt;p id=&quot;lcTC&quot;&gt;Этот пост — попытка разобраться, что с этим делать. Я пройдусь по нормативным актам российского права в части цифровых активов (спойлер: отдельного закона про цифровое наследство в РФ нет), по главным сервисам и категориям — Госуслуги, банки, электронная подпись, криптовалюта, мессенджеры, почта, облачные хранилища, расскажу, что делают Apple и Google, и в финале дам практический протокол: что конкретно нужно сделать прямо сейчас, при жизни, чтобы после нашей смерти близкие не потеряли всё накопленное.&lt;/p&gt;
  &lt;p id=&quot;5pva&quot;&gt;Сразу оговорюсь: тема малоприятная. О собственной смерти думать не любит никто. Но разобраться в этом до того, как стало поздно, — обязанность ответственного взрослого человека, особенно если у него есть семья. Я попробую сделать материал максимально практичным.&lt;/p&gt;
  &lt;h2 id=&quot;1-что-говорит-российское-право&quot;&gt;1. Что говорит российское право&lt;/h2&gt;
  &lt;p id=&quot;fuUF&quot;&gt;Главная статья, которая регулирует наследство в России, — статья 1112 Гражданского кодекса РФ. Она устанавливает, что в состав наследства входят «вещи, иное имущество, в том числе имущественные права и обязанности». Личные неимущественные права (например, право авторства, право на имя) в наследство не переходят.&lt;/p&gt;
  &lt;p id=&quot;iUm0&quot;&gt;«Цифровые активы» в статье 1112 прямо не указаны. Это создаёт первую большую проблему.&lt;/p&gt;
  &lt;p id=&quot;ZZbE&quot;&gt;В 2019 году в ГК была добавлена статья 141.1 «Цифровые права» (через ФЗ от 18 марта 2019 года № 34-ФЗ, действует с 1 октября 2019 года). Цифровое право — это обязательственное и иное право, реализуемое в правилах информационной системы. Эта статья создала юридическую категорию, но не сказала ничего конкретного про наследование. Применяются общие нормы наследственного права (раздел V ГК РФ).&lt;/p&gt;
  &lt;p id=&quot;QWTY&quot;&gt;Главная практическая проблема — пункт 2 статьи 141.1. Он признаёт обладателем цифрового права того, кто фактически распоряжается им в системе. То есть тот, кто знает пароль и имеет физический доступ. На практике это означает вот что: даже если у вас есть свидетельство о праве на наследство, выданное нотариусом, вы не можете заставить условный криптокошелёк или зашифрованный архив выдать вам данные, если не знаете ключа. Свидетельство не открывает замок.&lt;/p&gt;
  &lt;p id=&quot;DFof&quot;&gt;С персональными данными ситуация частично описана. Часть 7 статьи 9 ФЗ-152 «О персональных данных» устанавливает: согласие на обработку персональных данных умершего дают его наследники (в порядке очередей по статьям 1142–1145 и 1148 ГК), если такое согласие не было дано при жизни. Что делать, если наследников нет, закон не разъясняет.&lt;/p&gt;
  &lt;p id=&quot;ROz4&quot;&gt;Отдельного закона о цифровом наследстве в России не существует. Депутаты периодически вносят предложения, Минюст обсуждает закрепление понятия, но пока на уровне законопроектов. Главный практический инструмент — закрытое завещание (статья 1126 ГК), в которое юристы рекомендуют включать перечень аккаунтов, место хранения паролей и инструкции для наследников. Опись наследственного имущества (статья 1171 ГК) формально позволяет нотариусу включать цифровые активы, но порядок не регламентирован, и на практике это получается у нотариусов с трудом.&lt;/p&gt;
  &lt;h2 id=&quot;2-госуслуги-главный-аккаунт-российского-человека&quot;&gt;2. Госуслуги: главный аккаунт российского человека&lt;/h2&gt;
  &lt;p id=&quot;3OL3&quot;&gt;Аккаунт на Госуслугах в 2026 году — это, наверное, самая важная единица цифровой идентичности россиянина. Через него проходит общение с налоговой, с пенсионным фондом, с МФЦ, с медициной, с госпошлинами, с водительскими правами, с регистрацией недвижимости, с детскими садами, со школами. Без Госуслуг полноценное существование в современной России затруднительно. И с декабря 2025 года через Госуслуги обязательна авторизация в национальном мессенджере МАКС.&lt;/p&gt;
  &lt;p id=&quot;PIdz&quot;&gt;Что происходит с аккаунтом Госуслуг после смерти? Автоматического удаления нет. Министерство цифрового развития называет два сценария закрытия аккаунта:&lt;/p&gt;
  &lt;ul id=&quot;oe96&quot;&gt;
    &lt;li id=&quot;pdFX&quot;&gt;&lt;strong&gt;По сведениям из ЗАГСа.&lt;/strong&gt; Когда ЗАГС регистрирует смерть, информация попадает в реестры, и теоретически аккаунт может быть деактивирован автоматически. На практике это работает с задержкой и не всегда.&lt;/li&gt;
    &lt;li id=&quot;WMtQ&quot;&gt;&lt;strong&gt;По обращению родственников.&lt;/strong&gt; Близкие могут обратиться в &lt;strong&gt;МФЦ&lt;/strong&gt; или в &lt;strong&gt;любой центр обслуживания Госуслуг&lt;/strong&gt; (их список доступен на сайте gosuslugi.ru) со свидетельством о смерти, своим паспортом и документами, подтверждающими родство, — и запросить удаление аккаунта. Можно также отправить обращение через форму обратной связи на самом портале Госуслуг или позвонить в контакт-центр (8 800 100-70-10), но в большинстве случаев документы всё равно потребуют принести лично.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;M7dv&quot;&gt;В 2024 году агентство URA.RU &lt;a href=&quot;https://ura.news/articles/1036282456&quot; target=&quot;_blank&quot;&gt;опубликовало материал&lt;/a&gt; о том, что в России активно идёт торговля «мёртвыми» аккаунтами Госуслуг. Аккаунт умершего человека, к которому никто не предъявил права, может оставаться активным годами. Через такой аккаунт мошенники получают доступ к МФЦ, оформляют кредиты, переоформляют недвижимость. После публикации Минцифры объявило, что готовит законопроект о принудительной деактивации аккаунтов Госуслуг через ФССП, Росреестр и нотариат. На момент написания этого поста (середина 2026 года) законопроект ещё не принят.&lt;/p&gt;
  &lt;p id=&quot;mm38&quot;&gt;Практический вывод: сообщите близким, как обратиться в Минцифры для удаления аккаунта. И сами — пройдите в настройках Госуслуг, посмотрите, какие сервисы у вас привязаны, и составьте список (об этом — в финальном протоколе).&lt;/p&gt;
  &lt;h2 id=&quot;3-биометрия-и-ебс&quot;&gt;3. Биометрия и ЕБС&lt;/h2&gt;
  &lt;p id=&quot;ysuM&quot;&gt;Параллельно с Госуслугами в России работает Единая биометрическая система (ЕБС), работа которой регулируется ФЗ от 29 декабря 2022 года № 572-ФЗ. Оператор — АО «Центр биометрических технологий» (постановление Правительства от 16 декабря 2022 года № 2326). В ЕБС хранятся образцы голоса, лица, отпечатков пальцев — для входа в банки, для удалённого открытия счетов, для прохода в МФЦ.&lt;/p&gt;
  &lt;p id=&quot;F9RR&quot;&gt;Что происходит с биометрией умершего человека в ЕБС? Публичная процедура удаления биометрических данных отсутствует. Это пробел регулирования — оператор ЕБС хранит данные, регламенты внутренние, но порядок их аннулирования по смерти открыто не описан. Скорее всего, биометрия остаётся в системе до окончания периода хранения (по закону — 10 лет с момента последнего использования или согласия), и физически удалить её ваш родственник не сможет.&lt;/p&gt;
  &lt;p id=&quot;eB0d&quot;&gt;Это, на мой взгляд, одна из самых серьёзных нерешённых проблем российской цифровой инфраструктуры. Биометрию нельзя сменить, как пароль. И если она лежит в государственной системе после смерти владельца, она потенциально доступна для злоупотреблений неопределённо долго.&lt;/p&gt;
  &lt;h2 id=&quot;4-электронная-подпись-кэп&quot;&gt;4. Электронная подпись (КЭП)&lt;/h2&gt;
  &lt;p id=&quot;uTCr&quot;&gt;Квалифицированная электронная подпись регулируется ФЗ от 6 апреля 2011 года № 63-ФЗ. Она нужна индивидуальным предпринимателям и руководителям организаций для общения с ФНС, для отчётности, для подписания договоров.&lt;/p&gt;
  &lt;p id=&quot;HLtl&quot;&gt;Статья 10 ФЗ-63 прямо запрещает передачу электронной подписи третьим лицам. Это значит, что даже если ваш супруг знает PIN-код от вашего токена с КЭП и технически может подписывать документы, делать это нельзя, поскольку уголовно наказуемо.&lt;/p&gt;
  &lt;p id=&quot;jArP&quot;&gt;Статья 14 ФЗ-63 перечисляет основания прекращения сертификата КЭП. Смерть владельца формально подпадает под «иные случаи, предусмотренные законом» через прекращение правоспособности гражданина (статья 17 ГК). На практике:&lt;/p&gt;
  &lt;ul id=&quot;PgfV&quot;&gt;
    &lt;li id=&quot;RFYN&quot;&gt;&lt;strong&gt;КЭП, выданная Удостоверяющим центром ФНС&lt;/strong&gt; (бесплатно для ИП и руководителей юрлиц), аннулируется автоматически после поступления сведений о смерти из ЗАГСа.&lt;/li&gt;
    &lt;li id=&quot;6bOY&quot;&gt;&lt;strong&gt;КЭП физического лица из коммерческого аккредитованного УЦ&lt;/strong&gt; отзывается по обращению наследника с свидетельством о смерти. До этого момента она формально продолжает действовать.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;W6HJ&quot;&gt;Наследник не получает «КЭП наследодателя в наследство». Он может получить свою собственную КЭП, если ему нужно вести дела умершего (например, как наследник доли в ООО). Но это новый сертификат на нового человека.&lt;/p&gt;
  &lt;p id=&quot;1455&quot;&gt;Особый случай — индивидуальный предприниматель. Статус ИП по наследству не передаётся, ФНС снимает ИП с учёта автоматически. Все доверенности, выданные ИП, прекращают действие в момент смерти (пп. 5 п. 1 статьи 188 ГК). Долги по гражданским договорам переходят к наследникам по статье 1112 ГК. Налоговые долги ИП к наследникам не переходят (кроме имущественных налогов).&lt;/p&gt;
  &lt;h2 id=&quot;5-банковские-приложения-и-деньги&quot;&gt;5. Банковские приложения и деньги&lt;/h2&gt;
  &lt;p id=&quot;EA9L&quot;&gt;С деньгами на банковских счетах ситуация регулируется лучше всего, потому что банковская система устроена консервативно и наследственное право работает в ней десятилетиями.&lt;/p&gt;
  &lt;p id=&quot;6yT9&quot;&gt;Главная норма — статья 1128 ГК «Завещательное распоряжение правами на денежные средства в банках». Вкладчик может оформить в банке распоряжение о том, кому из родственников после его смерти достанутся средства. Распоряжение приравнивается к завещанию.&lt;/p&gt;
  &lt;p id=&quot;qyPy&quot;&gt;Если завещательного распоряжения нет, наследники открывают наследственное дело у нотариуса (общая процедура по главе 63 ГК, в течение шести месяцев со дня смерти). Через нотариуса можно запросить ФНС о счетах наследодателя — банковская тайна снимается. Через нотариуса же можно получить до 100 000 рублей на похороны из имеющихся у умершего средств на банковских счетах (пункт 3 статьи 1174 ГК), не дожидаясь окончания шестимесячного срока. Важно понимать механизм: эти деньги не дают «откуда-то сверху» — они снимаются с собственных счетов наследодателя. Нотариус выносит постановление о возмещении расходов на достойные похороны, и банк по нему выдаёт сумму либо самому наследнику, либо иному лицу, указанному в постановлении (например, родственнику, который фактически организует и оплачивает похороны, даже если он не наследник). Если на счетах умершего денег нет, получить ничего нельзя: статья 1174 не создаёт государственного пособия, она только разрешает досрочное снятие со счёта умершего.&lt;/p&gt;
  &lt;p id=&quot;Gqbf&quot;&gt;Сами банковские приложения — Сбербанк Онлайн, Т-Банк, Альфа, ВТБ — после получения банком информации о смерти владельца блокируются. Доступ через приложение прекращается. Все операции возможны только через офис банка или нотариуса.&lt;/p&gt;
  &lt;p id=&quot;UKBX&quot;&gt;Цифровой рубль — это новая форма безналичных денег, запущенная Центральным банком РФ. Поправки в законодательство о наследовании цифрового рубля внесены ФЗ от 24 июля 2023 года № 340-ФЗ, и порядок наследования вступил в силу с 1 августа 2024 года. По нему ЦБ обязан выдать цифровые рубли наследнику по постановлению нотариуса. Массовое внедрение цифрового рубля планируется с 1 сентября 2026 года. То есть к моменту, когда большинство россиян начнут им активно пользоваться, инструмент наследования формально уже будет работать.&lt;/p&gt;
  &lt;h2 id=&quot;6-криптовалюта&quot;&gt;6. Криптовалюта&lt;/h2&gt;
  &lt;p id=&quot;lIUv&quot;&gt;С криптовалютой ситуация интересная. С одной стороны, криптовалюта в России не запрещена, но и не имеет статуса денежного средства. С другой — после принятия ФЗ от 31 июля 2020 года № 259-ФЗ «О цифровых финансовых активах и цифровой валюте» (действует с 1 января 2021 года) криптовалюта получила правовой статус имущества в смысле статьи 128 ГК.&lt;/p&gt;
  &lt;p id=&quot;Ultc&quot;&gt;Это значит, что криптовалюта входит в состав наследства по статье 1112 ГК. Позиция ФНС подтверждена судебной практикой: Девятый арбитражный апелляционный суд, кассационное определение Восьмого кассационного суда общей юрисдикции от 21 декабря 2023 года № 77-5316/2023, дело Мосгорсуда № 33-14530/2022, дела в Санкт-Петербурге — № 22-2616/2022.&lt;/p&gt;
  &lt;p id=&quot;2Fy7&quot;&gt;Налоги: наследник криптовалюты не платит НДФЛ (пп. 18 статьи 217 НК РФ — наследство в общем случае не облагается НДФЛ). Но при последующей продаже наследованной криптовалюты налог уплатить придётся.&lt;/p&gt;
  &lt;p id=&quot;o5BW&quot;&gt;Главная практическая проблема — техническая, а не юридическая. Чтобы наследник получил криптовалюту, ему нужен доступ к кошельку. А доступ к самому кошельку — это seed-фраза (последовательность из 12–24 слов, которая позволяет восстановить кошелёк) или приватный ключ. Если seed-фразу никто не знает, никакое решение нотариуса не открывает кошелёк. Криптовалюта в нём останется навсегда, как сейф без ключа на дне океана.&lt;/p&gt;
  &lt;p id=&quot;58wh&quot;&gt;Таких потерянных кошельков в мире — миллионы. Совокупная сумма «утерянных» биткоинов оценивается экспертами в 20% от всей эмиссии — это сотни миллиардов долларов в современных ценах. Огромная часть этой суммы — не «потерянная», а унаследованная без доступа: люди умерли, не передав seed-фразу.&lt;/p&gt;
  &lt;p id=&quot;jmYT&quot;&gt;Главная практическая мера: сохранение seed-фразы где-то вне головы в форме, к которой родственники смогут получить доступ после вашей смерти. Об этом подробно — в финальном протоколе.&lt;/p&gt;
  &lt;h2 id=&quot;7-российские-интернет-сервисы&quot;&gt;7. Российские интернет-сервисы&lt;/h2&gt;
  &lt;p id=&quot;4ju9&quot;&gt;С российскими сервисами правила отличаются от сервиса к сервису, и стоит пройтись по ним по очереди.&lt;/p&gt;
  &lt;p id=&quot;HRvB&quot;&gt;&lt;strong&gt;Яндекс.&lt;/strong&gt; Российская корпорация (после реструктуризации 2024 года активы в РФ принадлежат российскому консорциуму). Включает Почту, Диск, Карты, Музыку, Кинопоиск и многое другое. После смерти владельца Яндекс не выдаёт доступ к содержимому аккаунта родственникам, ссылаясь на тайну переписки (статья 23 Конституции и статья 63 ФЗ «О связи»). Возможно только удаление аккаунта по обращению с свидетельством о смерти. Неактивный аккаунт автоматически удаляется примерно через два года.&lt;/p&gt;
  &lt;p id=&quot;IPeV&quot;&gt;&lt;strong&gt;ВКонтакте.&lt;/strong&gt; Главная российская соцсеть. С ноября 2020 года введена мемориальная отметка — страница умершего человека помечается соответствующим знаком, аватар становится чёрно-белым, ставится памятная лента. Запрос на отметку делают родственники с документами. Доступ к содержимому страницы (личные сообщения, закрытые альбомы) не выдаётся.&lt;/p&gt;
  &lt;p id=&quot;DtjM&quot;&gt;Был известный судебный кейс: определение Верховного Суда РФ от 16 октября 2019 года № 308-ЭС19-17751. Финансовый управляющий банкротящегося гражданина потребовал у VK выдать пароли к социальным сетям должника. Верховный Суд отказал, сославшись на тайну переписки. Этот же прецедент применяется и в наследственных делах.&lt;/p&gt;
  &lt;p id=&quot;yCjN&quot;&gt;&lt;strong&gt;Mail.ru&lt;/strong&gt; (теперь часть VK). Учётная запись связана с VK ID. Та же логика: удаление возможно, доступ — нет. Восстановление аккаунта возможно в течение примерно пяти лет неактивности.&lt;/p&gt;
  &lt;p id=&quot;tZ9y&quot;&gt;&lt;strong&gt;Одноклассники.&lt;/strong&gt; С ноября 2020 года введена аналогичная мемориальная функция: траурная лента, чёрно-белый аватар, возможность скрытия профиля. Раньше для любых действий требовалось судебное решение.&lt;/p&gt;
  &lt;h2 id=&quot;8-мессенджеры&quot;&gt;8. Мессенджеры&lt;/h2&gt;
  &lt;p id=&quot;p2No&quot;&gt;&lt;strong&gt;Telegram.&lt;/strong&gt; В РФ в 2026 году заблокирован (см. ранее в этом блоге). Технически для тех, кто использовал Telegram, есть встроенная функция автоматического самоуничтожения аккаунта — от 1 до 24 месяцев бездействия (по умолчанию — 6 месяцев). То есть аккаунт умершего человека через полгода после смерти исчезнет сам, если только семья не зайдёт в него с известным им номером телефона. Каналы, которые он администрировал, остаются с другими администраторами.&lt;/p&gt;
  &lt;p id=&quot;LBGU&quot;&gt;&lt;strong&gt;MAX.&lt;/strong&gt; «Национальный мессенджер» (юридическое лицо — ООО «Коммуникационная платформа», входит в VK). С 1 сентября 2025 года предустановлен на новых российских устройствах согласно распоряжению Правительства от 21 августа 2025 года. С декабря 2025 года авторизация через Госуслуги. Публичный регламент наследования аккаунтов MAX на момент написания этого поста не опубликован. Скорее всего, будет применяться общая логика Госуслуг: после смерти — закрытие через свидетельство.&lt;/p&gt;
  &lt;p id=&quot;XuBw&quot;&gt;&lt;strong&gt;WhatsApp.&lt;/strong&gt; Полностью заблокирован в РФ с 11 февраля 2026 года (через удаление доменов из НСДИ). До блокировки специальной российской процедуры наследования у него не было.&lt;/p&gt;
  &lt;p id=&quot;ltcH&quot;&gt;&lt;strong&gt;Signal, SimpleX.&lt;/strong&gt; Эти мессенджеры заблокированы в РФ. Архитектурно у них нет наследования — они в принципе не идентифицируют пользователя через стороннюю систему, не хранят данных на серверах. Аккаунт умершего пользователя — это просто его устройство с установленным приложением. Если устройство сохранилось и у родственников есть код разблокировки, переписку можно прочитать. Если нет — нет.&lt;/p&gt;
  &lt;h2 id=&quot;9-что-хранится-у-операторов-и-провайдеров--независимо-от-вашей-жизни&quot;&gt;9. Что хранится у операторов и провайдеров — независимо от вашей жизни&lt;/h2&gt;
  &lt;p id=&quot;ujKm&quot;&gt;Помимо данных, которые лежат непосредственно в ваших аккаунтах и на ваших устройствах, есть отдельный массив информации о вас, который хранится на стороне операторов связи и интернет-провайдеров — и который не подчиняется вашей воле ни при жизни, ни после смерти. Этот массив сформирован за последние пятнадцать лет в в соответствии с требованиями трёх ключевых законодательных актов.&lt;/p&gt;
  &lt;p id=&quot;hFdh&quot;&gt;&lt;strong&gt;Федеральный закон от 12 августа 1995 года № 144-ФЗ «Об оперативно-розыскной деятельности»&lt;/strong&gt; устанавливает общий порядок, по которому государственные органы могут получать доступ к данным граждан в интересах правоохранительной и контрразведывательной работы.&lt;/p&gt;
  &lt;p id=&quot;36WO&quot;&gt;&lt;strong&gt;Статья 10.1 Федерального закона от 27 июля 2006 года № 149-ФЗ «Об информации, информационных технологиях и о защите информации»&lt;/strong&gt; (введена ФЗ от 5 мая 2014 года № 97-ФЗ) ввела понятие «организатор распространения информации» (ОРИ). Под него попадают мессенджеры, почтовые сервисы, социальные сети и любые сервисы, через которые пользователи обмениваются сообщениями. ОРИ обязаны регистрироваться в Роскомнадзоре и хранить информацию о фактах приёма, передачи и обработки сообщений.&lt;/p&gt;
  &lt;p id=&quot;Hiiw&quot;&gt;&lt;strong&gt;Федеральные законы от 6 июля 2016 года № 374-ФЗ и № 375-ФЗ&lt;/strong&gt; (так называемый «пакет Яровой») внесли изменения в ФЗ от 7 июля 2003 года № 126-ФЗ «О связи» и в тот же ФЗ-149. Они радикально расширили объёмы и сроки обязательного хранения: операторы связи теперь обязаны хранить содержимое голосовых сообщений, текстов, изображений и видео — до шести месяцев (с 1 июля 2018 года), а метаданные (кто кому когда звонил, кто кому что отправил) — три года. ОРИ обязаны хранить содержимое сообщений до шести месяцев, метаданные до года, и предоставлять ФСБ ключи для расшифровки.&lt;/p&gt;
  &lt;p id=&quot;ufAR&quot;&gt;Технически реализация этих требований идёт через СОРМ (Систему оперативно-разыскных мероприятий) — обязательные аппаратные комплексы на стороне операторов, через которые проходит весь трафик. СОРМ существует в России в трёх поколениях: СОРМ-1 (с 1995 года, голосовая связь), СОРМ-2 (с 2000 года, интернет-трафик), СОРМ-3 (с 2014 года, расширенный сбор метаданных и биллинговых записей).&lt;/p&gt;
  &lt;p id=&quot;4toO&quot;&gt;И теперь — главное в контексте этого поста. &lt;strong&gt;После вашей смерти эта информация не исчезает.&lt;/strong&gt; Она продолжает храниться у операторов и ОРИ в течение установленных законом сроков, и продолжает быть доступной для государственных органов, имеющих право на её получение в рамках оперативно-розыскной деятельности (ФСБ, МВД, СВР, ФСО, Росгвардия, ФСИН в части их полномочий). Ваши родственники и наследники к этой информации доступа не получают ни по свидетельству о смерти, ни по решению нотариуса, ни по запросу адвоката.&lt;/p&gt;
  &lt;p id=&quot;C0FZ&quot;&gt;Краткая сводка того, что и сколько хранится:&lt;/p&gt;
  &lt;figure id=&quot;RFVu&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/aa/61/aa6146af-91e1-40eb-9a93-051db6b29add.png&quot; width=&quot;1252&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;MQ3r&quot;&gt;Это не часть «вашего» цифрового наследства в любом разумном смысле слова. Это часть цифрового досье государства, которое было собрано на вас при жизни и которое продолжает храниться после неё. Изменить это нельзя, как и отказаться от попадания в эти базы при жизни — это условие участия в современной российской цифровой инфраструктуре. Но осознавать факт стоит: некоторые ваши коммуникации даже после вашей смерти останутся доступны не вашим близким, а тем, кому это полагается по закону.&lt;/p&gt;
  &lt;h2 id=&quot;10-облачные-хранилища-и-зарубежные-сервисы&quot;&gt;10. Облачные хранилища и зарубежные сервисы&lt;/h2&gt;
  &lt;p id=&quot;h4Wf&quot;&gt;&lt;strong&gt;Google.&lt;/strong&gt; Главный инструмент — &lt;strong&gt;Google Inactive Account Manager&lt;/strong&gt; (&lt;a href=&quot;https://myaccount.google.com/inactive&quot; target=&quot;_blank&quot;&gt;myaccount.google.com/inactive&lt;/a&gt;). Здесь вы заранее настраиваете: после какого периода бездействия (от 3 до 18 месяцев) что-то должно произойти с вашим аккаунтом. Можно назначить до десяти доверенных контактов, которым будет отправлено уведомление и (по вашему выбору) доступ к определённым сервисам. Можно настроить автоматическое удаление аккаунта через указанный срок. Для россиян это работает, если аккаунт не заблокирован в связи с санкциями.&lt;/p&gt;
  &lt;p id=&quot;HnPa&quot;&gt;&lt;strong&gt;Apple Legacy Contact&lt;/strong&gt; (Доверенный контакт по наследству). Запущен с iOS 15.2 в декабре 2021 года. Вы назначаете доверенный контакт (например, супруг или ребёнок), система генерирует ключ доступа (access key), который вы передаёте контакту. После вашей смерти этот контакт со своим access key и свидетельством о смерти может получить доступ к содержимому вашего iCloud — фото, документам, заметкам — но не к платёжным данным и не к паролям из Keychain. Аккаунт удаляется через 3 года после смерти.&lt;/p&gt;
  &lt;p id=&quot;nawR&quot;&gt;Apple Legacy Contact в РФ формально работает, потому что это не платный сервис. Однако часть платных функций iCloud в России Apple ограничил — например, новые подписки на iCloud+ оформить нельзя.&lt;/p&gt;
  &lt;p id=&quot;oVjp&quot;&gt;&lt;strong&gt;Microsoft / OneDrive.&lt;/strong&gt; Аналогов Apple Legacy Contact и Google Inactive Account Manager у Microsoft нет. Доступ к аккаунту умершего родственники получают только через судебное решение или специальную процедуру Custodian of Records. Из России это технически возможно, но крайне сложно.&lt;/p&gt;
  &lt;p id=&quot;rPKF&quot;&gt;&lt;strong&gt;Dropbox&lt;/strong&gt;, &lt;strong&gt;Notion&lt;/strong&gt;, &lt;strong&gt;Slack&lt;/strong&gt; — у всех есть собственные процедуры доступа после смерти, обычно требуют свидетельство о смерти и подтверждение родства. Из России — те же сложности, что у Microsoft.&lt;/p&gt;
  &lt;h2 id=&quot;11-западные-социальные-сети&quot;&gt;11. Западные социальные сети&lt;/h2&gt;
  &lt;p id=&quot;rqk8&quot;&gt;&lt;strong&gt;Facebook / Instagram.&lt;/strong&gt; Принадлежат компании Meta, признанной в РФ экстремистской организацией; её деятельность запрещена. В России формально пользоваться этими сервисами с 2022 года нельзя. Для тех, кто продолжает через VPN, Meta предлагает Legacy Contact (с 2015 года) и опцию мемориализации страницы.&lt;/p&gt;
  &lt;p id=&quot;GQwV&quot;&gt;&lt;strong&gt;Twitter / X.&lt;/strong&gt; Специальной процедуры нет. Родственники могут запросить деактивацию аккаунта.&lt;/p&gt;
  &lt;p id=&quot;lq5N&quot;&gt;&lt;strong&gt;LinkedIn.&lt;/strong&gt; Деактивация по обращению родственников с документами.&lt;/p&gt;
  &lt;h2 id=&quot;12-apple-google-и-санкции&quot;&gt;12. Apple, Google и санкции&lt;/h2&gt;
  &lt;p id=&quot;kJq4&quot;&gt;Отдельная боль россиян — санкционные ограничения на западные сервисы. С 2022 года часть платных функций Apple, Google и Microsoft недоступна для российских аккаунтов. Это в основном касается оплаты — невозможность подписаться на новые сервисы, обновить существующие подписки, купить приложения через App Store.&lt;/p&gt;
  &lt;p id=&quot;GpYA&quot;&gt;При этом базовые механизмы наследования продолжают работать (Apple Legacy Contact, Google Inactive Account Manager). По крайней мере, на момент написания этого поста. Гарантий на будущее нет: если санкции расширятся или Apple/Google решат прекратить обслуживание российских аккаунтов целиком, эти инструменты перестанут быть применимыми.&lt;/p&gt;
  &lt;p id=&quot;kjlU&quot;&gt;Это важно понимать: цифровое наследство, которое лежит в Apple iCloud или Google Drive, — это, по сути, заложник политической ситуации. Завтра доступ может пропасть. Поэтому критически важные данные стоит держать ещё и локально.&lt;/p&gt;
  &lt;h2 id=&quot;13-что-делать-прямо-сейчас-практический-протокол&quot;&gt;13. Что делать прямо сейчас: практический протокол&lt;/h2&gt;
  &lt;p id=&quot;wYVC&quot;&gt;Теперь главное. Что делать при жизни, чтобы после смерти ваше цифровое наследство не превратилось в неподъёмный груз для семьи.&lt;/p&gt;
  &lt;p id=&quot;pEHg&quot;&gt;&lt;strong&gt;Шаг 1. Опись цифровых активов.&lt;/strong&gt; Сядьте на час и составьте документ со списком:&lt;/p&gt;
  &lt;ul id=&quot;3QHl&quot;&gt;
    &lt;li id=&quot;3LJL&quot;&gt;все банковские счета и приложения (с указанием банков);&lt;/li&gt;
    &lt;li id=&quot;wubP&quot;&gt;криптокошельки (с указанием платформ — Binance, Bybit, ByDFi и так далее, или локальный кошелёк);&lt;/li&gt;
    &lt;li id=&quot;Sl5A&quot;&gt;аккаунты в социальных сетях и мессенджерах;&lt;/li&gt;
    &lt;li id=&quot;fA5C&quot;&gt;электронная почта (основная и резервные);&lt;/li&gt;
    &lt;li id=&quot;v19y&quot;&gt;облачные хранилища (Яндекс.Диск, iCloud, Google Drive);&lt;/li&gt;
    &lt;li id=&quot;dWRn&quot;&gt;подписки (стриминговые сервисы, мобильная связь, аренда жилья через сервисы);&lt;/li&gt;
    &lt;li id=&quot;yaF9&quot;&gt;домены, которыми вы владеете;&lt;/li&gt;
    &lt;li id=&quot;pR20&quot;&gt;профили на торговых площадках (Wildberries, Ozon, Avito);&lt;/li&gt;
    &lt;li id=&quot;Pz4e&quot;&gt;профессиональные аккаунты (если вы программист, дизайнер, фрилансер).&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;Homj&quot;&gt;Этот список должен лежать в физическом виде где-то, куда у вашей семьи есть доступ.&lt;/p&gt;
  &lt;p id=&quot;N4MZ&quot;&gt;&lt;strong&gt;Шаг 2. Менеджер паролей и доступ для близких.&lt;/strong&gt; Поставьте себе &lt;a href=&quot;https://bitwarden.com/&quot; target=&quot;_blank&quot;&gt;Bitwarden&lt;/a&gt; или &lt;a href=&quot;https://keepassxc.org/&quot; target=&quot;_blank&quot;&gt;KeePassXC&lt;/a&gt; и перенесите туда все пароли. У них принципиально разные модели передачи доступа в случае вашей смерти, и обе для российского пользователя имеют ограничения.&lt;/p&gt;
  &lt;p id=&quot;Jk3T&quot;&gt;У &lt;strong&gt;Bitwarden&lt;/strong&gt; есть встроенная функция Emergency Access: вы назначаете доверенный контакт, и после запроса с его стороны и заданного вами периода ожидания (от нескольких часов до месяцев) он получает либо просмотр, либо полный доступ к хранилищу. Но эта функция — часть платной подписки Premium, а оплачивать её из России сегодня сложно из-за санкционных ограничений на банковские карты. Если у вас есть способ оплатить (зарубежная карта, друзья за границей) — Emergency Access реально работает и удобен. Если нет — этой функции у вас не будет, и Bitwarden придётся использовать как обычное локальное хранилище.&lt;/p&gt;
  &lt;p id=&quot;PZdA&quot;&gt;У &lt;strong&gt;KeePassXC&lt;/strong&gt; база паролей — это просто зашифрованный файл (&lt;code&gt;.kdbx&lt;/code&gt;) на вашем устройстве. Встроенной функции «передать доступ после смерти» в нём нет в принципе: всё решается тем, где и как хранится мастер-пароль и сам файл. На практике это означает один или несколько таких приёмов: положить мастер-пароль в банковскую ячейку (см. шаг 3); хранить копию &lt;code&gt;.kdbx&lt;/code&gt;-файла в нескольких местах (на домашнем компьютере, на флешке у родителей, в надёжном облаке); разделить мастер-пароль на части и отдать разным людям, чтобы доступ был возможен только при их согласовании. KeePassXC хорош тем, что не зависит ни от подписки, ни от внешнего сервиса, но всю «логику emergency access» придётся придумывать самостоятельно.&lt;/p&gt;
  &lt;p id=&quot;f72I&quot;&gt;Какой вариант выбрать — зависит от ваших возможностей. Для большинства россиян сегодня &lt;strong&gt;KeePassXC плюс банковская ячейка с мастер-паролем&lt;/strong&gt; — самый практичный путь, который не зависит ни от санкций, ни от подписки.&lt;/p&gt;
  &lt;p id=&quot;LCjb&quot;&gt;&lt;strong&gt;Шаг 3. Банковская ячейка с мастер-документом.&lt;/strong&gt; Снимите банковскую ячейку. Цена зависит от банка, города, размера сейфа и срока аренды. В Москве у &lt;a href=&quot;https://www.sberbank.com/ru/person/safe_deposit_box&quot; target=&quot;_blank&quot;&gt;Сбера&lt;/a&gt; самые маленькие сейфы при длительной аренде обходятся примерно в 60–100 ₽ в сутки, у &lt;a href=&quot;https://www.vtb.ru/personal/drugie-uslugi/individualnye-sejfy/&quot; target=&quot;_blank&quot;&gt;ВТБ&lt;/a&gt; — от 40 ₽ в сутки при аренде на два месяца и дольше. В годовом выражении это порядка 15–35 тысяч ₽ за самую маленькую ячейку. За крупные сейфы или короткие сроки заметно дороже. В региональных отделениях, как правило, дешевле столичных. Положите туда:&lt;/p&gt;
  &lt;ul id=&quot;27Y2&quot;&gt;
    &lt;li id=&quot;jlNP&quot;&gt;мастер-пароль от менеджера паролей;&lt;/li&gt;
    &lt;li id=&quot;A3BY&quot;&gt;seed-фразы криптокошельков (на бумаге, в нескольких экземплярах, и/или на стальных пластинах с выбитыми буквами — самодельных или купленных на Ozon/Wildberries под названиями «steel wallet» / «crypto seed plate»; они переживают пожар и затопление, в отличие от бумаги);&lt;/li&gt;
    &lt;li id=&quot;lhZ4&quot;&gt;список цифровых активов;&lt;/li&gt;
    &lt;li id=&quot;U6QQ&quot;&gt;инструкции для семьи.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;VCti&quot;&gt;Доступ к ячейке оформите так, чтобы после вашей смерти супруг или родители смогли её открыть по свидетельству о смерти.&lt;/p&gt;
  &lt;p id=&quot;lgpU&quot;&gt;&lt;strong&gt;Шаг 4. Закрытое завещание у нотариуса.&lt;/strong&gt; Статья 1126 ГК. Стоимость в 2026 году — тариф 100 рублей плюс услуги правового и технического характера 1500–2500 рублей. В завещании укажите:&lt;/p&gt;
  &lt;ul id=&quot;e6WA&quot;&gt;
    &lt;li id=&quot;fL1C&quot;&gt;где хранится перечень цифровых активов и пароли (банковская ячейка, конкретный нотариус);&lt;/li&gt;
    &lt;li id=&quot;3R4c&quot;&gt;кто назначен цифровым душеприказчиком (специальная роль в наследственных делах);&lt;/li&gt;
    &lt;li id=&quot;Hnh9&quot;&gt;какие конкретно цифровые активы и кому распределяются.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;KoO0&quot;&gt;Закрытое завещание означает, что нотариус не читает его содержимое, но удостоверяет факт. Открывается оно только после вашей смерти.&lt;/p&gt;
  &lt;p id=&quot;oHcF&quot;&gt;&lt;strong&gt;Шаг 5. Apple Legacy Contact и Google Inactive Account Manager.&lt;/strong&gt; Если вы пользуетесь iCloud или Google, настройте эти инструменты прямо сейчас. У Apple это в Settings → Apple ID → Legacy Contact. У Google — в Account → Data &amp;amp; Privacy → More options → Make a plan for your account.&lt;/p&gt;
  &lt;p id=&quot;iqv8&quot;&gt;&lt;strong&gt;Шаг 6. Завещательное распоряжение в банке.&lt;/strong&gt; Статья 1128 ГК. Бесплатно. Сходите в банк, где у вас вклад или большой остаток на счёте, и оформите распоряжение в пользу нужного человека. Это вытаскивает деньги из общей наследственной массы и ускоряет получение для конкретного наследника.&lt;/p&gt;
  &lt;p id=&quot;QAH0&quot;&gt;&lt;strong&gt;Шаг 7. Письмо доверенному человеку.&lt;/strong&gt; Помимо официального завещания, напишите простое письмо своим близким — на бумаге, в простых словах. Что вы хотели бы, чтобы они сделали с вашими аккаунтами. Какие фотографии сохранить, какие удалить. Какие подписки отменить. Что сообщить вашим знакомым в социальных сетях. Это не юридический документ, но он сильно облегчает им жизнь в тяжёлый момент.&lt;/p&gt;
  &lt;p id=&quot;Isu5&quot;&gt;&lt;strong&gt;Шаг 8. Обновление раз в год.&lt;/strong&gt; Раз в год пересматривайте всё перечисленное. Активы меняются — появляются новые аккаунты, исчезают старые, меняются пароли, добавляются криптокошельки. Один день в году на эту работу — окупается.&lt;/p&gt;
  &lt;h2 id=&quot;14-финал-ответственность-перед-теми-кто-останется&quot;&gt;14. Финал: ответственность перед теми, кто останется&lt;/h2&gt;
  &lt;p id=&quot;jRJO&quot;&gt;Тема цифрового наследства тяжёлая, потому что она заставляет думать о собственной смерти. Это неприятно. И поэтому подавляющее большинство людей этого не делает.&lt;/p&gt;
  &lt;p id=&quot;H92u&quot;&gt;Но если вы серьёзно относитесь к своей семье, сделать этот шаг — ваша обязанность. Не как программиста и не как пользователя, а как мужа, родителя, сына, друга. Никто кроме вас не знает, какие у вас аккаунты. Никто кроме вас не знает мастер-пароля от вашего менеджера паролей. Никто кроме вас не знает seed-фразы вашего криптокошелька. После вашей смерти эта информация исчезает вместе с вами, если только вы при жизни не позаботились о её передаче.&lt;/p&gt;
  &lt;p id=&quot;9GaT&quot;&gt;В российских условиях это особенно важно, потому что наша правовая и регуляторная инфраструктура цифрового наследства намного менее зрелая, чем американская или европейская. У Apple и Google есть формальные процедуры. У Яндекса и VK — формально только удаление, доступ к содержимому никто не отдаст. У Госуслуг — простая зомби-логика. КЭП передать невозможно. Криптовалютный кошелёк невозможно открыть без seed-фразы. Российский нотариус не оформит вам наследство на аккаунт ВКонтакте, даже если вы попросите.&lt;/p&gt;
  &lt;p id=&quot;7JEl&quot;&gt;Поэтому: всё, что вы хотите оставить близким, должно быть документально подготовлено вами при жизни. Никто за вас этого не сделает.&lt;/p&gt;
  &lt;p id=&quot;9nWE&quot;&gt;И, наверное, последнее. Цифровое наследство — это не только активы и деньги. Это память. Фотографии ваших детей, переписки с давно ушедшими родителями, дневниковые заметки на смартфоне и личном компьютере. Это часть вас, которую вы оставите в мире после своего ухода. Стоит подумать, в какой форме вы хотите её оставить, и кому.&lt;/p&gt;
  &lt;p id=&quot;LmPp&quot;&gt;Эта работа не доставит удовольствия. Но за неё — потом — вам будут благодарны те, кого вы любите. И эта благодарность, мне кажется, стоит дискомфорта от того, чтобы один вечер посидеть и составить список аккаунтов.&lt;/p&gt;
  &lt;p id=&quot;KH02&quot;&gt;Я давно хотел разобрать эту тему, потому что она находится на пересечении технологий, права и человеческой жизни. И если честно, её сегодня почти никто не разбирает по существу. А зря.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;российское-законодательство&quot;&gt;Российское законодательство&lt;/h3&gt;
  &lt;ul id=&quot;fCNg&quot;&gt;
    &lt;li id=&quot;ruE8&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_34154/5974980bb11fb5c75e99ac0cf647038fc393376f/&quot; target=&quot;_blank&quot;&gt;Статья 1112 ГК РФ — состав наследства&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;mkxu&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_5142/8568bf88dfcddf96ec39cede2444c36c998fbde3/&quot; target=&quot;_blank&quot;&gt;Статья 141.1 ГК РФ — цифровые права&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;PzXh&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_34154/&quot; target=&quot;_blank&quot;&gt;Статья 1126 ГК РФ — закрытое завещание&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;rrcQ&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_34154/&quot; target=&quot;_blank&quot;&gt;Статья 1128 ГК РФ — завещательное распоряжение в банке&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;Z3xk&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/law/podborki/soglasie_na_obrabotku_personalnyh_dannyh_umershego/&quot; target=&quot;_blank&quot;&gt;ФЗ-152 о персональных данных, ст. 9 — согласие наследников&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;sGCF&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_112701/&quot; target=&quot;_blank&quot;&gt;ФЗ-63 об электронной подписи&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;DcTv&quot;&gt;&lt;a href=&quot;https://www.consultant.ru/document/cons_doc_LAW_358753/&quot; target=&quot;_blank&quot;&gt;ФЗ-259 о ЦФА и цифровой валюте&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;практическое&quot;&gt;Практическое&lt;/h3&gt;
  &lt;ul id=&quot;LwEK&quot;&gt;
    &lt;li id=&quot;O2R1&quot;&gt;&lt;a href=&quot;https://mosdigitals.ru/blog/czifrovoe-nasledstvo-akkaunty-podpiski-oblachnye-hranilishha-i-soczseti-posle-smerti-vladelcza&quot; target=&quot;_blank&quot;&gt;Цифровое наследство — обзор от Moscow Digital School&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;BksW&quot;&gt;&lt;a href=&quot;https://78.ru/news/2022-12-17/v-mincifri-rasskazali-kak-posle-smerti-rodstvennika-udalit-ego-akkaunt-na-gosuslugah&quot; target=&quot;_blank&quot;&gt;Как удалить аккаунт умершего на Госуслугах — 78.ru&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;FXJf&quot;&gt;&lt;a href=&quot;https://ura.news/articles/1036282456&quot; target=&quot;_blank&quot;&gt;Торговля «мёртвыми» аккаунтами Госуслуг — URA.RU&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;lXsB&quot;&gt;&lt;a href=&quot;https://www.sberbank.com/ru/person/help/inheritance_faq&quot; target=&quot;_blank&quot;&gt;Наследование вклада в Сбербанке — официально&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;yfuk&quot;&gt;&lt;a href=&quot;https://finance.mail.ru/article/yurist-obyasnil-mozhno-li-poluchit-kriptovalyutu-v-nasledstvo-69204404/&quot; target=&quot;_blank&quot;&gt;Криптовалюта как наследство — позиция юриста&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;Hg1b&quot;&gt;&lt;a href=&quot;https://www.vedomosti.ru/media/news/2020/11/26/848393-vkontakte-nachala-pomechat-stranitsi-umershih-polzovatelei&quot; target=&quot;_blank&quot;&gt;ВКонтакте о мемориальных страницах — Ведомости&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;инструменты-при-жизни&quot;&gt;Инструменты при жизни&lt;/h3&gt;
  &lt;ul id=&quot;TcYl&quot;&gt;
    &lt;li id=&quot;T3Dx&quot;&gt;&lt;a href=&quot;https://keepassxc.org/&quot; target=&quot;_blank&quot;&gt;KeePassXC&lt;/a&gt; — открытый локальный менеджер паролей. Не требует подписки, не зависит от внешних сервисов; передачу доступа после смерти придётся настраивать вручную (банковская ячейка с мастер-паролем, копии файла-хранилища у доверенных людей, разделение пароля на части).&lt;/li&gt;
    &lt;li id=&quot;lm2Z&quot;&gt;&lt;a href=&quot;https://myaccount.google.com/inactive&quot; target=&quot;_blank&quot;&gt;Google Inactive Account Manager&lt;/a&gt; — настройка для Google-аккаунта.&lt;/li&gt;
    &lt;li id=&quot;5lIs&quot;&gt;&lt;a href=&quot;https://support.apple.com/ru-ru/HT212360&quot; target=&quot;_blank&quot;&gt;Apple Legacy Contact — официальный гид&lt;/a&gt; — настройка для Apple ID.&lt;/li&gt;
    &lt;li id=&quot;WV8o&quot;&gt;Стальные пластины для seed-фразы (общее название категории — «steel wallet», «crypto seed plate»). Оригинальные Cryptosteel и Billfodl из РФ официально не купить (производители — европейские компании, доставка/оплата затруднены санкциями), но на Ozon и Wildberries продаются десятки реплик за 1000–3000 ₽; либо можно сделать самостоятельно из стальной пластины и набора стальных штампов для металла. Назначение одно: пережить пожар и затопление, в отличие от бумаги.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:schneier</id><link rel="alternate" type="text/html" href="https://azhark.cc/schneier?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Шнайер против Шнайера: история человека, который переписал свою главную книгу</title><published>2026-06-03T20:16:31.997Z</published><updated>2026-06-03T20:16:31.997Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/70/c3/70c330c7-82b4-466a-9852-8bb9a9d492df.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img3.teletype.in/files/ec/57/ec57a599-6e03-4975-a241-a3bb5144ba94.png&quot;&gt;Есть в нашей профессии несколько людей, чьё имя стало синонимом целого направления. Когда речь заходит о теории информации, говорят «Шеннон». О структурном программировании — «Дейкстра». О Unix и культуре свободного софта — «Столлман». А когда разговор заходит о практической безопасности — об инженерии криптографических систем, о том, как реально защитить компьютер, сеть, бизнес, страну, — почти всегда произносится фамилия Шнайер.</summary><content type="html">
  &lt;figure id=&quot;r6TB&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ec/57/ec57a599-6e03-4975-a241-a3bb5144ba94.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;D7zg&quot;&gt;Есть в нашей профессии несколько людей, чьё имя стало синонимом целого направления. Когда речь заходит о теории информации, говорят «Шеннон». О структурном программировании — «Дейкстра». О Unix и культуре свободного софта — «Столлман». А когда разговор заходит о практической безопасности — об инженерии криптографических систем, о том, как реально защитить компьютер, сеть, бизнес, страну, — почти всегда произносится фамилия &lt;strong&gt;Шнайер&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;VubL&quot;&gt;&lt;strong&gt;Брюс Шнайер&lt;/strong&gt; последние тридцать с лишним лет, пожалуй, самый узнаваемый в мире голос в области информационной безопасности. Он автор десятка книг, ведёт ежемесячную рассылку с 1998 года и блог с 2004-го, каждый месяц комментирует все крупные инциденты и политические дискуссии вокруг приватности и безопасности, входит в советы EFF, Tor Project и Access Now, преподаёт публичную политику в Гарварде, выступает в Конгрессе США, давал интервью практически каждому большому медиа на планете. Если у этой ИБ есть главный представитель, то это Шнайер.&lt;/p&gt;
  &lt;p id=&quot;0Mrt&quot;&gt;В этом посте я хочу рассказать, о том, как главный ИБ-рупор публично поменял свою точку зрения на противоположную, причём сделал это в момент пика своей известности.&lt;/p&gt;
  &lt;p id=&quot;oIH0&quot;&gt;В 1994 году Шнайер выпустил книгу &lt;strong&gt;«Applied Cryptography»&lt;/strong&gt; («Прикладная криптография») — учебник, который вытащил криптографию из академических журналов и засекреченных лабораторий и превратил в обычную инженерную практику. По этой книге выучилось несколько поколений разработчиков. Синяя и красная обложки её английских изданий стали узнаваемыми, как обложки кнутовского «The Art of Computer Programming». Книга задала ИБ-настроение девяностых: «у нас есть мощная математика, у нас есть проверенные алгоритмы, у нас есть открытые исходники — давайте просто правильно их применим, и всё будет защищено». Эту установку подхватила практически вся индустрия. И Шнайер стал настоящим законодателем мод.&lt;/p&gt;
  &lt;p id=&quot;4T5c&quot;&gt;Через шесть лет, в августе 2000 года, он публикует свою вторую большую книгу — &lt;strong&gt;«Secrets and Lies: Digital Security in a Networked World»&lt;/strong&gt; («Секреты и ложь: цифровая безопасность в сетевом мире»). В её предисловии он делает невероятную для серьёзного эксперта в любой технической области вещь: признаёт, что в своей предыдущей фундаментальной книге он ошибся в самом важном — не в фактах и не в формулах, а в общей установке относительно собственного предмета.&lt;/p&gt;
  &lt;p id=&quot;ZpCj&quot;&gt;Цитата из предисловия:&lt;/p&gt;
  &lt;blockquote id=&quot;jIwl&quot;&gt;Ошибка Applied Cryptography в том, что я вообще не говорил о контексте. Я говорил о криптографии так, словно это и есть &lt;strong&gt;Ответ™&lt;/strong&gt;. Я был довольно наивен.&lt;/blockquote&gt;
  &lt;p id=&quot;fblK&quot;&gt;И чуть дальше:&lt;/p&gt;
  &lt;blockquote id=&quot;UaGc&quot;&gt;Если вы думаете, что технология решит ваши проблемы безопасности, значит, вы не понимаете ни проблем, ни технологии.&lt;/blockquote&gt;
  &lt;p id=&quot;5WyD&quot;&gt;Это одна из самых цитируемых фраз во всей мировой информационной безопасности. Её знают наизусть CISO больших корпораций. Её ставят эпиграфом к учебникам. Её повторяют на конференциях. И главное — за ней стоит &lt;strong&gt;личное переосмысление&lt;/strong&gt;: человек, который выпустил книгу с алгоритмами, протоколами и исходниками на C, через шесть лет сказал, что ошибся в том, что выбрал в качестве главного.&lt;/p&gt;
  &lt;p id=&quot;Mj7k&quot;&gt;Этот пост — биография Шнайера и история его публичного разворота. Я расскажу, кто он такой, как Applied Cryptography в 1994-м стала культурным событием в индустрии, через какие практические истории Шнайер прошёл за следующие шесть лет, и почему именно в 2000 году он написал ту самую книгу, в которой переописал предмет своей жизни. Доберусь до его эссеистики, блога Schneier on Security, истории с документами Сноудена 2013 года, и до того, как его сегодняшние идеи о безопасности замыкаются на ту же установку, которую я описывал &lt;a href=&quot;http://localhost:1313/blog/2026/era-of-distrust/&quot; target=&quot;_blank&quot;&gt;в недавнем посте про эпоху недоверия&lt;/a&gt;.&lt;/p&gt;
  &lt;p id=&quot;tmXd&quot;&gt;Это важная история. В нашей индустрии, переполненной самовлюблёнными экспертами в белых одеждах с непогрешимыми позициями, способность публично признать и исправить ошибку в своём главном труде — навык, которому стоит поучиться.&lt;/p&gt;
  &lt;h2 id=&quot;1-кем-он-был-до-applied-cryptography&quot;&gt;1. Кем он был до Applied Cryptography&lt;/h2&gt;
  &lt;p id=&quot;bZPu&quot;&gt;Брюс Шнайер родился 15 января 1963 года в Нью-Йорке. Учился сначала на физика в Рочестерском университете (бакалавриат, 1984), потом перешёл в Американский университет в Вашингтоне на магистратуру по информатике (1988). То есть формального образования по криптографии у него никогда не было.&lt;/p&gt;
  &lt;p id=&quot;cI0o&quot;&gt;В конце 1980-х он работал в Министерстве обороны США, потом в Bell Labs, потом в различных коммерческих компаниях. В 1991 году его уволили. И как раз после этого началась его писательская карьера.&lt;/p&gt;
  &lt;p id=&quot;I6gL&quot;&gt;Сначала он писал статьи в компьютерные журналы — Dr. Dobb’s Journal, Macworld, Computer &amp;amp; Communications Security Reviews. Параллельно занимался криптографическим консалтингом через собственную консультационную фирму Counterpane Systems. Аудитория его статей была относительно узкой — программисты, которые хотели понять, как устроены практические алгоритмы шифрования. Профессиональное криптографическое сообщество в академическом смысле он обходил стороной: не публиковал работы на международных криптографических конференциях вроде CRYPTO или EUROCRYPT, не имел учёной степени уровня PhD (в западной академической традиции это высшая научная степень после защиты диссертации, аналог российского «кандидата наук»), не работал в университетских лабораториях.&lt;/p&gt;
  &lt;p id=&quot;V0Nr&quot;&gt;И именно эта аутсайдерская позиция оказалась решающей. Потому что академические криптографы 1980-х писали для других академических криптографов. Их статьи требовали продвинутой математики, читались с трудом, и почти ничего не давали практикующему инженеру, которому нужно было встроить шифрование в свой продукт. Шнайер начал заполнять этот разрыв — писал статьи для инженеров, на языке инженеров, с готовыми примерами кода.&lt;/p&gt;
  &lt;p id=&quot;umt7&quot;&gt;К 1992 году у него накопилось достаточно материала, чтобы предложить издательству Wiley большую книгу. И он её написал.&lt;/p&gt;
  &lt;h2 id=&quot;2-applied-cryptography-1994-революция-в-индустрии&quot;&gt;2. Applied Cryptography (1994): революция в индустрии&lt;/h2&gt;
  &lt;p id=&quot;si6W&quot;&gt;&lt;a href=&quot;https://www.schneier.com/books/applied-cryptography/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Applied Cryptography: Protocols, Algorithms, and Source Code in C&lt;/strong&gt;&lt;/a&gt; вышла в 1994 году в издательстве Wiley. Подзаголовок книги ясно говорит о её содержании: протоколы, алгоритмы и исходный код на C. Это был учебник для практиков.&lt;/p&gt;
  &lt;p id=&quot;EhPx&quot;&gt;Через два года, в октябре 1996-го, вышло второе издание — 758 страниц с красной обложкой (первое было синим). Это и есть то издание, которое стало настольной книгой для индустрии: оно содержало больше алгоритмов (включая блочные шифры, появившиеся к 1996-му), больше протоколов (в том числе свежий SSL), больше готового кода.&lt;/p&gt;
  &lt;p id=&quot;rQPS&quot;&gt;Что было в книге:&lt;/p&gt;
  &lt;p id=&quot;QIM0&quot;&gt;&lt;strong&gt;Блочные шифры:&lt;/strong&gt; DES, IDEA, Blowfish (который сам Шнайер и придумал в 1993-м), RC4, RC5, разные модификации.&lt;/p&gt;
  &lt;p id=&quot;OsnN&quot;&gt;&lt;strong&gt;Хеш-функции:&lt;/strong&gt; MD5, SHA-1, RIPEMD.&lt;/p&gt;
  &lt;p id=&quot;jIEg&quot;&gt;&lt;strong&gt;Асимметричная криптография:&lt;/strong&gt; RSA, Diffie-Hellman, ElGamal, эллиптические кривые.&lt;/p&gt;
  &lt;p id=&quot;o3BM&quot;&gt;&lt;strong&gt;Протоколы:&lt;/strong&gt; аутентификация, ключевой обмен, цифровые подписи, slot-нотация, протоколы голосования, протоколы анонимного доступа.&lt;/p&gt;
  &lt;p id=&quot;YRYX&quot;&gt;&lt;strong&gt;Исходный код:&lt;/strong&gt; примеры реализации на C. Любой разработчик мог взять код из книги и встроить его в свой продукт.&lt;/p&gt;
  &lt;p id=&quot;rmNU&quot;&gt;&lt;strong&gt;Чего в книге практически не было:&lt;/strong&gt; контекста использования. Как именно эти алгоритмы интегрировать в большую систему, как пользователь будет с ними взаимодействовать, как защититься от ошибок реализации, как управлять ключами в долгоживущей корпоративной системе — обо всём этом книга молчала. Шнайер сознательно вынес эти темы за скобки: его задачей было дать инженерам инструменты, а как именно ими пользоваться, каждый решал сам.&lt;/p&gt;
  &lt;p id=&quot;NAkQ&quot;&gt;Applied Cryptography сделала криптографию доступной для миллионов программистов, для которых она раньше была недосягаемой. Это была первая массовая инженерная книга по предмету. Её ставили на полку как Кнута для теории алгоритмов — обязательный справочник, без которого в этой области серьёзно работать нельзя.&lt;/p&gt;
  &lt;p id=&quot;xZjw&quot;&gt;И вместе с книгой пришло определённое мировоззрение: «у нас есть мощная математика, у нас есть проверенные алгоритмы, у нас есть открытые исходники. Если правильно использовать эти инструменты, мы можем сделать безопасным практически что угодно».&lt;/p&gt;
  &lt;p id=&quot;UfAP&quot;&gt;Это был &lt;strong&gt;технооптимизм 1990-х в чистом виде&lt;/strong&gt;. И его разделяли почти все, кто читал Applied Cryptography.&lt;/p&gt;
  &lt;h2 id=&quot;3-история-с-филом-карном-и-экспортной-дискетой&quot;&gt;3. История с Филом Карном и экспортной дискетой&lt;/h2&gt;
  &lt;p id=&quot;6vIe&quot;&gt;Книга оказалась настолько важной, что вокруг неё развернулась знаменитая история, ставшая одним из символов криптовойн 1990-х (так стали называть конфликт между криптографическим сообществом и правительством США по поводу ограничений на экспорт криптографических технологий).&lt;/p&gt;
  &lt;p id=&quot;CzvD&quot;&gt;Инженер Фил Карн (Phil Karn) подал заявку в Государственный департамент США на разрешение экспортировать Applied Cryptography за рубеж. Госдеп выдал разрешение: книга — это печатное издание, защищённое Первой поправкой о свободе слова, экспортировать её можно.&lt;/p&gt;
  &lt;p id=&quot;GrOM&quot;&gt;Через некоторое время Карн подал вторую заявку: разрешить экспорт дискеты с тем же кодом, который уже напечатан в книге. Логика была проста: содержимое идентичное, только формат другой. Госдеп проконсультировался с АНБ (Агентство национальной безопасности), и в экспорте дискеты было отказано на том основании, что дискета — это «военная технология двойного назначения», и её экспорт регулируется International Traffic in Arms Regulations (ITAR).&lt;/p&gt;
  &lt;p id=&quot;FrBD&quot;&gt;То есть юридически Соединённые Штаты в 1996 году заявили: текст книги — это свободные слова, а тот же текст в виде кода на дискете — оружие.&lt;/p&gt;
  &lt;p id=&quot;3EYD&quot;&gt;Эта абсурдность стала символом всей эпохи. Сторонники свободного распространения криптографии цитировали её на каждом перекрёстке. Электронный фронтир, EFF, движение шифропанков — все указывали на эту разницу как на доказательство, что государство пытается остановить очевидный технологический прогресс.&lt;/p&gt;
  &lt;p id=&quot;wHIA&quot;&gt;В 1999 году Девятый окружной апелляционный суд по делу Bernstein v. United States окончательно постановил, что исходный код является защищённой Первой поправкой формой выражения. Это формально закрыло криптовойны. Экспортные ограничения на криптографию были сняты в 2000 году.&lt;/p&gt;
  &lt;p id=&quot;FWs4&quot;&gt;И Шнайер на протяжении всей этой истории был одним из голосов, формировавших общественное мнение в пользу свободного распространения криптографии. Он публиковал статьи, выступал на конференциях, давал интервью. Его репутация как практического криптографа выросла настолько, что к середине 1990-х он стал, пожалуй, самым публично известным криптографом в мире.&lt;/p&gt;
  &lt;h2 id=&quot;4-что-начало-ломаться&quot;&gt;4. Что начало ломаться&lt;/h2&gt;
  &lt;p id=&quot;y81L&quot;&gt;Параллельно со всем этим успехом Шнайер занимался практическим консалтингом. Компании нанимали его, чтобы проверить безопасность их систем, провести аудит реализации, помочь спроектировать новую архитектуру. И именно в этой консалтинговой работе он начал видеть что-то странное.&lt;/p&gt;
  &lt;p id=&quot;Ygkk&quot;&gt;Большая часть систем, которые ломали или которые имели уязвимости, были скомпрометированы не из-за слабых алгоритмов. Шифры работали. Математика была корректной. Однако системы всё равно проваливались — потому что:&lt;/p&gt;
  &lt;ul id=&quot;r6Lq&quot;&gt;
    &lt;li id=&quot;Fatl&quot;&gt;ключи генерировались неправильно (с предсказуемым seed);&lt;/li&gt;
    &lt;li id=&quot;StOt&quot;&gt;ключи хранились в открытом виде в конфигурационных файлах;&lt;/li&gt;
    &lt;li id=&quot;M6Vk&quot;&gt;кто-то получал доступ через социальную инженерию, а не через крипто-атаку;&lt;/li&gt;
    &lt;li id=&quot;Ty8K&quot;&gt;администраторы делали ошибки в конфигурации;&lt;/li&gt;
    &lt;li id=&quot;erYB&quot;&gt;бэкап-системы записывали незашифрованные данные;&lt;/li&gt;
    &lt;li id=&quot;nfc5&quot;&gt;пользователи выбирали слабые пароли, которые сводили на нет любые сильные алгоритмы;&lt;/li&gt;
    &lt;li id=&quot;wjd8&quot;&gt;в одной части системы шифрование было сильное, а в другой — слабое или отсутствовало;&lt;/li&gt;
    &lt;li id=&quot;jnvV&quot;&gt;интерфейс настроек был непонятен, и админ выбирал «удобную» опцию вместо «безопасной»;&lt;/li&gt;
    &lt;li id=&quot;WFLp&quot;&gt;организация менялась, права доступа не пересматривались, бывшие сотрудники сохраняли доступ;&lt;/li&gt;
    &lt;li id=&quot;EsS8&quot;&gt;системы интегрировались с другими системами с менее серьёзной безопасностью.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;vpYE&quot;&gt;То есть криптография работала, а безопасность — нет. Это два разных явления, которые Шнайер в Applied Cryptography смешал до неразличимости. Книга заявляла: если у тебя сильный шифр, у тебя сильная защита. А на практике оказалось, что сильный шифр — это меньше десяти процентов реальной защиты. Остальные девяносто — это процессы, люди, организации, интерфейсы, экономика, инциденты.&lt;/p&gt;
  &lt;p id=&quot;40HS&quot;&gt;К 1998 году Шнайер начал писать об этом публично. Он запустил ежемесячную email-рассылку Crypto-Gram (с 1998 года, до сих пор выходит каждый месяц 15-го числа), в которой разбирал реальные случаи провала безопасности. И в этих разборах криптография фигурировала редко. Гораздо чаще речь шла об архитектурных ошибках, организационных провалах, человеческих факторах.&lt;/p&gt;
  &lt;p id=&quot;ZcNH&quot;&gt;В августе 1999 года он основал компанию Counterpane Internet Security. Это была не консалтинговая фирма, а полноценный managed security services provider — компания, которая мониторила сети клиентов в реальном времени и реагировала на инциденты. И сам факт того, что главный криптограф мира создал компанию по мониторингу, а не по продаже сильных алгоритмов, говорил о многом.&lt;/p&gt;
  &lt;h2 id=&quot;5-secrets-and-lies-август-2000-публичное-признание&quot;&gt;5. Secrets and Lies (август 2000): публичное признание&lt;/h2&gt;
  &lt;p id=&quot;SxZD&quot;&gt;К 2000 году Шнайер был готов написать книгу о том, что он понял за прошедшие шесть лет. И эта книга — &lt;a href=&quot;https://www.schneier.com/books/secrets-and-lies/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Secrets and Lies: Digital Security in a Networked World&lt;/strong&gt;&lt;/a&gt; — вышла в августе 2000 года, в том же издательстве Wiley.&lt;/p&gt;
  &lt;p id=&quot;x7nI&quot;&gt;В &lt;a href=&quot;https://www.schneier.com/books/secrets-and-lies-pref/&quot; target=&quot;_blank&quot;&gt;предисловии&lt;/a&gt; Шнайер разворачивает то самое признание, с которого мы начали этот пост, в подробное объяснение. Главный его упрёк к себе самому такой: в Applied Cryptography почти всё внимание ушло на математику и алгоритмы, и почти ничего — на людей, процессы, организации, ошибки реализации, ошибки пользователя. Алгоритмы из той книги, по его собственным словам, по-прежнему корректны и полезны, но если читать её как руководство к построению безопасной системы, она вводит в заблуждение. Безопасность складывается из всего того, что в Applied Cryptography осталось за скобками. И вторая знаменитая фраза, которую мы цитировали во вступлении, — про то, что «технологии не решат ваши проблемы безопасности», — это уже развёрнутое обоснование того же тезиса, под которое в книге подведены сотни страниц практических аргументов.&lt;/p&gt;
  &lt;p id=&quot;VkXs&quot;&gt;Книга строится вокруг нескольких базовых тезисов, каждый из которых перевернул мышление индустрии:&lt;/p&gt;
  &lt;p id=&quot;nbzo&quot;&gt;&lt;strong&gt;Безопасность — это процесс, а не продукт&lt;/strong&gt;. Нельзя купить «безопасность» как коробку и поставить её на сервер. Нельзя один раз поставить файрвол и считать, что вы защищены. Безопасность — это постоянная работа по поддержанию системы в защищённом состоянии при изменяющихся угрозах.&lt;/p&gt;
  &lt;p id=&quot;2geN&quot;&gt;&lt;strong&gt;Безопасность — это цепь, прочность которой определяется самым слабым звеном&lt;/strong&gt;. Самый сильный шифр не поможет, если ключи хранятся в файле &lt;code&gt;config.ini&lt;/code&gt; с правами 777. Самый совершенный файрвол бесполезен, если у админа пароль &lt;code&gt;12345&lt;/code&gt;. Безопасность работает не локально, а по всей цепочке.&lt;/p&gt;
  &lt;p id=&quot;kidG&quot;&gt;&lt;strong&gt;Модель угроз.&lt;/strong&gt; Прежде чем что-то защищать, нужно понять, от кого и от чего. Защищаемся ли мы от государственного актора, от хакера-одиночки, от инсайдера, от случайного ошибочного действия? Каждая модель угроз требует своих мер. Универсальной «защиты» нет.&lt;/p&gt;
  &lt;p id=&quot;GjcT&quot;&gt;&lt;strong&gt;Дерево атаки.&lt;/strong&gt; Формальная методика моделирования атак, которую Шнайер представил ещё в декабре 1999-го в &lt;a href=&quot;https://www.schneier.com/academic/archives/1999/12/attack_trees.html&quot; target=&quot;_blank&quot;&gt;статье в Dr. Dobb’s Journal&lt;/a&gt;. Дерево атаки: корень — цель атакующего, узлы — способы её достижения, листья — конкретные действия. Такая структура помогает увидеть, какие пути доступны атакующему, и систематически защищаться от них.&lt;/p&gt;
  &lt;p id=&quot;oIxQ&quot;&gt;&lt;strong&gt;Социальная инженерия.&lt;/strong&gt; Книга подробно разбирает, как самым слабым звеном почти всегда оказывается человек. Подделанные звонки, фишинг, манипуляция, доверчивость — это работает лучше, чем любая криптоатака, и от этого не защищает никакая математика.&lt;/p&gt;
  &lt;p id=&quot;rFHE&quot;&gt;&lt;strong&gt;Организационные процессы.&lt;/strong&gt; Хорошая безопасность требует процессов: ротации ключей, аудита прав доступа, реакции на инциденты, обновления компонентов. Без этих процессов даже идеально спроектированная система быстро деградирует.&lt;/p&gt;
  &lt;p id=&quot;skMg&quot;&gt;Это всё в Applied Cryptography полностью отсутствовало. И Шнайер прямо это признал.&lt;/p&gt;
  &lt;h2 id=&quot;6-реакция-не-скандал-а-взросление&quot;&gt;6. Реакция: не скандал, а взросление&lt;/h2&gt;
  &lt;p id=&quot;gmjU&quot;&gt;Что важно: разворот Шнайера в Secrets and Lies не вызвал скандала. Никто не обвинял его в предательстве. Никто не разбирал предисловие как «капитуляцию».&lt;/p&gt;
  &lt;p id=&quot;Qr8U&quot;&gt;Наоборот, индустрия приняла Secrets and Lies как долгожданное взросление. Потому что к 2000 году многие практикующие специалисты уже пришли к тому же выводу, что и Шнайер, но не имели слов или решимости, чтобы это сформулировать. У них был ежедневный опыт, но не было концептуального аппарата. Шнайер дал им этот аппарат.&lt;/p&gt;
  &lt;p id=&quot;UHkc&quot;&gt;И именно эта способность — публично признать ошибку, не разрушив при этом собственного авторитета, — оказалась тем, что подняло его репутацию на новый уровень. Не «Шнайер скомпрометировал себя», а «Шнайер первый из больших экспертов отчётливо сформулировал, что технооптимизм 90-х был неполным». Это разница в риторике, и она имеет огромное значение.&lt;/p&gt;
  &lt;p id=&quot;aFAR&quot;&gt;Сам Шнайер потом много раз будет говорить об этой книге как о самой важной в своей карьере. Не потому, что она лучше написана, не потому, что в ней больше технических деталей, — а потому, что она поменяла его собственное мышление, и через это — мышление всей индустрии.&lt;/p&gt;
  &lt;h2 id=&quot;7-эпоха-блога-и-эссеистики&quot;&gt;7. Эпоха блога и эссеистики&lt;/h2&gt;
  &lt;p id=&quot;Ephi&quot;&gt;После Secrets and Lies Шнайер всё больше превращается из технического эксперта в публичного интеллектуала. В октябре 2004 года он запускает блог &lt;strong&gt;&lt;a href=&quot;https://www.schneier.com/blog/&quot; target=&quot;_blank&quot;&gt;Schneier on Security&lt;/a&gt;&lt;/strong&gt; параллельно с продолжающейся рассылкой Crypto-Gram. К 2026 году суммарная аудитория двух каналов перевалила за 250 тысяч читателей.&lt;/p&gt;
  &lt;p id=&quot;uJS0&quot;&gt;Каждый день он разбирает там свежие инциденты и уязвимости, технические новости, политические сюжеты вокруг приватности и слежки, странные случаи из мира физической безопасности (особенно много — про авиаперевозки, охрану аэропортов и американскую TSA — Transportation Security Administration, ведомство, которое отвечает за досмотр пассажиров в США; примерно как российский «АТБ» — авиационно-транспортная безопасность, но с гораздо большим публичным весом и собственным бюджетом). Параллельно с разбором текущей повестки в этих заметках постепенно сформировались несколько концепций, которые вошли в общее интеллектуальное наследие отрасли.&lt;/p&gt;
  &lt;p id=&quot;GxnP&quot;&gt;&lt;strong&gt;Термин «театр безопасности»&lt;/strong&gt; Шнайер придумал в книге &lt;strong&gt;Beyond Fear (2003)&lt;/strong&gt;. Это меры безопасности, которые создают ложное чувство защищённости, не давая реальной защиты. Самый яркий пример — TSA в американских аэропортах: длинные очереди, ритуальное снятие обуви, изъятие шампуней — всё это даёт пассажирам ощущение, что «что-то делается», но не предотвращает ни одной реальной террористической атаки (что подтверждено независимыми аудитами TSA — её собственные тесты обнаружили уязвимости в 95% случаев). Шнайер потратил годы на критику TSA как самого яркого примера security theater, и постепенно термин ушёл в массовое использование.&lt;/p&gt;
  &lt;p id=&quot;InOI&quot;&gt;&lt;strong&gt;«Угрозы из киносценария»&lt;/strong&gt; — это страхи, которые звучат драматично, но статистически крайне маловероятны. «А что если террорист сделает вот это конкретное?» — а ответ всегда: вероятность ничтожна, разумнее защищаться от более частых угроз. В 2005–2006 годах Шнайер устраивал в блоге конкурсы на самые абсурдные movie-plot threats, чтобы показать, что воображение порождает бесконечное количество таких сценариев, и защищаться от каждого по отдельности невозможно.&lt;/p&gt;
  &lt;p id=&quot;J9ah&quot;&gt;&lt;strong&gt;Schneier’s Law.&lt;/strong&gt; Эта формулировка интересна сама по себе. В эссе 1998 года &lt;a href=&quot;https://www.schneier.com/crypto-gram/archives/1998/1015.html#cipherdesign&quot; target=&quot;_blank&quot;&gt;«Memo to the Amateur Cipher Designer»&lt;/a&gt; Шнайер писал:&lt;/p&gt;
  &lt;blockquote id=&quot;QcqU&quot;&gt;Любой — от безнадёжного любителя до лучшего криптографа — может создать алгоритм, который он сам не сможет взломать.&lt;/blockquote&gt;
  &lt;p id=&quot;QRyA&quot;&gt;Это не было оформлено как «закон». Название &lt;strong&gt;Schneier’s Law&lt;/strong&gt; придумал и закрепил Кори Доктороу в 2004 году. То есть это не самопровозглашённый закон, а формулировка, которую сообщество подобрало и присвоило автору. Сам Шнайер потом её разъяснил: суть в том, что умение сломать собственное произведение требует другого мышления, и пока несколько разных умов не попытаются взломать ваш шифр, не имеет смысла говорить о его стойкости. Поэтому открытость — это не уязвимость, а обязательное условие настоящей криптографической работы.&lt;/p&gt;
  &lt;h2 id=&quot;8-новые-книги&quot;&gt;8. Новые книги&lt;/h2&gt;
  &lt;p id=&quot;LZqT&quot;&gt;После Secrets and Lies Шнайер продолжает писать книги, и каждая расширяет тему дальше. Не «как защитить ваш сервер», а «как устроена безопасность в обществе и в технологии в целом».&lt;/p&gt;
  &lt;p id=&quot;a43n&quot;&gt;&lt;strong&gt;Beyond Fear&lt;/strong&gt; («По ту сторону страха»), 2003. Безопасность как общесоциальное явление. Анализ страхов, рисков, рациональности. Эта книга — фундаментальный текст для понимания того, почему мы делаем плохие выборы в области безопасности: мы переоцениваем редкие драматичные угрозы и недооцениваем повседневные, привычные.&lt;/p&gt;
  &lt;p id=&quot;GwNv&quot;&gt;&lt;strong&gt;Liars and Outliers&lt;/strong&gt; («Лжецы и исключения»), 2012. О доверии в обществе. Шнайер исследует, как именно общество создаёт условия для сотрудничества — через социальные нормы, законы, репутационные механизмы, технологические системы. Это книга больше про социологию, чем про технологию, но именно через неё Шнайер расширяет понятие «безопасность» до общесоциальной категории.&lt;/p&gt;
  &lt;p id=&quot;BsAU&quot;&gt;&lt;strong&gt;Data and Goliath&lt;/strong&gt; («Данные и Голиаф», игра слов на «Давид и Голиаф»), 2015. О слежке. Книга вышла после разоблачений Сноудена и стала одним из главных публичных текстов на эту тему. Шнайер показал, что массовая слежка — это не только государство, а целая экономика данных, в которую вовлечены технологические компании, рекламные сети, страховые компании, банки. Подзаголовок книги — «The Hidden Battles to Collect Your Data and Control Your World» («Скрытые войны за ваши данные и контроль над вашим миром»).&lt;/p&gt;
  &lt;p id=&quot;uUmf&quot;&gt;&lt;strong&gt;Click Here to Kill Everybody&lt;/strong&gt; («Нажмите здесь, чтобы убить всех»), 2018. О безопасности интернета вещей. Когда подключёнными становятся не серверы, а автомобили, дома, медицинские устройства — провалы безопасности перестают быть банальной утечкой данных и становятся угрозой жизни. Шнайер на конкретных примерах показывает, что мы строим IoT без учёта безопасности, и это закончится катастрофой.&lt;/p&gt;
  &lt;p id=&quot;PV7q&quot;&gt;&lt;strong&gt;A Hacker’s Mind&lt;/strong&gt; («Мышление хакера»), 2023. О мышлении хакера как универсальной интеллектуальной установке. Хакерство — это поиск уязвимостей в правилах, и эта установка применима не только к коду, но и к налоговому законодательству, выборным системам, финансовым продуктам, общественным институтам.&lt;/p&gt;
  &lt;p id=&quot;76MV&quot;&gt;&lt;strong&gt;Rewiring Democracy&lt;/strong&gt; («Перенастройка демократии»), с Натаном Сандерсом, 2025. О том, как ИИ и цифровые технологии меняют демократические институты.&lt;/p&gt;
  &lt;p id=&quot;qOoq&quot;&gt;Шесть больших книг после Applied Cryptography. Каждая дальше от чистой криптографии и ближе к общему пониманию того, как устроены сложные сложно-социотехнические системы.&lt;/p&gt;
  &lt;h2 id=&quot;9-2013-шнайер-и-документы-сноудена&quot;&gt;9. 2013: Шнайер и документы Сноудена&lt;/h2&gt;
  &lt;p id=&quot;bWgv&quot;&gt;Летом 2013 года в Гонконге Эдвард Сноуден передал журналистам Glenn Greenwald и Laura Poitras огромный архив секретных документов АНБ. Через несколько недель Greenwald связался с Шнайером и пригласил его в Рио-де-Жанейро, где работала команда The Guardian. Шнайер читал документы и помогал журналистам разбираться в технической стороне программы массовой слежки АНБ.&lt;/p&gt;
  &lt;p id=&quot;iG7R&quot;&gt;В сентябре 2013-го он опубликовал в Guardian статью &lt;strong&gt;&lt;a href=&quot;https://www.theguardian.com/world/2013/sep/05/nsa-how-to-remain-secure-surveillance&quot; target=&quot;_blank&quot;&gt;«NSA Surveillance: A Guide to Staying Secure»&lt;/a&gt;&lt;/strong&gt; — практическое руководство по защите от государственной слежки. И в той же статье он сделал, наверное, самое точное наблюдение о случившемся:&lt;/p&gt;
  &lt;blockquote id=&quot;0nGG&quot;&gt;Математика сама по себе хорошая, но математика ничего не делает. Действует код. А в код встроили туда закладки.&lt;/blockquote&gt;
  &lt;p id=&quot;zlwW&quot;&gt;Это очень важная фраза. Шнайер не говорит «криптография сломана». Он говорит: криптография в чистом виде не была сломана. Сломаны её реализации. Сломаны протоколы, в которых она встроена. Сломаны устройства, которые её исполняют. Сломаны цепочки поставок, по которым код доходит до пользователя. И поэтому, при всей силе математики, безопасность как явление оказалась пробита — но не математически, а инженерно, организационно, политически.&lt;/p&gt;
  &lt;p id=&quot;2QyF&quot;&gt;Это, по сути, повторение тезиса Secrets and Lies в новом контексте. И сама ситуация со Сноуденом стала для Шнайера ещё одним подтверждением: криптография — это не синоним безопасности. Безопасность включает в себя криптографию, но это гораздо более широкое понятие.&lt;/p&gt;
  &lt;p id=&quot;OLcE&quot;&gt;После 2013 года Шнайер становится одним из главных публичных голосов критики массовой слежки. Он публикует Data and Goliath. Он выступает в Конгрессе США. Он входит в советы EFF, Access Now, Tor Project. Его позиция остаётся той же: технологии — это инструменты, и их безопасное использование зависит от политических и социальных условий, а не от качества самих технологий.&lt;/p&gt;
  &lt;h2 id=&quot;10-где-шнайер-сейчас&quot;&gt;10. Где Шнайер сейчас&lt;/h2&gt;
  &lt;p id=&quot;kWVl&quot;&gt;В 2026 году Шнайеру исполнилось 63 года, и он остаётся одной из самых заметных фигур в сфере безопасности.&lt;/p&gt;
  &lt;p id=&quot;T7lJ&quot;&gt;Его текущие позиции:&lt;/p&gt;
  &lt;ul id=&quot;4t0z&quot;&gt;
    &lt;li id=&quot;hHG4&quot;&gt;&lt;strong&gt;внештатный преподаватель в Гарвардской школе Кеннеди&lt;/strong&gt; (Harvard Kennedy School), где ведёт курсы по государственной политике в области технологий и безопасности;&lt;/li&gt;
    &lt;li id=&quot;IzcY&quot;&gt;&lt;strong&gt;научный сотрудник Беркмановско-Кляйновского центра по изучению интернета и общества&lt;/strong&gt; при Гарвардском университете (с 2013 года);&lt;/li&gt;
    &lt;li id=&quot;oMDt&quot;&gt;&lt;strong&gt;главный архитектор по безопасности&lt;/strong&gt; в компании Inrupt, которую основал Тим Бернерс-Ли и которая развивает протокол децентрализованного веба Solid;&lt;/li&gt;
    &lt;li id=&quot;lpnS&quot;&gt;член советов &lt;strong&gt;Electronic Frontier Foundation&lt;/strong&gt; (EFF), &lt;strong&gt;Access Now&lt;/strong&gt;, &lt;strong&gt;Tor Project&lt;/strong&gt;.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;ad1e&quot;&gt;Его компания Counterpane Internet Security была &lt;a href=&quot;https://en.wikipedia.org/wiki/BT_Managed_Security_Solutions&quot; target=&quot;_blank&quot;&gt;куплена British Telecom 25 октября 2006 года&lt;/a&gt; (сумма не разглашалась). С 2016 по 2019 год Шнайер работал в IBM, куда попал после покупки IBM компании Resilient Systems, советником которой он был. После 2019-го больше фокусируется на академической и публицистической работе.&lt;/p&gt;
  &lt;p id=&quot;lF0v&quot;&gt;Награды и признание:&lt;/p&gt;
  &lt;ul id=&quot;PE55&quot;&gt;
    &lt;li id=&quot;AhKQ&quot;&gt;&lt;strong&gt;Награда «Пионер»&lt;/strong&gt; от Electronic Frontier Foundation (Фонд электронных рубежей), 2007;&lt;/li&gt;
    &lt;li id=&quot;RDFx&quot;&gt;&lt;strong&gt;Премия имени Норберта Винера&lt;/strong&gt; от ассоциации Computer Professionals for Social Responsibility («Программисты за общественную ответственность»), 2008;&lt;/li&gt;
    &lt;li id=&quot;SerM&quot;&gt;&lt;strong&gt;Почётная докторская степень&lt;/strong&gt; Вестминстерского университета (University of Westminster), 2011;&lt;/li&gt;
    &lt;li id=&quot;XwDS&quot;&gt;&lt;strong&gt;Награда за вклад в защиту приватности&lt;/strong&gt; от Electronic Privacy Information Center (EPIC), 2015.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;6i5x&quot;&gt;Тьюринговскую премию Шнайер не получал — это не совсем его профиль. Тьюринговку дают за фундаментальные вклады в теорию вычислений или системную архитектуру, а Шнайер — публичный ИБ-интеллектуал, а не академический исследователь. Но его влияние на индустрию вряд ли уступает многим лауреатам Тьюринга.&lt;/p&gt;
  &lt;h2 id=&quot;11-что-значит-этот-разворот&quot;&gt;11. Что значит этот разворот&lt;/h2&gt;
  &lt;p id=&quot;6Xtv&quot;&gt;Шнайер прошёл редкий путь: от создателя главной книги о криптографии до публичного критика собственной книги и публичного ИБ-интеллектуала.&lt;/p&gt;
  &lt;p id=&quot;2hfP&quot;&gt;Уникальной эту траекторию сделала его способность признавать ошибки, не теряя авторитета. В обычной жизни признание «я был неправ» воспринимается как слабость, и эксперты в основном пытаются защитить свои предыдущие позиции до последнего. Шнайер сделал противоположное — открыто пересмотрел собственную главную работу. И это не разрушило его карьеру, а продвинуло её.&lt;/p&gt;
  &lt;p id=&quot;4lnF&quot;&gt;Почему так? Я думаю, по нескольким причинам.&lt;/p&gt;
  &lt;p id=&quot;nU0A&quot;&gt;&lt;strong&gt;Первая.&lt;/strong&gt; Разворот был &lt;strong&gt;тонко артикулирован&lt;/strong&gt;. Шнайер не сказал «Applied Cryptography была неправильная книга, выбросьте её». Он сказал «эта книга была неполная, в ней не хватало контекста». Информация в книге не отменялась, она дополнялась. Это совсем другой эпистемологический жест: не отказ от прошлого, а &lt;strong&gt;расширение&lt;/strong&gt; взгляда.&lt;/p&gt;
  &lt;p id=&quot;6o8n&quot;&gt;&lt;strong&gt;Вторая.&lt;/strong&gt; Разворот пришёлся на время, когда индустрия созрела для этого. Если бы Шнайер написал Secrets and Lies в 1995-м, его бы не поняли. К 2000-му многие практики уже жили в той же реальности — крипто работает, безопасность не работает. Им нужны были слова, и Шнайер их дал.&lt;/p&gt;
  &lt;p id=&quot;HCrl&quot;&gt;&lt;strong&gt;Третья.&lt;/strong&gt; Шнайер подтвердил свою новую позицию делами. Он основал Counterpane Internet Security ещё до выхода Secrets and Lies. Он писал ежемесячные эссе про реальные инциденты, в которых криптография почти не играла роли. То есть его слова про «безопасность — это процесс» не были декларацией, а результатом многолетних практических наблюдений.&lt;/p&gt;
  &lt;p id=&quot;0C0g&quot;&gt;&lt;strong&gt;Четвёртая.&lt;/strong&gt; И, наверное, самая важная: Шнайер всё это время оставался полезен индустрии. Если бы после Secrets and Lies он начал просто критиковать всё подряд, никому бы не помогая, его быстро бы списали как «бывшего эксперта». Но он продолжал давать конкретные рекомендации, разбирать конкретные инциденты, формулировать конкретные методики (attack trees, threat models). Его авторитет держался не на статусе, а на постоянной генерации практической пользы.&lt;/p&gt;
  &lt;p id=&quot;5h3h&quot;&gt;Если переводить это на язык &lt;a href=&quot;http://localhost:1313/blog/2026/era-of-distrust/&quot; target=&quot;_blank&quot;&gt;моего недавнего эссе про эпоху недоверия&lt;/a&gt; — Шнайер прошёл ту же интеллектуальную траекторию, которую я описывал для всей нашей индустрии. От «технологии нас защитят, надо правильно их использовать» к «технологии — это инструменты, безопасность достигается работой над всей системой, а не над отдельным шифром». Он сделал этот разворот двадцать пять лет назад. Многие из нас приходят к нему только сейчас.&lt;/p&gt;
  &lt;h2 id=&quot;12-финал-чему-стоит-учиться-у-шнайера&quot;&gt;12. Финал: чему стоит учиться у Шнайера&lt;/h2&gt;
  &lt;p id=&quot;3G07&quot;&gt;Тезис Secrets and Lies — что криптография не равна безопасности — давно вошёл в учебники и звучит на каждой второй конференции по ИБ. На уровне идей про защиту это уже аксиома. Но главный урок Шнайера, как мне кажется, вообще не в этом.&lt;/p&gt;
  &lt;p id=&quot;S9qg&quot;&gt;Главное в Шнайере другое — то, как он держит себя в профессии. Большинство больших экспертов вкладываются в свою репутацию как в крепость: написал главную работу — защищай её до пенсии, даже когда мир вокруг сменился. Шнайер вышел из этой крепости сам, причём открыто, без извинений, ставя точные диагнозы — что именно и почему в его собственном предыдущем понимании предмета оказалось неполным.&lt;/p&gt;
  &lt;p id=&quot;sP3F&quot;&gt;И это, как ни парадоксально, окупилось. Технологический ландшафт за тридцать лет успел поменяться несколько раз, и эксперт, зафиксировавший свою позицию в 2000-м, к 2026 году обычно говорит глупости. А Шнайер по-прежнему читается, цитируется, приглашается в Конгресс и Гарвард — потому что его позиции эволюционировали вместе с предметом. Каждое следующее «я думаю иначе, чем десять лет назад, и вот почему» только укрепляло его авторитет.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;главные-книги&quot;&gt;Главные книги&lt;/h3&gt;
  &lt;ul id=&quot;yy9w&quot;&gt;
    &lt;li id=&quot;sbAF&quot;&gt;&lt;strong&gt;Applied Cryptography&lt;/strong&gt; (1994, второе издание 1996) — справочник, который определил эпоху. Русское издание: &lt;a href=&quot;https://www.ozon.ru/product/prikladnaya-kriptografiya-protokoly-algoritmy-i-ishodnyy-tekst-na-yazyke-c-2-e-izd-shnayer-bryus-211517999/&quot; target=&quot;_blank&quot;&gt;«Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке Си»&lt;/a&gt; (издательство «Триумф», переиздаётся с 2002 года). &lt;a href=&quot;https://www.schneier.com/books/applied-cryptography/&quot; target=&quot;_blank&quot;&gt;Оригинальная страница на сайте автора&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;Ic9k&quot;&gt;&lt;strong&gt;Secrets and Lies&lt;/strong&gt; (2000) — публичный разворот, изменивший индустрию. Русское издание: &lt;a href=&quot;https://www.ozon.ru/product/sekrety-i-lozh-bezopasnost-dannyh-v-tsifrovom-mire-shnayer-bryus-149716937/&quot; target=&quot;_blank&quot;&gt;«Секреты и ложь. Безопасность данных в цифровом мире»&lt;/a&gt; (издательство «Питер», 2003). &lt;a href=&quot;https://www.schneier.com/books/secrets-and-lies-pref/&quot; target=&quot;_blank&quot;&gt;Полное предисловие&lt;/a&gt; и &lt;a href=&quot;https://www.schneier.com/books/secrets-and-lies/&quot; target=&quot;_blank&quot;&gt;страница на сайте автора&lt;/a&gt; — на английском.&lt;/li&gt;
    &lt;li id=&quot;l91b&quot;&gt;&lt;strong&gt;Beyond Fear&lt;/strong&gt; (2003) — безопасность как общесоциальное явление. На русский не переводилась; &lt;a href=&quot;https://www.schneier.com/books/beyond-fear/&quot; target=&quot;_blank&quot;&gt;англоязычная страница на сайте автора&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;HsjA&quot;&gt;&lt;strong&gt;Liars and Outliers&lt;/strong&gt; (2012) — о доверии в обществе. На русский не переводилась; &lt;a href=&quot;https://www.schneier.com/books/liars-and-outliers/&quot; target=&quot;_blank&quot;&gt;англоязычная страница&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;IkUC&quot;&gt;&lt;strong&gt;Data and Goliath&lt;/strong&gt; (2015) — о массовой слежке. На русский не переводилась; &lt;a href=&quot;https://www.schneier.com/books/data-and-goliath/&quot; target=&quot;_blank&quot;&gt;англоязычная страница&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;q7Gv&quot;&gt;&lt;strong&gt;Click Here to Kill Everybody&lt;/strong&gt; (2018) — о безопасности интернета вещей. На русский не переводилась; &lt;a href=&quot;https://www.schneier.com/books/click-here/&quot; target=&quot;_blank&quot;&gt;англоязычная страница&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;vdez&quot;&gt;&lt;strong&gt;A Hacker’s Mind&lt;/strong&gt; (2023) — о хакерском мышлении как универсальной интеллектуальной установке. На русский не переводилась; &lt;a href=&quot;https://www.schneier.com/books/a-hackers-mind/&quot; target=&quot;_blank&quot;&gt;англоязычная страница&lt;/a&gt;.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;эссе-и-тексты&quot;&gt;Эссе и тексты&lt;/h3&gt;
  &lt;ul id=&quot;CwcE&quot;&gt;
    &lt;li id=&quot;g2i1&quot;&gt;&lt;a href=&quot;https://www.theguardian.com/world/2013/sep/05/nsa-how-to-remain-secure-surveillance&quot; target=&quot;_blank&quot;&gt;«NSA Surveillance: A Guide to Staying Secure»&lt;/a&gt;, The Guardian, 6 сентября 2013 — практический гид после Сноудена.&lt;/li&gt;
    &lt;li id=&quot;ExBT&quot;&gt;&lt;a href=&quot;https://www.schneier.com/academic/archives/1999/12/attack_trees.html&quot; target=&quot;_blank&quot;&gt;«Attack Trees»&lt;/a&gt;, Dr. Dobb’s Journal, декабрь 1999 — каноническая статья.&lt;/li&gt;
    &lt;li id=&quot;gqk9&quot;&gt;&lt;a href=&quot;https://www.schneier.com/blog/archives/2008/05/cryptogram_tent_1.html&quot; target=&quot;_blank&quot;&gt;«The Future of Crypto-Gram»&lt;/a&gt; — Шнайер о десятилетней истории своей рассылки.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;регулярно-обновляемое&quot;&gt;Регулярно обновляемое&lt;/h3&gt;
  &lt;ul id=&quot;EvnK&quot;&gt;
    &lt;li id=&quot;zDWv&quot;&gt;&lt;a href=&quot;https://www.schneier.com/&quot; target=&quot;_blank&quot;&gt;Schneier on Security&lt;/a&gt; — главный блог, с октября 2004.&lt;/li&gt;
    &lt;li id=&quot;irNr&quot;&gt;&lt;a href=&quot;https://www.schneier.com/crypto-gram/&quot; target=&quot;_blank&quot;&gt;Crypto-Gram&lt;/a&gt; — ежемесячная email-рассылка, с 1998 года.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;биографическое&quot;&gt;Биографическое&lt;/h3&gt;
  &lt;ul id=&quot;abwJ&quot;&gt;
    &lt;li id=&quot;9rx8&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Bruce_Schneier&quot; target=&quot;_blank&quot;&gt;Bruce Schneier — Wikipedia&lt;/a&gt; — самая подробная биография.&lt;/li&gt;
    &lt;li id=&quot;YpcX&quot;&gt;&lt;a href=&quot;https://www.schneier.com/biography/&quot; target=&quot;_blank&quot;&gt;Биографическая страница на schneier.com&lt;/a&gt;.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:era-of-distrust</id><link rel="alternate" type="text/html" href="https://azhark.cc/era-of-distrust?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Эпоха недоверия: почему я хочу переписать всё под себя</title><published>2026-06-02T18:38:34.909Z</published><updated>2026-06-02T18:38:34.909Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/d2/f7/d2f78640-3fb5-4d0d-a144-ff45e5168896.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/ca/34/ca34ddb5-d026-44da-b4ae-5df1bd0d068d.png&quot;&gt;У меня лежит на столе пустой SSD-диск. Я давно собираюсь поставить на него OpenBSD — операционную систему, у которой главным дизайнерским решением последние тридцать лет является безопасность. Поставить, добавить графическое окружение Xfce, перенести туда работу с текстами, программирование, лёгкую обработку картинок. Это не философский жест, а вполне практический план: машина, на которой я держу свои тексты и код, не должна за мной следить, и не должна быть проницаема для тех, кто не я.</summary><content type="html">
  &lt;figure id=&quot;Cxnu&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/ca/34/ca34ddb5-d026-44da-b4ae-5df1bd0d068d.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;DgBe&quot;&gt;У меня лежит на столе пустой SSD-диск. Я давно собираюсь поставить на него &lt;strong&gt;OpenBSD&lt;/strong&gt; — операционную систему, у которой главным дизайнерским решением последние тридцать лет является безопасность. Поставить, добавить графическое окружение Xfce, перенести туда работу с текстами, программирование, лёгкую обработку картинок. Это не философский жест, а вполне практический план: машина, на которой я держу свои тексты и код, не должна за мной следить, и не должна быть проницаема для тех, кто не я.&lt;/p&gt;
  &lt;p id=&quot;1l7p&quot;&gt;Этот импульс — переписать всё под себя, отказаться от сервисов, контролировать собственное цифровое окружение — за последние два-три года стал у меня настолько сильным, что я понимаю: дело уже не во мне одном. Когда инженер с двадцатилетним стажем серьёзно начинает обсуждать, как поднять у себя дома почтовый сервер, поставить OpenBSD, разорвать связи со всеми облаками — это не индивидуальная паранойя. Это &lt;strong&gt;реакция на изменившуюся среду&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;ELTM&quot;&gt;Этот пост — попытка разобраться, &lt;strong&gt;что именно&lt;/strong&gt; в среде изменилось, и &lt;strong&gt;почему именно к 2026 году&lt;/strong&gt; недоверие к цифровым сервисам стало не маргинальной позицией, а вполне распространённой инженерной установкой. Я разберу, что делают «бесплатные» сервисы, как устроены современные мобильные приложения, какие истории случились с «защищёнными» мессенджерами и почтой. Доберусь до уровня операционной системы. Покажу, насколько хрупкой стала цепочка поставок программного обеспечения — на примере истории &lt;strong&gt;xz-utils&lt;/strong&gt; в марте 2024-го, после которой стало понятно, что чистый код вашего проекта не имеет значения, если зависимости скомпрометированы. И в финале — серьёзный разбор того, что значит &lt;strong&gt;возвращение контроля&lt;/strong&gt; в реальном мире: где это реально работает, где это утопия, и почему OpenBSD для меня сегодня не философское заявление, а конкретный план.&lt;/p&gt;
  &lt;p id=&quot;rSYC&quot;&gt;Сразу оговорюсь: я не луддит и не апологет «отключиться от всего». Я каждый день пользуюсь интернетом, языковыми моделями и облачными сервисами. Этот пост — не декларация отказа. Я хочу поделиться &lt;strong&gt;изменением установки по умолчанию&lt;/strong&gt;: с «сервис мне помогает, пока не доказано обратное» на «сервис собирает данные обо мне, пока я не убедился в обратном». Эта смена акцентов кажется небольшой, но её последствия для повседневной работы радикальные.&lt;/p&gt;
  &lt;h2 id=&quot;1-что-именно-изменилось&quot;&gt;1. Что именно изменилось&lt;/h2&gt;
  &lt;p id=&quot;Od2P&quot;&gt;Я не могу назвать конкретную дату, после которой моё отношение к цифровой среде стало другим. Но я могу описать переворот, который произошёл за последние десять-пятнадцать лет.&lt;/p&gt;
  &lt;p id=&quot;1eZD&quot;&gt;Когда-то цифровые сервисы были &lt;strong&gt;инструментами&lt;/strong&gt;. Текстовый редактор, почтовый клиент, мессенджер — это были программы, которые делали для вас работу. Вы платили за них один раз, ставили на свой компьютер, и они работали. А некоторые можно было поставить бесплатно. Они никому не отчитывались, не отправляли никуда данные, не модифицировали себя без вашего ведома. Они были вашим инструментом в буквальном смысле.&lt;/p&gt;
  &lt;p id=&quot;kKhm&quot;&gt;Сегодня цифровой сервис — это &lt;strong&gt;договор с поставщиком&lt;/strong&gt;. Не вещь, которой вы владеете, а длительные отношения, в которые вы вступаете и из которых не так просто выйти. Вы не покупаете инструмент, а создаёте аккаунт для доступа к нему. Сервис живёт на чужом сервере, и каждое ваше действие в нём логируется, профилируется, агрегируется. Сервис обновляется без вашего ведома, добавляя и убирая фичи по своему усмотрению. Сервис может в любой момент забанить ваш аккаунт, и вы потеряете данные. Сервис может в любой момент изменить условия использования, и единственное, что вы можете сделать, — нажать «принимаю». Или не нажать и отказаться от сервиса. Микроволновка — это вещь: купили, поставили на стол, дальше она ваша, продавцу до неё больше нет дела. Цифровой сервис устроен иначе: компания продолжает участвовать в каждом вашем взаимодействии с ним и накапливает у себя на серверах всё, что вы туда положили — переписку, документы, фотографии, историю поиска. И когда вы захотите уйти, всё это останется под её контролем, а не под вашим.&lt;/p&gt;
  &lt;p id=&quot;ueQ4&quot;&gt;Изменения произошли так плавно, что многие их просто не заметили. Сначала мы радовались синхронизации между устройствами. Потом радовались, что не надо думать о бэкапах. Потом — что новые фичи появляются сами. Каждый отдельный шаг был удобным. А в сумме мы оказались в ситуации, когда &lt;strong&gt;наши данные нам не принадлежат&lt;/strong&gt;. Они физически лежат на чужом сервере. Кто к ним получит доступ и на каких условиях, решает не пользователь, а компания-владелец сервера.&lt;/p&gt;
  &lt;p id=&quot;gj6q&quot;&gt;И это не было бы такой большой проблемой, если бы можно было сказать: «эти компании заслуживают моего доверия». В отдельных случаях — может быть, можно. Но за последние годы накопилось столько историй, что нейтральная позиция стала невозможна.&lt;/p&gt;
  &lt;h2 id=&quot;2-бесплатные-сервисы-и-экономика-данных&quot;&gt;2. «Бесплатные» сервисы и экономика данных&lt;/h2&gt;
  &lt;p id=&quot;hzOV&quot;&gt;Начнём с очевидного. В 2010 году один из ранних разработчиков MetaFilter, &lt;strong&gt;Эндрю Льюис&lt;/strong&gt;, сформулировал афоризм, который потом разошёлся по всему интернету:&lt;/p&gt;
  &lt;blockquote id=&quot;KCQX&quot;&gt;Если вы не платите за продукт — продукт это вы.&lt;/blockquote&gt;
  &lt;p id=&quot;9A8q&quot;&gt;Эта формулировка слегка упрощённая (бывают исключения вроде Wikipedia или некоторых open-source проектов), но она схватывает главное: большинство «бесплатных» цифровых сервисов содержат себя за счёт того, что &lt;strong&gt;собирают данные о пользователях и монетизируют их&lt;/strong&gt;, обычно через таргетированную рекламу.&lt;/p&gt;
  &lt;p id=&quot;13dE&quot;&gt;Gmail — это рекламная компания, которая даёт людям почту. Её материнская компания Alphabet в 2024 году получила более 80% выручки от рекламы. Когда вы пишете в Gmail письмо, оно сканируется (да, не «читается человеком», но машинная обработка идёт), индексируется, используется для построения вашего профиля интересов. Когда вы открываете Google Maps и ищете кафе, это становится сигналом «пользователь интересуется ресторанами в этом районе». Когда вы смотрите YouTube, это сигналы о ваших вкусах, политических взглядах, эмоциональном состоянии в данный момент.&lt;/p&gt;
  &lt;p id=&quot;7YMI&quot;&gt;Каждый отдельный сигнал ничего не значит. Но в сумме они дают очень точный портрет конкретного человека. И этот портрет — товар, который Google продаёт рекламодателям. Это легально, это описано в условиях использования, которые вы приняли при создании аккаунта. Просто условия эти никто никогда не читает.&lt;/p&gt;
  &lt;p id=&quot;xSVo&quot;&gt;Похожая логика у Facebook, Instagram (принадлежат компании Meta, признанной в РФ экстремистской организацией; её деятельность запрещена), TikTok, LinkedIn. У Twitter/X, Discord, Reddit. У всех «бесплатных» сервисов социального плана, и у большинства коммерческих сервисов с бесплатным тарифом.&lt;/p&gt;
  &lt;p id=&quot;9MDu&quot;&gt;И вот здесь возникает первый слив доверия. Раньше я думал: «ну да, они показывают мне рекламу, неприятно, но не критично». Сейчас я думаю: &lt;strong&gt;«моя цифровая жизнь — это сырьё в чужой производственной цепочке»&lt;/strong&gt;. И это совсем другая моральная установка, даже если экономически ничего не изменилось.&lt;/p&gt;
  &lt;h2 id=&quot;3-мобильные-приложения-гонка-следящих-модулей&quot;&gt;3. Мобильные приложения: гонка следящих модулей&lt;/h2&gt;
  &lt;p id=&quot;37Zs&quot;&gt;Мобильные приложения собирают данные глубже, чем сайты — там, где у браузера хотя бы есть встроенные ограничения (песочница вкладки, блокировщики, политика cookies), у нативного приложения их почти нет. Современное приложение для смартфона практически всегда содержит несколько &lt;strong&gt;встроенных пакетов аналитики&lt;/strong&gt;, которые называются красивыми именами вроде &lt;strong&gt;Facebook SDK&lt;/strong&gt;, &lt;strong&gt;AppsFlyer&lt;/strong&gt;, &lt;strong&gt;Adjust&lt;/strong&gt;, &lt;strong&gt;Mixpanel&lt;/strong&gt;, &lt;strong&gt;Amplitude&lt;/strong&gt;, &lt;strong&gt;Sentry&lt;/strong&gt;, &lt;strong&gt;Firebase Analytics&lt;/strong&gt;, &lt;strong&gt;Branch&lt;/strong&gt;. Каждый из этих пакетов собирает свой набор данных и отправляет их на серверы своей компании.&lt;/p&gt;
  &lt;p id=&quot;fG4D&quot;&gt;Что они собирают? В типичном случае:&lt;/p&gt;
  &lt;ul id=&quot;OAdz&quot;&gt;
    &lt;li id=&quot;3veC&quot;&gt;идентификатор устройства (рекламный ID, который должен быть «анонимным», но прекрасно сопоставляется с конкретным человеком);&lt;/li&gt;
    &lt;li id=&quot;UNPp&quot;&gt;модель устройства, версия операционной системы, языковые настройки;&lt;/li&gt;
    &lt;li id=&quot;GOPj&quot;&gt;адрес IP и приблизительная геолокация;&lt;/li&gt;
    &lt;li id=&quot;HO87&quot;&gt;какие экраны вы открывали в приложении, в каком порядке, как долго на каждом задерживались;&lt;/li&gt;
    &lt;li id=&quot;5SLc&quot;&gt;какие кнопки нажимали;&lt;/li&gt;
    &lt;li id=&quot;arFA&quot;&gt;сколько секунд провели в приложении, в какое время суток, как часто запускаете;&lt;/li&gt;
    &lt;li id=&quot;Rj2A&quot;&gt;иногда — что вы вводили в текстовых полях (не пароли, как правило, но другой текст);&lt;/li&gt;
    &lt;li id=&quot;K608&quot;&gt;иногда — список других установленных приложений на вашем устройстве.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;kscu&quot;&gt;Эти данные &lt;strong&gt;сводятся в один профиль, общий для разных приложений&lt;/strong&gt;. Если вы открыли утром приложение банка, потом приложение службы доставки, потом мессенджер, все три, скорее всего, отправили свои наблюдения за вашим поведением на одни и те же серверы, потому что у всех трёх стоит, например, Facebook SDK или Google Analytics. На стороне этих серверов данные от разных приложений склеиваются по общему идентификатору устройства и получается единая картина того, чем вы занимались утром, где находились и какие интересы у вас за день проявились. Через несколько дней такой работы ваш профиль становится очень точным.&lt;/p&gt;
  &lt;p id=&quot;ypUu&quot;&gt;Побочный эффект — мобильные приложения раздулись до сотен мегабайт. Простой мессенджер сегодня может занимать 250–400 мегабайт, потому что в нём, кроме собственно мессенджера, лежат библиотеки аналитики от пяти-семи разных компаний, библиотеки A/B-тестирования, библиотеки таргетинга рекламы, распознавания шрифтов, графики, изображений. Когда пользователи жалуются, что современные приложения тормозят даже на новых телефонах, основная причина именно здесь: процессор и память расходуются не на ваши задачи, а на работу всех этих паразитных модулей в фоне. Полезный код тонет в следящей инфраструктуре.&lt;/p&gt;
  &lt;p id=&quot;Sp6Q&quot;&gt;В Apple с 2021 года введена политика App Tracking Transparency, которая требует у пользователя явного разрешения на сбор межприложенческих данных. Это сильно ударило по Facebook (в 2022 году Meta объявила, что эта политика стоила им 10 миллиардов долларов США годовой выручки). Но это не остановило сбор данных внутри приложения, между приложениями одной компании, и для серверной аналитики, всего лишь немного его ограничило.&lt;/p&gt;
  &lt;p id=&quot;ZQD3&quot;&gt;На Android ситуация хуже: у Google есть свой аналог App Tracking Transparency — Privacy Sandbox для Android, — но он слабее по требованиям к разработчикам, и общая культура сбора данных в экосистеме гораздо более вольная.&lt;/p&gt;
  &lt;h2 id=&quot;4-мессенджеры&quot;&gt;4. Мессенджеры&lt;/h2&gt;
  &lt;p id=&quot;SqYT&quot;&gt;Мессенджер — это особое место. В нём лежит ваша личная переписка, иногда самая интимная информация о вас и вашем окружении. И именно к мессенджерам у меня сегодня самое большое недоверие.&lt;/p&gt;
  &lt;p id=&quot;ZxJ0&quot;&gt;&lt;strong&gt;Signal&lt;/strong&gt; — почти единственный в массовом сегменте, к которому я отношусь с реальным уважением. Шифрование сквозное и прозрачное (Signal Protocol — открытый стандарт, который скопировали WhatsApp и Facebook Messenger). Серверы держат минимум метаданных (Signal в 2016 году публиковала, что в ответ на повестку федерального суда они смогли предоставить только дату создания аккаунта и дату последнего подключения — больше у них реально не было). Финансируется некоммерческим Signal Foundation, без рекламы. Исходный код открыт. Это, наверное, лучшее, что у нас есть для приватной переписки в массовом сегменте. В РФ он заблокирован как раз из-за того, что переписки в нём недоступны для прочтения третьими лицами, а это противоречит требованиями закона об ОРИ.&lt;/p&gt;
  &lt;p id=&quot;G1HW&quot;&gt;&lt;strong&gt;&lt;a href=&quot;http://localhost:1313/blog/2026/simplex/&quot; target=&quot;_blank&quot;&gt;SimpleX&lt;/a&gt;&lt;/strong&gt; — отдельная история, которая заслуживает упоминания именно в этом контексте. У всех остальных мессенджеров (включая Signal) есть фундаментальная общая черта: они &lt;strong&gt;знают, кто вы&lt;/strong&gt;. Signal привязан к номеру телефона. Telegram тоже. WhatsApp — тем более. Даже если содержимое переписки они не видят, &lt;strong&gt;факт самого вашего существования как пользователя у них зафиксирован&lt;/strong&gt;. У SimpleX этого нет — он сознательно отказался от любых идентификаторов пользователя. Сервер не знает, какие пользователи к нему подключены, потому что пользователей как объектов в его модели данных просто не существует. Это переизобретение модели приватности на уровне архитектуры протокола, и я уже разбирал его &lt;a href=&quot;http://localhost:1313/blog/2026/simplex/&quot; target=&quot;_blank&quot;&gt;в отдельном посте&lt;/a&gt;. Если для вас приватность важнее удобства, SimpleX сегодня — главная альтернатива Signal.&lt;/p&gt;
  &lt;p id=&quot;8tku&quot;&gt;&lt;strong&gt;WhatsApp&lt;/strong&gt; использует тот же Signal Protocol для шифрования содержимого, но Meta собирает огромное количество &lt;strong&gt;метаданных&lt;/strong&gt;: с кем вы переписываетесь, как часто, в какое время, какие группы. Метаданные часто говорят больше, чем содержимое. Метаданные интегрируются в общий профиль Meta вместе с данными из Instagram и Facebook.&lt;/p&gt;
  &lt;p id=&quot;vlK3&quot;&gt;&lt;strong&gt;Telegram&lt;/strong&gt; — отдельная история. Шифрование сквозное &lt;strong&gt;только в «секретных чатах»&lt;/strong&gt;, которые по умолчанию выключены. Обычные чаты шифруются только между клиентом и сервером — то есть Telegram-серверы видят содержимое. У Telegram сложная история с регуляторами (он отказывался выдавать данные ФСБ в 2017–2018, потом его пытались блокировать в России, потом разблокировали, потом репутация менялась туда-сюда). Внутри компании прошли реорганизации. После ареста Павла Дурова во Франции в августе 2024-го (по обвинениям в недостаточном сотрудничестве с правоохранительными органами в делах, не связанных с приватностью) Telegram объявил, что начнёт выдавать данные пользователей по законным запросам.&lt;/p&gt;
  &lt;p id=&quot;1Y25&quot;&gt;&lt;strong&gt;iMessage&lt;/strong&gt; — шифрование сквозное, но Apple по умолчанию делает бэкап вашей переписки в iCloud, и &lt;strong&gt;этот бэкап Apple может расшифровать&lt;/strong&gt;, если у вас не включена Advanced Data Protection (она введена в 2022 году, по умолчанию выключена, и большинство пользователей о ней даже не знают). То есть формально iMessage защищён, на практике — обычно нет.&lt;/p&gt;
  &lt;p id=&quot;BbLQ&quot;&gt;&lt;strong&gt;WeChat&lt;/strong&gt;, &lt;strong&gt;Line&lt;/strong&gt;, &lt;strong&gt;KakaoTalk&lt;/strong&gt; — национальные мессенджеры, для которых сотрудничество с местными властями встроено в саму архитектуру. О них я говорить не буду, потому что их пользователи обычно сознательно принимают эти правила.&lt;/p&gt;
  &lt;p id=&quot;4mvQ&quot;&gt;&lt;strong&gt;Примечание.&lt;/strong&gt; Понятие &lt;strong&gt;организатора распространения информации&lt;/strong&gt; (ОРИ) ввёл в российское законодательство Федеральный закон №97-ФЗ от 5 мая 2014 года: он добавил статью 10.1 в базовый Закон об информации №149-ФЗ от 27 июля 2006 года. Обязанность хранить &lt;strong&gt;содержимое&lt;/strong&gt; переписки за шесть месяцев и &lt;strong&gt;метаданных за год&lt;/strong&gt;, а также &lt;strong&gt;предоставлять ФСБ ключи для расшифровки&lt;/strong&gt; содержимого, появилась в так называемом «пакете Яровой» — Федеральные законы №374-ФЗ и №375-ФЗ от 6 июля 2016 года, основные положения которых вступили в силу 1 июля 2018 года. С этого момента любой сервис, через который пользователи обмениваются сообщениями, обязан регистрироваться в Роскомнадзоре и обеспечивать выдачу содержимого по требованию ФСБ. Сервисы, у которых сквозное шифрование настоящее (то есть ключи существуют только у пользователей и физически не могут быть переданы третьей стороне), это требование исполнить не могут.&lt;/p&gt;
  &lt;p id=&quot;eah7&quot;&gt;Именно поэтому в РФ заблокированы &lt;strong&gt;Signal&lt;/strong&gt; и &lt;strong&gt;SimpleX&lt;/strong&gt; — оба сервиса по архитектуре не способны передать содержимое переписок, потому что ключей для расшифровки переписок у них нет. Голосовые и видеозвонки WhatsApp Роскомнадзор заблокировал в августе 2025 года, а 11 февраля 2026 года домены &lt;code&gt;whatsapp.com&lt;/code&gt; и &lt;code&gt;web.whatsapp.com&lt;/code&gt; исключили из Национальной системы доменных имён (НСДИ) — обязательной DNS-инфраструктуры всех российских провайдеров. С этого момента WhatsApp в РФ доступен только через VPN или сторонние DNS-резолверы.&lt;/p&gt;
  &lt;p id=&quot;NxNq&quot;&gt;Telegram блокировали в 2018–2020-м, потом разблокировали (де-факто за счёт договорённостей, о деталях которых открытой информации нет). А 10 февраля 2026 года Роскомнадзор официально признал, что снова замедляет его работу — через систему &lt;strong&gt;ТСПУ&lt;/strong&gt; (технических средств противодействия угрозам) на основе глубокой инспекции пакетов (DPI). К середине марта 2026-го доля неуспешных запросов к серверам Telegram из России выросла примерно до 80%, у пользователей перестали грузиться медиа, потом и текстовые сообщения. 23 марта Госдума приняла закон, позволяющий Роскомнадзору самостоятельно блокировать трафик через ТСПУ, без участия провайдеров. К началу апреля 2026-го объявлено о полной блокировке.&lt;/p&gt;
  &lt;p id=&quot;d7Yj&quot;&gt;Таким образом, в РФ требования закона прямо противоположны тому, что для пользователя означает «приватный мессенджер»: чем приватнее сервис, тем выше шанс, что им станет нельзя пользоваться без спецсредств.&lt;/p&gt;
  &lt;p id=&quot;1Lnb&quot;&gt;В итоге картина такая: если вам важна приватность переписки, у вас по сути два реалистичных выбора — Signal для массовой связи и SimpleX для самых чувствительных разговоров. Но следует иметь в виду, что без трехбуквенного заклинания они не работают. Ну а все остальные мессенджеры, которые работают в РФ, не обеспечивают приватность ни в каком виде. Ваши переписки могут читать. Личные тоже. Просто имейте это в виду, когда соберётесь высказаться откровенно в переписке с другом.&lt;/p&gt;
  &lt;h2 id=&quot;5-защищённая-почта-и-судебные-запросы&quot;&gt;5. «Защищённая» почта и судебные запросы&lt;/h2&gt;
  &lt;p id=&quot;KM0T&quot;&gt;С почтой история ещё интереснее. Сервисы вроде &lt;strong&gt;ProtonMail&lt;/strong&gt; и &lt;strong&gt;Tutanota&lt;/strong&gt; продают себя как «защищённую» почту с серверами в Швейцарии и Германии, со сквозным шифрованием, со слоганами вроде «мы не можем прочитать ваши сообщения». И это правда, но только частично.&lt;/p&gt;
  &lt;p id=&quot;97YH&quot;&gt;Есть нюанс, который многие пользователи упускают. &lt;strong&gt;Содержимое писем&lt;/strong&gt; действительно зашифровано так, что сервис не может его прочитать. А вот &lt;strong&gt;метаданные&lt;/strong&gt; — кто, кому и когда написал, с какого IP-адреса, с какого устройства — сервис видит, и обязан выдавать по законным запросам своей юрисдикции.&lt;/p&gt;
  &lt;p id=&quot;u5l9&quot;&gt;Этот факт стал достоянием публики в сентябре 2021 года. Французская полиция расследовала деятельность группы климатических активистов, которая занимала здание в Париже. Один из активистов использовал для координации ProtonMail. Французская полиция через швейцарское правовое сотрудничество обратилась к ProtonMail с официальным запросом. ProtonMail передал IP-адреса, с которых аккаунт активиста заходил в почту. Активиста идентифицировали и задержали.&lt;/p&gt;
  &lt;p id=&quot;TdXx&quot;&gt;ProtonMail объяснил: они обязаны соблюдать швейцарское законодательство, в рамках которого действительный судебный запрос требует выполнения. Они не хранят содержимое (его они физически не могут расшифровать), но логи подключений — это другая категория данных, и она доступна по запросу.&lt;/p&gt;
  &lt;p id=&quot;sKGZ&quot;&gt;Это вызвало большой скандал. ProtonMail после этого изменил свою формулировку маркетинга и добавил предложение Tor-доступа для пользователей, которым важно скрыть свой IP. Но фундаментальная архитектура осталась той же: швейцарская компания, обязанная подчиняться швейцарскому суду.&lt;/p&gt;
  &lt;p id=&quot;BSBY&quot;&gt;Похожая история была у &lt;strong&gt;Tutanota&lt;/strong&gt; (теперь Tuta Mail) с немецкими судами в 2020–2021 годах: им предписывали мониторить новые входящие письма для конкретных аккаунтов в реальном времени. Tutanota подчинилась.&lt;/p&gt;
  &lt;p id=&quot;dRnh&quot;&gt;Ещё более показательный случай — &lt;strong&gt;Hushmail&lt;/strong&gt; в 2007 году. Канадский «защищённый» почтовый сервис передал расшифрованные сообщения американскому DEA по запросу через канадские суды. Hushmail тогда честно объяснил: их «сквозное шифрование» происходило в Java-апплете на стороне клиента, и при необходимости они могли подменить апплет так, чтобы он передал пароль пользователя на сервер. Технически это была идеальная схема для соблюдения закона при сохранении маркетингового заявления о безопасности.&lt;/p&gt;
  &lt;p id=&quot;2krm&quot;&gt;Вывод простой: &lt;strong&gt;любой почтовый сервис в любой юрисдикции выдаст данные по законному запросу&lt;/strong&gt;. Это не недостаток конкретного сервиса, это свойство системы. И если для вас важна полная приватность переписки, единственный путь — &lt;strong&gt;свой собственный почтовый сервер&lt;/strong&gt; или прямое использование PGP с обменом ключами вне сервиса.&lt;/p&gt;
  &lt;h2 id=&quot;6-облачные-хранилища&quot;&gt;6. Облачные хранилища&lt;/h2&gt;
  &lt;p id=&quot;Psgb&quot;&gt;С облачными дисками ситуация ещё хуже, потому что туда мы загружаем не короткие тексты, а целые архивы наших жизней — фотографии, документы, проекты.&lt;/p&gt;
  &lt;p id=&quot;Y3Di&quot;&gt;&lt;strong&gt;Google Drive&lt;/strong&gt;, &lt;strong&gt;Microsoft OneDrive&lt;/strong&gt;, &lt;strong&gt;Apple iCloud&lt;/strong&gt;, &lt;strong&gt;Dropbox&lt;/strong&gt;, &lt;strong&gt;Yandex.Disk&lt;/strong&gt; — все эти сервисы хранят ваши файлы на своих серверах в незашифрованном для них виде (или в виде, который сервис может расшифровать). Это значит, что технически сервис может:&lt;/p&gt;
  &lt;ul id=&quot;psZw&quot;&gt;
    &lt;li id=&quot;w7E0&quot;&gt;просматривать содержимое любого файла;&lt;/li&gt;
    &lt;li id=&quot;sz8H&quot;&gt;сканировать содержимое автоматически (для модерации, для рекламы, для тренировки моделей машинного обучения);&lt;/li&gt;
    &lt;li id=&quot;6RZr&quot;&gt;предоставлять файлы правоохранительным органам по запросу;&lt;/li&gt;
    &lt;li id=&quot;BiTc&quot;&gt;закрыть ваш аккаунт, если их алгоритмы посчитают содержимое нарушением правил, иногда без возможности апелляции.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;jluO&quot;&gt;Несколько ярких случаев последних лет.&lt;/p&gt;
  &lt;p id=&quot;T42h&quot;&gt;&lt;strong&gt;Apple CSAM Detection (август 2021).&lt;/strong&gt; Apple объявила о технологии, которая будет автоматически сканировать фотографии пользователей в iCloud Photos на предмет соответствия известным образцам жестокого обращения с детьми (CSAM). Технология использовала нейросетевые отпечатки и должна была работать «на устройстве» с отправкой только подозрительных совпадений. Цель — благородная. Но криптографическое сообщество и правозащитники объяснили: технология создаёт инфраструктуру для любого сканирования данных пользователей. Если эта технология есть, никто не помешает её расширить на другие категории контента, включая политически чувствительные. Под давлением Apple отказался от запуска CSAM-сканирования в декабре 2022 года.&lt;/p&gt;
  &lt;p id=&quot;S4Q7&quot;&gt;&lt;strong&gt;Google Photos и распознавание лиц.&lt;/strong&gt; Google Photos автоматически распознаёт лица на ваших фотографиях, группирует их по людям, может находить вас на фотографиях других пользователей (если у вас есть общие фото). Это удобно. Это также означает, что Google имеет в своих базах детальную карту того, кто с кем фотографировался — потенциально мощнейший инструмент социального анализа.&lt;/p&gt;
  &lt;p id=&quot;Zg9L&quot;&gt;&lt;strong&gt;Adobe и обновление условий использования (июнь 2024).&lt;/strong&gt; Adobe в феврале 2024 года обновил условия использования своих сервисов (Creative Cloud), добавив пункт, который сообщество интерпретировало как разрешение использовать содержимое пользователей для тренировки моделей машинного обучения. Это вызвало взрыв в сообществе художников, фотографов, дизайнеров: люди, которые годами использовали Photoshop и Lightroom для коммерческой работы, обнаружили, что их собственные изображения могут быть использованы как тренировочный материал для конкурирующих ИИ-моделей. Adobe потом частично переписал условия, добавил исключения, объяснял, что не использует материалы для тренировки, но осадок остался.&lt;/p&gt;
  &lt;p id=&quot;k07D&quot;&gt;Это, наверное, главный сдвиг последних двух лет. Если раньше «облачное хранилище» означало «другая компания хранит ваши файлы на своих серверах», то теперь это означает &lt;strong&gt;«другая компания может тренировать ИИ-модели на ваших файлах»&lt;/strong&gt;. Это качественно новая категория проблемы.&lt;/p&gt;
  &lt;p id=&quot;vqqf&quot;&gt;нд) делает скриншот всего экрана и сохраняет его, чтобы потом можно было «найти всё, что вы делали на компьютере» через поиск. Анонс вызвал немедленный взрыв в сообществе безопасности: исследователи показали, что в первоначальной реализации база данных скриншотов лежала в открытом виде, доступна локально без шифрования, и любая программа на компьютере (включая вредоносную) могла её прочитать. Microsoft отложил релиз, переписал реализацию с использованием Windows Hello и шифрованием, потом снова отложил. К началу 2026 года Recall существует, но включается явно. Сам факт, что Microsoft серьёзно рассматривал такую функцию по умолчанию, — это новая глава в отношении операционной системы к пользователю.&lt;/p&gt;
  &lt;p id=&quot;vey6&quot;&gt;&lt;strong&gt;macOS&lt;/strong&gt; ведёт себя более сдержанно, но тоже отправляет зн## 7. Уровень операционной системы&lt;/p&gt;
  &lt;p id=&quot;D2fJ&quot;&gt;Можно подумать: ладно, мы откажемся от облачных сервисов, поставим всё локально, и тогда хотя бы операционная система останется нашей. К сожалению, нет.&lt;/p&gt;
  &lt;p id=&quot;rFIc&quot;&gt;&lt;strong&gt;Windows 11&lt;/strong&gt; собирает значительный объём телеметрии по умолчанию. Microsoft публично описывает её как «технические сведения» — типа какие функции используются, как часто падают приложения. На практике объём данных намного больше, чем нужно для диагностики. Существуют отдельные инструменты (O&amp;amp;O ShutUp10++ и подобные), помогающие отключить максимальное количество телеметрии. Сам факт того, что для отключения нужны отдельные инструменты, говорит о многом.&lt;/p&gt;
  &lt;p id=&quot;UC79&quot;&gt;В мае 2024 года Microsoft анонсировала &lt;strong&gt;Windows Recall&lt;/strong&gt; — функцию, которая периодически (каждые несколько секуачительный объём данных в Apple. С каждой версией добавляются новые ИИ-функции (Apple Intelligence в macOS 15), которые по умолчанию используют облачные серверы Apple для обработки запросов. Apple клянётся, что приватность сохраняется через Private Cloud Compute. Технически это, возможно, правда. Но по сути это означает, что я больше не понимаю, какие именно мои данные уходят в Apple-инфраструктуру.&lt;/p&gt;
  &lt;p id=&quot;db1l&quot;&gt;&lt;strong&gt;Android&lt;/strong&gt; в стандартных сборках от Google (на устройствах с Google Play) собирает огромный объём данных как через Google Services, так и через приложения, в которые встроены аналитические библиотеки. Альтернативные сборки (&lt;a href=&quot;http://localhost:1313/blog/2025/grapheneos-1/&quot; target=&quot;_blank&quot;&gt;GrapheneOS&lt;/a&gt;, CalyxOS, LineageOS без G-Apps) существуют, но они требуют специфических устройств и серьёзной возни. Я в итоге купил себе Google Pixel и установил туда &lt;a href=&quot;http://localhost:1313/blog/2025/grapheneos-1/&quot; target=&quot;_blank&quot;&gt;GrapheneOS&lt;/a&gt; вместо оригинальной гугловской системы — про устройство этой ОС, её модель угроз и реальный опыт перехода я уже подробно писал в &lt;a href=&quot;http://localhost:1313/blog/2025/grapheneos2/&quot; target=&quot;_blank&quot;&gt;двух отдельных постах&lt;/a&gt;.&lt;/p&gt;
  &lt;p id=&quot;rMw0&quot;&gt;&lt;strong&gt;ChromeOS&lt;/strong&gt; — это, наверное, самый чистый случай. Это операционная система, которая дизайнерски является продолжением Google в форме железа. Если вы готовы к тому, что Google знает о вас всё, это нормальный выбор. Если нет — это не для вас.&lt;/p&gt;
  &lt;p id=&quot;HrHf&quot;&gt;И вот в этом контексте начинают становиться интересными альтернативы. &lt;strong&gt;Linux&lt;/strong&gt; (особенно дистрибутивы вроде Debian, Fedora, Arch без проприетарных компонентов) — реальная и работающая альтернатива. Большинство Linux-дистрибутивов не собирают никакой телеметрии. Большинство Linux-приложений (текстовых редакторов, IDE, мессенджеров) — open source и не отправляют куда-либо данные о вашем использовании. Это не идеально (Linux-сообщество тоже не безгрешно), но это качественно другая ситуация.&lt;/p&gt;
  &lt;p id=&quot;i6ZS&quot;&gt;А &lt;strong&gt;OpenBSD&lt;/strong&gt; — это вообще отдельный разговор, к которому я ещё вернусь.&lt;/p&gt;
  &lt;h2 id=&quot;8-цепочка-поставок-история-xz-utils&quot;&gt;8. Цепочка поставок: история xz-utils&lt;/h2&gt;
  &lt;p id=&quot;zf9V&quot;&gt;А теперь самая драматичная часть. До сих пор мы говорили о том, что коммерческие сервисы собирают данные. Но есть категория проблемы, которая страшнее: &lt;strong&gt;что если код, на котором работает вся ваша инфраструктура, скомпрометирован?&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;tr0V&quot;&gt;Современное программное обеспечение — это &lt;strong&gt;гигантский клубок зависимостей&lt;/strong&gt;. Простая Node.js-программа из десяти строк может тащить за собой сотни npm-пакетов, написанных разными людьми в разных странах. Linux-дистрибутив включает тысячи пакетов, поддерживаемых разными мейнтейнерами. Python-приложение использует десятки PyPI-библиотек. И каждая из этих зависимостей — потенциальная точка атаки.&lt;/p&gt;
  &lt;p id=&quot;7RnR&quot;&gt;В 2024 году произошла история, которая стала самым ярким примером в истории open source. Называется она &lt;strong&gt;xz-utils backdoor&lt;/strong&gt;, или &lt;strong&gt;CVE-2024-3094&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;2SK3&quot;&gt;&lt;strong&gt;xz-utils&lt;/strong&gt; — это набор утилит сжатия данных, используемый практически во всех Linux-системах. Не самая известная библиотека, но критическая часть инфраструктуры. С 2009 года её поддерживал финский разработчик &lt;strong&gt;Ларс Коллин&lt;/strong&gt; (Lasse Collin), один человек, в свободное от работы время.&lt;/p&gt;
  &lt;p id=&quot;BzIA&quot;&gt;В 2021 году в проект пришёл новый контрибьютор под именем &lt;strong&gt;Jia Tan&lt;/strong&gt;. Он начал с обычных полезных правок: исправления багов, улучшения производительности, доработок документации. Постепенно завоёвывал доверие. В то же время в проекте появлялись жалобы от других «пользователей» (как теперь подозревают, фейковых), что Коллин не успевает поддерживать проект, что нужны новые мейнтейнеры. Коллин, действительно перегруженный, постепенно передавал больше прав Jia Tan. К началу 2024 года Jia Tan фактически стал основным мейнтейнером.&lt;/p&gt;
  &lt;p id=&quot;5QmX&quot;&gt;29 февраля 2024 года был выпущен релиз xz-utils 5.6.0, а 9 марта — 5.6.1. В этих релизах был &lt;strong&gt;тщательно спрятанный бэкдор&lt;/strong&gt;. Он не присутствовал в исходном коде, а был зашит в тестовые файлы (специально сконструированные «битые» архивы). Во время сборки специальный скрипт извлекал из них вредоносный код и встраивал его в библиотеку. Бэкдор активировался при подключении по SSH и позволял удалённому атакующему, знающему правильный ключ, выполнить любой код на скомпрометированной системе.&lt;/p&gt;
  &lt;p id=&quot;G0xM&quot;&gt;Если бы релиз 5.6.1 успел попасть в стабильные ветки Debian, Ubuntu, Red Hat, это была бы, наверное, &lt;strong&gt;крупнейшая компрометация интернет-инфраструктуры в истории&lt;/strong&gt;. Огромная часть мировых SSH-серверов оказалась бы в распоряжении неизвестного злоумышленника.&lt;/p&gt;
  &lt;p id=&quot;R2bh&quot;&gt;Бэкдор обнаружил &lt;strong&gt;Андрес Фройнд&lt;/strong&gt; — инженер Microsoft, занимающийся PostgreSQL. &lt;strong&gt;29 марта 2024 года&lt;/strong&gt; он отлаживал странность: его тестовый SSH-сервер подключался на полсекунды медленнее обычного. Полсекунды — крошечная задержка. Большинство людей её бы не заметили. Фройнд заметил, начал копать, и обнаружил замаскированный бэкдор. Через несколько часов он опубликовал предупреждение на список рассылки oss-security. К утру 30 марта весь мир уже знал о проблеме. Дистрибутивы откатили обновления. Атака провалилась.&lt;/p&gt;
  &lt;p id=&quot;1Qmu&quot;&gt;Эта история — поучительная по нескольким причинам.&lt;/p&gt;
  &lt;p id=&quot;ELQw&quot;&gt;Во-первых, &lt;strong&gt;атаку готовили не меньше двух лет&lt;/strong&gt;. Это был не одиночный хакер, это была организованная кампания, скорее всего с государственной поддержкой (точно никто не установил, но косвенные признаки указывают на госхакеров). Социальная инженерия с фейковыми аккаунтами, давление на единственного мейнтейнера, постепенное накопление доверия, выбор момента — всё было продумано.&lt;/p&gt;
  &lt;p id=&quot;xQRO&quot;&gt;Во-вторых, &lt;strong&gt;атаку остановила счастливая случайность&lt;/strong&gt;. Если бы Фройнд не отлаживал PostgreSQL именно в этот момент, если бы он не был достаточно внимателен, бэкдор попал бы в стабильные системы. Это означает, что другие подобные атаки могут уже идти прямо сейчас, просто мы о них не знаем и не сможем узнать, пока ещё одна счастливая случайность не вскроет ещё один заранее спланированный бэкдор.&lt;/p&gt;
  &lt;p id=&quot;JNvq&quot;&gt;В-третьих, и это главное: &lt;strong&gt;вся современная цифровая инфраструктура держится на единичных перегруженных мейнтейнерах&lt;/strong&gt;. Ларс Коллин — швед, который в свободное время поддерживал критическую утилиту, которой пользуются миллиарды устройств. Не за зарплату. Без команды и бюджета на проверку контрибьюторов. Когда новый человек предложил помощь, конечно, он передал часть прав. А что ещё ему было делать?&lt;/p&gt;
  &lt;p id=&quot;PhSh&quot;&gt;Это и есть &lt;strong&gt;&lt;a href=&quot;https://xkcd.com/2347/&quot; target=&quot;_blank&quot;&gt;xkcd 2347 «Dependency»&lt;/a&gt;&lt;/strong&gt; — знаменитый комикс Рэндалла Манро, который вышел в августе 2020 года. На рисунке огромная нестабильная башня под названием «Вся современная цифровая инфраструктура» опирается на маленький блок в самом основании: «Случайный проект, который один человек в Небраске поддерживает без оплаты с 2003 года». После истории с xz в 2024 году эта картинка перестала быть смешной — она оказалась буквально документальной.&lt;/p&gt;
  &lt;figure id=&quot;iKBA&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://imgs.xkcd.com/comics/dependency.png&quot; width=&quot;385&quot; /&gt;
    &lt;figcaption&gt;&lt;em&gt;xkcd 2347, Рэндалл Манро, август 2020. Источник: &lt;a href=&quot;https://xkcd.com/2347/&quot; target=&quot;_blank&quot;&gt;xkcd.com/2347&lt;/a&gt;, лицензия CC BY-NC 2.5.&lt;/em&gt;&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;h2 id=&quot;9-другие-случаи-цепочки-поставок&quot;&gt;9. Другие случаи цепочки поставок&lt;/h2&gt;
  &lt;p id=&quot;1hrf&quot;&gt;xz — самый яркий, но не первый и не последний случай.&lt;/p&gt;
  &lt;p id=&quot;oNf7&quot;&gt;&lt;strong&gt;event-stream (npm, ноябрь 2018).&lt;/strong&gt; Популярный npm-пакет с миллионами скачиваний в неделю. Его автор &lt;strong&gt;Доминик Тарр&lt;/strong&gt; перестал активно поддерживать проект и передал права новому контрибьютору, который предложил помощь. Новый контрибьютор за несколько месяцев заслужил доверие и в одном из релизов добавил зависимость от другого пакета, который содержал вредоносный код. Цель — кража биткоин-кошельков из конкретного приложения Copay. Это был один из первых громких случаев атаки на npm.&lt;/p&gt;
  &lt;p id=&quot;lFOn&quot;&gt;&lt;strong&gt;Log4Shell (декабрь 2021, CVE-2021-44228).&lt;/strong&gt; Уязвимость в Log4j — Java-библиотеке логирования, используемой в миллионах корпоративных приложений. Это не было атакой через цепочку поставок (бэкдора там не было, просто опасная функция, которую можно эксплуатировать), но эффект тот же: одна библиотека была повсюду, уязвимость была критической, обновление потребовалось срочно во всём мире. CISA называла это «одной из самых серьёзных уязвимостей в истории».&lt;/p&gt;
  &lt;p id=&quot;dSXF&quot;&gt;&lt;strong&gt;SolarWinds (декабрь 2020).&lt;/strong&gt; Государственная атака (приписывают группе APT29 / Cozy Bear, российской SVR), скомпрометировавшая систему сборки &lt;strong&gt;SolarWinds Orion&lt;/strong&gt; — корпоративного инструмента мониторинга сети. Около 18 тысяч организаций установили скомпрометированное обновление, включая правительственные ведомства США, Microsoft, FireEye. Это, наверное, самый громкий случай атаки на цепочку поставок в истории корпоративного программного обеспечения.&lt;/p&gt;
  &lt;p id=&quot;v8CA&quot;&gt;&lt;strong&gt;Polyfill.io (июнь 2024).&lt;/strong&gt; Сервис, который автоматически подгружал миллионам сайтов &lt;strong&gt;полифилы&lt;/strong&gt; — небольшие JavaScript-вставки, которые «дозаполняют» старые браузеры до поддержки новых веб-функций (например, объясняют браузеру, что такое &lt;code&gt;Promise&lt;/code&gt; или &lt;code&gt;fetch&lt;/code&gt;, если он этого ещё не знает). Название идёт от британской торговой марки шпаклёвки Polyfilla: идея в том, что библиотечка «заделывает дыру» в возможностях браузера. Так вот, в феврале 2024 года polyfill.io был куплен китайской компанией. Через несколько месяцев новый владелец начал внедрять вредоносный код в скрипты, отдаваемые с CDN. Cloudflare и другие провайдеры заблокировали polyfill.io, но многие сайты успели пострадать.&lt;/p&gt;
  &lt;p id=&quot;IcSH&quot;&gt;Каждый такой случай — это &lt;strong&gt;независимое подтверждение того, что цепочка поставок программного обеспечения сегодня является основным вектором атаки&lt;/strong&gt;. Не уязвимости в вашем коде, а компрометация чего-то, что вы доверчиво используете.&lt;/p&gt;
  &lt;p id=&quot;xhGv&quot;&gt;И это меняет инженерную дисциплину. Раньше «безопасный код» означал «отсутствие SQL-инъекций, переполнений буфера, XSS». Теперь это означает ещё и «контроль над всеми зависимостями, понимание, кто их поддерживает, отслеживание, кто получил права коммита». А когда у вас в проекте триста npm-пакетов, тысяча транзитивных зависимостей, — это становится физически невозможно для одной команды.&lt;/p&gt;
  &lt;h2 id=&quot;10-ии-как-новый-агент-сбора-данных&quot;&gt;10. ИИ как новый агент сбора данных&lt;/h2&gt;
  &lt;p id=&quot;qf31&quot;&gt;К традиционным проблемам приватности за последние два-три года добавился новый, качественно отличный класс — &lt;strong&gt;сервисы машинного обучения, которые тренируются на ваших данных&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;1pFO&quot;&gt;Здесь я хочу подсветить один конкретный аспект — &lt;strong&gt;что происходит с данными, которые вы скармливаете ИИ-моделям&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;7rHw&quot;&gt;&lt;strong&gt;GitHub Copilot.&lt;/strong&gt; Когда вы пишете код с Copilot, ваш код отправляется на серверы Microsoft/OpenAI для генерации подсказок. По умолчанию, в бесплатных и индивидуальных платных подписках, &lt;strong&gt;этот код может использоваться для тренировки следующих версий моделей&lt;/strong&gt;. В корпоративных подписках (Copilot Business, Copilot Enterprise) Microsoft обещает не использовать данные клиентов для тренировки. Но факт того, что есть разница между тарифами, показывает: для дешёвых тарифов &lt;strong&gt;ваш код — это тренировочные данные&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;Hd4c&quot;&gt;&lt;strong&gt;ChatGPT, Claude, Gemini.&lt;/strong&gt; Аналогично: в индивидуальных подписках данные могут использоваться для тренировки, в корпоративных — обычно нет. Это разница не в качестве сервиса, а в &lt;strong&gt;юридических ограничениях использования данных&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;KoYB&quot;&gt;&lt;strong&gt;Adobe Creative Cloud.&lt;/strong&gt; История с условиями использования 2024-го года показала, что разработчики коммерческого ПО рассматривают пользовательский контент как потенциальный тренировочный материал. Adobe потом извинился и переписал условия, но осадок остался.&lt;/p&gt;
  &lt;p id=&quot;E5K9&quot;&gt;&lt;strong&gt;Microsoft Recall.&lt;/strong&gt; Самый яркий случай. ИИ-функция, которая сохраняет всё, что вы видели на экране, для будущего поиска. Тренировочные данные для модели — буквально ваша полная цифровая жизнь.&lt;/p&gt;
  &lt;p id=&quot;DStM&quot;&gt;Когда мы говорим про традиционные сервисы, мы говорим про &lt;strong&gt;сбор данных для рекламы&lt;/strong&gt;. Это неприятно, но это понятная экономика: ваши данные → реклама → деньги. В случае ИИ возникает &lt;strong&gt;другая экономика&lt;/strong&gt;: ваши данные → тренировка моделей → продукт, который потом конкурирует с вашей работой.&lt;/p&gt;
  &lt;p id=&quot;ifAu&quot;&gt;Это особенно болезненно для творческих профессий. Художники, которые годами загружали свои работы в Behance, ArtStation, в облачные сервисы, обнаружили, что их работы стали тренировочным материалом для моделей, которые теперь генерируют похожие изображения за минуты. Программисты обнаружили, что их open-source код использовался для обучения Copilot. Это не воровство в юридическом смысле (часто это разрешено условиями использования, на которые вы согласились). Но это качественно новое отношение между сервисом и пользователем.&lt;/p&gt;
  &lt;h2 id=&quot;11-импульс-переписать-всё-под-себя&quot;&gt;11. Импульс «переписать всё под себя»&lt;/h2&gt;
  &lt;p id=&quot;T83w&quot;&gt;Сложив всё вышесказанное, я начинаю понимать, откуда мой импульс. Это не отдельная паранойя по одному поводу. Это &lt;strong&gt;совокупность мелких неприятных фактов&lt;/strong&gt;, каждый из которых по отдельности проглатывается, а вместе они складываются в общую картину:&lt;/p&gt;
  &lt;ul id=&quot;LuK8&quot;&gt;
    &lt;li id=&quot;CozX&quot;&gt;мои поисковые запросы анализируются для рекламы;&lt;/li&gt;
    &lt;li id=&quot;AX4q&quot;&gt;мои письма сканируются для построения профиля;&lt;/li&gt;
    &lt;li id=&quot;FI3l&quot;&gt;мои переписки в разрешенных мессенджерах могут читать посторонние, потому что по закону их владельцы обязаны открывать доступ к ним по официальным запросам;&lt;/li&gt;
    &lt;li id=&quot;WLbF&quot;&gt;мои файлы в облаке могут стать тренировочным материалом;&lt;/li&gt;
    &lt;li id=&quot;RXXw&quot;&gt;моя операционная система отправляет телеметрию;&lt;/li&gt;
    &lt;li id=&quot;knD5&quot;&gt;мои зависимости могут содержать бэкдоры;&lt;/li&gt;
    &lt;li id=&quot;VLwe&quot;&gt;мои ИИ-инструменты могут тренировать модели на моих запросах.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;riiN&quot;&gt;В каждом отдельном случае я могу пожать плечами. В сумме — нет.&lt;/p&gt;
  &lt;p id=&quot;MbOK&quot;&gt;Поэтому возникает естественная реакция: &lt;strong&gt;уменьшить поверхность доверия&lt;/strong&gt;. Не уничтожить полностью (это нереально), а &lt;strong&gt;переместить максимум функциональности под мой собственный контроль&lt;/strong&gt;. И обнаруживается, что это сегодня более реалистично, чем десять лет назад.&lt;/p&gt;
  &lt;p id=&quot;jERi&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/awesome-selfhosted/awesome-selfhosted&quot; target=&quot;_blank&quot;&gt;Self-hosting&lt;/a&gt;&lt;/strong&gt; — самостоятельная установка серверных сервисов у себя дома или на VPS — стал отдельной субкультурой. Из значимых проектов:&lt;/p&gt;
  &lt;p id=&quot;TmNr&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://nextcloud.com/&quot; target=&quot;_blank&quot;&gt;Nextcloud&lt;/a&gt;&lt;/strong&gt; — open-source замена Google Drive, Office 365, Calendar, Contacts. Ставится на свой сервер, синхронизирует файлы между устройствами, имеет приложения для всех платформ. На 2026 год — это, наверное, главный self-hosted проект Европы.&lt;/p&gt;
  &lt;p id=&quot;q0py&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://element.io/&quot; target=&quot;_blank&quot;&gt;Synapse&lt;/a&gt; / Matrix&lt;/strong&gt; — open-source мессенджер на базе протокола Matrix. Можно поставить свой сервер, переписываться с другими серверами по федеративному протоколу. Используется правительством Германии (для внутренних коммуникаций), французской армией и многими другими организациями, которым важна суверенность.&lt;/p&gt;
  &lt;p id=&quot;phQj&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/dani-garcia/vaultwarden&quot; target=&quot;_blank&quot;&gt;Vaultwarden&lt;/a&gt;&lt;/strong&gt; — self-hosted менеджер паролей, совместимый с клиентами Bitwarden. Полностью под вашим контролем.&lt;/p&gt;
  &lt;p id=&quot;AMhe&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://plausible.io/&quot; target=&quot;_blank&quot;&gt;Plausible&lt;/a&gt; / &lt;a href=&quot;https://umami.is/&quot; target=&quot;_blank&quot;&gt;Umami&lt;/a&gt;&lt;/strong&gt; — простая веб-аналитика без cookies и без отправки данных третьим сторонам, ставится на свой сервер.&lt;/p&gt;
  &lt;p id=&quot;ddHa&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://tailscale.com/&quot; target=&quot;_blank&quot;&gt;Tailscale&lt;/a&gt;&lt;/strong&gt; или его open-source аналог &lt;strong&gt;&lt;a href=&quot;https://github.com/juanfont/headscale&quot; target=&quot;_blank&quot;&gt;Headscale&lt;/a&gt;&lt;/strong&gt; — VPN-mesh для связи ваших устройств без обращения к чужим серверам.&lt;/p&gt;
  &lt;p id=&quot;vho1&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://mailcow.email/&quot; target=&quot;_blank&quot;&gt;Mailcow&lt;/a&gt; / &lt;a href=&quot;https://mailinabox.email/&quot; target=&quot;_blank&quot;&gt;Mail-in-a-Box&lt;/a&gt;&lt;/strong&gt; — готовые сборки почтового сервера для self-hosting. Технически работают, но требуют постоянного внимания (DNS, репутация IP, спам-фильтры).&lt;/p&gt;
  &lt;p id=&quot;k5go&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://jellyfin.org/&quot; target=&quot;_blank&quot;&gt;Jellyfin&lt;/a&gt;&lt;/strong&gt; — open-source замена Plex/Netflix для собственного медиа-сервера.&lt;/p&gt;
  &lt;p id=&quot;5Kwy&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://forgejo.org/&quot; target=&quot;_blank&quot;&gt;Forgejo&lt;/a&gt; / &lt;a href=&quot;https://about.gitea.com/&quot; target=&quot;_blank&quot;&gt;Gitea&lt;/a&gt;&lt;/strong&gt; — self-hosted альтернативы GitHub для хранения собственного кода.&lt;/p&gt;
  &lt;p id=&quot;P7H8&quot;&gt;Это работающие проекты. Их ставят и пользуются. Не миллионы людей, но десятки тысяч точно. И каждый человек, который ставит себе Nextcloud, проводит маленький эксперимент: &lt;strong&gt;возможно ли в 2026 году жить с собственной инфраструктурой?&lt;/strong&gt;&lt;/p&gt;
  &lt;h2 id=&quot;12-где-self-hosting-утопия&quot;&gt;12. Где self-hosting утопия&lt;/h2&gt;
  &lt;p id=&quot;c5Cw&quot;&gt;Честно скажу: полный отказ от чужих сервисов невозможен. Есть категории, в которых self-hosting не работает.&lt;/p&gt;
  &lt;p id=&quot;efhr&quot;&gt;&lt;strong&gt;Поиск в интернете.&lt;/strong&gt; Поднять у себя дома индекс всего интернета вы не можете. Возможны компромиссы — мета-поисковики вроде &lt;strong&gt;&lt;a href=&quot;https://docs.searxng.org/&quot; target=&quot;_blank&quot;&gt;SearXNG&lt;/a&gt;&lt;/strong&gt;, которые проксируют ваши запросы в Google/Bing/DuckDuckGo, не позволяя последним связать запросы с вами. Это работает, но это не полная независимость.&lt;/p&gt;
  &lt;p id=&quot;S11q&quot;&gt;&lt;strong&gt;Карты.&lt;/strong&gt; Open Street Map — отличный проект, но без коммерческих сервисов вы не получите актуальные данные о пробках, время в пути с учётом транспорта, корректные данные о бизнесах. Можно сделать многое. Идеала не будет.&lt;/p&gt;
  &lt;p id=&quot;VMAX&quot;&gt;&lt;strong&gt;Большие модели ИИ.&lt;/strong&gt; Локально можно запустить модели до примерно 70 миллиардов параметров (на мощном железе). Это полезно, и многие модели open source — Llama, Mistral, DeepSeek, Qwen — отличного качества. Но самые мощные на сегодня модели (Claude Opus, GPT-5, Gemini Ultra) у вас дома не работают: они слишком большие, чтобы поместиться в память даже самой дорогой потребительской видеокарты. Если вам нужен лучший доступный ИИ, придётся использовать чужие серверы.&lt;/p&gt;
  &lt;p id=&quot;7HQP&quot;&gt;&lt;strong&gt;Коммуникации с миром, который не self-host.&lt;/strong&gt; Ваши друзья и знакомые не поставят себе Matrix-сервер. Коллеги работают в чужих сервисах: в моём случае это российские &lt;strong&gt;Контур.Толк (KTalk)&lt;/strong&gt;, &lt;strong&gt;Loop&lt;/strong&gt;, &lt;strong&gt;Yonote&lt;/strong&gt;, &lt;strong&gt;Яндекс Документы&lt;/strong&gt;. Раньше я общался с большинством знакомых в Telegram, но после того как в РФ его сначала жёстко замедлили, а потом и заблокировали, многие переехали в государственный мессенджер &lt;strong&gt;MAX&lt;/strong&gt; (его в августе 2025 года Госдума официально сделала «национальной коммуникационной платформой», а позже сделала обязательным к предустановке на новые смартфоны и планшеты). На моих устройствах MAX я ставить не собираюсь, но это означает, что часть привычного круга общения из моей картины мира фактически выпала.&lt;/p&gt;
  &lt;p id=&quot;aj3D&quot;&gt;&lt;strong&gt;Финансы, документы, государственные сервисы.&lt;/strong&gt; Банковские приложения, госуслуги, налоговые сервисы — здесь self-hosting невозможен по определению. Это инфраструктура внешних организаций.&lt;/p&gt;
  &lt;p id=&quot;x8iq&quot;&gt;Поэтому реалистичный план — не «отказаться от всех чужих сервисов», а &lt;strong&gt;разделить инфраструктуру на категории&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;ZWs6&quot;&gt;Категория &lt;strong&gt;«критически важное»&lt;/strong&gt; — то, что должно быть под моим прямым контролем. Тексты, исходный код, личные документы, фотографии, переписка с близкими. Сюда self-hosting подходит идеально.&lt;/p&gt;
  &lt;p id=&quot;EVXc&quot;&gt;Категория &lt;strong&gt;«полезное, но не критическое»&lt;/strong&gt; — то, что я могу использовать в чужих сервисах с пониманием, что они собирают данные. Карты, поиск, развлекательные сервисы, новости.&lt;/p&gt;
  &lt;p id=&quot;nmGR&quot;&gt;Категория &lt;strong&gt;«необходимо для социума»&lt;/strong&gt; — то, без чего нельзя жить в обществе. Государственные сервисы, банковские приложения, рабочие коммуникации. Здесь мы платим тем, что есть, потому что альтернативы нет.&lt;/p&gt;
  &lt;p id=&quot;luUx&quot;&gt;Это и есть &lt;strong&gt;гибридная стратегия&lt;/strong&gt;. Не отказ от мира, а &lt;strong&gt;аккуратное разделение&lt;/strong&gt; того, что внутри моей сферы контроля и что вне её.&lt;/p&gt;
  &lt;h2 id=&quot;13-почему-openbsd-серьёзный-разбор&quot;&gt;13. Почему OpenBSD: серьёзный разбор&lt;/h2&gt;
  &lt;p id=&quot;V5uT&quot;&gt;И здесь я возвращаюсь к диску, который у меня лежит на столе.&lt;/p&gt;
  &lt;p id=&quot;tUQx&quot;&gt;&lt;a href=&quot;https://www.openbsd.org/&quot; target=&quot;_blank&quot;&gt;OpenBSD&lt;/a&gt; — операционная система, появившаяся в &lt;strong&gt;октябре 1995 года&lt;/strong&gt; как форк NetBSD. Её основатель и до сих пор основной идеолог — &lt;strong&gt;Тео де Раадт&lt;/strong&gt; (Theo de Raadt), южноафрикано-канадский разработчик, известный исключительной строгостью технических стандартов и тем, что он никогда не поступается принципами ради чьего-то удобства.&lt;/p&gt;
  &lt;p id=&quot;aXnl&quot;&gt;Главное про OpenBSD: это &lt;strong&gt;первая в мире коммерческая операционная система, чьим главным архитектурным приоритетом является безопасность&lt;/strong&gt;. Не функциональность. Не удобство. Не совместимость. Безопасность.&lt;/p&gt;
  &lt;p id=&quot;SiMK&quot;&gt;Известный неофициальный слоган проекта:&lt;/p&gt;
  &lt;blockquote id=&quot;jJnq&quot;&gt;Only two remote holes in the default install, in a heck of a long time! («За много лет — всего две удалённые уязвимости в установке по умолчанию!»)&lt;/blockquote&gt;
  &lt;p id=&quot;dS3b&quot;&gt;Это правда. Если посчитать критические удалённые уязвимости, которые позволяли скомпрометировать OpenBSD без действий пользователя, &lt;strong&gt;за тридцать лет их было всего две&lt;/strong&gt;. Для сравнения, у Windows или Linux таких уязвимостей обнаруживают десятки в год.&lt;/p&gt;
  &lt;p id=&quot;xEz2&quot;&gt;Почему так? Несколько практик, которые OpenBSD культивирует более жёстко, чем другие системы.&lt;/p&gt;
  &lt;p id=&quot;6txf&quot;&gt;&lt;strong&gt;Полный аудит кода.&lt;/strong&gt; В первые годы проекта команда OpenBSD прошла построчным аудитом весь базовый дистрибутив. Не «нашли несколько багов и поправили», а &lt;strong&gt;систематический пересмотр&lt;/strong&gt; каждой строки кода с точки зрения безопасности. Эта практика продолжается на новом коде.&lt;/p&gt;
  &lt;p id=&quot;wZ39&quot;&gt;&lt;strong&gt;Минимализм по умолчанию.&lt;/strong&gt; В установке OpenBSD по умолчанию включены минимально необходимые службы. SSH-сервер работает, но больше почти ничего. Хотите веб-сервер — поставьте сами и сконфигурируйте. Это сильно отличается от Linux-дистрибутивов, где «всё включено», и от Windows, где значительная часть сервисов запущена «на всякий случай».&lt;/p&gt;
  &lt;p id=&quot;46Ng&quot;&gt;&lt;strong&gt;Безопасные значения по умолчанию.&lt;/strong&gt; Если в системе есть выбор «удобнее vs безопаснее», OpenBSD почти всегда выбирает «безопаснее». Демоны запускаются от непривилегированных пользователей, в chroot. Конфигурации по умолчанию строгие.&lt;/p&gt;
  &lt;p id=&quot;kJmw&quot;&gt;&lt;strong&gt;Собственные технологии безопасности.&lt;/strong&gt; Многие техники, которые потом перекочевали в Linux, Windows и macOS, появились в OpenBSD первыми:&lt;/p&gt;
  &lt;ul id=&quot;3oJY&quot;&gt;
    &lt;li id=&quot;4EfI&quot;&gt;&lt;strong&gt;W^X&lt;/strong&gt; (write XOR execute) — память может быть либо записываемой, либо исполняемой, но не одновременно. Внедрено в 2003 году.&lt;/li&gt;
    &lt;li id=&quot;8Uz8&quot;&gt;&lt;strong&gt;Address Space Layout Randomization&lt;/strong&gt; (ASLR) — рандомизация адресов памяти, чтобы атакующий не мог надёжно эксплуатировать уязвимости. OpenBSD внедрил полноценный ASLR раньше других массовых систем.&lt;/li&gt;
    &lt;li id=&quot;wBmI&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://man.openbsd.org/pledge.2&quot; target=&quot;_blank&quot;&gt;pledge()&lt;/a&gt;&lt;/strong&gt; (2015, OpenBSD 5.9) — системный вызов, через который программа сама себя ограничивает: «я обещаю системе, что буду использовать только эти возможности». Если программа потом попытается сделать что-то за пределами обещания, ядро её убьёт. Это драматически уменьшает поверхность атаки.&lt;/li&gt;
    &lt;li id=&quot;x8nJ&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://man.openbsd.org/unveil.2&quot; target=&quot;_blank&quot;&gt;unveil()&lt;/a&gt;&lt;/strong&gt; (2018, OpenBSD 6.4) — то же самое для файловой системы: «я обещаю, что буду читать только эти каталоги, писать только в эти». Любая попытка выйти за пределы — мгновенный SIGKILL.&lt;/li&gt;
    &lt;li id=&quot;OBLT&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.libressl.org/&quot; target=&quot;_blank&quot;&gt;LibreSSL&lt;/a&gt;&lt;/strong&gt; — форк OpenSSL после катастрофической уязвимости Heartbleed в апреле 2014 года. Команда OpenBSD проанализировала OpenSSL и пришла в ужас от качества кода. За пару месяцев выкинули из него больше половины — мёртвый код, поддержку VMS и древних платформ, странные обходные пути, накопившиеся за десятилетия. То, что осталось, и есть LibreSSL — намного чище, безопаснее, аудируемее. По умолчанию используется в OpenBSD и нескольких Linux-дистрибутивах.&lt;/li&gt;
    &lt;li id=&quot;k9bV&quot;&gt;&lt;strong&gt;OpenSSH&lt;/strong&gt; — да, тот самый, которым пользуется весь интернет, тоже родом из OpenBSD. Команда сделала из коммерческого SSH 1996 года полностью открытую реализацию, и за 25 лет OpenSSH стал стандартом удалённого доступа на всех Unix-подобных системах. Это, возможно, самый успешный экспортный продукт OpenBSD-проекта.&lt;/li&gt;
    &lt;li id=&quot;IK3G&quot;&gt;&lt;strong&gt;PF (Packet Filter)&lt;/strong&gt; — один из лучших файрволов в мире, простой в конфигурации, отлично документированный.&lt;/li&gt;
    &lt;li id=&quot;rkxp&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://man.openbsd.org/doas.1&quot; target=&quot;_blank&quot;&gt;doas&lt;/a&gt;&lt;/strong&gt; — минималистичная замена sudo, написанная с нуля с акцентом на простоту и отсутствие сюрпризов.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;KmAI&quot;&gt;&lt;strong&gt;Скромные системные требования.&lt;/strong&gt; OpenBSD прекрасно работает на старом железе. Для текстовой работы и программирования хватает компьютера десятилетней давности. Я ставлю на SSD, у меня будет работать с запасом.&lt;/p&gt;
  &lt;p id=&quot;MAAU&quot;&gt;&lt;strong&gt;Графическое окружение.&lt;/strong&gt; Из коробки OpenBSD предлагает &lt;a href=&quot;https://www.xfce.org/&quot; target=&quot;_blank&quot;&gt;Xfce&lt;/a&gt; — лёгкое и при этом функциональное окружение, которое отлично подходит для повседневной работы. Также есть варианты с &lt;strong&gt;i3&lt;/strong&gt; или &lt;strong&gt;dwm&lt;/strong&gt; для тех, кто предпочитает тайлинговые менеджеры. Браузер (Firefox или Chromium), текстовый редактор (Neovim, Emacs), офисные пакеты (LibreOffice), редакторы изображений (GIMP, Krita) — всё работает.&lt;/p&gt;
  &lt;p id=&quot;OqPe&quot;&gt;&lt;strong&gt;Не идеально для всего.&lt;/strong&gt; Честно: на OpenBSD нет некоторых коммерческих программ. Adobe Creative Cloud не работает. Игры в Steam — в основном нет, но мне и не надо, потому что я не играю. Корпоративные клиенты типа Microsoft Teams или Slack мне не нужны. Если ваша работа требует одной из этих вещей, OpenBSD как основная система не подойдёт.&lt;/p&gt;
  &lt;p id=&quot;fqIr&quot;&gt;Но для писателя, программиста, человека, работающего с текстом, кодом, лёгкой графикой OpenBSD сегодня идеальна. И это, наверное, главная причина, почему я серьёзно собираюсь его поставить. Не из идеологии. Из практичности.&lt;/p&gt;
  &lt;p id=&quot;BOGx&quot;&gt;Я планирую отдельный пост про &lt;strong&gt;гиковское рабочее место писателя-программиста&lt;/strong&gt;, где расскажу что и как ставил, как всё прошло, какие приложения и спользовал и как организовал рабочий процесс.&lt;/p&gt;
  &lt;h2 id=&quot;14-финал-новая-дисциплина&quot;&gt;14. Финал: новая дисциплина&lt;/h2&gt;
  &lt;p id=&quot;eJJh&quot;&gt;Из всего перечисленного выше для меня вытекает один простой вывод: &lt;strong&gt;то, что раньше казалось избыточной мерой осторожности, сегодня превратилось в обычную цифровую гигиену&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;aFyg&quot;&gt;Эпоха, в которой я доверял цифровым сервисам, закончилась. Может быть, она и не начиналась — может быть, я просто был наивен. Но сегодня у меня уже нет основания доверять. Слишком много историй, слишком много свидетельств. Слишком очевидно, что мои данные — это &lt;strong&gt;сырьё в чужой производственной цепочке&lt;/strong&gt;, и сервисы, которыми я пользуюсь, имеют свои собственные интересы, не совпадающие с моими.&lt;/p&gt;
  &lt;p id=&quot;oIfd&quot;&gt;И при этом я не хочу отказаться от цифровой жизни. Я не хочу жить в лесу с печатной машинкой. Я хочу пользоваться интернетом, языковыми моделями, цифровыми инструментами. Просто на других условиях. На моих.&lt;/p&gt;
  &lt;p id=&quot;522i&quot;&gt;Эти условия я бы сформулировал так: &lt;strong&gt;нулевое доверие как новая дисциплина&lt;/strong&gt;. Не паранойя, не отказ, не изоляция. А постоянная привычка задавать себе вопросы:&lt;/p&gt;
  &lt;ul id=&quot;bNJW&quot;&gt;
    &lt;li id=&quot;NB39&quot;&gt;кто получает доступ к этим данным?&lt;/li&gt;
    &lt;li id=&quot;XanR&quot;&gt;по каким правилам?&lt;/li&gt;
    &lt;li id=&quot;LKO1&quot;&gt;могу ли я переместить эту функциональность под свой контроль?&lt;/li&gt;
    &lt;li id=&quot;1esK&quot;&gt;если не могу — могу ли я хотя бы уменьшить количество данных, которые отдаю?&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;UNpi&quot;&gt;Эта дисциплина даёт результат не сразу. Маленькими шагами: вот я перевёл переписку с близкими в Signal. Вот я поставил себе менеджер паролей на свой сервер. Вот я начал держать критически важные документы локально, а не в облаке. Вот я готовлю OpenBSD для основной работы. Каждый шаг небольшой, в сумме они меняют &lt;strong&gt;архитектуру&lt;/strong&gt; моей цифровой жизни.&lt;/p&gt;
  &lt;p id=&quot;dU0r&quot;&gt;И эта новая архитектура — не отказ от современного мира, а возвращение контроля. Я хочу быть хозяином своих инструментов, а не аккаунтом в чужой системе.&lt;/p&gt;
  &lt;p id=&quot;K1ZW&quot;&gt;Может, это и есть главное определение «эпохи недоверия». Это не апокалипсис и не торжество паранойи. Это конец молчаливого допущения, что технологические компании работают в моих интересах. И начало эпохи, в которой за свои интересы в цифровом мире придётся заступаться самостоятельно — никто другой за нас этого не сделает.&lt;/p&gt;
  &lt;p id=&quot;DaTT&quot;&gt;Сегодня всё больше людей приходят к этому. И, возможно, через пять-десять лет self-hosting перестанет быть гиковской практикой и станет нормальной частью жизни. Я за такой исход.&lt;/p&gt;
  &lt;p id=&quot;2X4V&quot;&gt;В следующих материалах я планирую вернуться к этой теме с практической стороны. Отдельный пост про &lt;strong&gt;OpenBSD как рабочее место&lt;/strong&gt;. Возможно, отдельный материал про &lt;strong&gt;self-hosting&lt;/strong&gt; с конкретными рекомендациями. И, обязательно, материал про &lt;strong&gt;цепочку поставок программного обеспечения&lt;/strong&gt; — это огромная отдельная тема, которую xz-инцидент сделал критически важной.&lt;/p&gt;
  &lt;p id=&quot;vV5B&quot;&gt;Если этот пост заставил вас задуматься о собственных цифровых привычках — значит, время потрачено не зря. Возвращение контроля начинается с того, чтобы заметить, &lt;strong&gt;где&lt;/strong&gt; вы его потеряли.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;конкретные-случаи&quot;&gt;Конкретные случаи&lt;/h3&gt;
  &lt;ul id=&quot;AFGP&quot;&gt;
    &lt;li id=&quot;MMEJ&quot;&gt;&lt;a href=&quot;https://protonmail.com/blog/climate-activist-arrest&quot; target=&quot;_blank&quot;&gt;ProtonMail и французская климатическая активистка (сентябрь 2021)&lt;/a&gt; — официальное заявление ProtonMail после скандала.&lt;/li&gt;
    &lt;li id=&quot;4viZ&quot;&gt;&lt;a href=&quot;https://www.openwall.com/lists/oss-security/2024/03/29/4&quot; target=&quot;_blank&quot;&gt;Andres Freund, оригинальный пост про xz backdoor (29 марта 2024)&lt;/a&gt; — открытие, изменившее представление о цепочке поставок.&lt;/li&gt;
    &lt;li id=&quot;FjFP&quot;&gt;&lt;a href=&quot;https://doublepulsar.com/&quot; target=&quot;_blank&quot;&gt;Microsoft Recall security analysis (Kevin Beaumont, май 2024)&lt;/a&gt; — разбор первоначальной уязвимости.&lt;/li&gt;
    &lt;li id=&quot;7uGM&quot;&gt;&lt;a href=&quot;https://blog.adobe.com/&quot; target=&quot;_blank&quot;&gt;Adobe Terms of Service controversy (июнь 2024)&lt;/a&gt; — официальное объяснение Adobe.&lt;/li&gt;
    &lt;li id=&quot;SIfz&quot;&gt;&lt;a href=&quot;https://github.com/dominictarr/event-stream/issues/116&quot; target=&quot;_blank&quot;&gt;npm event-stream incident (2018)&lt;/a&gt; — Доминик Тарр объясняет, как он передал права.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;self-hosting&quot;&gt;Self-hosting&lt;/h3&gt;
  &lt;ul id=&quot;py5t&quot;&gt;
    &lt;li id=&quot;Clhr&quot;&gt;&lt;a href=&quot;https://github.com/awesome-selfhosted/awesome-selfhosted&quot; target=&quot;_blank&quot;&gt;awesome-selfhosted&lt;/a&gt; — главный каталог open-source self-hostable приложений.&lt;/li&gt;
    &lt;li id=&quot;XDiZ&quot;&gt;&lt;a href=&quot;https://nextcloud.com/&quot; target=&quot;_blank&quot;&gt;Nextcloud&lt;/a&gt; — облако.&lt;/li&gt;
    &lt;li id=&quot;Dfxm&quot;&gt;&lt;a href=&quot;https://matrix.org/&quot; target=&quot;_blank&quot;&gt;Matrix.org&lt;/a&gt; — мессенджер.&lt;/li&gt;
    &lt;li id=&quot;Nyu7&quot;&gt;&lt;a href=&quot;https://github.com/dani-garcia/vaultwarden&quot; target=&quot;_blank&quot;&gt;Vaultwarden&lt;/a&gt; — пароли.&lt;/li&gt;
    &lt;li id=&quot;GaKm&quot;&gt;&lt;a href=&quot;https://tailscale.com/&quot; target=&quot;_blank&quot;&gt;Tailscale&lt;/a&gt; / &lt;a href=&quot;https://github.com/juanfont/headscale&quot; target=&quot;_blank&quot;&gt;Headscale&lt;/a&gt; — VPN.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;openbsd&quot;&gt;OpenBSD&lt;/h3&gt;
  &lt;ul id=&quot;Ug3y&quot;&gt;
    &lt;li id=&quot;MoXF&quot;&gt;&lt;a href=&quot;https://www.openbsd.org/&quot; target=&quot;_blank&quot;&gt;OpenBSD.org&lt;/a&gt; — официальный сайт.&lt;/li&gt;
    &lt;li id=&quot;Hkqc&quot;&gt;&lt;a href=&quot;https://www.openbsd.org/innovations.html&quot; target=&quot;_blank&quot;&gt;OpenBSD Innovations&lt;/a&gt; — список технологий безопасности, разработанных в проекте.&lt;/li&gt;
    &lt;li id=&quot;PC7P&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Theo_de_Raadt&quot; target=&quot;_blank&quot;&gt;Theo de Raadt biography&lt;/a&gt; — основатель и идеолог.&lt;/li&gt;
    &lt;li id=&quot;rccK&quot;&gt;&lt;a href=&quot;https://www.michaelwlucas.com/os/absolute-openbsd&quot; target=&quot;_blank&quot;&gt;«Absolute OpenBSD» (Michael W. Lucas)&lt;/a&gt; — главная книга для практической работы с OpenBSD.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;приватность-и-инфраструктура&quot;&gt;Приватность и инфраструктура&lt;/h3&gt;
  &lt;ul id=&quot;IscU&quot;&gt;
    &lt;li id=&quot;mPJ8&quot;&gt;&lt;a href=&quot;https://signal.org/&quot; target=&quot;_blank&quot;&gt;Signal Foundation&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;obnb&quot;&gt;&lt;a href=&quot;https://www.eff.org/&quot; target=&quot;_blank&quot;&gt;Electronic Frontier Foundation&lt;/a&gt; — лучший правозащитный ресурс по цифровым правам.&lt;/li&gt;
    &lt;li id=&quot;G04x&quot;&gt;&lt;a href=&quot;https://www.privacyguides.org/&quot; target=&quot;_blank&quot;&gt;Privacy Guides&lt;/a&gt; — практические рекомендации.&lt;/li&gt;
    &lt;li id=&quot;LXId&quot;&gt;&lt;a href=&quot;https://xkcd.com/2347/&quot; target=&quot;_blank&quot;&gt;xkcd 2347 «Dependency»&lt;/a&gt; — то самое.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:tree-sitter</id><link rel="alternate" type="text/html" href="https://azhark.cc/tree-sitter?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Tree-sitter: парсер на каждое нажатие клавиши</title><published>2026-06-01T19:35:18.974Z</published><updated>2026-06-01T19:35:18.974Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img3.teletype.in/files/ee/89/ee89dde0-9451-48b5-8165-f501a8443fa6.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img3.teletype.in/files/61/b7/61b7b583-05ed-4387-b7c1-057b04462310.png&quot;&gt;Когда вы правите файл на двадцать тысяч строк TypeScript в современном редакторе, с каждым нажатием клавиши под капотом происходит маленькое инженерное чудо. Парсер языка разбирает изменённую часть файла, обновляет синтаксическое дерево, и редактор успевает за миллисекунды подсветить код, обновить outline, показать диагностику, отрисовать новый кадр — без видимых задержек на ваш ввод.</summary><content type="html">
  &lt;figure id=&quot;ucNj&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/61/b7/61b7b583-05ed-4387-b7c1-057b04462310.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;c1uf&quot;&gt;Когда вы правите файл на двадцать тысяч строк TypeScript в современном редакторе, с каждым нажатием клавиши под капотом происходит маленькое инженерное чудо. Парсер языка разбирает изменённую часть файла, обновляет синтаксическое дерево, и редактор успевает за миллисекунды подсветить код, обновить outline, показать диагностику, отрисовать новый кадр — без видимых задержек на ваш ввод.&lt;/p&gt;
  &lt;p id=&quot;By7x&quot;&gt;Технология, которая это делает, называется &lt;strong&gt;Tree-sitter&lt;/strong&gt;. Она умеет не разбирать файл заново при каждом изменении: получив редактирование, Tree-sitter понимает, какая именно часть синтаксического дерева затронута, и переразбирает только её. Всё, что не задето правкой, переиспользуется как есть.&lt;/p&gt;
  &lt;p id=&quot;xJiO&quot;&gt;Это давняя мечта инструментальной разработки. Десятилетиями редакторы решали задачу подсветки синтаксиса костылями: либо медленно перепарсивали файл целиком (страдает скорость), либо использовали поверхностные регулярки на каждую строку (страдает точность). Tree-sitter впервые дал способ иметь и точность настоящего парсера, и скорость, достаточную для интерактивной работы. Это изменило мир редакторов — и в 2026 году Tree-sitter стоит в Neovim, в Emacs 29, на GitHub.com, в новых редакторах Helix, Lapce, Zed, в форке Atom под именем Pulsar, в десятках инструментов разработки.&lt;/p&gt;
  &lt;p id=&quot;w9hq&quot;&gt;Этот пост — история Tree-sitter. Я расскажу, что было до него (TextMate-грамматики и их многолетние мучения), как &lt;strong&gt;Макс Брунсфельд&lt;/strong&gt; в 2013 году начал писать Tree-sitter параллельно со своей основной работой, и как через пять лет проект стал стандартом редактора Atom. Объясню архитектуру (инкрементальный GLR-парсер с восстановлением ошибок) и почему это правильное архитектурное решение для задачи. Доберусь до Neovim 0.5, Emacs 29, GitHub code search Blackbird. И в финале вы узнаете что Tree-sitter делает, чего не делает, и где он точно не справится.&lt;/p&gt;
  &lt;p id=&quot;G5YX&quot;&gt;Это технический пост, и местами я буду углубляться в детали. Но идеи, которые в нём описываются, важны не только для тех, кто пишет редакторы — они показывают, почему простая на первый взгляд задача (подсветить код в окне) на самом деле потребовала нескольких десятилетий инженерного развития, пока её не решили правильно.&lt;/p&gt;
  &lt;h2 id=&quot;1-до-tree-sitter-эпоха-textmate-грамматик&quot;&gt;1. До Tree-sitter: эпоха TextMate-грамматик&lt;/h2&gt;
  &lt;p id=&quot;M692&quot;&gt;С середины 2000-х и примерно до 2018 года стандартом подсветки синтаксиса в редакторах кода были &lt;strong&gt;TextMate-грамматики&lt;/strong&gt;. Их формат возник в редакторе TextMate Аллана Одгаарда (Allan Odgaard, 2004 год, macOS). Сам TextMate был культовым редактором середины 2000-х, и его подход к подсветке оказался настолько практичным, что его скопировали Sublime Text, Visual Studio Code, GitHub Linguist (тот, что подсвечивает синтаксис файлов у вас в репозитории), и многие другие.&lt;/p&gt;
  &lt;p id=&quot;SRso&quot;&gt;TextMate-грамматика — это &lt;strong&gt;plist или JSON-файл с регулярными выражениями&lt;/strong&gt;. Грамматика задаёт паттерны вида:&lt;/p&gt;
  &lt;pre id=&quot;Zp8Y&quot;&gt;{
  &amp;quot;name&amp;quot;: &amp;quot;keyword.control.javascript&amp;quot;,
  &amp;quot;match&amp;quot;: &amp;quot;\\b(if|else|while|for|return)\\b&amp;quot;
}
&lt;/pre&gt;
  &lt;p id=&quot;8Ikh&quot;&gt;Или более сложные, с парными &lt;code&gt;begin&lt;/code&gt;/&lt;code&gt;end&lt;/code&gt;:&lt;/p&gt;
  &lt;pre id=&quot;y14h&quot;&gt;{
  &amp;quot;name&amp;quot;: &amp;quot;string.quoted.double.javascript&amp;quot;,
  &amp;quot;begin&amp;quot;: &amp;quot;\&amp;quot;&amp;quot;,
  &amp;quot;end&amp;quot;: &amp;quot;\&amp;quot;&amp;quot;,
  &amp;quot;patterns&amp;quot;: [{ &amp;quot;include&amp;quot;: &amp;quot;#string-escape&amp;quot; }]
}
&lt;/pre&gt;
  &lt;p id=&quot;18Wy&quot;&gt;Редактор пробегает по тексту, применяет паттерны, расставляет «scope» (категории) на каждом символе. Категории вроде &lt;code&gt;keyword.control.javascript&lt;/code&gt;, &lt;code&gt;string.quoted.double.javascript&lt;/code&gt;, &lt;code&gt;comment.line.double-slash&lt;/code&gt; потом отображаются разными цветами в зависимости от темы.&lt;/p&gt;
  &lt;p id=&quot;sFXO&quot;&gt;Это работало. Но у TextMate-грамматик было &lt;strong&gt;четыре больших проблемы&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;ULzt&quot;&gt;&lt;strong&gt;Первая — точность.&lt;/strong&gt; Регулярные выражения работают только в пределах одной строки. Если у вас многострочный комментарий или строка с переносами, грамматика начинает выкручиваться через &lt;code&gt;begin&lt;/code&gt;/&lt;code&gt;end&lt;/code&gt; с продолжением состояния. Это работает, но плохо: малейшая ошибка в исходнике, и подсветка «уезжает» до конца файла.&lt;/p&gt;
  &lt;p id=&quot;VjlE&quot;&gt;&lt;strong&gt;Вторая — невозможность сделать настоящую структуру.&lt;/strong&gt; TextMate-грамматика подсвечивает токены, но не строит дерево. Она не знает, что &lt;code&gt;function foo(a, b) { return a + b }&lt;/code&gt; — это объявление функции с двумя параметрами и телом. Она знает только: тут есть слово &lt;code&gt;function&lt;/code&gt;, дальше идентификатор, потом скобки. Это значит, что любая фича, требующая понимания структуры — переход к определению, выделение функции целиком, рефакторинг — не получается из TextMate-грамматики.&lt;/p&gt;
  &lt;p id=&quot;bM6f&quot;&gt;&lt;strong&gt;Третья — сопровождаемость.&lt;/strong&gt; Регулярки в TextMate-грамматиках сложных языков (TypeScript, C++, Rust) превращаются в монстров из сотен правил с десятками capture-групп и хитрых escape-последовательностей. Канонический пример — &lt;a href=&quot;https://github.com/microsoft/TypeScript-TmLanguage&quot; target=&quot;_blank&quot;&gt;TypeScript TmLanguage&lt;/a&gt;, у которого в репозитории больше пятисот открытых issues с багами в подсветке синтаксиса. Поддерживать такую грамматику — отдельная инженерная боль.&lt;/p&gt;
  &lt;p id=&quot;RQJp&quot;&gt;&lt;strong&gt;Четвёртая — производительность на больших файлах.&lt;/strong&gt; Если файл большой, и в нём есть длинные строки или сложные конструкции, regex-парсинг может занимать заметное время. На многотысячных файлах подсветка иногда отстаёт от ввода.&lt;/p&gt;
  &lt;p id=&quot;vKIf&quot;&gt;К середине 2010-х индустрия понимала, что TextMate-подход — это тупик. Нужно что-то другое.&lt;/p&gt;
  &lt;h2 id=&quot;2-макс-брунсфельд-и-старт-проекта&quot;&gt;2. Макс Брунсфельд и старт проекта&lt;/h2&gt;
  &lt;p id=&quot;m0AR&quot;&gt;В 2013 году в Pivotal Labs работал программист по имени &lt;strong&gt;Макс Брунсфельд&lt;/strong&gt;. Pivotal — известная консалтинговая компания, специализирующаяся на agile-разработке и Ruby-проектах. Брунсфельд писал на Ruby, JavaScript, занимался разными клиентскими проектами. И в свободное от работы время он начал работу над &lt;strong&gt;Tree-sitter&lt;/strong&gt; — библиотекой, которая должна была правильно решить проблему подсветки кода.&lt;/p&gt;
  &lt;p id=&quot;ayDY&quot;&gt;Первый коммит в репозиторий Tree-sitter датируется &lt;strong&gt;6 ноября 2013 года&lt;/strong&gt;. На тот момент это был сторонний проект — Брунсфельд писал его «по ночам и выходным». Он не был частью никакой большой компании, и не был обеспечен корпоративными ресурсами. Это была идея одного программиста, который заметил конкретную инженерную задачу и решил её решить.&lt;/p&gt;
  &lt;p id=&quot;9Fnc&quot;&gt;Цель Брунсфельда была такая: построить &lt;strong&gt;настоящий парсер&lt;/strong&gt;, который строит синтаксическое дерево, и при этом достаточно быстрый, чтобы работать в редакторе в реальном времени. Он понимал, что классические парсер-генераторы (Yacc, Bison, ANTLR) для этой задачи не подходят, потому что дают слишком медленные парсеры, они не умеют ни восстанавливаться после ошибок, ни инкрементально переразбирать изменившиеся куски.&lt;/p&gt;
  &lt;p id=&quot;IbdX&quot;&gt;К &lt;strong&gt;2013 году&lt;/strong&gt; Брунсфельд перешёл в команду &lt;strong&gt;Atom&lt;/strong&gt; в GitHub. Atom — это новый редактор, который GitHub запускал как попытку конкурировать с Sublime Text и подготовиться к веб-эпохе разработки. Atom был построен на Electron (первая широкая известная реализация подхода «нативное приложение на веб-технологиях»), и его команда была заинтересована во всех способах сделать подсветку синтаксиса лучше. Идея Брунсфельда про Tree-sitter оказалась в нужном месте в нужный момент.&lt;/p&gt;
  &lt;p id=&quot;lOPY&quot;&gt;Следующие пять лет Брунсфельд работал в команде Atom и параллельно развивал Tree-sitter. Большая часть времени уходила на алгоритмическое исследование — какой именно тип парсера лучше подходит для инкрементальной задачи. Перебиралось несколько вариантов: PEG, LL(*), классический LR. В итоге Брунсфельд остановился на &lt;strong&gt;обобщённом LR (GLR)&lt;/strong&gt;, который был расширен инкрементальностью и восстановлением ошибок.&lt;/p&gt;
  &lt;h2 id=&quot;3-atom-131-и-strange-loop-2018&quot;&gt;3. Atom 1.31 и Strange Loop 2018&lt;/h2&gt;
  &lt;p id=&quot;KjDW&quot;&gt;Публичный анонс Tree-sitter состоялся &lt;strong&gt;26 сентября 2018 года&lt;/strong&gt;, когда вышел релиз &lt;strong&gt;Atom 1.31&lt;/strong&gt;. В этой версии Tree-sitter был включён по умолчанию (на бета-канале) как новая система подсветки и индентации. Поддерживались одиннадцать языков: Bash, C, C++, ERB, EJS, Go, HTML, JavaScript, Python, Ruby, TypeScript. GitHub опубликовал в своём блоге пост &lt;a href=&quot;https://github.blog/news-insights/product-news/atoms-new-parsing-system/&quot; target=&quot;_blank&quot;&gt;«Atom understands your code better than ever before»&lt;/a&gt;, в котором объяснил идею.&lt;/p&gt;
  &lt;p id=&quot;9N4w&quot;&gt;Через несколько дней Брунсфельд представил Tree-sitter на конференции &lt;strong&gt;Strange Loop 2018&lt;/strong&gt; в Сент-Луисе. Его доклад называется &lt;a href=&quot;https://www.youtube.com/watch?v=Jes3bD6P0To&quot; target=&quot;_blank&quot;&gt;«Tree-sitter: a new parsing system for programming tools»&lt;/a&gt; и до сих пор остаётся самой цитируемой канонической презентацией Tree-sitter. Если вы хотите глубоко понять, как Tree-sitter устроен изнутри, этот доклад — лучшая точка входа.&lt;/p&gt;
  &lt;p id=&quot;EaM6&quot;&gt;Strange Loop — конференция, известная тем, что туда отбирают доклады про действительно интересные идеи, а не про практические инструменты. Tree-sitter выглядел в этом контексте отлично: это был не «новый редактор», а &lt;strong&gt;новая алгоритмическая идея&lt;/strong&gt;, реализованная как библиотека.&lt;/p&gt;
  &lt;p id=&quot;KO0Q&quot;&gt;Через пару лет, к 2020-му, экосистема вокруг Tree-sitter начала расти быстро. Появились грамматики для десятков языков, написанные сторонними разработчиками. Стали появляться плагины интеграции с другими редакторами. И вот тут начинается главное.&lt;/p&gt;
  &lt;h2 id=&quot;4-архитектура-инкрементальный-glr&quot;&gt;4. Архитектура: инкрементальный GLR&lt;/h2&gt;
  &lt;p id=&quot;Xkzm&quot;&gt;Прежде чем рассказать про распространение Tree-sitter в Neovim, Emacs и GitHub, разберёмся с тем, &lt;strong&gt;как он работает&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;p1Xq&quot;&gt;Tree-sitter — это &lt;strong&gt;инкрементальный GLR-парсер с восстановлением ошибок&lt;/strong&gt;. Каждый из этих трёх кусков названия важен.&lt;/p&gt;
  &lt;p id=&quot;Iw47&quot;&gt;&lt;strong&gt;GLR (Generalized LR)&lt;/strong&gt; — это обобщение классического LR-парсинга, придуманного Кнутом в 1965-м. Обычный LR парсит детерминированно: на каждом шаге у него один стек, и он либо сдвигает токен, либо сворачивает уже накопленную последовательность по правилу. Если возникает конфликт (можно сделать и то, и другое) — обычный LR умирает или требует переписать грамматику.&lt;/p&gt;
  &lt;p id=&quot;sIBx&quot;&gt;GLR в той же ситуации &lt;strong&gt;разветвляет стек&lt;/strong&gt; и пробует обе возможности параллельно. Если одна из веток заходит в тупик, она отбрасывается. Если обе доходят до конца входа, грамматика неоднозначна, и парсер возвращает обе версии дерева. GLR придуман в 1980-х (Масару Томита, статья 1986 года), и до Tree-sitter его использовали в основном в академических компиляторах и для парсинга естественных языков.&lt;/p&gt;
  &lt;p id=&quot;cMhR&quot;&gt;Tree-sitter взял GLR, потому что он &lt;strong&gt;толерантен к неоднозначностям грамматики&lt;/strong&gt;. Реальные языки программирования часто содержат локально-неоднозначные конструкции — например, &lt;code&gt;a &amp;lt; b &amp;gt; (c)&lt;/code&gt; в C++ может быть и сравнением, и шаблонной инстанциацией, в зависимости от контекста. GLR может рассмотреть оба варианта и выбрать тот, который согласуется с дальнейшим текстом.&lt;/p&gt;
  &lt;p id=&quot;jlUG&quot;&gt;&lt;strong&gt;Инкрементальность&lt;/strong&gt; — главная фишка Tree-sitter. Когда вы редактируете файл, парсер не разбирает его заново. Tree-sitter получает &lt;strong&gt;редактирование&lt;/strong&gt; (edit) в виде «начиная с символа X, удалено N байт, вставлено M байт». На основе этого редактирования он понимает, какие узлы старого дерева &lt;strong&gt;точно не изменились&lt;/strong&gt;, и переиспользует их как есть. Только узлы, которые попадают в затронутую область или могут быть затронуты через изменение контекста, разбираются заново.&lt;/p&gt;
  &lt;p id=&quot;drOz&quot;&gt;Это даёт огромную экономию. Парсинг файла на двадцать тысяч строк с нуля может занять сотни миллисекунд. Инкрементальный переразбор после одного нажатия клавиши — обычно меньше миллисекунды. На бенчмарках на типовом железе полный парсинг C-файла на десять тысяч строк занимает меньше ста миллисекунд, а инкрементальный — около миллисекунды.&lt;/p&gt;
  &lt;p id=&quot;YhPK&quot;&gt;Инкрементальность работает за счёт того, что &lt;strong&gt;синтаксические деревья в Tree-sitter иммутабельны и разделяемы&lt;/strong&gt;. Когда вы редактируете файл, старое дерево не меняется. Создаётся новое дерево, которое &lt;strong&gt;указывает на узлы старого&lt;/strong&gt; там, где они не изменились. Это та же идея, что и persistent data structures в Clojure (которые я уже упоминал &lt;a href=&quot;http://localhost:1313/blog/2026/lisp/&quot; target=&quot;_blank&quot;&gt;в посте про Lisp&lt;/a&gt;) — экономия за счёт переиспользования общих частей.&lt;/p&gt;
  &lt;h2 id=&quot;5-восстановление-ошибок&quot;&gt;5. Восстановление ошибок&lt;/h2&gt;
  &lt;p id=&quot;1Zfa&quot;&gt;Третий кусок — &lt;strong&gt;восстановление после ошибок&lt;/strong&gt;. Это критично для редактора, потому что код в процессе ввода почти всегда синтаксически некорректен. Когда вы только напечатали &lt;code&gt;function foo(a, b&lt;/code&gt; и ещё не закрыли скобку, классический парсер скажет «syntax error» и остановится. А редактору в этот момент уже надо подсвечивать слово &lt;code&gt;function&lt;/code&gt; как ключевое, идентификатор &lt;code&gt;foo&lt;/code&gt; как имя функции, и параметры &lt;code&gt;a, b&lt;/code&gt; как параметры.&lt;/p&gt;
  &lt;p id=&quot;HyRq&quot;&gt;Tree-sitter решает это через тот же GLR-механизм. При невозможности продолжать парсинг он пробует разные стратегии восстановления: пропустить следующий токен и продолжить; вставить пропущенный токен и продолжить; откатиться назад и попробовать другую интерпретацию. Из этих стратегий выбирается та, которая через несколько токенов даёт «лучший» результат — то есть синтаксически валидное продолжение с минимальным количеством ошибок.&lt;/p&gt;
  &lt;p id=&quot;rnni&quot;&gt;Места, где парсер не смог сойтись на корректное дерево, помечаются специальными узлами &lt;strong&gt;ERROR&lt;/strong&gt; или &lt;strong&gt;MISSING&lt;/strong&gt;. ERROR — это «здесь было что-то, что не подошло ни под одно правило». MISSING — «здесь должно было быть что-то, чего нет» (например, закрывающая скобка). Эти узлы видны в дереве, и потребитель (редактор, линтер, любой инструмент) может с ними как-то работать: показать пользователю красную волну, дать подсказку, попробовать автокомплит.&lt;/p&gt;
  &lt;p id=&quot;8d0c&quot;&gt;Любопытно, что в Tree-sitter &lt;strong&gt;нет формального академического описания алгоритма восстановления&lt;/strong&gt;. Главным источником остаётся доклад Брунсфельда на Strange Loop и сам код. В тикетах проекта периодически возникают просьбы написать аккуратную статью или хотя бы развёрнутую документацию, но за восемь лет ни у кого до этого так и не дошли руки — алгоритм работает в продакшене у миллионов пользователей, так что приходится читать исходники.&lt;/p&gt;
  &lt;h2 id=&quot;6-грамматики-на-javascript&quot;&gt;6. Грамматики на JavaScript&lt;/h2&gt;
  &lt;p id=&quot;bHec&quot;&gt;Чтобы добавить поддержку нового языка, нужно написать &lt;strong&gt;грамматику для Tree-sitter&lt;/strong&gt;. Это делается на специальном &lt;strong&gt;JavaScript-DSL&lt;/strong&gt;, описанном в файле &lt;code&gt;grammar.js&lt;/code&gt;.&lt;/p&gt;
  &lt;p id=&quot;WjWK&quot;&gt;Выглядит это так:&lt;/p&gt;
  &lt;pre id=&quot;hko2&quot;&gt;module.exports = grammar({
  name: &amp;#x27;mylang&amp;#x27;,

  rules: {
    source_file: $ =&amp;gt; repeat($._definition),
    _definition: $ =&amp;gt; choice(
      $.function_definition,
      $.variable_declaration
    ),
    function_definition: $ =&amp;gt; seq(
      &amp;#x27;function&amp;#x27;,
      field(&amp;#x27;name&amp;#x27;, $.identifier),
      field(&amp;#x27;parameters&amp;#x27;, $.parameter_list),
      field(&amp;#x27;body&amp;#x27;, $.block)
    ),
    parameter_list: $ =&amp;gt; seq(
      &amp;#x27;(&amp;#x27;,
      optional(commaSep1($.identifier)),
      &amp;#x27;)&amp;#x27;
    ),
    block: $ =&amp;gt; seq(&amp;#x27;{&amp;#x27;, repeat($._statement), &amp;#x27;}&amp;#x27;),
    identifier: $ =&amp;gt; /[a-zA-Z_][a-zA-Z0-9_]*/,
    // ...
  }
});
&lt;/pre&gt;
  &lt;p id=&quot;UkVS&quot;&gt;Это компактнее и приятнее, чем традиционные BNF в Yacc. Доступны функции &lt;code&gt;seq&lt;/code&gt; (последовательность), &lt;code&gt;choice&lt;/code&gt; (выбор), &lt;code&gt;repeat&lt;/code&gt; (повторение), &lt;code&gt;optional&lt;/code&gt;, &lt;code&gt;prec&lt;/code&gt; (приоритет), &lt;code&gt;token&lt;/code&gt;, &lt;code&gt;field&lt;/code&gt; (именованные поля для узлов), и ещё несколько. Грамматика — это &lt;strong&gt;обычный JavaScript-код&lt;/strong&gt;, и в ней можно использовать любые JS-функции для генерации правил (типа &lt;code&gt;commaSep1&lt;/code&gt; в примере выше — это утилита, которая разворачивается в &lt;code&gt;seq($.elem, repeat(seq(&amp;#x27;,&amp;#x27;, $.elem)))&lt;/code&gt;).&lt;/p&gt;
  &lt;p id=&quot;0CAw&quot;&gt;Команда &lt;code&gt;tree-sitter generate&lt;/code&gt; парсит &lt;code&gt;grammar.js&lt;/code&gt;, прогоняет через Node, получает промежуточное JSON-представление, и &lt;strong&gt;компилирует это в C-код парсера&lt;/strong&gt;. Сам C-код длинный (десятки тысяч строк для крупного языка) и нечитаемый, но это машинно-сгенерированный код — его никто не правит руками.&lt;/p&gt;
  &lt;p id=&quot;tU6h&quot;&gt;Большая часть синтаксиса языков описывается грамматикой целиком. Но есть конструкции, которые контекстно-зависимы — например, &lt;strong&gt;значимые отступы в Python&lt;/strong&gt;, где открытие и закрытие блоков определяются изменением уровня отступа. Такие штуки описываются в Tree-sitter через &lt;strong&gt;external scanner&lt;/strong&gt; — ручной C/C++-код, который подключается к парсеру и решает контекстно-зависимые задачи. Это компромисс, но он работает.&lt;/p&gt;
  &lt;p id=&quot;LScV&quot;&gt;На сегодня (2026 год) на GitHub есть &lt;strong&gt;более 300 грамматик&lt;/strong&gt; для разных языков. Большинство сделано сообществом, флагманские (C, Python, JavaScript, Rust, Go) — в основной организации &lt;strong&gt;&lt;code&gt;tree-sitter&lt;/code&gt;&lt;/strong&gt; на GitHub. Качество грамматик сильно разное: некоторые отлично сделаны и быстро работают, другие имеют проблемы с производительностью или с покрытием экзотических конструкций.&lt;/p&gt;
  &lt;h2 id=&quot;7-neovim-05-революция-в-редакторе&quot;&gt;7. Neovim 0.5: революция в редакторе&lt;/h2&gt;
  &lt;p id=&quot;4qYI&quot;&gt;&lt;strong&gt;2 июля 2021 года&lt;/strong&gt; вышел релиз &lt;strong&gt;Neovim 0.5&lt;/strong&gt;. Это был один из самых значимых релизов в истории редактора за последние десять лет. Главное нововведение — &lt;strong&gt;встроенная поддержка Tree-sitter&lt;/strong&gt; через новый Lua-API.&lt;/p&gt;
  &lt;p id=&quot;z4ql&quot;&gt;Чтобы понять, почему это важно, надо вспомнить контекст. Neovim — современный форк классического Vim, который начался в 2014 году с целью переписать Vim под современную инфраструктуру (асинхронные API, нативная поддержка Lua, встроенный LSP-клиент, нативные плагины). К 2020 году Neovim уже был зрелым редактором, и его сообщество искало способы сделать подсветку и навигацию по коду лучше, чем в классическом Vim, который десятилетиями использовал regex-based подсветку (в Vim она называется «syntax highlighting» и состоит из тысяч строк регулярок в файлах &lt;code&gt;*.vim&lt;/code&gt;).&lt;/p&gt;
  &lt;p id=&quot;dh1Q&quot;&gt;Tree-sitter в Neovim 0.5 был экспериментальным, с регрессиями и багами. Но направление было задано, и сообщество подхватило. Появился плагин &lt;strong&gt;&lt;a href=&quot;https://github.com/nvim-treesitter/nvim-treesitter&quot; target=&quot;_blank&quot;&gt;nvim-treesitter&lt;/a&gt;&lt;/strong&gt; — обёртка, которая ставит грамматики, конфигурирует подсветку, добавляет навигацию по структуре кода. К 2022–2023 годам этот плагин стал стандартом — практически каждый серьёзный пользователь Neovim его устанавливает.&lt;/p&gt;
  &lt;p id=&quot;GwvM&quot;&gt;С появлением Tree-sitter в Neovim родилась целая волна Lua-плагинов, которые используют синтаксическое дерево для умных операций: &lt;strong&gt;nvim-treesitter-textobjects&lt;/strong&gt; (выделение целых функций, классов, блоков), &lt;strong&gt;treesitter-context&lt;/strong&gt; (показ контекста текущей функции в виде «прилипшего» к верху окна), &lt;strong&gt;nvim-treehopper&lt;/strong&gt; (быстрая навигация по узлам дерева), и десятки других. Это новая инструментальная экосистема, которой в классическом Vim не было.&lt;/p&gt;
  &lt;h2 id=&quot;8-emacs-29-встроенная-поддержка&quot;&gt;8. Emacs 29: встроенная поддержка&lt;/h2&gt;
  &lt;p id=&quot;asKx&quot;&gt;Emacs прошёл тот же путь чуть позже. В &lt;strong&gt;июле 2023 года&lt;/strong&gt; вышел &lt;strong&gt;Emacs 29&lt;/strong&gt; — первый релиз, в котором Tree-sitter стал &lt;strong&gt;встроенной частью редактора&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;e6qM&quot;&gt;Модуль называется &lt;strong&gt;&lt;code&gt;treesit&lt;/code&gt;&lt;/strong&gt; (написан на C, плюс Lisp-обвязка). Грамматики подключаются как &lt;strong&gt;динамические библиотеки&lt;/strong&gt; через команду &lt;code&gt;treesit-install-language-grammar&lt;/code&gt;. В Emacs 29 встроены &lt;code&gt;*-ts-mode&lt;/code&gt; для шестнадцати языков: C, C++, C#, Java, Rust, Go, Python, JavaScript, TypeScript, JSON, YAML, TOML, CSS, Bash, Dockerfile, CMake.&lt;/p&gt;
  &lt;p id=&quot;h2se&quot;&gt;До этого в Emacs существовал сторонний пакет &lt;strong&gt;emacs-tree-sitter&lt;/strong&gt; от Туан-Ань Нгуена (Tuấn-Anh Nguyễn), который сделал колоссальную работу по добавлению Tree-sitter в Emacs ещё в 2019–2020 годах. С релизом Emacs 29 этот пакет теперь рекомендует пользователям перейти на встроенный &lt;code&gt;treesit&lt;/code&gt; — но именно работа Нгуена показала, что Tree-sitter в Emacs возможен и желанен, и подготовила почву для официальной интеграции.&lt;/p&gt;
  &lt;p id=&quot;ACxo&quot;&gt;В &lt;a href=&quot;http://localhost:1313/blog/2026/emacs/&quot; target=&quot;_blank&quot;&gt;посте про Emacs&lt;/a&gt; я уже упоминал, что Emacs 29 принёс два важных нововведения: нативную компиляцию Emacs Lisp и Tree-sitter. Эти изменения сильно подтянули современный Emacs к уровню современных редакторов вроде VSCode — там, где раньше Emacs выглядел архаично, теперь он стал конкурентоспособен.&lt;/p&gt;
  &lt;h2 id=&quot;9-githubcom-новый-поиск-кода&quot;&gt;9. GitHub.com: новый поиск кода&lt;/h2&gt;
  &lt;p id=&quot;TvlQ&quot;&gt;Параллельно с интеграцией в редакторы Tree-sitter попал в &lt;strong&gt;сам GitHub.com&lt;/strong&gt;. В 2022 году в публичную бету вышел новый поиск кода — внутренний кодовый проект под кодовым именем &lt;strong&gt;Blackbird&lt;/strong&gt;. В 2023-м (полный анонс — пост &lt;a href=&quot;https://github.blog/engineering/architecture-optimization/the-technology-behind-githubs-new-code-search/&quot; target=&quot;_blank&quot;&gt;«The technology behind GitHub’s new code search»&lt;/a&gt; от 6 февраля 2023) он стал общедоступным.&lt;/p&gt;
  &lt;p id=&quot;vXDi&quot;&gt;Blackbird — это система поиска по коду, которая работает на всех публичных репозиториях GitHub (это десятки терабайт исходников на сотнях языков). И для того, чтобы поиск был &lt;strong&gt;семантическим&lt;/strong&gt;, то есть искал не просто текст, а функции, классы, переменные с пониманием их роли, нужен парсер на каждый язык.&lt;/p&gt;
  &lt;p id=&quot;of9q&quot;&gt;GitHub выбрал Tree-sitter. В посте про архитектуру это написано прямо: «Enry и Tree-sitter питают language detection и symbol extraction Blackbird». То есть когда вы ищете на GitHub &lt;code&gt;function MyFunc&lt;/code&gt;, поиск точно знает, что &lt;code&gt;MyFunc&lt;/code&gt; — это имя функции, а не комментарий или строковый литерал. Это знание берётся из синтаксического дерева, построенного Tree-sitter.&lt;/p&gt;
  &lt;p id=&quot;qd1R&quot;&gt;Параллельно с Blackbird GitHub разработал &lt;strong&gt;&lt;a href=&quot;https://github.com/github/stack-graphs&quot; target=&quot;_blank&quot;&gt;Stack Graphs&lt;/a&gt;&lt;/strong&gt; — фреймворк для точной навигации по коду (precise code navigation), который надстраивается над Tree-sitter. Stack Graphs решает задачу разрешения имён: когда вы кликаете на использование переменной, перейти к её определению, даже через несколько уровней импортов, наследований, скоупов. Это серьёзная задача, и Stack Graphs её решает поверх синтаксических деревьев Tree-sitter.&lt;/p&gt;
  &lt;p id=&quot;6xj3&quot;&gt;Параллельно GitHub в 2025 году архивировал свой старый проект &lt;strong&gt;&lt;a href=&quot;https://github.com/github/semantic&quot; target=&quot;_blank&quot;&gt;Semantic&lt;/a&gt;&lt;/strong&gt; — Haskell-библиотеку для семантического анализа кода, которая до Tree-sitter была основой code navigation на GitHub. То есть Tree-sitter не просто добавлен — он &lt;strong&gt;заменил предыдущее поколение инструментов&lt;/strong&gt; в инфраструктуре одного из крупнейших сайтов разработки.&lt;/p&gt;
  &lt;h2 id=&quot;10-новые-редакторы-helix-lapce-zed&quot;&gt;10. Новые редакторы: Helix, Lapce, Zed&lt;/h2&gt;
  &lt;p id=&quot;xP57&quot;&gt;К началу 2020-х Tree-sitter стал настолько хорошим решением, что &lt;strong&gt;новые редакторы&lt;/strong&gt;, появившиеся в эти годы, строились с Tree-sitter в качестве центрального компонента подсветки и навигации.&lt;/p&gt;
  &lt;p id=&quot;DgPg&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://helix-editor.com/&quot; target=&quot;_blank&quot;&gt;Helix&lt;/a&gt;&lt;/strong&gt; — модальный редактор на Rust, появившийся в 2020-м, вдохновлённый Vim и Kakoune. Tree-sitter в Helix — центральный движок подсветки, отступов и структурного редактирования. Helix не поддерживает Vim-плагины — у него своя архитектура, и Tree-sitter в неё встроен глубоко, не как опция, а как фундамент.&lt;/p&gt;
  &lt;p id=&quot;FL26&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://lapce.dev/&quot; target=&quot;_blank&quot;&gt;Lapce&lt;/a&gt;&lt;/strong&gt; — графический редактор на Rust, использующий ту же Tree-sitter-реализацию, что и Helix (через MPL-лицензию). Lapce — попытка сделать «VSCode на Rust», и Tree-sitter там для подсветки и навигации.&lt;/p&gt;
  &lt;p id=&quot;Hfv1&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://zed.dev/&quot; target=&quot;_blank&quot;&gt;Zed&lt;/a&gt;&lt;/strong&gt; — отдельная история. Zed основали в &lt;strong&gt;2021 году&lt;/strong&gt; трое программистов из бывшей команды Atom: &lt;strong&gt;Макс Брунсфельд&lt;/strong&gt; (тот самый создатель Tree-sitter), &lt;strong&gt;Натан Собо&lt;/strong&gt; и &lt;strong&gt;Антонио Скандурра&lt;/strong&gt;. Zed — это попытка с нуля сделать редактор, оптимизированный под производительность: написан на Rust, использует GPU для рендеринга, ориентирован на совместное редактирование. Tree-sitter в Zed — естественная часть архитектуры, и Брунсфельд продолжает его развивать прямо из своей роли соучредителя.&lt;/p&gt;
  &lt;p id=&quot;eQr8&quot;&gt;Zed был запущен публично в 2023-м, и за два года команда успела собрать в общей сложности около &lt;strong&gt;$42 млн&lt;/strong&gt; венчурных инвестиций (в том числе крупный раунд от Sequoia в ноябре 2024-го). Это уже серьёзная редакторская компания, и она строится вокруг Tree-sitter как одной из своих ключевых технологий.&lt;/p&gt;
  &lt;p id=&quot;LmZq&quot;&gt;И тут возникает интересная картинка. Tree-sitter, начавшийся как сторонний проект одного программиста в Pivotal Labs в 2013 году, через десять лет стал технической основой нескольких новых редакторов, инфраструктуры GitHub и встроенной частью Emacs и Neovim. Это редкая история про то, как алгоритмическая идея превращается в стандарт индустрии.&lt;/p&gt;
  &lt;p id=&quot;J3dB&quot;&gt;Любопытно, что &lt;strong&gt;VSCode&lt;/strong&gt; — самый популярный редактор мира — на Tree-sitter в основной подсветке &lt;strong&gt;до сих пор не перешёл&lt;/strong&gt;. VSCode продолжает использовать TextMate-грамматики (со всеми их проблемами) для большинства языков. Tree-sitter применяется в нём только в отдельных расширениях. Это и есть лучшее напоминание о том, что универсального стандарта парсинга в индустрии всё ещё нет: даже самый массовый редактор не унифицировал свой стек на Tree-sitter — слишком много накопившегося легаси-кода и расширений, которые пришлось бы переписывать.&lt;/p&gt;
  &lt;h2 id=&quot;11-что-tree-sitter-не-делает&quot;&gt;11. Что Tree-sitter не делает&lt;/h2&gt;
  &lt;p id=&quot;sOdk&quot;&gt;Tree-sitter — отличный инструмент, но у него есть &lt;strong&gt;принципиальные ограничения&lt;/strong&gt;, которые важно понимать.&lt;/p&gt;
  &lt;p id=&quot;sBVc&quot;&gt;&lt;strong&gt;Tree-sitter строит конкретное синтаксическое дерево (CST), а не абстрактное (AST).&lt;/strong&gt; Разница такая: CST содержит &lt;strong&gt;все&lt;/strong&gt; токены исходного кода, включая скобки, точки с запятой, ключевые слова, комментарии. AST — упрощённое дерево, в котором скобки и точки с запятой выкинуты, оставлена только семантическая структура. Для редакторов CST идеально: вы можете точно восстановить позицию каждого узла в исходнике, подсветить его, дать пользователю выделить целую функцию вместе со скобками. Но для &lt;strong&gt;компилятора&lt;/strong&gt; CST избыточен — компилятор обычно хочет AST, и Tree-sitter не даёт его напрямую.&lt;/p&gt;
  &lt;p id=&quot;uvwD&quot;&gt;&lt;strong&gt;Tree-sitter не делает семантический анализ.&lt;/strong&gt; Он не знает, что переменная &lt;code&gt;x&lt;/code&gt; объявлена выше и сейчас используется. Он не знает типов. Он не знает, к какому классу относится метод. Всё это — задача надстроек (как Stack Graphs у GitHub, как LSP-сервер для каждого языка). Tree-sitter — это &lt;strong&gt;только синтаксис&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;ZGUC&quot;&gt;&lt;strong&gt;Tree-sitter не подходит для компилятора.&lt;/strong&gt; Главная причина — он может «проглатывать» невалидный синтаксис и не помечать его как ошибку, чтобы продолжать парсинг. Для компилятора это катастрофично: он не должен принимать неверный код как валидный. Поэтому реальные компиляторы (Rust, Go, TypeScript) всё равно используют свои собственные парсеры — обычно рукописный рекурсивный спуск.&lt;/p&gt;
  &lt;p id=&quot;AvVd&quot;&gt;&lt;strong&gt;Грамматики сложно писать.&lt;/strong&gt; JavaScript-DSL в целом понятный, но контекстно-зависимые конструкции требуют ручного внешнего сканера на C. Кроме самой грамматики, под каждый язык пишутся &lt;strong&gt;запросы подсветки&lt;/strong&gt; — отдельные файлы, в которых конкретные узлы дерева помечаются именами вроде &lt;code&gt;@function.call&lt;/code&gt;, &lt;code&gt;@variable.builtin&lt;/code&gt;, &lt;code&gt;@string&lt;/code&gt; и так далее. По этим именам редактор уже решает, каким цветом красить кусок текста. Беда в том, что единого словаря этих имён нет: Zed, Neovim и Helix используют немного разные наборы — и грамматики приходится править под каждый редактор отдельно.&lt;/p&gt;
  &lt;p id=&quot;jOkj&quot;&gt;&lt;strong&gt;Инкрементальность не всегда работает идеально.&lt;/strong&gt; На очень больших файлах с плохо написанной грамматикой переразбор может занимать секунды. Известны кейсы: 1.6 МБ JSON-файл — полный парсинг 1.2 секунды, переразбор 0.7 секунды; 10 МБ C-файл — переразбор около тридцати секунд. Качество грамматики решает: переписывание &lt;code&gt;tree-sitter-haskell&lt;/code&gt; с C++ на C дало 52-кратное ускорение. То есть «миллисекундный переразбор» — это честная цифра для нормальных файлов и нормальных грамматик, но бывают и патологические случаи.&lt;/p&gt;
  &lt;h2 id=&quot;12-что-и-когда-использовать-в-2026-году&quot;&gt;12. Что и когда использовать в 2026 году&lt;/h2&gt;
  &lt;p id=&quot;B7Bp&quot;&gt;Если вы в 2026 году хотите использовать Tree-sitter в своём проекте, у вас есть несколько вариантов в зависимости от цели.&lt;/p&gt;
  &lt;p id=&quot;U5YN&quot;&gt;&lt;strong&gt;Подсветка синтаксиса и структурная навигация в собственном редакторе или IDE.&lt;/strong&gt; Берите Tree-sitter — это сегодня стандарт. Есть готовые runtime-библиотеки на C, Rust, JavaScript, Python, Go, Java, Haskell. Грамматики для популярных языков уже написаны и поддерживаются сообществом.&lt;/p&gt;
  &lt;p id=&quot;4ZxR&quot;&gt;&lt;strong&gt;Анализ кода в небольшом инструменте (линтер, форматтер, метрики).&lt;/strong&gt; Tree-sitter — отличный вариант. Вам не нужно писать собственный парсер для каждого языка. Вы берёте существующую грамматику, и через несколько часов работы у вас есть синтаксическое дерево, по которому можно строить любые анализы. Лучше всего на Python (через &lt;code&gt;py-tree-sitter&lt;/code&gt;) или Rust.&lt;/p&gt;
  &lt;p id=&quot;rNBE&quot;&gt;&lt;strong&gt;Подсветка в маленьком GUI или TUI приложении.&lt;/strong&gt; Tree-sitter работает, но это может быть избыточно. Если вам нужно подсветить только два-три простых языка, TextMate-грамматики через &lt;code&gt;vscode-textmate&lt;/code&gt; или просто свои regex-правила могут оказаться проще.&lt;/p&gt;
  &lt;p id=&quot;T1nE&quot;&gt;&lt;strong&gt;Парсер для собственного компилятора.&lt;/strong&gt; Tree-sitter — не лучший выбор. Делайте рукописный рекурсивный спуск: именно так устроены парсеры всех современных серьёзных компиляторов (Rust, Go, TypeScript, Swift). Tree-sitter удобен для редакторов, потому что прощает ошибки; компилятор не должен прощать ошибки.&lt;/p&gt;
  &lt;p id=&quot;EmMk&quot;&gt;&lt;strong&gt;Семантический анализ (резолв имён, типы, кросс-файловая навигация).&lt;/strong&gt; Tree-sitter сам этого не делает, но даёт фундамент. Сверху вам нужны Stack Graphs (от GitHub), &lt;a href=&quot;http://localhost:1313/blog/2026/lsp/&quot; target=&quot;_blank&quot;&gt;LSP-сервер целевого языка&lt;/a&gt;, или своя реализация.&lt;/p&gt;
  &lt;p id=&quot;04Gf&quot;&gt;&lt;strong&gt;Интеграция Tree-sitter в существующий редактор.&lt;/strong&gt; Если вы пишете плагин для Neovim, Emacs или VSCode и хотите использовать дерево синтаксиса — у Tree-sitter есть API во всех этих экосистемах. Это самый быстрый способ начать.&lt;/p&gt;
  &lt;h2 id=&quot;13-финал-парсер-ставший-инфраструктурой&quot;&gt;13. Финал: парсер, ставший инфраструктурой&lt;/h2&gt;
  &lt;p id=&quot;c6bN&quot;&gt;Tree-sitter — это редкая история про то, как инженерное усилие одного программиста, работавшего параллельно с основной работой, через десять лет становится &lt;strong&gt;стандартом индустрии&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;x6RF&quot;&gt;В 2013-м Макс Брунсфельд начал писать инкрементальный парсер по вечерам, в свободное от Pivotal Labs время. В 2018-м Tree-sitter появился по умолчанию в Atom. В 2021-м — стал частью Neovim. В 2023-м — встроен в Emacs и в инфраструктуру поиска кода GitHub. В 2024-м — основа нового редактора Zed, на который Брунсфельд получил $32 миллиона венчурного капитала.&lt;/p&gt;
  &lt;p id=&quot;eUSB&quot;&gt;И при всём этом сам Tree-sitter остаётся &lt;strong&gt;открытой библиотекой на C с MIT-лицензией&lt;/strong&gt;, в которую любой желающий может прислать pull request. Это та же модель, что и у Linux, Git, Python — инфраструктура, которой пользуются все, развивается сообществом без жёсткого корпоративного контроля.&lt;/p&gt;
  &lt;p id=&quot;Kg6Q&quot;&gt;Если вы программист, ежедневно работаете в современном редакторе и видите подсветку синтаксиса, дерево навигации, переход к определению, контекстное автодополнение — высока вероятность, что под капотом этих фич работает Tree-sitter. Вы об этом не думаете, потому что хорошая инфраструктура невидима. Но если её убрать, мы вернёмся в эпоху TextMate-грамматик с их регулярками, странной подсветкой и невозможностью семантического анализа.&lt;/p&gt;
  &lt;p id=&quot;ztNq&quot;&gt;Рядом стоит ещё одна большая инфраструктурная штука современной разработки — &lt;strong&gt;&lt;a href=&quot;http://localhost:1313/blog/2026/lsp/&quot; target=&quot;_blank&quot;&gt;LSP&lt;/a&gt;&lt;/strong&gt; (Language Server Protocol), который занимается уровнем выше Tree-sitter: семантикой языков, навигацией по символам, диагностикой. Tree-sitter и LSP отлично дополняют друг друга, и сегодня в любом современном редакторе они работают в связке. А что происходит &lt;strong&gt;после&lt;/strong&gt; парсера — как из дерева получается машинный код, — это уже тема для отдельного большого поста про компиляторы целиком.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;главные-источники&quot;&gt;Главные источники&lt;/h3&gt;
  &lt;ul id=&quot;Sblv&quot;&gt;
    &lt;li id=&quot;K14l&quot;&gt;&lt;a href=&quot;https://tree-sitter.github.io/tree-sitter/&quot; target=&quot;_blank&quot;&gt;Tree-sitter — сайт проекта&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;LsCs&quot;&gt;&lt;a href=&quot;https://github.com/tree-sitter/tree-sitter&quot; target=&quot;_blank&quot;&gt;Tree-sitter на GitHub&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;TlAs&quot;&gt;&lt;a href=&quot;https://github.blog/news-insights/product-news/atoms-new-parsing-system/&quot; target=&quot;_blank&quot;&gt;Атом-блог: «Atom understands your code better than ever before» (2018)&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;cY0H&quot;&gt;&lt;a href=&quot;https://github.blog/engineering/architecture-optimization/the-technology-behind-githubs-new-code-search/&quot; target=&quot;_blank&quot;&gt;GitHub blog: «The technology behind GitHub’s new code search» (6 февраля 2023)&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;8WV2&quot;&gt;&lt;a href=&quot;https://github.blog/open-source/introducing-stack-graphs/&quot; target=&quot;_blank&quot;&gt;GitHub blog: «Introducing stack graphs»&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;видео&quot;&gt;Видео&lt;/h3&gt;
  &lt;figure id=&quot;2Qek&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/Jes3bD6P0To?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;07ux&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=Jes3bD6P0To&quot; target=&quot;_blank&quot;&gt;Max Brunsfeld, «Tree-sitter — a new parsing system for programming tools» (Strange Loop 2018)&lt;/a&gt; — каноническая презентация автора. Лучшая точка входа в идеи Tree-sitter.&lt;/p&gt;
  &lt;figure id=&quot;4YFf&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/09-9LltqWLY?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;U3Ko&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=09-9LltqWLY&quot; target=&quot;_blank&quot;&gt;Tree-sitter в Neovim — обзор и настройка&lt;/a&gt;&lt;/p&gt;
  &lt;h3 id=&quot;грамматики-и-инструменты&quot;&gt;Грамматики и инструменты&lt;/h3&gt;
  &lt;ul id=&quot;6D7m&quot;&gt;
    &lt;li id=&quot;UNOj&quot;&gt;&lt;a href=&quot;https://github.com/tree-sitter&quot; target=&quot;_blank&quot;&gt;Список флагманских грамматик&lt;/a&gt; — основная организация на GitHub.&lt;/li&gt;
    &lt;li id=&quot;32d5&quot;&gt;&lt;a href=&quot;https://github.com/kreuzberg-dev/tree-sitter-language-pack&quot; target=&quot;_blank&quot;&gt;tree-sitter-language-pack&lt;/a&gt; — пак с 300+ грамматиками для разных языков.&lt;/li&gt;
    &lt;li id=&quot;cIvk&quot;&gt;&lt;a href=&quot;https://github.com/nvim-treesitter/nvim-treesitter&quot; target=&quot;_blank&quot;&gt;nvim-treesitter&lt;/a&gt; — основной плагин для Neovim.&lt;/li&gt;
    &lt;li id=&quot;LGLa&quot;&gt;&lt;a href=&quot;https://emacs-tree-sitter.github.io/&quot; target=&quot;_blank&quot;&gt;emacs-tree-sitter&lt;/a&gt; — исторический пакет для Emacs до версии 29.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;применение&quot;&gt;Применение&lt;/h3&gt;
  &lt;ul id=&quot;82k5&quot;&gt;
    &lt;li id=&quot;wa6U&quot;&gt;&lt;a href=&quot;https://neovim.io/news/2021/07/&quot; target=&quot;_blank&quot;&gt;Neovim 0.5 release notes (июль 2021)&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;dKZM&quot;&gt;&lt;a href=&quot;https://archive.casouri.cc/note/2023/tree-sitter-in-emacs-29/&quot; target=&quot;_blank&quot;&gt;Tree-sitter in Emacs 29 and Beyond — Yuan Fu&lt;/a&gt; — подробный пост про интеграцию в Emacs 29.&lt;/li&gt;
    &lt;li id=&quot;VIWi&quot;&gt;&lt;a href=&quot;https://docs.helix-editor.com/guides/adding_languages.html&quot; target=&quot;_blank&quot;&gt;Helix Tree-sitter integration&lt;/a&gt; — гайд по добавлению языков в Helix.&lt;/li&gt;
    &lt;li id=&quot;c6Rl&quot;&gt;&lt;a href=&quot;https://zed.dev/team&quot; target=&quot;_blank&quot;&gt;Zed Team&lt;/a&gt; — команда Zed, включая Брунсфельда.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;критика-и-ограничения&quot;&gt;Критика и ограничения&lt;/h3&gt;
  &lt;ul id=&quot;XaVa&quot;&gt;
    &lt;li id=&quot;88wJ&quot;&gt;&lt;a href=&quot;https://github.com/tree-sitter/tree-sitter/issues/224&quot; target=&quot;_blank&quot;&gt;Issue #224: Document the error-recovery algorithm&lt;/a&gt; — обсуждение восстановления ошибок.&lt;/li&gt;
    &lt;li id=&quot;TCKY&quot;&gt;&lt;a href=&quot;https://owen.cafe/posts/tree-sitter-haskell-perf/&quot; target=&quot;_blank&quot;&gt;Speeding up tree-sitter-haskell 50x&lt;/a&gt; — кейс про оптимизацию плохо написанной грамматики.&lt;/li&gt;
    &lt;li id=&quot;ADSP&quot;&gt;&lt;a href=&quot;https://blog.pulsar-edit.dev/posts/20240902-savetheclocktower-modern-tree-sitter-part-7/&quot; target=&quot;_blank&quot;&gt;Modern Tree-sitter, part 7 — Pulsar blog&lt;/a&gt; — серия постов от форка Atom о современных нюансах работы с Tree-sitter.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:raymond</id><link rel="alternate" type="text/html" href="https://azhark.cc/raymond?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Эрик Реймонд: антипод Столлмана и крёстный отец open source</title><published>2026-05-31T19:49:48.527Z</published><updated>2026-05-31T19:49:48.527Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/fe/8e/fe8e0d3f-2c1e-47cc-a956-247a343de728.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/5e/07/5e07e095-8232-44cf-b708-27624cbe05a6.png&quot;&gt;27 мая 1997 года, Вюрцбург, Германия. Идёт первая международная конференция Linux Kongress. На сцену поднимается худой бородатый мужчина сорока лет с лёгкой неровностью в походке. У него за плечами — без малого тридцать лет жизни в хакерских сообществах, недописанный диплом математика и философа Пенсильванского университета, плотная переписка с половиной интернета и репутация человека, способного провести в споре на Usenet двенадцать часов подряд, не сходя со стула.</summary><content type="html">
  &lt;figure id=&quot;fTx8&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/5e/07/5e07e095-8232-44cf-b708-27624cbe05a6.png&quot; width=&quot;1672&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;9aOa&quot;&gt;27 мая 1997 года, Вюрцбург, Германия. Идёт первая международная конференция Linux Kongress. На сцену поднимается худой бородатый мужчина сорока лет с лёгкой неровностью в походке. У него за плечами — без малого тридцать лет жизни в хакерских сообществах, недописанный диплом математика и философа Пенсильванского университета, плотная переписка с половиной интернета и репутация человека, способного провести в споре на Usenet двенадцать часов подряд, не сходя со стула.&lt;/p&gt;
  &lt;p id=&quot;Ta4G&quot;&gt;Он начинает доклад с тезиса, который через год перевернёт индустрию: что Linux разрабатывается принципиально иначе, чем любое серьёзное программное обеспечение до него, и что эта непохожесть — не случайность, а ключ к тому, почему за шесть лет с момента первого письма Линуса Торвальдса в юзенет-группе &lt;code&gt;comp.os.minix&lt;/code&gt; свободное ядро операционной системы успело уделать половину коммерческих UNIX-вариантов.&lt;/p&gt;
  &lt;p id=&quot;fqkd&quot;&gt;Метафора, которую он использовал, простая до неловкости. Большое программное обеспечение, утверждает он, обычно строится как собор: иерархия архитекторов, тщательное планирование, длинные циклы разработки, всё проектируется заранее. А Linux собирается как базар: десятки людей одновременно тащат туда патчи, исправления, идеи, всё это шумно, хаотично, кажется, что развалится через неделю, но почему-то работает лучше любого собора. Доклад назывался &lt;a href=&quot;https://www.catb.org/esr/writings/homesteading/cathedral-bazaar/&quot; target=&quot;_blank&quot;&gt;«The Cathedral and the Bazaar»&lt;/a&gt; («Собор и базар»).&lt;/p&gt;
  &lt;p id=&quot;UAhP&quot;&gt;Через восемь месяцев, в январе 1998-го, корпорация Netscape публично объявит о решении открыть исходный код браузера и прямо сошлётся на этот доклад как на одну из причин. Ещё через две недели в офисе Foresight Institute в Лос-Альтосе соберётся небольшая группа людей, которые придумают термин «open source». И в течение следующих десяти лет этот термин полностью перепишет, что значит свободное программное обеспечение, как оно делается и кто на нём зарабатывает.&lt;/p&gt;
  &lt;p id=&quot;cz9c&quot;&gt;Человека на сцене зовут &lt;strong&gt;Эрик Стивен Реймонд&lt;/strong&gt;. Его сокращённое имя — &lt;strong&gt;ESR&lt;/strong&gt; — для следующих двадцати лет станет одним из самых узнаваемых трёхбуквенных тегов в мире хакеров: рядом с RMS (Ричард Мэттью Столлман) и LBT (Линус Бенедикт Торвальдс). Он будет идеологом, евангелистом, библиотекарем хакерской культуры — и одновременно одним из самых спорных её представителей. Его дружба будет заканчиваться скандалами. Его доклады будут менять индустрию. Его блог станет местом, где либертарианские взгляды на оружие, свободу и государство будут смешиваться с разбором архитектурных проблем NTP-демона.&lt;/p&gt;
  &lt;p id=&quot;a9p2&quot;&gt;Этот пост — о Реймонде. Я расскажу о его детстве в Венесуэле и о том, как лёгкий церебральный паралич привёл его к компьютерам, как он взял заброшенный словарь хакерского жаргона из лабораторий MIT и Stanford и собрал из него книгу. Доберусь до главного — до «Собора и базара» и до того, как из доклада в Германии вырос Open Source Initiative и сам термин «open source». Объясню, в чём именно расходятся он и Столлман — это не личная склока, это два разных взгляда на то, что вообще такое свобода в программном обеспечении. И, конечно, напишу о связанных с ним скандалах, его политических взглядах и о том, как в 2020-м его собственное движение отказалось его терпеть.&lt;/p&gt;
  &lt;p id=&quot;Loqr&quot;&gt;Если вы читали &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;мои предыдущие посты про Столлмана&lt;/a&gt;, &lt;a href=&quot;http://localhost:1313/blog/2026/emacs/&quot; target=&quot;_blank&quot;&gt;Emacs&lt;/a&gt; и &lt;a href=&quot;http://localhost:1313/blog/2026/lisp/&quot; target=&quot;_blank&quot;&gt;Lisp&lt;/a&gt;, то стоит отметить, что Реймонд — четвёртая фигура в той же истории. Без него рассказ о хакерской культуре конца XX века был бы неполным.&lt;/p&gt;
  &lt;h2 id=&quot;1-бостон-венесуэла-дцп-и-первые-компьютеры&quot;&gt;1. Бостон, Венесуэла, ДЦП и первые компьютеры&lt;/h2&gt;
  &lt;p id=&quot;N0QZ&quot;&gt;Эрик Стивен Реймонд родился 4 декабря 1957 года в Бостоне. Семья переезжала вслед за работой отца: в раннем детстве Эрик жил в Венесуэле, и испанский был одним из его первых языков. В 1971 году, когда ему было четырнадцать, семья окончательно осела в Пенсильвании.&lt;/p&gt;
  &lt;p id=&quot;3Uo0&quot;&gt;С самого рождения у Реймонда была лёгкая форма церебрального паралича — врождённое нарушение координации движений, которое в его случае проявлялось в неуклюжей походке и слабости в одной руке. По собственным словам Реймонда, именно физическая ограниченность подтолкнула его в сторону интеллектуальной работы и компьютеров: бегать наперегонки с другими детьми он не мог, но за клавиатурой все были равны.&lt;/p&gt;
  &lt;p id=&quot;NkTJ&quot;&gt;В подростковом возрасте Реймонд оказался у компьютеров случайно — в школе появился доступ к терминалу с подключением к удалённой машине, и Эрик быстро понял, что эта штука гораздо интереснее всего, что предлагала школьная программа. Он научился программировать раньше, чем закончил школу, и к моменту поступления в Пенсильванский университет (UPenn) уже мог писать серьёзный код.&lt;/p&gt;
  &lt;p id=&quot;dXVn&quot;&gt;Любопытно, что в университете Реймонд изучал не информатику. Его официальные специальности — математика и философия. Тогда информатики как отдельной дисциплины в UPenn практически не было. Те, кто хотели программировать, шли через математику или электротехнику. Реймонд диплом так и не получил — ушёл из университета, не закончив обучение. Программированию он научился сам: книги, документация, доступ к BBS и ARPANET, переписка со старшими хакерами.&lt;/p&gt;
  &lt;p id=&quot;zpw2&quot;&gt;Это, кстати, одна из его отличительных черт. Реймонд — самоучка без академического признания, и он этим гордится. Всю свою карьеру он будет утверждать, что хакерство — это не дипломы, а способность довести задачу до работающего кода. Эта позиция потом ляжет в фундамент его эссе «How to Become a Hacker» и определит его отношение к индустрии.&lt;/p&gt;
  &lt;h2 id=&quot;2-хакерская-культура-и-jargon-file&quot;&gt;2. Хакерская культура и Jargon File&lt;/h2&gt;
  &lt;p id=&quot;ytAX&quot;&gt;В 1980-е Реймонд активно участвует в Usenet — глобальной сети новостных групп, которая в те годы выполняла роль одновременно Reddit, Stack Overflow, Twitter и личных блогов. В группах вроде &lt;code&gt;comp.lang.lisp&lt;/code&gt;, &lt;code&gt;comp.os.unix.minix&lt;/code&gt;, &lt;code&gt;alt.folklore.computers&lt;/code&gt; он становится одним из заметных авторов — пишет длинно, технически грамотно, не боится полемики.&lt;/p&gt;
  &lt;p id=&quot;S3rt&quot;&gt;Именно в этой среде он сталкивается с тем, что станет его первым крупным проектом — The Jargon File.&lt;/p&gt;
  &lt;p id=&quot;t4pQ&quot;&gt;The Jargon File — это словарь хакерского жаргона, который начиная с 1975 года вели в Stanford AI Lab (изначально Рафаэль Финкель, потом Дон Вудс). Через несколько лет файл начал параллельно поддерживаться в MIT AI Lab. Это был не словарь в академическом смысле, а культурный документ — попытка зафиксировать сленг, идиомы, шутки, легенды того поколения программистов, которые сами называли себя хакерами в исходном, доинтернетовском смысле слова: «люди, которые пишут красивый код и получают от этого удовольствие».&lt;/p&gt;
  &lt;p id=&quot;2CyZ&quot;&gt;К 1983 году файл лёг в основу первого книжного издания — &lt;em&gt;The Hacker’s Dictionary&lt;/em&gt; под редакцией Гая Стила-младшего (Harper &amp;amp; Row, 1983). И после этого работа над файлом фактически прекратилась. Лаборатория искусственного интеллекта начала распадаться (отчасти из-за истории с Symbolics, которая &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;описана в посте про Столлмана&lt;/a&gt;), и поддерживать словарь стало некому.&lt;/p&gt;
  &lt;p id=&quot;DJ14&quot;&gt;В 1990 году Эрик Реймонд взял Jargon File на себя. Возрождённая версия 2.1.1 вышла 12 июня 1990 года. Все изменения Реймонд согласовывал с Гаем Стилом, чтобы сохранить дух оригинала. Через год, в 1991-м, новая версия легла в основу книги &lt;strong&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/The_New_Hacker%27s_Dictionary&quot; target=&quot;_blank&quot;&gt;«The New Hacker’s Dictionary»&lt;/a&gt;&lt;/strong&gt; (MIT Press, ISBN 0-262-68069-6). Второе издание вышло в 1993-м, третье — в 1996-м.&lt;/p&gt;
  &lt;p id=&quot;D631&quot;&gt;The New Hacker’s Dictionary — это, наверное, лучший культурный артефакт о хакерах конца XX века. Там есть всё: история термина «foo», объяснение, почему программисты говорят «yak shaving», легенда про PDP-1 и игру Spacewar!, шутки про язык программирования INTERCAL, разбор разницы между «hacker» в исходном смысле и «cracker» (которым стали называть взломщиков). Если вы хотите понять, откуда выросла культура, в которой потом появятся Emacs, Linux, Python, Stack Overflow и Hacker News, — этот словарь лучшая точка входа.&lt;/p&gt;
  &lt;p id=&quot;BNGv&quot;&gt;Для Реймонда же работа над Jargon File стала идеальным тренажёром. Он стал главным архивариусом и систематизатором хакерской культуры — и эта роль определила всё, чем он занимался впоследствии.&lt;/p&gt;
  &lt;h2 id=&quot;3-how-to-become-a-hacker-1996&quot;&gt;3. «How to Become a Hacker» (1996)&lt;/h2&gt;
  &lt;p id=&quot;Jcj4&quot;&gt;В конце 1996 года Реймонд публикует на своём сайте эссе под названием &lt;strong&gt;&lt;a href=&quot;https://www.catb.org/~esr/faqs/hacker-howto.html&quot; target=&quot;_blank&quot;&gt;«How to Become a Hacker»&lt;/a&gt;&lt;/strong&gt; — «Как стать хакером».&lt;/p&gt;
  &lt;p id=&quot;09xp&quot;&gt;Эссе короткое, личное и абсолютно непохожее на тогдашние учебники. Реймонд не объясняет, как писать код, и не учит конкретным языкам. Вместо этого он отвечает на вопрос, который ему уже несколько лет задают молодые программисты в Usenet: «как мне стать настоящим хакером?». И отвечает он этически, а не технически.&lt;/p&gt;
  &lt;p id=&quot;7H8Y&quot;&gt;Хакер, говорит Реймонд, — это не человек, который ломает чужие системы (это крэкер, и хакеры презирают крэкеров). Хакер — это человек, который строит вещи, который относится к программированию как к искусству, который верит в обмен знаниями и в открытое сотрудничество. Хакерство — это позиция в мире, способ думать. Технические навыки приложатся.&lt;/p&gt;
  &lt;p id=&quot;V9sd&quot;&gt;В эссе есть длинный список рекомендаций: учи Python (он легче, чем C, и при этом мощный), учи C (потому что без него ты не поймёшь UNIX), учи Perl (потому что половина системного администрирования написана на нём), учи Lisp — даже если ты никогда на нём не напишешь ни строчки серьёзного кода. Именно про Lisp в этом эссе появляется одна из самых цитируемых фраз во всей истории нашей профессии:&lt;/p&gt;
  &lt;blockquote id=&quot;l1Va&quot;&gt;Lisp стоит изучать по другой причине — ради того глубокого просвещения, которое наступит, когда вы наконец его поймёте. Этот опыт сделает вас лучшим программистом до конца ваших дней, даже если на самом Lisp вы потом никогда не будете много писать.&lt;/blockquote&gt;
  &lt;p id=&quot;oJPp&quot;&gt;Я уже &lt;a href=&quot;http://localhost:1313/blog/2026/lisp/&quot; target=&quot;_blank&quot;&gt;цитировал эту фразу в посте про Lisp&lt;/a&gt; — она там стала кульминацией всей истории. Источник её — именно «How to Become a Hacker». Это, в сущности, одно предложение, в котором Реймонд формулирует то, что считает главным в хакерской культуре: ты учишься не ради сертификата и не ради зарплаты, ты учишься ради того, чтобы лучше думать.&lt;/p&gt;
  &lt;p id=&quot;bDiY&quot;&gt;Эссе с тех пор обновляется примерно раз в год. Его переводы на десятки языков. Его читают молодые программисты в 2026-м точно так же, как читали в 1997-м. Это, наверное, самый известный текст Реймонда после «Собора и базара».&lt;/p&gt;
  &lt;h2 id=&quot;4-fetchmail-и-эксперимент-с-открытой-разработкой&quot;&gt;4. fetchmail и эксперимент с открытой разработкой&lt;/h2&gt;
  &lt;p id=&quot;fddq&quot;&gt;Параллельно с эссеистикой Реймонд писал код. В июне 1996 года он взял на сопровождение небольшую программу под названием popclient — клиент для получения почты через протокол POP3, изначально написанный программистом Карлом Харрисом. Через несколько месяцев Реймонд переименовал её в &lt;strong&gt;&lt;a href=&quot;https://www.fetchmail.info/&quot; target=&quot;_blank&quot;&gt;fetchmail&lt;/a&gt;&lt;/strong&gt;, добавил поддержку IMAP, форвардинг через SMTP, расширенную конфигурацию.&lt;/p&gt;
  &lt;p id=&quot;HXgK&quot;&gt;Сама по себе fetchmail — программа узкоспециализированная: она забирает почту с удалённого сервера и доставляет её локально. Но для Реймонда она стала полевым испытанием его теорий о разработке. Он принципиально вёл проект открыто, выпускал релизы часто, прислушивался к патчам от любых незнакомых людей, обращался с любым отчётом о баге как с подарком, а не как с раздражением. И обнаружил, что качество кода и темп разработки растут вопреки всем правилам традиционной программной инженерии.&lt;/p&gt;
  &lt;p id=&quot;muk1&quot;&gt;Именно опыт fetchmail лёг в основу эссе «The Cathedral and the Bazaar», которое он представит через несколько месяцев. В этом эссе fetchmail будет главным примером — конкретный кейс, на котором Реймонд иллюстрирует, как именно работает «базарная» модель.&lt;/p&gt;
  &lt;p id=&quot;prD6&quot;&gt;Интересно, что fetchmail работает до сих пор. Это одна из тех маленьких UNIX-утилит, которые продолжают тихо делать свою работу четверть века подряд, без шума и без скандалов. В отличие от своего автора.&lt;/p&gt;
  &lt;h2 id=&quot;5-the-cathedral-and-the-bazaar-1997&quot;&gt;5. «The Cathedral and the Bazaar» (1997)&lt;/h2&gt;
  &lt;p id=&quot;eE9b&quot;&gt;27 мая 1997 года Реймонд представил на конференции Linux Kongress в Вюрцбурге доклад «The Cathedral and the Bazaar». Через несколько месяцев он расширил текст и опубликовал его в виде эссе. В 1999 году вышла книга в издательстве O’Reilly (ISBN 1-56592-724-9), куда вошли это эссе и ещё несколько связанных текстов: «Homesteading the Noosphere», «The Magic Cauldron» и другие.&lt;/p&gt;
  &lt;p id=&quot;igvR&quot;&gt;Главный тезис эссе формулируется просто. Существуют две модели разработки сложного программного обеспечения:&lt;/p&gt;
  &lt;p id=&quot;TC9L&quot;&gt;&lt;strong&gt;Модель «собора»&lt;/strong&gt;. Архитекторы заранее проектируют всё устройство системы. Разработка идёт за закрытыми дверями. Релизы редкие, тщательно подготовленные. Качество достигается долгим планированием и контролем со стороны узкой группы людей. По этой модели делается коммерческий софт, и так же изначально делался GNU.&lt;/p&gt;
  &lt;p id=&quot;M1qM&quot;&gt;&lt;strong&gt;Модель «базара»&lt;/strong&gt;. Никакого единого плана нет. Десятки или сотни людей одновременно тащат в проект патчи, исправления, фичи. Релизы выходят часто и небольшие. Качество достигается тем, что «при достаточном количестве глаз все ошибки лежат на поверхности» — знаменитый &lt;strong&gt;закон Линуса&lt;/strong&gt;, сформулированный в этом же эссе:&lt;/p&gt;
  &lt;blockquote id=&quot;DGTR&quot;&gt;Given enough eyeballs, all bugs are shallow.&lt;/blockquote&gt;
  &lt;p id=&quot;Pkx8&quot;&gt;Реймонд утверждает: Linux был построен по модели базара, и поэтому к 1997 году обогнал коммерческие UNIX-варианты. Не потому, что Торвальдс гений (хотя он гений), а потому, что архитектура разработки оказалась принципиально более эффективной для большого ПО.&lt;/p&gt;
  &lt;p id=&quot;93oh&quot;&gt;Эссе попало в самую точку времени. Linux к 1997-му уже был серьёзной системой, но индустрия всё ещё относилась к нему как к курьёзу. «Собор и базар» дал индустрии язык, на котором можно было обсуждать феномен Linux всерьёз. Корпоративные технические директора, которые до этого мялись с ответом на вопрос «почему мы не используем Linux вместо Solaris», теперь могли сослаться на конкретную статью.&lt;/p&gt;
  &lt;p id=&quot;jlD1&quot;&gt;Чудо состоит в том, что Реймонд не написал учебник по программированию. Он написал манифест культуры, и манифест оказался достаточно убедительным, чтобы изменить корпоративные решения. До 1997-го открытое программное обеспечение в глазах CIO крупных компаний было любительщиной. После — стало стратегически значимой технологией.&lt;/p&gt;
  &lt;h2 id=&quot;6-netscape-январь-1998&quot;&gt;6. Netscape, январь 1998&lt;/h2&gt;
  &lt;p id=&quot;z60v&quot;&gt;Через семь месяцев после доклада в Вюрцбурге, 22 января 1998 года, корпорация Netscape объявила о решении открыть исходный код своего браузера. Это была сенсация: Netscape была крупной коммерческой компанией с миллиардной капитализацией, а её браузер — основным конкурентом Internet Explorer. Открытие исходников означало, что Netscape будет конкурировать с Microsoft не как компания против компании, а как открытое сообщество против корпоративной монополии.&lt;/p&gt;
  &lt;p id=&quot;JyKC&quot;&gt;В корпоративном меморандуме, подготовившем это решение, — документе под названием «Netscape Source Code as Netscape Product», написанном Фрэнком Хекером осенью 1997 года, — «The Cathedral and the Bazaar» цитируется как одно из ключевых внешних подтверждений идеи. Сам Реймонд был приглашён в штаб-квартиру Netscape 4 февраля 1998-го на стратегическую сессию по плану релиза. CEO Netscape Джим Барксдейл публично называл эссе «одним из главных влияний» на это решение.&lt;/p&gt;
  &lt;p id=&quot;Cwyj&quot;&gt;С этого момента Реймонд стал известным человеком за пределами хакерского сообщества. О нём писали в &lt;em&gt;Wired&lt;/em&gt;, &lt;em&gt;Forbes&lt;/em&gt;, &lt;em&gt;Fortune&lt;/em&gt;. Его звали выступать на корпоративных конференциях. Его эссе стали обязательным чтением для технологических предпринимателей.&lt;/p&gt;
  &lt;p id=&quot;wZfV&quot;&gt;И именно в этот момент возникла идея, что для разговора с индустрией нужен другой язык. Не «free software», как у Столлмана, — слово «free» по-английски слишком неоднозначно (free as in freedom vs free as in beer), а корпоративный мир инстинктивно настораживается, когда видит слово «free». Нужен новый бренд.&lt;/p&gt;
  &lt;h2 id=&quot;7-лос-альтос-3-февраля-1998-рождение-термина-open-source&quot;&gt;7. Лос-Альтос, 3 февраля 1998: рождение термина «open source»&lt;/h2&gt;
  &lt;p id=&quot;HOtJ&quot;&gt;Через двенадцать дней после анонса Netscape, 3 февраля 1998 года, в офисе Foresight Institute в Лос-Альтосе (Калифорния, не путать с Пало-Альто — это разные города в нескольких километрах друг от друга) собралась небольшая группа людей. Присутствовали:&lt;/p&gt;
  &lt;ul id=&quot;HChN&quot;&gt;
    &lt;li id=&quot;wVw6&quot;&gt;&lt;strong&gt;Кристин Петерсон&lt;/strong&gt; — соучредитель Foresight Institute, известная футурологом и популяризатор нанотехнологий;&lt;/li&gt;
    &lt;li id=&quot;SMxk&quot;&gt;&lt;strong&gt;Эрик Реймонд&lt;/strong&gt;;&lt;/li&gt;
    &lt;li id=&quot;eePt&quot;&gt;&lt;strong&gt;Брайан Белендорф&lt;/strong&gt; — один из основателей Apache;&lt;/li&gt;
    &lt;li id=&quot;Bv53&quot;&gt;&lt;strong&gt;Майкл Тиман&lt;/strong&gt; — основатель Cygnus Solutions, первой коммерческой компании, зарабатывавшей на свободном ПО;&lt;/li&gt;
    &lt;li id=&quot;ObdL&quot;&gt;&lt;strong&gt;Тодд Андерсон&lt;/strong&gt;;&lt;/li&gt;
    &lt;li id=&quot;sGwG&quot;&gt;&lt;strong&gt;Марк С. Миллер&lt;/strong&gt; — программист и философ;&lt;/li&gt;
    &lt;li id=&quot;jZsi&quot;&gt;&lt;strong&gt;Ка-Пинг Йи&lt;/strong&gt; — программист и активист.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;EJ7j&quot;&gt;Целью встречи было обсудить, как индустрия должна реагировать на анонс Netscape. И в ходе разговора Кристин Петерсон предложила термин &lt;strong&gt;«open source»&lt;/strong&gt; — буквально «открытый исходный код». Идея понравилась. Реймонд её активно поддержал. Через два дня, 5 февраля 1998-го, во второй встрече в офисе VA Research участвовали уже Ларри Аугустин, Сэм Окман, по телефону подключался Джон «maddog» Холл — там окончательно решили, что термин принимается как новый бренд для движения свободного программного обеспечения, ориентированный на бизнес.&lt;/p&gt;
  &lt;p id=&quot;mhuR&quot;&gt;&lt;strong&gt;9 февраля 1998 года&lt;/strong&gt; была опубликована &lt;a href=&quot;https://opensource.org/osd&quot; target=&quot;_blank&quot;&gt;Open Source Definition&lt;/a&gt; (OSD) — формальное определение того, что считается open source. Через несколько недель Реймонд и Брюс Перенс (автор Debian Free Software Guidelines, на основе которых писался OSD) учредили &lt;strong&gt;&lt;a href=&quot;https://opensource.org/&quot; target=&quot;_blank&quot;&gt;Open Source Initiative&lt;/a&gt;&lt;/strong&gt; (OSI) — некоммерческую организацию для продвижения и защиты термина. Реймонд стал её первым президентом, Перенс — вице-президентом.&lt;/p&gt;
  &lt;p id=&quot;2IVC&quot;&gt;Ребрендинг сработал ошеломляюще. В течение следующих двух-трёх лет почти вся индустрия начала говорить «open source» вместо «free software» или «freeware». IBM, Sun, Oracle, Hewlett-Packard — все крупные технологические компании конца 1990-х приняли термин и начали публично поддерживать соответствующие проекты. Linux перестал быть «программой для бородатых анархистов» и превратился в респектабельную инфраструктуру.&lt;/p&gt;
  &lt;p id=&quot;HxnW&quot;&gt;И это, конечно, было катастрофой с точки зрения Ричарда Столлмана.&lt;/p&gt;
  &lt;h2 id=&quot;8-раскол-со-столлманом&quot;&gt;8. Раскол со Столлманом&lt;/h2&gt;
  &lt;p id=&quot;rFEa&quot;&gt;Расхождение между Реймондом и Столлманом — это не личная склока. Это &lt;strong&gt;два разных взгляда на то, чем является свобода в программном обеспечении&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;jh2C&quot;&gt;&lt;strong&gt;Для Столлмана&lt;/strong&gt; свободное программное обеспечение — это &lt;strong&gt;этическая категория&lt;/strong&gt;. Свобода кода — частный случай прав человека. Право пользователя изучать, изменять и распространять программу, которой он пользуется, — это вопрос личного достоинства, а не удобства разработки. Когда вы используете несвободную программу, вы &lt;strong&gt;подчиняетесь&lt;/strong&gt; её владельцу — а это морально неприемлемо вне зависимости от того, насколько программа технически хорошая. Поэтому Столлман принципиально не использует никаких проприетарных программ, поэтому он формулирует Манифест GNU как политическое заявление, поэтому GPL содержит «вирусную» оговорку, обязывающую все производные работы тоже оставаться свободными.&lt;/p&gt;
  &lt;p id=&quot;BT6f&quot;&gt;&lt;strong&gt;Для Реймонда&lt;/strong&gt; свободное программное обеспечение — это &lt;strong&gt;прагматическая стратегия&lt;/strong&gt;. Открытость кода позволяет разрабатывать ПО эффективнее, потому что задействует распределённое сообщество. Это аргумент &lt;strong&gt;для инженеров и менеджеров&lt;/strong&gt;, а не для философов. Если можно убедить корпорации использовать и поддерживать открытое ПО, потому что это экономически выгодно, — это победа. Этика, по мнению Реймонда, отпугивает индустрию и тормозит распространение. «Open source» — это переименование, специально предназначенное для того, чтобы в разговоре с бизнесом не упоминать никакой философии.&lt;/p&gt;
  &lt;p id=&quot;uEqE&quot;&gt;Столлман принципиально отказался признавать новый термин. В своих текстах он систематически писал &lt;a href=&quot;https://www.gnu.org/philosophy/open-source-misses-the-point.html&quot; target=&quot;_blank&quot;&gt;«free software, sometimes called open source»&lt;/a&gt; и многократно объяснял, почему это не одно и то же. Самая известная его формулировка: «Open source — это не движение, потому что у него нет цели, кроме как сделать работающий код. У free software цель — этическая. Это разные вещи».&lt;/p&gt;
  &lt;p id=&quot;E9Ok&quot;&gt;Реймонд, в свою очередь, обвинял Столлмана в догматизме, который вредит самому движению. По его мнению, Столлман упускал шанс на массовое внедрение свободного ПО ради сохранения чистоты собственной идеологии.&lt;/p&gt;
  &lt;p id=&quot;Wu0r&quot;&gt;Этот раскол продолжается до сих пор. В 2026 году в сети по-прежнему живут оба лагеря: Free Software Foundation (FSF), которую возглавляет Столлман, со строгой этической позицией, и Open Source Initiative (OSI), которая после ухода Столлмана из её ближайшего окружения постепенно эволюционировала в более либеральном корпоративно-дружественном направлении.&lt;/p&gt;
  &lt;p id=&quot;DzAt&quot;&gt;Любопытно, что технически разница между «free software» и «open source» практически нулевая. Open Source Definition (OSD) перекрывает примерно тот же набор лицензий, что и Free Software Definition. Если программа свободная по Столлману, она же — open source по Реймонду. Различие — исключительно в риторике и аудитории.&lt;/p&gt;
  &lt;p id=&quot;cdwP&quot;&gt;Но в риторике, как показала вся история программирования последних тридцати лет, дьявол как раз и сидит.&lt;/p&gt;
  &lt;p id=&quot;tsbJ&quot;&gt;Брюс Перенс, кстати, ушёл из OSI уже в феврале 1999 года, через год после её основания, написав, что Реймонд «теряет фокус на свободном программном обеспечении». Это была первая трещина в коалиции; за ней последуют другие.&lt;/p&gt;
  &lt;h2 id=&quot;9-the-art-of-unix-programming-2003&quot;&gt;9. «The Art of Unix Programming» (2003)&lt;/h2&gt;
  &lt;p id=&quot;tRPj&quot;&gt;После пика open-source-революции 1998–2000 годов Реймонд занялся книгой, которая должна была кодифицировать всё, что он знал о философии UNIX как технологической культуры.&lt;/p&gt;
  &lt;p id=&quot;zKE5&quot;&gt;&lt;strong&gt;&lt;a href=&quot;http://www.catb.org/esr/writings/taoup/html/&quot; target=&quot;_blank&quot;&gt;«The Art of Unix Programming»&lt;/a&gt;&lt;/strong&gt; вышла 23 сентября 2003 года в издательстве Addison-Wesley (ISBN 0-13-142901-9, около 560 страниц). Это толстая книга, в которой Реймонд формулирует &lt;strong&gt;17 правил философии UNIX&lt;/strong&gt;: правило модульности, правило ясности, правило композиции, правило разделения, правило простоты, правило экономии, правило прозрачности, правило надёжности, правило репрезентации, правило наименьшего удивления, правило тишины, правило восстановления, правило экономии (разработчиков), правило генерации, правило оптимизации, правило разнообразия, правило расширяемости.&lt;/p&gt;
  &lt;p id=&quot;mzbW&quot;&gt;Это не учебник. Это &lt;strong&gt;манифест культуры&lt;/strong&gt;. Реймонд утверждает, что UNIX — не просто операционная система, а особый способ думать о программном обеспечении: маленькие хорошо сделанные инструменты, текстовые потоки как универсальный интерфейс, удобство комбинирования, человекочитаемые конфигурационные файлы. И этот способ думать был сформирован в Bell Labs в 1970-е (Кен Томпсон, Деннис Ритчи, Дуглас Макилрой, Брайан Керниган) — и до сих пор сохраняется в современных дистрибутивах Linux, в BSD, в macOS под капотом.&lt;/p&gt;
  &lt;p id=&quot;48UL&quot;&gt;«The Art of Unix Programming» сильно повлияла на отношение к разработке системного ПО. Не все её правила прижились (некоторые сильно устарели, как правила про текстовые потоки — современные данные часто структурированные, JSON или Protobuf, а не plaintext), но как культурный документ книга остаётся обязательной к прочтению. Она доступна онлайн под Creative Commons.&lt;/p&gt;
  &lt;h2 id=&quot;10-программистский-вклад-ntpsec-и-многое-другое&quot;&gt;10. Программистский вклад: NTPsec и многое другое&lt;/h2&gt;
  &lt;p id=&quot;eunI&quot;&gt;Реймонд — не только эссеист. Он за свою жизнь написал и поддерживал десятки программ. Кроме уже упомянутого fetchmail, к числу его известных проектов относятся:&lt;/p&gt;
  &lt;ul id=&quot;RyDV&quot;&gt;
    &lt;li id=&quot;a2tB&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.ntpsec.org/&quot; target=&quot;_blank&quot;&gt;NTPsec&lt;/a&gt;&lt;/strong&gt; — безопасная версия NTP-демона (Network Time Protocol), на котором держится синхронизация времени в интернете. Проект начат в 2014 году как ответ на серию уязвимостей в классической реализации NTP. Реймонд — один из его основных мейнтейнеров.&lt;/li&gt;
    &lt;li id=&quot;zCkB&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://gpsd.gitlab.io/gpsd/&quot; target=&quot;_blank&quot;&gt;GPSD&lt;/a&gt;&lt;/strong&gt; — демон для работы с GPS-устройствами в Linux. Используется в навигационных приложениях, на автономных дронах, в робототехнике.&lt;/li&gt;
    &lt;li id=&quot;lgz9&quot;&gt;&lt;strong&gt;&lt;a href=&quot;http://www.catb.org/esr/reposurgeon/&quot; target=&quot;_blank&quot;&gt;Reposurgeon&lt;/a&gt;&lt;/strong&gt; — инструмент для миграции репозиториев между системами контроля версий (CVS → Subversion → Git и так далее). Реймонд использовал его для миграции огромного количества старых проектов, включая исторический архив самого GCC (миграция из SVN в Git в 2020 году — отдельная эпопея).&lt;/li&gt;
    &lt;li id=&quot;iAoW&quot;&gt;&lt;strong&gt;giflib&lt;/strong&gt; — библиотека для работы с GIF-форматом. Поддерживается с 1989 года.&lt;/li&gt;
    &lt;li id=&quot;GE5u&quot;&gt;&lt;strong&gt;doclifter&lt;/strong&gt; — конвертер из troff (старый формат форматирования документов в UNIX) в DocBook XML.&lt;/li&gt;
    &lt;li id=&quot;CbLo&quot;&gt;&lt;strong&gt;The Lemmings Compendium&lt;/strong&gt; — да, на досуге Реймонд написал гайд по легендарной игре &lt;em&gt;Lemmings&lt;/em&gt; 1991 года. Это очень в его стиле.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;FDy7&quot;&gt;То есть это действующий программист, а не «бывший разраб», как многие из идеологов open source. В 2026 году ему исполнилось 68 лет, и он по-прежнему активно пишет код, обычно — низкоуровневые системные утилиты на C.&lt;/p&gt;
  &lt;h2 id=&quot;11-политика-оружие-и-блог-armed-and-dangerous&quot;&gt;11. Политика, оружие и блог «Armed and Dangerous»&lt;/h2&gt;
  &lt;p id=&quot;ik7A&quot;&gt;Параллельно со всем этим Реймонд ведёт публичную политическую жизнь, и именно она делает его одной из самых скандальных фигур в хакерской культуре.&lt;/p&gt;
  &lt;p id=&quot;LZyn&quot;&gt;Реймонд — анархо-либертарианец: убеждённый сторонник минимального государства, права на частное оружие, свободного рынка как универсального инструмента. Он несколько десятилетий ведёт блог &lt;strong&gt;&lt;a href=&quot;http://esr.ibiblio.org/&quot; target=&quot;_blank&quot;&gt;«Armed and Dangerous»&lt;/a&gt;&lt;/strong&gt; («Вооружён и опасен») с подзаголовком &lt;strong&gt;«Sex, software, politics, and firearms»&lt;/strong&gt; — «секс, программы, политика и огнестрельное оружие». В блоге он публикует длинные эссе на все четыре заявленные темы и собирает иногда сотни комментариев.&lt;/p&gt;
  &lt;p id=&quot;1cTs&quot;&gt;Это уже не та «нейтральная» интеллектуальная позиция, которая допустима в любой компании. Реймонд — публичный политический активист, и его позиции часто провоцируют резкую реакцию в хакерском сообществе, которое в последние пятнадцать лет сместилось в сторону левой повестки. Его оценки войн, феминизма, расовых вопросов многократно становились причиной скандалов. Он считает, что Запад находится в культурной войне с собственной академической левой интеллигенцией, что политкорректность в технологическом сообществе разрушает меритократию, что движения вроде Black Lives Matter — продукт марксистской манипуляции.&lt;/p&gt;
  &lt;p id=&quot;BDSy&quot;&gt;Многие в индустрии с этим категорически не согласны. Многие даже не хотят быть с Реймондом в одной аудитории. Но Реймонд продолжает писать, и его блог остаётся одним из самых нестандартных голосов в Сети.&lt;/p&gt;
  &lt;p id=&quot;u0ZY&quot;&gt;Он также сертифицированный мастер тхэквондо (чёрный пояс), увлекается фехтованием, играет на нескольких музыкальных инструментах (в основном на флейте), активен в субкультуре filk — фолк-музыки фантастического и фэндомного сообщества. Религиозно он определяет себя как нео-язычника.&lt;/p&gt;
  &lt;p id=&quot;CeNR&quot;&gt;Всё это необычно даже по меркам хакерского сообщества, в котором эксцентричных людей всегда хватало. Реймонд же эксцентричен даже на фоне самых эксцентричных.&lt;/p&gt;
  &lt;h2 id=&quot;12-2020-год-исключение-из-osi&quot;&gt;12. 2020 год: исключение из OSI&lt;/h2&gt;
  &lt;p id=&quot;zuAX&quot;&gt;В феврале 2020 года Реймонд оказался в центре нового скандала. Поводом стала его реакция на &lt;a href=&quot;https://ethicalsource.dev/&quot; target=&quot;_blank&quot;&gt;Ethical Source Definition&lt;/a&gt; — попытку группы активистов разработать новые лицензии для программного обеспечения, которые бы запрещали его использование в целях, противоречащих этическим принципам авторов (например, для военных или для систем массового слежения).&lt;/p&gt;
  &lt;p id=&quot;ut5G&quot;&gt;Реймонд выступил против этой инициативы — он считал её попыткой подорвать сам принцип open source, который по определению не делит пользователей на «хороших» и «плохих». Но проблема была не в позиции, а в форме. В письмах на рассылке License-Discuss (24 и 26 февраля 2020) Реймонд назвал автора инициативы «токсичной поехавшей» (&lt;em&gt;toxic loonytoon&lt;/em&gt;), охарактеризовал происходящее как «политическое крысиное еблево» (&lt;em&gt;political ratfucking&lt;/em&gt;), «вульгарный марксизм» и попытку «посадить политических комиссаров на каждый open-source-проект».&lt;/p&gt;
  &lt;p id=&quot;qruq&quot;&gt;28 февраля 2020 года Памела Честек, председатель совета OSI, объявила об исключении Реймонда из рассылок License-Review и License-Discuss за нарушение Code of Conduct. В обосновании говорилось: его сообщения «оскорбительны, намеренно сеют раскол, неуважительны».&lt;/p&gt;
  &lt;p id=&quot;JwzW&quot;&gt;Уточнение, которое часто путают: Реймонд не был исключён из OSI как таковой (президентом OSI он перестал быть гораздо раньше). Он был исключён из двух её публичных рассылок, что в практическом смысле означало невозможность участвовать в обсуждении лицензий — главной деятельности OSI.&lt;/p&gt;
  &lt;p id=&quot;CpQv&quot;&gt;Реймонд ответил постом в своём блоге под названием &lt;strong&gt;«The Right To Be Rude»&lt;/strong&gt; — «Право быть грубым». Суть позиции: открытое программное обеспечение всегда стояло на свободе слова, в том числе на свободе говорить грубо; превращение OSI в институцию с Code of Conduct, по его мнению, означает её смерть как движения. Многие с ним согласились. Многие категорически нет.&lt;/p&gt;
  &lt;p id=&quot;6EWX&quot;&gt;Это была горькая ирония. Человек, который придумал термин open source (формально — Кристин Петерсон, но Реймонд был главным его евангелистом), оказался изгнан из главной институции, посвящённой этому термину. Реймонд воспринял это как личное предательство и с тех пор резко критикует OSI.&lt;/p&gt;
  &lt;h2 id=&quot;13-финал-библиотекарь-евангелист-и-баррикадный-полемист&quot;&gt;13. Финал: библиотекарь, евангелист и баррикадный полемист&lt;/h2&gt;
  &lt;p id=&quot;3tr3&quot;&gt;Что в итоге сделал Реймонд для нашей профессии?&lt;/p&gt;
  &lt;p id=&quot;8aI1&quot;&gt;Он &lt;strong&gt;систематизировал хакерскую культуру&lt;/strong&gt;. The Jargon File и The New Hacker’s Dictionary — это, в каком-то смысле, наша устная история, превращённая в письменную. Без этой работы мы бы потеряли значительную часть фольклора лабораторий MIT и Stanford.&lt;/p&gt;
  &lt;p id=&quot;6Hcu&quot;&gt;Он &lt;strong&gt;дал индустрии язык&lt;/strong&gt;, на котором можно говорить о свободном программном обеспечении без испуга. «The Cathedral and the Bazaar» сделал больше для популяризации Linux в корпоративной среде, чем сотни маркетинговых кампаний. Open Source Initiative и сам термин «open source» — прямое следствие.&lt;/p&gt;
  &lt;p id=&quot;hYEH&quot;&gt;Он &lt;strong&gt;написал тексты, которые молодые программисты читают до сих пор&lt;/strong&gt;. «How to Become a Hacker» — точка входа в хакерскую культуру для нескольких поколений. «The Art of Unix Programming» — манифест системного мышления.&lt;/p&gt;
  &lt;p id=&quot;JFhy&quot;&gt;Он &lt;strong&gt;продолжает писать код в свои 68 лет&lt;/strong&gt;, и этот код используется в производственных системах по всему миру (NTPsec, GPSD, fetchmail).&lt;/p&gt;
  &lt;p id=&quot;V2nm&quot;&gt;И при всём этом он остаётся одним из самых противоречивых людей в индустрии. Половина считает его героем, который защитил свободу разработки от корпоратизации и от новых идеологических ограничений. Другая половина считает его реакционером, чьи политические взгляды отравляют сообщество, и для которой история 2020 года в OSI — справедливый итог давно копившегося.&lt;/p&gt;
  &lt;p id=&quot;BIM6&quot;&gt;Я склонен относиться к Реймонду так же, как &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;к Столлману&lt;/a&gt;: отделять вклад от личных качеств. The Jargon File написан. Эссе «Собор и базар» прочитано миллионами и реально повлияло на индустрию. Термин «open source» прижился — и для лучшего, и для худшего. Эти результаты есть, и они никуда не исчезнут от того, насколько неприятно Реймонд иногда выражается в комментариях.&lt;/p&gt;
  &lt;p id=&quot;6l3d&quot;&gt;И всё же, в отличие от Столлмана, Реймонд выбрал свою публичную полемику. Столлман — эксцентричный одиночка, который случайно стал политической фигурой. Реймонд — человек, который сознательно строил себя как полемиста, евангелиста, баррикадного бойца за определённую идеологию. Это другая роль, и судить его надо по-другому.&lt;/p&gt;
  &lt;p id=&quot;5Rjy&quot;&gt;Главное про Реймонда, как мне кажется, состоит вот в чём: он создал словарь слов, которые мы до сих пор используем. Слова «open source», «hacker» в современном смысле, «bazaar model», «given enough eyeballs» — мы повторяем эти выражения каждый день, часто не зная, откуда они. Это словарь конца XX века, и он принадлежит Реймонду в той же мере, в какой словарь свободного ПО принадлежит Столлману, а словарь информатики как науки — Дональду Кнуту.&lt;/p&gt;
  &lt;p id=&quot;wR8q&quot;&gt;Без Реймонда наша профессия выглядела бы заметно иначе. Сложно сказать, лучше или хуже, но точно не так, как сейчас.&lt;/p&gt;
  &lt;p id=&quot;7ktt&quot;&gt;В следующих постах я планирую вернуться к технике — к парсингу, к компиляторам, к более конкретным инженерным темам. Биографическая серия про Шеннона, Столлмана, Emacs, Lisp и Реймонда на этом закрывается. Если в её процессе у вас возникло ощущение, что хакерская культура XX века — это что-то цельное, имеющее своих святых, своих еретиков, свои священные тексты и свои внутренние войны, — значит, серия удалась.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;главные-тексты-реймонда&quot;&gt;Главные тексты Реймонда&lt;/h3&gt;
  &lt;ul id=&quot;QCAu&quot;&gt;
    &lt;li id=&quot;hXgH&quot;&gt;&lt;a href=&quot;https://www.catb.org/esr/writings/homesteading/cathedral-bazaar/&quot; target=&quot;_blank&quot;&gt;«The Cathedral and the Bazaar»&lt;/a&gt; — оригинальное эссе, 1997. Читается за час, после этого многое в индустрии становится понятнее.&lt;/li&gt;
    &lt;li id=&quot;pdMk&quot;&gt;&lt;a href=&quot;https://www.catb.org/~esr/faqs/hacker-howto.html&quot; target=&quot;_blank&quot;&gt;«How to Become a Hacker»&lt;/a&gt; — эссе, 1996, регулярно обновляется. Самая известная точка входа в хакерскую культуру.&lt;/li&gt;
    &lt;li id=&quot;NvpN&quot;&gt;&lt;a href=&quot;http://www.catb.org/esr/writings/homesteading/homesteading/&quot; target=&quot;_blank&quot;&gt;«Homesteading the Noosphere»&lt;/a&gt; — эссе о социальных нормах разработки open source.&lt;/li&gt;
    &lt;li id=&quot;ynxJ&quot;&gt;&lt;a href=&quot;http://www.catb.org/esr/writings/homesteading/magic-cauldron/&quot; target=&quot;_blank&quot;&gt;«The Magic Cauldron»&lt;/a&gt; — экономика свободного программного обеспечения.&lt;/li&gt;
    &lt;li id=&quot;rQFJ&quot;&gt;&lt;a href=&quot;http://www.catb.org/esr/writings/taoup/html/&quot; target=&quot;_blank&quot;&gt;«The Art of Unix Programming»&lt;/a&gt; — книга, 2003. Полностью доступна онлайн.&lt;/li&gt;
    &lt;li id=&quot;teXe&quot;&gt;&lt;a href=&quot;http://www.catb.org/jargon/&quot; target=&quot;_blank&quot;&gt;The Jargon File&lt;/a&gt; — текущая версия словаря хакерского жаргона.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;об-открытии-исходников-netscape&quot;&gt;Об открытии исходников Netscape&lt;/h3&gt;
  &lt;ul id=&quot;EY49&quot;&gt;
    &lt;li id=&quot;wEHo&quot;&gt;&lt;a href=&quot;https://opensource.com/article/18/2/coining-term-open-source-software&quot; target=&quot;_blank&quot;&gt;«How I coined the term ‘open source’»&lt;/a&gt; — Кристин Петерсон рассказывает историю термина из первых рук.&lt;/li&gt;
    &lt;li id=&quot;lbSe&quot;&gt;&lt;a href=&quot;https://opensource.org/history&quot; target=&quot;_blank&quot;&gt;История OSI&lt;/a&gt; — официальная летопись Open Source Initiative.&lt;/li&gt;
    &lt;li id=&quot;CMbQ&quot;&gt;&lt;a href=&quot;https://www.oreilly.com/openbook/freedom/&quot; target=&quot;_blank&quot;&gt;«Free as in Freedom»&lt;/a&gt; — биография Столлмана от Сэма Уильямса, в которой описан и Реймонд.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;споры-и-контекст&quot;&gt;Споры и контекст&lt;/h3&gt;
  &lt;ul id=&quot;2MhC&quot;&gt;
    &lt;li id=&quot;6kCG&quot;&gt;&lt;a href=&quot;https://www.gnu.org/philosophy/open-source-misses-the-point.html&quot; target=&quot;_blank&quot;&gt;«Open Source Misses the Point of Free Software»&lt;/a&gt; — главное эссе Столлмана о том, почему термин «open source» он отказывается принимать.&lt;/li&gt;
    &lt;li id=&quot;cfdp&quot;&gt;&lt;a href=&quot;http://esr.ibiblio.org/?p=8609&quot; target=&quot;_blank&quot;&gt;«The Right To Be Rude»&lt;/a&gt; — пост Реймонда после исключения из рассылок OSI в 2020-м.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;биография&quot;&gt;Биография&lt;/h3&gt;
  &lt;ul id=&quot;C8Ek&quot;&gt;
    &lt;li id=&quot;wluc&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Eric_S._Raymond&quot; target=&quot;_blank&quot;&gt;Eric S. Raymond — Wikipedia&lt;/a&gt; — самая полная биографическая статья на английском.&lt;/li&gt;
    &lt;li id=&quot;YFFL&quot;&gt;&lt;a href=&quot;http://www.catb.org/esr/&quot; target=&quot;_blank&quot;&gt;Личный сайт catb.org&lt;/a&gt; — там же все его эссе, программы и блог-указатели.&lt;/li&gt;
    &lt;li id=&quot;EZSj&quot;&gt;&lt;a href=&quot;http://esr.ibiblio.org/&quot; target=&quot;_blank&quot;&gt;Блог «Armed and Dangerous»&lt;/a&gt; — собственный блог Реймонда.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;видео&quot;&gt;Видео&lt;/h3&gt;
  &lt;figure id=&quot;9SKm&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/r6ZIxLvc9iY?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;RBIC&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/playlist?list=PL1a38XXThqSZhrPLWqqPkFubQyAokvZ4-&quot; target=&quot;_blank&quot;&gt;«The Cathedral and the Bazaar» — аудиокнига Реймонда&lt;/a&gt;&lt;/p&gt;
  &lt;figure id=&quot;SAZ5&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/YJfl7UGvJSA?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;YN1T&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=YJfl7UGvJSA&quot; target=&quot;_blank&quot;&gt;Eric S. Raymond: Interview on Open Source Software&lt;/a&gt;&lt;/p&gt;

</content></entry><entry><id>azhark:lisp</id><link rel="alternate" type="text/html" href="https://azhark.cc/lisp?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Lisp: язык, которому 68 лет и который до сих пор подсказывает будущее</title><published>2026-05-30T15:17:21.455Z</published><updated>2026-05-30T15:17:21.455Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/fd/8e/fd8e8333-6a25-4872-8cb2-9d1d46fe6540.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img4.teletype.in/files/bb/5d/bb5d5552-cd50-4a25-8a05-4872d51a5074.png&quot;&gt;Осенью 1958 года математик Джон Маккарти приходит в Массачусетский технологический институт и начинает работу над языком, на котором можно было бы выразить рассуждения об «искусственном интеллекте» (термин, кстати, тоже его). Маккарти набрасывает математическую нотацию — формальное описание того, как вычислять символьные выражения с помощью функций. Эта нотация задумывалась как теоретический инструмент, не как настоящий язык программирования. Маккарти даже не собирался её реализовывать в коде. Для практических вычислений у него планировался другой, более «нормальный» синтаксис.</summary><content type="html">
  &lt;figure id=&quot;cGxs&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/bb/5d/bb5d5552-cd50-4a25-8a05-4872d51a5074.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Ra78&quot;&gt;Осенью 1958 года математик Джон Маккарти приходит в Массачусетский технологический институт и начинает работу над языком, на котором можно было бы выразить рассуждения об «искусственном интеллекте» (термин, кстати, тоже его). Маккарти набрасывает математическую нотацию — формальное описание того, как вычислять символьные выражения с помощью функций. Эта нотация задумывалась как теоретический инструмент, не как настоящий язык программирования. Маккарти даже не собирался её реализовывать в коде. Для практических вычислений у него планировался другой, более «нормальный» синтаксис.&lt;/p&gt;
  &lt;p id=&quot;imVI&quot;&gt;Тогда его аспирант, &lt;strong&gt;Стив Расселл&lt;/strong&gt;, посмотрел на ту самую теоретическую функцию &lt;code&gt;eval&lt;/code&gt; — фактически универсальный интерпретатор языка, выписанный на доске в виде математических уравнений, сказал, что её можно просто вручную перевести в машинный код IBM 704 и сделал это. К весне 1959-го у Расселла работал первый интерпретатор LISP, написанный целиком в кодах (тогда название ещё писалось капсом — как честная аббревиатура от &lt;em&gt;LISt Processor&lt;/em&gt;). Маккарти потом будет вспоминать, что &lt;strong&gt;сам считал свою функцию &lt;code&gt;eval&lt;/code&gt; чисто теоретической&lt;/strong&gt; и был удивлён, когда Расселл превратил её в работающий код.&lt;/p&gt;
  &lt;p id=&quot;yMdX&quot;&gt;Этот момент — реализация теоретической математической нотации как настоящего языка — оказался одной из самых счастливых случайностей в истории нашей профессии. Lisp с этого дня живёт и развивается, ему исполняется 68 лет в 2026 году, и он по-прежнему остаётся одним из самых выразительных и идейно насыщенных языков программирования из существующих. На Lisp написан почти весь мир Emacs (через его диалект Emacs Lisp). На потомке Lisp — Clojure — написана значительная часть бэкендов многих современных интернет-компаний (Nubank, Walmart, Atlassian, Cisco). Уже семь поколений языков программирования учатся у Lisp, иногда сознательно копируя его конструкции, а иногда переоткрывая их под новыми именами.&lt;/p&gt;
  &lt;p id=&quot;tze4&quot;&gt;Этот пост — об удивительной истории языка, идеи которого опередили эпоху на десятилетия и до сих пор не до конца догнаны. Я расскажу, откуда взялись скобки, S-выражения и &lt;code&gt;car&lt;/code&gt;/&lt;code&gt;cdr&lt;/code&gt;. Покажу, как Lisp подарил программированию сборку мусора, замыкания, функции первого класса, динамическую типизацию, рекурсию, метапрограммирование через макросы и REPL — то есть половину того, что мы сегодня считаем «современным». Доберусь до Лисп-машин и эпохи компании Symbolics, до раскола Maclisp/Interlisp и последующей стандартизации Common Lisp. Расскажу о Scheme и Clojure как двух самых живых его потомках. И покажу, почему &lt;a href=&quot;https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule&quot; target=&quot;_blank&quot;&gt;десятый закон Гринспана&lt;/a&gt; — «всякая достаточно сложная программа на C или Fortran содержит спрятанную, медленную и плохо описанную реализацию половины Common Lisp» — до сих пор оказывается жестокой правдой о большинстве крупных проектов.&lt;/p&gt;
  &lt;p id=&quot;BP6O&quot;&gt;И, конечно, в финале — несколько слов о том, почему Lisp по-прежнему стоит изучать в 2026 году, даже если вы никогда не напишете на нём ни строчки продакшен-кода.&lt;/p&gt;
  &lt;h3 id=&quot;маленькое-замечание-о-написании&quot;&gt;Маленькое замечание о написании&lt;/h3&gt;
  &lt;p id=&quot;MEME&quot;&gt;В этом тексте я последовательно пишу &lt;strong&gt;«Lisp»&lt;/strong&gt; — с заглавной только первой буквой, как обычное имя собственное. Это современная конвенция, но она появилась не сразу.&lt;/p&gt;
  &lt;p id=&quot;wQOZ&quot;&gt;Первые двадцать пять лет название писалось исключительно капсом — &lt;strong&gt;LISP&lt;/strong&gt;. Это была аббревиатура от &lt;strong&gt;LIS&lt;/strong&gt;t &lt;strong&gt;P&lt;/strong&gt;rocessor («обработчик списков»), и так её тогда и набирали — в статье Маккарти 1960 года, на обложках первых учебников, в академических работах 1960–70-х. Если открыть оригинальные исходники из MIT AI Lab, на каждой второй странице вы увидите «LISP» большими буквами.&lt;/p&gt;
  &lt;p id=&quot;JZ2o&quot;&gt;Перелом случился в середине 1980-х, в момент стандартизации Common Lisp. Книга Гая Стила &lt;a href=&quot;https://www.cs.cmu.edu/Groups/AI/html/cltl/cltl2.html&quot; target=&quot;_blank&quot;&gt;«Common Lisp the Language»&lt;/a&gt; (1984) уже последовательно использует «Lisp» как обычное имя, и всё сообщество перешло на такой вариант написания. Та же история произошла с другими старыми акронимами: FORTRAN превратился в Fortran, COBOL — в Cobol, BASIC — в Basic. Когда язык живёт достаточно долго и становится привычным культурным объектом, расшифровка аббревиатуры перестаёт быть актуальной, и капс уходит сам собой.&lt;/p&gt;
  &lt;p id=&quot;YMtk&quot;&gt;Это, кстати, неплохой исторический индикатор. Если вам сегодня попадается текст, где написано «LISP» большими буквами, — это с большой вероятностью либо историческая работа о Маккарти и эпохе MIT AI Lab, либо текст, написанный до середины 1980-х, либо стилизация под старину. Современные сайты Common Lisp, Scheme, Clojure, Racket — все пишут «Lisp». Так же делает Пол Грэм в эссе, Википедия в статьях, и стандарт ANSI X3.226-1994 в официальном тексте.&lt;/p&gt;
  &lt;p id=&quot;dLMo&quot;&gt;В этом посте я оставляю «LISP» только там, где специально говорю о первой реализации Маккарти и Расселла или цитирую старые работы. Всё остальное — «Lisp». В цитируемой ниже книге Герберта Стояна, например, в названии сохранён исторический капс — потому что это её настоящее, оригинальное название.&lt;/p&gt;
  &lt;h2 id=&quot;1-маккарти-mit-и-проект-искусственного-интеллекта&quot;&gt;1. Маккарти, MIT и проект искусственного интеллекта&lt;/h2&gt;
  &lt;p id=&quot;pTD4&quot;&gt;К 1958 году Джон Маккарти уже был известен. Он закончил аспирантуру в Принстоне у Соломона Лефшеца. Преподавал в Дартмуте, где летом 1956 года провёл легендарную Дартмутскую конференцию — двухмесячный семинар, на котором впервые прозвучал термин «искусственный интеллект» («artificial intelligence»), и который сейчас считается формальной точкой рождения области ИИ как самостоятельной дисциплины. Через два года Маккарти перешёл в MIT — там вместе с Марвином Минским создавал группу, которая в 1959-м официально стала MIT AI Lab.&lt;/p&gt;
  &lt;p id=&quot;CvJn&quot;&gt;Перед группой стояла задача: научить машину рассуждать. Что значит «рассуждать», точно никто не знал, но было понятно, что ничего похожего на привычные тогда языки программирования типа Fortran (1957) или COBOL (1959) для этой задачи не подойдёт. Fortran хорошо считал арифметические формулы, но не умел работать с тем, что Маккарти называл символьными выражениями — сложными иерархическими структурами вроде «функция от двух функций, первая из которых возвращает список троек».&lt;/p&gt;
  &lt;p id=&quot;G9zM&quot;&gt;Маккарти начал придумывать новый язык. Его конструкции были позаимствованы из лямбда-исчисления Алонзо Чёрча (1936), но с некоторыми существенными отличиями. От Чёрча — идея, что функция и её аргументы могут быть единообразно записаны как выражения, и что функция тоже может быть значением, передаваемым в другую функцию. От самого Маккарти — идея, что программу удобно записывать в виде той же самой структуры данных, с которой эта программа работает.&lt;/p&gt;
  &lt;p id=&quot;eGt6&quot;&gt;Эту идею потом назовут &lt;strong&gt;гомоиконичностью&lt;/strong&gt; — «однородностью представления» (от греческого &lt;em&gt;homo&lt;/em&gt; «одинаковый» + &lt;em&gt;icon&lt;/em&gt; «образ»). На практике она означает, что программа на Lisp — это просто Lisp-список. Список вида &lt;code&gt;(+ 1 2)&lt;/code&gt; — одновременно и данные (список из трёх элементов), и программа («применить операцию + к 1 и 2»). Эта простая на вид симметрия и есть та точка, из которой выросло почти всё, чем Lisp отличается от других языков.&lt;/p&gt;
  &lt;h2 id=&quot;2-s-выражения-и-их-странные-скобки&quot;&gt;2. S-выражения и их странные скобки&lt;/h2&gt;
  &lt;p id=&quot;Nqg9&quot;&gt;Маккарти изначально планировал два синтаксиса для своего языка. Один — для людей: близкий к привычной математической записи, с инфиксными операторами, более-менее естественный. Этот синтаксис он назвал &lt;strong&gt;M-expressions&lt;/strong&gt; (Meta-expressions). Другой — для машины: упрощённый, единообразный, основанный на списках. Этот второй вариант — &lt;strong&gt;S-expressions&lt;/strong&gt; (Symbolic expressions) — должен был быть всего лишь промежуточным представлением, в которое транслируется человеческий синтаксис перед исполнением.&lt;/p&gt;
  &lt;p id=&quot;4sO4&quot;&gt;Произошло, однако, обратное. Когда Стив Расселл реализовал интерпретатор, он принимал на вход именно S-выражения. Маккарти и его студенты, в ожидании пока кто-нибудь напишет транслятор из M в S, начали программировать прямо в S-выражениях. И обнаружили, что им так удобнее. Транслятор M-expressions, насколько известно, никогда не был доделан. S-выражения остались, M-выражения умерли.&lt;/p&gt;
  &lt;p id=&quot;JqXo&quot;&gt;Так Lisp получил свой знаменитый синтаксис из вложенных скобок. Программа вида:&lt;/p&gt;
  &lt;pre id=&quot;LIqm&quot;&gt;(defun факториал (n)
  (if (= n 0)
      1
      (* n (факториал (- n 1)))))
&lt;/pre&gt;
  &lt;p id=&quot;Go4T&quot;&gt;— это просто список из четырёх элементов: символа &lt;code&gt;defun&lt;/code&gt;, символа &lt;code&gt;факториал&lt;/code&gt;, списка параметров &lt;code&gt;(n)&lt;/code&gt; и тела функции (которое само является списком). И это тело, в свою очередь, — список из четырёх элементов: символа &lt;code&gt;if&lt;/code&gt;, проверочного выражения &lt;code&gt;(= n 0)&lt;/code&gt;, ветки «тогда» &lt;code&gt;1&lt;/code&gt; и ветки «иначе» &lt;code&gt;(* n (факториал (- n 1)))&lt;/code&gt;.&lt;/p&gt;
  &lt;p id=&quot;7Kj0&quot;&gt;Эта простота имеет драматическое последствие. Поскольку синтаксис языка тривиален — «список это последовательность элементов в скобках, элемент это либо атом, либо список», — никакого парсера в традиционном смысле не нужно. Любая программа на Lisp может с лёгкостью читаться другой программой на Lisp. И, если уж читаться, то и анализироваться, и видоизменяться. И, если уж видоизменяться, то новая версия может затем исполняться. Это и есть та петля, которая делает Lisp уникальным.&lt;/p&gt;
  &lt;p id=&quot;irjt&quot;&gt;Когда программисты других языков впервые сталкиваются с этим водопадом скобок, у них обычно случается шок. Парижская акронимная шутка: Lisp расшифровывается как &lt;strong&gt;L&lt;/strong&gt;ots of &lt;strong&gt;I&lt;/strong&gt;rritating &lt;strong&gt;S&lt;/strong&gt;illy &lt;strong&gt;P&lt;/strong&gt;arentheses — «много раздражающих идиотских скобок». Шутка как шутка, но если вы посидите в Lisp хотя бы полчаса, скобки перестают раздражать: они начинают служить отступами и подсветкой структуры одновременно. Современные редакторы (Paredit и Parinfer в Emacs, vim-sexp в Vim, structural editing в большинстве IDE) делают навигацию по этому дереву совершенно естественной — вы оперируете не отдельными символами, а целыми выражениями.&lt;/p&gt;
  &lt;h2 id=&quot;3-car-cdr-и-наследство-ibm-704&quot;&gt;3. CAR, CDR и наследство IBM 704&lt;/h2&gt;
  &lt;p id=&quot;rwy2&quot;&gt;Список в Lisp реализован через связанные пары (cons-ячейки). Пара состоит из двух полей: первое поле хранит элемент, второе — указатель на остаток списка (тоже пару, или специальное значение «пустой список»). Это та же самая структура данных, которая теперь известна как связный список, но в Lisp она появилась практически на старте и стала основной.&lt;/p&gt;
  &lt;p id=&quot;CJGV&quot;&gt;Чтобы достать первый элемент пары, нужна была функция. Маккарти и его студенты назвали её &lt;code&gt;car&lt;/code&gt;. Чтобы достать второе поле — функция &lt;code&gt;cdr&lt;/code&gt; (произносится «коудер»). Эти странные имена не были придуманы для красоты — они остались от ассемблера IBM 704.&lt;/p&gt;
  &lt;p id=&quot;gvc8&quot;&gt;IBM 704 был построен на 36-битных машинных словах. Каждое слово делилось на несколько полей, и два самых частых поля назывались &lt;strong&gt;address part&lt;/strong&gt; и &lt;strong&gt;decrement part&lt;/strong&gt;. Соответствующие машинные инструкции для извлечения этих полей звались &lt;code&gt;CAR&lt;/code&gt; (&lt;strong&gt;C&lt;/strong&gt;ontents of &lt;strong&gt;A&lt;/strong&gt;ddress part of &lt;strong&gt;R&lt;/strong&gt;egister) и &lt;code&gt;CDR&lt;/code&gt; (&lt;strong&gt;C&lt;/strong&gt;ontents of &lt;strong&gt;D&lt;/strong&gt;ecrement part of &lt;strong&gt;R&lt;/strong&gt;egister). Когда Расселл реализовывал cons-ячейку, он естественным образом разместил два её поля в этих двух частях машинного слова. И функции назывались по своим машинным инструкциям.&lt;/p&gt;
  &lt;p id=&quot;Q1Bw&quot;&gt;К 1962 году машины IBM 704 ушли в прошлое. К 1985-му даже их потомки исчезли из вычислительных центров. К 2026-му никто, кроме историков, не помнит, что значили эти аббревиатуры. А &lt;code&gt;car&lt;/code&gt; и &lt;code&gt;cdr&lt;/code&gt; остались — в Common Lisp, в Scheme, в Clojure (как &lt;code&gt;first&lt;/code&gt; и &lt;code&gt;rest&lt;/code&gt;, но традиционные имена тоже работают), в Emacs Lisp, в Racket. Это самая стойкая в истории программирования метка той аппаратной эпохи: машины давно нет, а названия функций используются каждый день.&lt;/p&gt;
  &lt;p id=&quot;Ehvp&quot;&gt;Связанные пары в Lisp записываются точечной нотацией: &lt;code&gt;(1 . 2)&lt;/code&gt; — это пара, где car = 1 и cdr = 2. Список &lt;code&gt;(1 2 3)&lt;/code&gt; — на самом деле сокращение для &lt;code&gt;(1 . (2 . (3 . nil)))&lt;/code&gt; — три вложенных пары, заканчивающиеся пустым списком. Список — частный случай пары, у которой в cdr тоже сидит список. Эта мелочь даёт огромную гибкость: пары можно соединять в деревья, графы, ассоциативные массивы, очереди — что угодно. Одна базовая структура, бесконечное количество применений.&lt;/p&gt;
  &lt;h2 id=&quot;4-сборка-мусора-как-побочный-эффект&quot;&gt;4. Сборка мусора как побочный эффект&lt;/h2&gt;
  &lt;p id=&quot;QMQq&quot;&gt;В 1959 году, во время реализации LISP, Маккарти столкнулся с проблемой, которой раньше никто не сталкивался: как освобождать память от cons-ячеек, которые больше не нужны.&lt;/p&gt;
  &lt;p id=&quot;KvFR&quot;&gt;В Fortran и языках того времени памяти было мало, и она распределялась статически: программист заранее объявлял все массивы и переменные, и операционная система выделяла под них фиксированные участки. В Lisp это не работало. Программа в любой момент могла создать новую cons-ячейку, например, при чтении S-выражения с входа. И в любой момент могла прекратить использовать какую-нибудь старую ячейку, оставив её болтаться без ссылок. Если эти неиспользуемые ячейки не освобождать, память кончится за несколько секунд работы интерпретатора. Если требовать от программиста явного освобождения (как потом будет в C через &lt;code&gt;free&lt;/code&gt;), вся прелесть Lisp уходит: программист отвлекается на бухгалтерию памяти вместо того, чтобы думать о задаче.&lt;/p&gt;
  &lt;p id=&quot;c2Uf&quot;&gt;Маккарти изобрёл то, что мы сегодня называем &lt;strong&gt;сборкой мусора&lt;/strong&gt; (garbage collection). Идея была простая: время от времени интерпретатор останавливается, проходит по всем активным cons-ячейкам, помечает достижимые из «корней» (переменных и стека) как живые, а недостижимые объявляет мёртвыми и возвращает в пул свободной памяти. Так появился алгоритм &lt;strong&gt;mark-and-sweep&lt;/strong&gt;, который до сих пор является основой большинства реализаций сборки мусора.&lt;/p&gt;
  &lt;p id=&quot;0tVs&quot;&gt;Сегодня сборка мусора есть почти везде — в Java, в Python, в Go, в Ruby, в JavaScript, в C# и в десятках других языков. Для нескольких поколений программистов это просто естественное свойство языка. Но придумал это в 1959 году Маккарти, как побочный эффект реализации Lisp. Если бы Lisp не появился, идея сборки мусора могла бы запоздать на десятилетия.&lt;/p&gt;
  &lt;p id=&quot;0dBP&quot;&gt;Я, кстати, &lt;a href=&quot;http://localhost:1313/blog/2026/garbage-collection/&quot; target=&quot;_blank&quot;&gt;про сборку мусора уже писал отдельный пост&lt;/a&gt; — там разобраны современные подходы (поколенческая, инкрементальная, конкурентная сборка) и почему она до сих пор остаётся областью активных исследований. Но база всего этого — Маккарти и его проблема с cons-ячейками.&lt;/p&gt;
  &lt;h2 id=&quot;5-1960-знаменитая-статья&quot;&gt;5. 1960: знаменитая статья&lt;/h2&gt;
  &lt;p id=&quot;QpHi&quot;&gt;В апреле 1960 года Маккарти опубликовал в &lt;em&gt;Communications of the ACM&lt;/em&gt; статью с длинным названием &lt;a href=&quot;https://www-formal.stanford.edu/jmc/recursive.pdf&quot; target=&quot;_blank&quot;&gt;«Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I»&lt;/a&gt;. Это — формальная декларация Lisp как языка.&lt;/p&gt;
  &lt;p id=&quot;Yh31&quot;&gt;Статья короткая, всего тринадцать страниц, причём она актуальна до сих пор: почти всё, что в ней описано, всё ещё работает ровно так же. В ней Маккарти описывает:&lt;/p&gt;
  &lt;ul id=&quot;QEuk&quot;&gt;
    &lt;li id=&quot;eKDJ&quot;&gt;S-выражения и пары;&lt;/li&gt;
    &lt;li id=&quot;pKqc&quot;&gt;семь базовых операторов (&lt;code&gt;atom&lt;/code&gt;, &lt;code&gt;eq&lt;/code&gt;, &lt;code&gt;car&lt;/code&gt;, &lt;code&gt;cdr&lt;/code&gt;, &lt;code&gt;cons&lt;/code&gt;, &lt;code&gt;quote&lt;/code&gt;, &lt;code&gt;cond&lt;/code&gt;);&lt;/li&gt;
    &lt;li id=&quot;4ySj&quot;&gt;лямбда-выражения как способ задавать функции;&lt;/li&gt;
    &lt;li id=&quot;5cDP&quot;&gt;условное выражение &lt;code&gt;cond&lt;/code&gt;;&lt;/li&gt;
    &lt;li id=&quot;pWcd&quot;&gt;рекурсию как основной механизм вычисления;&lt;/li&gt;
    &lt;li id=&quot;RzTg&quot;&gt;функцию &lt;code&gt;eval&lt;/code&gt;, которая принимает на вход Lisp-программу как S-выражение и интерпретирует её.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;4JTG&quot;&gt;Эти семь операторов плюс &lt;code&gt;eval&lt;/code&gt; — то самое, из чего собирается весь язык. Пол Грэм в своей классической статье &lt;a href=&quot;https://www.paulgraham.com/rootsoflisp.html&quot; target=&quot;_blank&quot;&gt;«The Roots of Lisp» (2002)&lt;/a&gt; подробно реконструирует, как из этих кирпичей складывается всё, что нужно для серьёзного программирования. Грэм показывает, что Маккарти в 1960-м фактически собрал минимальный набор примитивов, эквивалентный машине Тьюринга, и собрал так удачно, что многие современные языки до сих пор основаны на тех же идеях, только в другом синтаксисе.&lt;/p&gt;
  &lt;p id=&quot;bizJ&quot;&gt;Вторая часть статьи Маккарти, кстати, никогда не вышла. Маккарти признавался, что обещал её в конце первой части на автомате, не имея конкретного плана. Никто не пожаловался.&lt;/p&gt;
  &lt;h2 id=&quot;6-1962-первый-компилятор&quot;&gt;6. 1962: первый компилятор&lt;/h2&gt;
  &lt;p id=&quot;mYEv&quot;&gt;Интерпретатор Расселла был отличной демонстрацией, но работал медленно. Каждая операция требовала прохода по дереву S-выражения, разбора, диспетчеризации. Для серьёзных программ это не годилось.&lt;/p&gt;
  &lt;p id=&quot;YftS&quot;&gt;В 1962 году Тим Харт и Майк Левин в MIT AI Lab написали первый компилятор Lisp — программу, которая принимала Lisp-функцию и выдавала машинный код. Компилятор был написан на самом Lisp, что само по себе было концептуальным прорывом. Это и есть тот трюк, который позже назовут &lt;strong&gt;раскруткой компилятора&lt;/strong&gt; (англ. &lt;strong&gt;bootstrapping&lt;/strong&gt;) — устоявшийся термин из учебников по теории трансляции (у Свердлова, в русском переводе Вирта): компилятор языка, написанный на самом этом языке, способен компилировать сам себя, и дальше развивается независимо от исходного представления.&lt;/p&gt;
  &lt;p id=&quot;c00M&quot;&gt;Компиляция Lisp оказалась удивительно эффективной. Откомпилированная функция работала в 40 раз быстрее интерпретированной. С этого момента Lisp перестал быть «медленным языком» и стал инструментом, на котором можно писать серьёзные системы.&lt;/p&gt;
  &lt;p id=&quot;NVYL&quot;&gt;С появлением компилятора Lisp получил то, что мы сегодня считаем само собой разумеющимся: возможность запустить REPL (read-eval-print loop), где можно интерактивно вводить выражения, тут же исполнять их, видеть результат, тут же определять новые функции, и всё это в одной живой сессии. &lt;strong&gt;REPL — изобретение Lisp&lt;/strong&gt;, появившееся ещё в 1960-х. Все современные интерактивные оболочки — IPython, Node.js, Julia, Erlang shell — наследники этого подхода.&lt;/p&gt;
  &lt;h2 id=&quot;7-множественные-лиспы-maclisp-interlisp-и-кембрийский-взрыв&quot;&gt;7. Множественные Лиспы: Maclisp, Interlisp, и кембрийский взрыв&lt;/h2&gt;
  &lt;p id=&quot;d7M1&quot;&gt;С 1962 по 1980 годы Lisp пережил период бурного размножения. Это было неизбежно: язык легко переписывался под новое железо (нужно было реализовать всего семь примитивов и &lt;code&gt;eval&lt;/code&gt;), сообщество было небольшим и распределённым, а централизованной стандартизации в эпоху ARPANET ещё не существовало.&lt;/p&gt;
  &lt;p id=&quot;6HPJ&quot;&gt;Появились (не претендую на полноту списка):&lt;/p&gt;
  &lt;p id=&quot;p6nh&quot;&gt;&lt;strong&gt;Maclisp&lt;/strong&gt; (1966) — разработан в MIT в рамках Project MAC (отсюда название). На нём в 1968-м была написана знаменитая система компьютерной алгебры &lt;strong&gt;Macsyma&lt;/strong&gt; — одна из первых программ для символьных математических вычислений, которая работает до сих пор как &lt;strong&gt;Maxima&lt;/strong&gt;. Macsyma была настолько мощной для своего времени, что NASA её использовало для аналитических расчётов траекторий. На Maclisp работал ранний интерпретатор Emacs Эмерсона Голдсмита.&lt;/p&gt;
  &lt;p id=&quot;6Uti&quot;&gt;&lt;strong&gt;Interlisp&lt;/strong&gt; (1966) — разработан в BBN, потом продолжен в Xerox PARC. Был знаменит своей интерактивной средой разработки: структурный редактор, отладчик, профайлер — всё то, что сегодня считается базовым набором IDE. Многие идеи Interlisp потом перекочевали в Smalltalk и оттуда — в современные среды разработки.&lt;/p&gt;
  &lt;p id=&quot;Ml11&quot;&gt;&lt;strong&gt;Franz Lisp&lt;/strong&gt; (1978) — диалект для UNIX-машин, разработан в Беркли. Был популярен в начале 1980-х как доступный Lisp для академических кругов.&lt;/p&gt;
  &lt;p id=&quot;0jOt&quot;&gt;&lt;strong&gt;Scheme&lt;/strong&gt; (1975) — об этом отдельный разговор ниже.&lt;/p&gt;
  &lt;p id=&quot;HwMo&quot;&gt;&lt;strong&gt;Standard Lisp&lt;/strong&gt; (1969), &lt;strong&gt;MDL&lt;/strong&gt; (1971), &lt;strong&gt;NIL&lt;/strong&gt; (1979), &lt;strong&gt;T&lt;/strong&gt; (1982), &lt;strong&gt;Le Lisp&lt;/strong&gt; (1981), &lt;strong&gt;EuLisp&lt;/strong&gt; (1990) — список можно продолжать.&lt;/p&gt;
  &lt;p id=&quot;TrAv&quot;&gt;К началу 1980-х было больше десяти серьёзных диалектов Lisp, и они были несовместимы между собой. Программу с Maclisp нельзя было запустить на Interlisp без переписывания.&lt;/p&gt;
  &lt;h2 id=&quot;8-лисп-машины&quot;&gt;8. Лисп-машины&lt;/h2&gt;
  &lt;p id=&quot;NtbD&quot;&gt;Параллельно с программными диалектами происходила ещё одна удивительная вещь: для Lisp стали проектировать собственное железо.&lt;/p&gt;
  &lt;p id=&quot;F82H&quot;&gt;Идея появилась в начале 1970-х в MIT AI Lab. Lisp-программы предъявляли к компьютеру специфические требования: динамическая типизация (значит, нужно проверять типы во время исполнения), сборка мусора (значит, нужно эффективно ходить по памяти), глубокая рекурсия (значит, нужен большой стек), интенсивная работа с указателями. Универсальные процессоры того времени делали всё это медленно. Возникла идея сделать процессор, изначально заточенный под Lisp.&lt;/p&gt;
  &lt;p id=&quot;QD0Q&quot;&gt;В 1973 году Том Найт и Ричард Гринблат в MIT построили &lt;strong&gt;CONS Machine&lt;/strong&gt; — первый прототип. В 1978-м появилась её улучшенная версия — &lt;strong&gt;CADR&lt;/strong&gt; (название от Lisp-функции &lt;code&gt;cadr&lt;/code&gt;, которая возвращает второй элемент списка, что является шуткой над тем, что это «вторая версия» машины). К началу 1980-х из MIT AI Lab выделились две коммерческие компании:&lt;/p&gt;
  &lt;p id=&quot;5lmR&quot;&gt;&lt;strong&gt;Lisp Machines Inc. (LMI)&lt;/strong&gt; — основана в 1979 году группой во главе с Ричардом Гринблатом, с философией ближе к традиционному «хакерскому» подходу.&lt;/p&gt;
  &lt;p id=&quot;bD1K&quot;&gt;&lt;strong&gt;Symbolics&lt;/strong&gt; — основана тогда же, в 1980 году, под руководством Расселла Нофтскера, с более бизнес-ориентированным подходом и желанием сделать Лисп-машину коммерческим продуктом для крупных корпоративных заказчиков.&lt;/p&gt;
  &lt;p id=&quot;7hYa&quot;&gt;Эти две компании раскололи MIT AI Lab пополам, и это стало одной из главных личных трагедий Ричарда Столлмана и одним из ключевых эпизодов, &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;приведших его к идее свободного программного обеспечения&lt;/a&gt;. Расселл Нофтскер из Symbolics нанял большую часть сотрудников AI Lab, оставив лабораторию опустевшей. Столлман, оставшись практически один, в одиночку переписывал на стороне MIT всё, что выпускала Symbolics, чтобы у LMI был доступ к улучшениям. Это противостояние длилось два года и закончилось его уходом из MIT в 1984-м с проектом GNU.&lt;/p&gt;
  &lt;p id=&quot;TXNb&quot;&gt;Symbolics и LMI в течение 1980-х выпускали впечатляющие машины: &lt;strong&gt;Symbolics 3600&lt;/strong&gt;, &lt;strong&gt;TI Explorer&lt;/strong&gt; (от Texas Instruments), &lt;strong&gt;MacIvory&lt;/strong&gt; (плата для Macintosh). На этих машинах работало то, что и сегодня кажется фантастикой: полноценная объектно-ориентированная среда разработки с динамической отладкой, средствами рефакторинга, инспектором объектов прямо в живой системе. Графический интерфейс, в котором каждое окно знало, какой объект оно отображает, и позволяло вызвать на этом объекте любую функцию через меню. По уровню инструментов разработки Лисп-машины 1985 года были на десять лет впереди всего остального, и в каком-то смысле до сих пор непобеждёнными.&lt;/p&gt;
  &lt;p id=&quot;H4vr&quot;&gt;Но рынок Лисп-машин рухнул. К 1990-му обычные рабочие станции (Sun SPARC, MIPS, Intel 386) стали достаточно мощными, чтобы Lisp бегал на них быстрее, чем на специализированном железе. Symbolics обанкротилась в 1996-м (формально дотянула до 2010-х в виде маленькой компании, поддерживающей старые системы). LMI закрылась ещё раньше. &lt;strong&gt;AI winter&lt;/strong&gt; — кризис в исследованиях искусственного интеллекта конца 1980-х — добил остатки этого мира.&lt;/p&gt;
  &lt;p id=&quot;S5yd&quot;&gt;С Лисп-машинами умерла целая эпоха программистской культуры. Это, наверное, самая большая утрата в истории нашей профессии. Несколько поколений программистов жили в среде, в которой код был не файлом, который ты редактируешь и потом перекомпилируешь, а живой системой, в которой ты в любой момент мог переопределить любую функцию, увидеть результат, откатить, попробовать другую. И эта среда исчезла. Сейчас Emacs — последнее живое наследие той эпохи: примерно так же ощущается работа в Lisp-машине, только без графического богатства Symbolics.&lt;/p&gt;
  &lt;h2 id=&quot;9-1984-common-lisp-и-попытка-примирения&quot;&gt;9. 1984: Common Lisp и попытка примирения&lt;/h2&gt;
  &lt;p id=&quot;XQjI&quot;&gt;К 1981-му стало ясно, что зоопарк диалектов Lisp стал серьёзной проблемой. Военное агентство DARPA, активно финансировавшее исследования по ИИ, было недовольно: их подрядчики писали программы на разных диалектах, и эти программы не могли взаимодействовать. Нужна была стандартизация.&lt;/p&gt;
  &lt;p id=&quot;2CB4&quot;&gt;С 1981 по 1984 годы группа главных архитекторов Lisp — &lt;strong&gt;Гай Стил&lt;/strong&gt; (тот самый, что писал с Столлманом первый Emacs, а также соавтор Scheme и Java), &lt;strong&gt;Скотт Фалман&lt;/strong&gt; (Carnegie Mellon, автор CMU Common Lisp и заодно изобретатель смайлика &lt;code&gt;:-)&lt;/code&gt; в 1982-м), &lt;strong&gt;Дэниел Уайнреб&lt;/strong&gt; (MIT, Symbolics), &lt;strong&gt;Дэвид Мун&lt;/strong&gt; (Symbolics) и другие — заняли долгие переговоры о том, как объединить все основные идеи Maclisp, Lisp Machine Lisp, Spice Lisp, NIL, S-1 Lisp в единый стандарт.&lt;/p&gt;
  &lt;p id=&quot;CwtX&quot;&gt;Результат вышел в 1984 году в виде книги Гая Стила &lt;a href=&quot;https://www.cs.cmu.edu/Groups/AI/html/cltl/cltl2.html&quot; target=&quot;_blank&quot;&gt;«Common Lisp the Language»&lt;/a&gt;, которую все обычно зовут CLtL. Это была первая (и тогда — единственная) спецификация Common Lisp. В 1990-м вышло второе, существенно расширенное издание (CLtL2), которое описывало уже мощный, зрелый язык с CLOS — Common Lisp Object System.&lt;/p&gt;
  &lt;p id=&quot;niea&quot;&gt;В 1994-м Common Lisp получил официальный стандарт &lt;strong&gt;ANSI X3.226-1994&lt;/strong&gt; — один из крупнейших стандартов на язык программирования по объёму спецификации (около 1100 страниц). С тех пор стандарт не менялся ни разу. Это намеренно: Common Lisp в текущем виде считается «законченным» языком, и развитие идёт через библиотеки, а не через ядро.&lt;/p&gt;
  &lt;p id=&quot;YRqz&quot;&gt;CLOS — Common Lisp Object System — заслуживает отдельного упоминания. Это система объектного программирования, разработанная в первую очередь Грегором Кичалесом, Дэниелом Бобровом, Линдой ДеМайкл и Джимом Розом в середине 1980-х. CLOS впервые предложил &lt;strong&gt;множественное наследование с алгоритмически детерминированным разрешением&lt;/strong&gt; (через так называемый C3-алгоритм), &lt;strong&gt;множественную диспетчеризацию&lt;/strong&gt; (метод вызывается не по типу одного «себя», а по типам сразу нескольких аргументов) и &lt;strong&gt;систему мета-объектов&lt;/strong&gt; (MOP), позволяющую программистам менять саму работу системы объектов из кода программы. Эти идеи в большинстве своём до сих пор не реализованы в основных мейнстримных языках. Java и C# до сих пор не имеют множественной диспетчеризации. Python научился чему-то похожему через &lt;code&gt;functools.singledispatch&lt;/code&gt; только в 2014-м.&lt;/p&gt;
  &lt;p id=&quot;NZ7C&quot;&gt;Грегор Кичалес из той же команды CLOS позже изобрёл &lt;strong&gt;аспектно-ориентированное программирование&lt;/strong&gt; в Xerox PARC и стал автором языка AspectJ — что, опять же, корнями уходит в идеи MOP из Common Lisp.&lt;/p&gt;
  &lt;h2 id=&quot;10-scheme-минимализм-и-его-последствия&quot;&gt;10. Scheme: минимализм и его последствия&lt;/h2&gt;
  &lt;p id=&quot;n5aB&quot;&gt;Параллельно Common Lisp, в 1975 году в MIT появился совсем другой диалект Lisp — &lt;strong&gt;Scheme&lt;/strong&gt;. Его авторы — Гай Стил и Джеральд Сассмен — задумывали Scheme как минималистичную, академически чистую альтернативу. Там, где Common Lisp шёл по пути «возьмём всё хорошее и положим в коробку», Scheme шёл по пути «оставим только самое необходимое, всё остальное можно собрать поверх».&lt;/p&gt;
  &lt;p id=&quot;Dtvn&quot;&gt;Scheme стал, наверное, самым важным диалектом Lisp с точки зрения влияния на теорию программирования. На Scheme построены примеры в знаменитой книге &lt;a href=&quot;https://web.mit.edu/6.001/6.037/sicp.pdf&quot; target=&quot;_blank&quot;&gt;«Structure and Interpretation of Computer Programs»&lt;/a&gt; (SICP) — учебнике, по которому в MIT в 1980–90-х учили первокурсников программированию. SICP считается одной из лучших книг по программированию в истории. Она не учит конкретному языку — она учит, что такое &lt;strong&gt;вычисление&lt;/strong&gt; как процесс, как программы становятся данными, и наоборот. Если вы прочли SICP, ваше отношение к программированию меняется навсегда.&lt;/p&gt;
  &lt;p id=&quot;BjUz&quot;&gt;Scheme принёс в Lisp-мир и в программирование вообще несколько важных идей:&lt;/p&gt;
  &lt;p id=&quot;uvfK&quot;&gt;&lt;strong&gt;Продолжения первого класса&lt;/strong&gt; (англ. &lt;em&gt;first-class continuations&lt;/em&gt;, оператор &lt;code&gt;call/cc&lt;/code&gt;) — возможность взять «остаток вычисления» как объект и передать его дальше. Из &lt;code&gt;call/cc&lt;/code&gt; выросло понимание управления потоком как обычных значений, что потом превратилось в современные async/await, генераторы, корутины.&lt;/p&gt;
  &lt;p id=&quot;a0Oy&quot;&gt;&lt;strong&gt;Лексическая область видимости&lt;/strong&gt; как стандарт. До Scheme многие диалекты Lisp использовали &lt;strong&gt;динамическую&lt;/strong&gt; область видимости (переменная видна везде, где функция вызывается). Scheme сделал лексическую область (переменная видна только там, где она определена) основой языка. Все современные языки программирования теперь следуют именно этой модели.&lt;/p&gt;
  &lt;p id=&quot;4koB&quot;&gt;&lt;strong&gt;Хвостовая рекурсия&lt;/strong&gt; как обязательное требование к реализации. В Scheme рекурсивная функция, последним действием которой является вызов самой себя, не создаёт нового стекового кадра, а преобразуется в цикл. Это означало, что в Scheme можно было программировать чисто функционально, без явных циклов, не боясь переполнения стека.&lt;/p&gt;
  &lt;p id=&quot;I45o&quot;&gt;Scheme получил два главных стандарта: серию &lt;strong&gt;RnRS&lt;/strong&gt; (Revisedⁿ Report on the Algorithmic Language Scheme), от R5RS (1998) через R6RS (2007) к R7RS (2013). R5RS — самый минималистичный из них, помещается на пятидесяти страницах. R6RS — попытка добавить «промышленных» удобств, которая вызвала раскол в сообществе. R7RS — компромиссная версия.&lt;/p&gt;
  &lt;p id=&quot;FRkQ&quot;&gt;Из академических потомков Scheme — &lt;strong&gt;Racket&lt;/strong&gt;, который используется как язык для исследований в области создания языков программирования и для обучения. На Racket написан Pollen — язык для верстки книг, на нём же написана большая часть DrRacket — IDE, которая используется во множестве университетских курсов.&lt;/p&gt;
  &lt;p id=&quot;KXEk&quot;&gt;Из Scheme же произошёл &lt;strong&gt;Guile&lt;/strong&gt; — встроенный язык расширения GNU-проектов. На Guile написаны конфигурации многих утилит GNU; на Guile написана операционная система &lt;strong&gt;GNU Guix&lt;/strong&gt; (пакетный менеджер и дистрибутив Linux, в котором сами пакеты описаны как Scheme-программы).&lt;/p&gt;
  &lt;h2 id=&quot;11-clojure-lisp-который-полюбила-промышленность&quot;&gt;11. Clojure: Lisp, который полюбила промышленность&lt;/h2&gt;
  &lt;p id=&quot;M5k7&quot;&gt;В 2007 году Рич Хики — независимый разработчик, до этого 15 лет писавший на Common Lisp и C++ для коммерческих заказчиков — выложил в открытый доступ свой новый диалект Lisp под названием &lt;strong&gt;Clojure&lt;/strong&gt;. Это была первая за десятилетия серьёзная попытка сделать Lisp, который смогли бы массово полюбить в индустрии.&lt;/p&gt;
  &lt;p id=&quot;li6f&quot;&gt;Хики работал над Clojure в одиночку два с половиной года. Его собственная мотивация была простой: ему хотелось писать на Lisp, но он понимал, что без доступа к огромной экосистеме библиотек Common Lisp проигрывает Java и .NET. Хики решил встроить Lisp в JVM — взять синтаксис и идеи Lisp, но скомпилировать его так, чтобы он напрямую запускался на виртуальной машине Java и мог использовать любую Java-библиотеку без обёрток.&lt;/p&gt;
  &lt;p id=&quot;vLoV&quot;&gt;Эта идея оказалась удачной. Внезапно Clojure-программисты получили доступ ко всему экосистеме Java: HTTP-сервера, базы данных, очереди, веб-фреймворки — всё это стало доступно через простой вызов из Lisp-кода. В обратную сторону тоже работало: Java-разработчики могли встраивать Clojure-код в свои проекты постепенно, не переписывая всё.&lt;/p&gt;
  &lt;p id=&quot;SdJC&quot;&gt;К тому же Хики добавил несколько идей, которых не было в традиционном Lisp:&lt;/p&gt;
  &lt;p id=&quot;QCL9&quot;&gt;&lt;strong&gt;Иммутабельные структуры данных по умолчанию&lt;/strong&gt;. В Clojure список, вектор, хеш-таблица не модифицируются. Если вы хотите добавить элемент в вектор, вы получаете новый вектор, а старый остаётся как был. Это сделано через &lt;strong&gt;persistent data structures&lt;/strong&gt; — структуры, которые делают эффективное копирование с разделением (структуры с общими «хвостами» делят память). Идея заимствована из работ Криса Окасаки (его книга &lt;em&gt;Purely Functional Data Structures&lt;/em&gt; 1998 года). Эта неизменяемость даёт огромный выигрыш в многопоточном программировании: если данные нельзя изменить, не нужно беспокоиться о гонках.&lt;/p&gt;
  &lt;p id=&quot;7ufL&quot;&gt;&lt;strong&gt;Software Transactional Memory&lt;/strong&gt; (STM) — модель управления состоянием через транзакции, как в базах данных. Хочется поменять переменную? Заверни в транзакцию. Хочется поменять две связанные переменные согласованно? Тоже в транзакцию. Внутри одной транзакции изменения видны единым атомарным шагом. Это сильно проще для понимания, чем традиционные мьютексы и блокировки.&lt;/p&gt;
  &lt;p id=&quot;UWba&quot;&gt;&lt;strong&gt;core.async&lt;/strong&gt; — система каналов и горутин в стиле CSP (так же как в Go), реализованная как библиотека через макросы. То есть Clojure не нужно было встраивать корутины в ядро языка: их сделали поверх макросов, и они работают идентично нативным конструкциям.&lt;/p&gt;
  &lt;p id=&quot;YMTF&quot;&gt;&lt;strong&gt;ClojureScript&lt;/strong&gt; — версия Clojure, компилируемая в JavaScript. Используется для написания фронтендов, часто в связке с библиотекой Reagent (обёртка над React).&lt;/p&gt;
  &lt;p id=&quot;XXoF&quot;&gt;Clojure быстро стал заметным в индустрии. Сегодня (2026 год) на нём пишут бэкенды &lt;strong&gt;Nubank&lt;/strong&gt; (один из крупнейших цифровых банков Бразилии, на Clojure написана почти вся серверная часть), &lt;strong&gt;Walmart&lt;/strong&gt; (e-commerce платформа), &lt;strong&gt;Apple&lt;/strong&gt;, &lt;strong&gt;Atlassian&lt;/strong&gt;, &lt;strong&gt;Cisco&lt;/strong&gt;, &lt;strong&gt;CircleCI&lt;/strong&gt; (на Clojure написан почти весь продукт), &lt;strong&gt;Funding Circle&lt;/strong&gt;, &lt;strong&gt;Metabase&lt;/strong&gt; (одна из главных open-source BI-платформ). Это, пожалуй, первый Lisp, на котором стало удобно писать обычный коммерческий код в обычной коммерческой компании без необходимости содержать команду из адептов.&lt;/p&gt;
  &lt;p id=&quot;RnkC&quot;&gt;Рич Хики в течение десяти лет читал доклады с базовыми идеями программирования, которые видны в Clojure: &lt;a href=&quot;https://www.infoq.com/presentations/Simple-Made-Easy/&quot; target=&quot;_blank&quot;&gt;«Simple Made Easy»&lt;/a&gt; (2011, о разнице между «простым» и «знакомым»), &lt;a href=&quot;https://www.infoq.com/presentations/Value-Values/&quot; target=&quot;_blank&quot;&gt;«The Value of Values»&lt;/a&gt; (2012, об иммутабельных структурах данных), &lt;a href=&quot;https://www.youtube.com/watch?v=f84n5oFoZBc&quot; target=&quot;_blank&quot;&gt;«Hammock-Driven Development»&lt;/a&gt; (2010, о роли времени и обдумывания в разработке). Эти доклады сегодня считаются обязательными к просмотру для любого инженера, который всерьёз задумывается о том, как устроена разработка софта и почему одни решения оказываются устойчивее других.&lt;/p&gt;
  &lt;h2 id=&quot;12-десятый-закон-гринспана-и-парадокс-lisp&quot;&gt;12. Десятый закон Гринспана и парадокс Lisp&lt;/h2&gt;
  &lt;p id=&quot;F6tz&quot;&gt;В начале 1990-х американский программист Филип Гринспан сформулировал шуточный закон, который потом стал одним из самых цитируемых афоризмов о программировании:&lt;/p&gt;
  &lt;blockquote id=&quot;sdEo&quot;&gt;Всякая достаточно сложная программа на C или Fortran содержит спрятанную, медленную, плохо документированную и плохо специфицированную реализацию половины Common Lisp.&lt;/blockquote&gt;
  &lt;p id=&quot;LZaj&quot;&gt;Этот закон называется &lt;a href=&quot;https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule&quot; target=&quot;_blank&quot;&gt;десятым законом Гринспана&lt;/a&gt; (хотя предыдущих девяти законов не существует — Гринспан пошутил и сразу сделал «десятый» как форма самопровозглашённой пословицы).&lt;/p&gt;
  &lt;p id=&quot;NeBM&quot;&gt;За шуткой стоит наблюдение, которое многократно подтверждалось. Возьмём любой крупный проект на C — Linux kernel, PostgreSQL, GCC, Git, nginx, любой большой коммерческий продукт. В каждом из них рано или поздно появляется:&lt;/p&gt;
  &lt;ul id=&quot;QEk5&quot;&gt;
    &lt;li id=&quot;SCeF&quot;&gt;собственная система конфигурации с псевдо-языком (а это интерпретатор);&lt;/li&gt;
    &lt;li id=&quot;hSPl&quot;&gt;собственный механизм событий и колбэков (а это асинхронное программирование первого класса);&lt;/li&gt;
    &lt;li id=&quot;V5c9&quot;&gt;собственная система плагинов с динамической загрузкой кода (а это динамическая типизация и &lt;code&gt;eval&lt;/code&gt;);&lt;/li&gt;
    &lt;li id=&quot;IapN&quot;&gt;собственный язык шаблонов или DSL для описания каких-то правил (а это макросистема);&lt;/li&gt;
    &lt;li id=&quot;zKco&quot;&gt;собственная сборка мусора, обычно реализованная через reference counting или arenas (а это сборка мусора).&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;c0p9&quot;&gt;То есть программа на «низкоуровневом» языке постепенно отращивает в себе всё то, что в Lisp было с первого дня, — но в неполном, плохо специфицированном, ad hoc виде. Закон Гринспана — это сатира на эту неизбежность.&lt;/p&gt;
  &lt;p id=&quot;zcKd&quot;&gt;Современным языкам программирования (Python, JavaScript, Go, Rust, Swift, Kotlin) тоже потребовались десятилетия, чтобы аккуратно вернуть себе те конструкции, которые в Lisp были с 1960-го: лямбды, замыкания, функции первого класса, сборка мусора, динамическая типизация, REPL. Каждое появление одной из этих фич в новом мейнстримном языке воспринимается как «прорыв» — а программисты на Lisp в это время смотрят и грустно улыбаются.&lt;/p&gt;
  &lt;p id=&quot;cvMZ&quot;&gt;Маленькое пояснение про «первый класс» — я этот термин несколько раз употреблял по ходу текста, но толком не расшифровал. Сущность в языке программирования называется &lt;strong&gt;первоклассной&lt;/strong&gt; (англ. &lt;em&gt;first-class&lt;/em&gt;), если её можно использовать так же свободно, как обычные данные: класть в переменную, передавать в функцию как аргумент, возвращать из функции, складывать в массив или словарь. Например, целое число &lt;code&gt;42&lt;/code&gt; в любом языке — первоклассная сущность: его можно куда угодно передать и где угодно сохранить.&lt;/p&gt;
  &lt;p id=&quot;W3c6&quot;&gt;А вот &lt;strong&gt;функции&lt;/strong&gt; в большинстве старых языков первоклассными не были. В Fortran или раннем C функция — это не значение, которое можно куда-то положить, а именованный кусок кода, который можно только вызвать. В Lisp с 1958 года всё иначе: функция — обычное значение, его можно записать в переменную, отдать другой функции, вернуть как результат. Из этого выросли &lt;code&gt;map&lt;/code&gt;, &lt;code&gt;filter&lt;/code&gt;, &lt;code&gt;reduce&lt;/code&gt;, колбэки, обработчики событий, замыкания, декораторы — половина того, чем мы пользуемся сегодня. Когда в Java только в 2014 году (Java 8) добавили лямбды, это было запоздалое подтягивание к тому, что в Lisp работало с самого начала.&lt;/p&gt;
  &lt;p id=&quot;Awwo&quot;&gt;То же самое слово «первоклассный» применимо и к более широким понятиям. Когда я выше сказал «SQL-запросы как первоклассные конструкции», это означает, что запрос в коде Clojure ведёт себя как настоящее выражение языка (его можно разобрать на части, переписать, скомбинировать с другими), а не как сырая строка, которую вы скармливаете драйверу базы данных.&lt;/p&gt;
  &lt;p id=&quot;y8QQ&quot;&gt;Понимание того, что в языке можно сделать первоклассным практически что угодно — функции, типы, синтаксис, управление потоком, целые предметные области — и есть то, ради чего стоит однажды всерьёз погрузиться в Lisp. Об этом, собственно, и знаменитая фраза Эрика Реймонда из эссе &lt;a href=&quot;http://www.catb.org/~esr/faqs/hacker-howto.html&quot; target=&quot;_blank&quot;&gt;«How to Become a Hacker»&lt;/a&gt;:&lt;/p&gt;
  &lt;blockquote id=&quot;sGGE&quot;&gt;Lisp стоит изучать по другой причине: ради того глубокого просвещения, которое наступит, когда вы наконец его поймёте. Этот опыт сделает вас лучшим программистом до конца ваших дней, даже если на самом Lisp вы потом никогда не будете много писать.&lt;/blockquote&gt;
  &lt;p id=&quot;wXHV&quot;&gt;Это одна из самых известных рекомендаций в нашей профессии. Я бы её повторил полностью: даже если вы никогда не напишете ничего серьёзного на Clojure или Common Lisp, проведите неделю с любым из них, разберите SICP до главы 4 (где авторы пишут на Scheme сам Scheme), пройдите Maccarthy’s &lt;code&gt;eval&lt;/code&gt; своими руками. После этого многое в любом языке программирования начнёт казаться вам очевидным.&lt;/p&gt;
  &lt;h2 id=&quot;13-гомоиконичность-и-макросы-главная-сверхспособность&quot;&gt;13. Гомоиконичность и макросы: главная сверхспособность&lt;/h2&gt;
  &lt;p id=&quot;Axsc&quot;&gt;Я уже несколько раз упоминал, что программа на Lisp — это просто Lisp-список. А теперь объясню, что это даёт.&lt;/p&gt;
  &lt;p id=&quot;eSFY&quot;&gt;В большинстве языков программирования есть «синтаксис» и «семантика», и между ними стоит парсер. Когда вы пишете программу на Python, ваш текст — это символы и слова, которые читаются парсером, превращаются в &lt;strong&gt;абстрактное синтаксическое дерево&lt;/strong&gt; (AST), и уже AST исполняется интерпретатором. Между текстом, который пишете вы, и деревом, которое исполняет машина, стоит непрозрачная стенка: чтобы как-то изменить или сгенерировать код, вам нужно работать с AST через специальные библиотеки (как &lt;code&gt;ast&lt;/code&gt; в Python).&lt;/p&gt;
  &lt;p id=&quot;RAQB&quot;&gt;В Lisp этой стенки нет. То, что вы пишете, &lt;strong&gt;уже является деревом&lt;/strong&gt;. Скобки явно показывают структуру. Никакого парсинга в привычном смысле не нужно — исходный текст и есть дерево, просто записанное в строчку. Это значит, что любая функция в Lisp может принимать на вход код, как обычные данные, манипулировать им и возвращать новый код. И вот этот возвращённый код можно тут же выполнить.&lt;/p&gt;
  &lt;p id=&quot;ofq4&quot;&gt;Это и есть &lt;strong&gt;макросы&lt;/strong&gt; — функции, которые работают не во время исполнения, а во время компиляции: они принимают код, переписывают его в другой код, и уже этот другой код компилируется и исполняется. Макросы Lisp — это не текстовая подстановка, как макросы в C; это полноценное манипулирование деревьями. Внутри макроса вы используете весь язык, всю его мощь.&lt;/p&gt;
  &lt;p id=&quot;mPLU&quot;&gt;С помощью макросов можно встроить в Lisp практически любую языковую конструкцию, которую вы видели в других языках. Цикл &lt;code&gt;for&lt;/code&gt; в стиле C? Несколько строк макроса. Декларативная маршрутизация HTTP-запросов как в Ruby on Rails? Несколько строк. Объявление компонента в стиле React? Несколько строк. SQL-запросы как первоклассные конструкции прямо в коде? Несколько строк (это реальная библиотека HoneySQL в Clojure).&lt;/p&gt;
  &lt;p id=&quot;DVdD&quot;&gt;Когда в Python в версии 3.10 (2021) появилось pattern matching, это было крупное событие — потребовался отдельный PEP, обсуждение длиной несколько лет, серьёзная работа над компилятором. В Lisp pattern matching — это просто библиотека, написанная любым желающим за пару дней с помощью макросов. Когда в JavaScript появился async/await, потребовалось встраивать новую конструкцию в стандарт ECMAScript. В Clojure async/await был сделан как библиотека core.async с помощью макросов.&lt;/p&gt;
  &lt;p id=&quot;JPRy&quot;&gt;Это — главная сверхспособность Lisp. &lt;strong&gt;Lisp не язык программирования. Это язык, на котором вы делаете языки программирования.&lt;/strong&gt; Каждый серьёзный Lisp-проект через пару лет существования содержит свой собственный мини-язык, специально приспособленный для решения задачи проекта. Это называется &lt;strong&gt;language-oriented programming&lt;/strong&gt; (языкоориентированное программирование, то есть подход, при котором под каждую конкретную задачу сначала проектируется удобный для неё мини-язык, а потом задача решается уже на нём), и в Lisp-мире это считается нормальным способом разработки.&lt;/p&gt;
  &lt;p id=&quot;7VXy&quot;&gt;Здесь, кстати, корень десятого закона Гринспана. Программы на других языках тоже отращивают свои мини-языки, но мучительно — через тонны &lt;strong&gt;boilerplate-кода&lt;/strong&gt; (шаблонного, повторяющегося кода, который приходится писать руками снова и снова просто для того, чтобы обвязать друг с другом готовые куски). В Lisp это происходит естественно и почти без усилий.&lt;/p&gt;
  &lt;h2 id=&quot;14-что-в-итоге-выбрать-в-2026-году&quot;&gt;14. Что в итоге выбрать в 2026 году&lt;/h2&gt;
  &lt;p id=&quot;smoF&quot;&gt;Если вы хотите попробовать Lisp в 2026 году, у вас есть несколько вариантов.&lt;/p&gt;
  &lt;p id=&quot;LZle&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://clojure.org/&quot; target=&quot;_blank&quot;&gt;Clojure&lt;/a&gt;&lt;/strong&gt; — самый практичный выбор. Если вы хотите писать на Lisp реальный продакшен-код, начинайте с него. Доступ ко всей JVM-экосистеме, развитое сообщество, активные обновления, хорошие инструменты разработки. Стартовая точка — &lt;a href=&quot;https://clojure.org/&quot; target=&quot;_blank&quot;&gt;официальный сайт&lt;/a&gt; и книга &lt;a href=&quot;https://www.braveclojure.com/&quot; target=&quot;_blank&quot;&gt;«Clojure for the Brave and True»&lt;/a&gt; Дэниела Хайгигагена (доступна онлайн бесплатно). Доступная среда разработки — &lt;a href=&quot;https://calva.io/&quot; target=&quot;_blank&quot;&gt;Calva&lt;/a&gt; (плагин для VSCode) или CIDER (для Emacs).&lt;/p&gt;
  &lt;p id=&quot;rgeg&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://racket-lang.org/&quot; target=&quot;_blank&quot;&gt;Racket&lt;/a&gt;&lt;/strong&gt; — если вы хотите учиться программированию или интересуетесь созданием языков. Великолепная IDE (DrRacket), отличная документация, огромный набор учебных материалов. SICP читается лучше всего именно на Racket. Если хотите изучать &lt;a href=&quot;https://htdp.org/&quot; target=&quot;_blank&quot;&gt;«How to Design Programs»&lt;/a&gt; — это тоже Racket.&lt;/p&gt;
  &lt;p id=&quot;rqU2&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.sbcl.org/&quot; target=&quot;_blank&quot;&gt;SBCL&lt;/a&gt; (Steel Bank Common Lisp)&lt;/strong&gt; — если хотите работать с классическим Common Lisp. Один из самых быстрых Lisp-компиляторов в мире, по производительности конкурирует с C. Среда разработки — Emacs + SLIME (или Sly). Книга для начала — &lt;a href=&quot;https://gigamonkeys.com/book/&quot; target=&quot;_blank&quot;&gt;«Practical Common Lisp»&lt;/a&gt; Питера Зайбеля (доступна онлайн бесплатно).&lt;/p&gt;
  &lt;p id=&quot;08kx&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.gnu.org/software/emacs/manual/html_node/elisp/index.html&quot; target=&quot;_blank&quot;&gt;Emacs Lisp&lt;/a&gt;&lt;/strong&gt; — если вы уже &lt;a href=&quot;http://localhost:1313/blog/2026/emacs/&quot; target=&quot;_blank&quot;&gt;пользуетесь Emacs&lt;/a&gt; или собираетесь начать. Это не «универсальный» Lisp, а специализированный для редактирования. Но именно он сегодня — самый массово используемый Lisp-диалект в мире (благодаря миллионам активных пользователей Emacs).&lt;/p&gt;
  &lt;p id=&quot;lFmn&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.gnu.org/software/mit-scheme/&quot; target=&quot;_blank&quot;&gt;Scheme через MIT/GNU Scheme или Chez Scheme&lt;/a&gt;&lt;/strong&gt; — если вы хотите классический академический Scheme и работаете с SICP.&lt;/p&gt;
  &lt;p id=&quot;aVGs&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://hylang.org/&quot; target=&quot;_blank&quot;&gt;Hy&lt;/a&gt;&lt;/strong&gt; — Lisp, компилируемый в Python AST. Любопытный гибрид: вы пишете S-выражения, но получаете доступ ко всем Python-библиотекам. Не для продакшена, но как способ попробовать Lisp, не отходя от Python — отличный.&lt;/p&gt;
  &lt;p id=&quot;ObkI&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://janet-lang.org/&quot; target=&quot;_blank&quot;&gt;Janet&lt;/a&gt;&lt;/strong&gt; — современный минималистичный Lisp-вариант, написанный на C. Маленький, встраиваемый, без зависимостей.&lt;/p&gt;
  &lt;p id=&quot;GjMj&quot;&gt;Если же вы вообще не уверены, начинать ли — я бы рекомендовал прочитать хотя бы статью Пола Грэма &lt;a href=&quot;https://www.paulgraham.com/rootsoflisp.html&quot; target=&quot;_blank&quot;&gt;«The Roots of Lisp»&lt;/a&gt; (33 страницы, читается за вечер). Грэм там показывает, как из семи примитивов Маккарти собирается вся машинерия Lisp, и одновременно — половина машинерии любого современного языка программирования. После этого Lisp перестаёт быть страшной и непонятной территорией.&lt;/p&gt;
  &lt;h2 id=&quot;15-финал-язык-который-продолжает-учить&quot;&gt;15. Финал: язык, который продолжает учить&lt;/h2&gt;
  &lt;p id=&quot;u5A2&quot;&gt;К 2026 году Lisp — это уже не модный, не «горячий» язык. На нём не делают стартапы для Y Combinator. О нём не говорят на каждой конференции. Поисковые запросы про Lisp стабильно низкие. Большинство современных программистов знают про него как про «что-то старое со скобками».&lt;/p&gt;
  &lt;p id=&quot;1Xvd&quot;&gt;Но Lisp продолжает работать. На Clojure пишут банковские системы. На Emacs Lisp работает миллионы программистов. На Common Lisp до сих пор крутятся системы научной верстки, экспертные системы, инструменты для проектирования микросхем. На Scheme учат программированию в MIT, Брауне, Северо-Восточном университете. На Racket пишут новые языки программирования. На Guile живёт операционная система GNU Guix. Внутри Photoshop с конца 1980-х работал диалект &lt;strong&gt;AutoLisp&lt;/strong&gt; (он же — внутри AutoCAD до сих пор); компьютерная алгебра Maxima — это потомок Macsyma — до сих пор использует Lisp под капотом. Это не язык, который умер. Это язык, который ушёл в инфраструктуру.&lt;/p&gt;
  &lt;p id=&quot;uxbv&quot;&gt;И главное — Lisp продолжает влиять. Каждое новое поколение языков программирования возвращается к чему-то, что в Lisp было с 1960-го. JavaScript получил функции первого класса. Python получил декораторы и pattern matching. Rust получил трейты и тип-классы (которые сами восходят к концепциям типизированных вариантов Lisp). Go получил горутины (которые соответствуют моделям параллелизма из EuLisp 1990 года). Каждый раз это представляется как новизна, и каждый раз Lisp-программисты тихо улыбаются.&lt;/p&gt;
  &lt;p id=&quot;N5GX&quot;&gt;Маккарти, придумавший Lisp в 1958 году, умер в 2011-м в возрасте 84 лет. Он успел увидеть Clojure, увидеть программистов всего мира, которые писали на нём системы, обрабатывающие миллионы транзакций. Сам Маккарти Lisp редко использовал в последние десятилетия жизни. Его интересы сместились в формальную логику и теорию знания — то есть в философию того, как человек что-то «знает» и как из этого знания делаются выводы. Но язык, который он придумал почти случайно, как побочный продукт работы по искусственному интеллекту, оказался одним из самых долгоживущих культурных артефактов нашей профессии.&lt;/p&gt;
  &lt;p id=&quot;0Gya&quot;&gt;Это не первая и, возможно, не последняя такая история в программировании, но она — одна из самых ярких. Идея, придуманная одним математиком за несколько месяцев в качестве удобной нотации, оказалась настолько удачной, что её до сих пор не превзошли по выразительной мощи. Вы только вдумайтесь — за шестьдесят восемь лет так и не превзошли!&lt;/p&gt;
  &lt;p id=&quot;Cedx&quot;&gt;Lisp — это, в каком-то смысле, главный аргумент в пользу того, что в программировании есть фундаментальные структуры, которые не зависят от моды, от железа, от языков. Маккарти их обнаружил. А мы их с тех пор продолжаем «изобретать» их заново под разными именами.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;главные-тексты&quot;&gt;Главные тексты&lt;/h3&gt;
  &lt;ul id=&quot;Ov9x&quot;&gt;
    &lt;li id=&quot;itET&quot;&gt;&lt;a href=&quot;https://www-formal.stanford.edu/jmc/recursive.pdf&quot; target=&quot;_blank&quot;&gt;John McCarthy, «Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I», CACM, 1960&lt;/a&gt; — исходная статья.&lt;/li&gt;
    &lt;li id=&quot;8Lgg&quot;&gt;&lt;a href=&quot;https://www.paulgraham.com/rootsoflisp.html&quot; target=&quot;_blank&quot;&gt;Paul Graham, «The Roots of Lisp» (2002)&lt;/a&gt; — реконструкция Маккарти на современном языке. Обязательно к прочтению.&lt;/li&gt;
    &lt;li id=&quot;so3O&quot;&gt;&lt;a href=&quot;https://www.paulgraham.com/icad.html&quot; target=&quot;_blank&quot;&gt;Paul Graham, «Revenge of the Nerds» (2002)&lt;/a&gt; — манифест о том, почему Lisp даёт преимущество в реальной разработке.&lt;/li&gt;
    &lt;li id=&quot;hkWI&quot;&gt;&lt;a href=&quot;https://www.paulgraham.com/avg.html&quot; target=&quot;_blank&quot;&gt;Paul Graham, «Beating the Averages» (2003)&lt;/a&gt; — как Lisp помог Виawebу обогнать конкурентов.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;книги&quot;&gt;Книги&lt;/h3&gt;
  &lt;ul id=&quot;toiw&quot;&gt;
    &lt;li id=&quot;cOqa&quot;&gt;&lt;a href=&quot;https://web.mit.edu/6.001/6.037/sicp.pdf&quot; target=&quot;_blank&quot;&gt;«Structure and Interpretation of Computer Programs»&lt;/a&gt; (SICP) — Гарольд Эйбельсон и Джеральд Сассмен. Одна из лучших книг про программирование вообще.&lt;/li&gt;
    &lt;li id=&quot;zqCn&quot;&gt;&lt;a href=&quot;https://gigamonkeys.com/book/&quot; target=&quot;_blank&quot;&gt;«Practical Common Lisp»&lt;/a&gt; — Питер Зайбель. Лучшая практическая книга про Common Lisp.&lt;/li&gt;
    &lt;li id=&quot;wQrY&quot;&gt;&lt;a href=&quot;https://www.braveclojure.com/&quot; target=&quot;_blank&quot;&gt;«Clojure for the Brave and True»&lt;/a&gt; — Дэниел Хайгигагена. Лучшая книга для входа в Clojure.&lt;/li&gt;
    &lt;li id=&quot;iO7o&quot;&gt;&lt;a href=&quot;https://www.paulgraham.com/onlisp.html&quot; target=&quot;_blank&quot;&gt;«On Lisp»&lt;/a&gt; — Пол Грэм. О макросах и продвинутом Lisp.&lt;/li&gt;
    &lt;li id=&quot;xEUX&quot;&gt;&lt;a href=&quot;https://letoverlambda.com/&quot; target=&quot;_blank&quot;&gt;«Let Over Lambda»&lt;/a&gt; — Даг Хойт. Глубокое погружение в макросы Common Lisp.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;видео&quot;&gt;Видео&lt;/h3&gt;
  &lt;figure id=&quot;eqs8&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/SrKj4hYic5A?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;pkhp&quot;&gt;📺 &lt;a href=&quot;https://www.infoq.com/presentations/Simple-Made-Easy/&quot; target=&quot;_blank&quot;&gt;Rich Hickey, «Simple Made Easy»&lt;/a&gt; — программный доклад автора Clojure о разнице между «простым» и «знакомым».&lt;/p&gt;
  &lt;figure id=&quot;g6aU&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/-6BsiVyC1kM?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;zuQR&quot;&gt;📺 &lt;a href=&quot;https://www.infoq.com/presentations/Value-Values/&quot; target=&quot;_blank&quot;&gt;Rich Hickey, «The Value of Values»&lt;/a&gt; — об иммутабельности и о том, что значит ценить значения.&lt;/p&gt;
  &lt;figure id=&quot;FqVv&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/f84n5oFoZBc?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;CxWH&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=f84n5oFoZBc&quot; target=&quot;_blank&quot;&gt;Rich Hickey, «Hammock-Driven Development»&lt;/a&gt; — о роли обдумывания в разработке.&lt;/p&gt;
  &lt;figure id=&quot;7Hi2&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/2MYzvQ1v8Ww?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;wiG2&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=OyfBQmvr2Hc&quot; target=&quot;_blank&quot;&gt;«The Most Beautiful Program Ever Written»&lt;/a&gt; — рассказ о функции &lt;code&gt;eval&lt;/code&gt; в Scheme.&lt;/p&gt;
  &lt;h3 id=&quot;среды-разработки-и-реализации&quot;&gt;Среды разработки и реализации&lt;/h3&gt;
  &lt;ul id=&quot;x6wu&quot;&gt;
    &lt;li id=&quot;i3ef&quot;&gt;&lt;a href=&quot;https://clojure.org/&quot; target=&quot;_blank&quot;&gt;Clojure&lt;/a&gt; — основная страница.&lt;/li&gt;
    &lt;li id=&quot;80ga&quot;&gt;&lt;a href=&quot;https://calva.io/&quot; target=&quot;_blank&quot;&gt;Calva&lt;/a&gt; — Clojure-плагин для VSCode.&lt;/li&gt;
    &lt;li id=&quot;709U&quot;&gt;&lt;a href=&quot;https://www.sbcl.org/&quot; target=&quot;_blank&quot;&gt;SBCL&lt;/a&gt; — главный современный Common Lisp.&lt;/li&gt;
    &lt;li id=&quot;AA0B&quot;&gt;&lt;a href=&quot;https://racket-lang.org/&quot; target=&quot;_blank&quot;&gt;Racket&lt;/a&gt; — Scheme-подобная платформа для создания языков.&lt;/li&gt;
    &lt;li id=&quot;HVXj&quot;&gt;&lt;a href=&quot;https://www.gnu.org/software/mit-scheme/&quot; target=&quot;_blank&quot;&gt;MIT/GNU Scheme&lt;/a&gt; — классический Scheme.&lt;/li&gt;
    &lt;li id=&quot;qtLy&quot;&gt;&lt;a href=&quot;https://www.gnu.org/software/guile/&quot; target=&quot;_blank&quot;&gt;GNU Guile&lt;/a&gt; — встраиваемый Scheme.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;история&quot;&gt;История&lt;/h3&gt;
  &lt;ul id=&quot;U7pz&quot;&gt;
    &lt;li id=&quot;7Xkr&quot;&gt;&lt;a href=&quot;http://www.softwarepreservation.org/projects/LISP/book/Stoyan_History_of_LISP.pdf&quot; target=&quot;_blank&quot;&gt;Herbert Stoyan, «LISP — History and Development»&lt;/a&gt; — академический обзор.&lt;/li&gt;
    &lt;li id=&quot;OXmc&quot;&gt;&lt;a href=&quot;http://jmc.stanford.edu/articles/lisp/lisp.pdf&quot; target=&quot;_blank&quot;&gt;The History of Lisp by John McCarthy&lt;/a&gt; — рассказ самого Маккарти.&lt;/li&gt;
    &lt;li id=&quot;By75&quot;&gt;&lt;a href=&quot;https://www.dreamsongs.com/Files/HOPL2-Uncut.pdf&quot; target=&quot;_blank&quot;&gt;«The Evolution of Lisp»&lt;/a&gt; — Ричард Габриэль и Гай Стил, длинная история всех диалектов.&lt;/li&gt;
    &lt;li id=&quot;noKz&quot;&gt;&lt;a href=&quot;https://stories.ycombinator.com/the-rise-and-fall-of-the-lisp-machine-company&quot; target=&quot;_blank&quot;&gt;The Symbolics Story&lt;/a&gt; — история эпохи Лисп-машин.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:emacs</id><link rel="alternate" type="text/html" href="https://azhark.cc/emacs?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Emacs: редактор, который думает, что он операционная система</title><published>2026-05-29T21:53:49.051Z</published><updated>2026-05-29T21:53:49.051Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img3.teletype.in/files/67/21/67216bef-f6af-443a-81b0-665260365e22.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img3.teletype.in/files/ae/96/ae963bf8-c1e9-4c45-acc0-5edd255b0fd3.png&quot;&gt;В 1976 году в Массачусетском технологическом институте двое программистов — Гай Стил и Ричард Столлман — сели за терминалы и начали писать макропакет для текстового редактора TECO. Параллельно, в трёх с половиной тысячах километров к западу, на территории Калифорнийского университета в Беркли, аспирант Билл Джой через слабый телефонный модем настраивал визуальный режим редактора ex, и его поделка вскоре получила имя vi.</summary><content type="html">
  &lt;figure id=&quot;V3pW&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ae/96/ae963bf8-c1e9-4c45-acc0-5edd255b0fd3.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;OOk0&quot;&gt;В 1976 году в Массачусетском технологическом институте двое программистов — Гай Стил и Ричард Столлман — сели за терминалы и начали писать макропакет для текстового редактора TECO. Параллельно, в трёх с половиной тысячах километров к западу, на территории Калифорнийского университета в Беркли, аспирант Билл Джой через слабый телефонный модем настраивал визуальный режим редактора ex, и его поделка вскоре получила имя &lt;strong&gt;vi&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;qxrR&quot;&gt;Оба проекта родились в один год. Оба до сих пор активно развиваются и используются миллионами программистов. Оба породили самую долгоиграющую культурную войну в истории нашей профессии — &lt;strong&gt;«редакторские войны»&lt;/strong&gt;, начавшиеся в юзенетовских рассылках 1985 года и не утихающие до сих пор. Это не просто разные клавиатурные сочетания и не просто разные подходы к работе с текстом. Это две философии, два разных мнения по поводу того, &lt;strong&gt;чем должен быть инструмент программиста&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;RznS&quot;&gt;Этот пост — об одном из этих двух инструментов, о &lt;strong&gt;Emacs&lt;/strong&gt;. Я расскажу о его странном рождении из макросов чужого редактора и о невероятной живучести (полвека в строю и ноль признаков смерти). Покажу, как внутри него поселился Lisp-интерпретатор и почему отсюда родилась знаменитая шутка, что Emacs — это «прекрасная операционная система, в которой не хватает только хорошего текстового редактора». Доберусь до современных дистрибутивов вроде &lt;strong&gt;Doom Emacs&lt;/strong&gt; и &lt;strong&gt;Spacemacs&lt;/strong&gt;, благодаря которым в 2026 году в Emacs продолжают приходить молодые программисты. И, конечно, упомяну &lt;strong&gt;vi&lt;/strong&gt; — без него в этой истории не обойтись, потому что Emacs во многом определяется именно через контраст с этим своим вечным соседом по индустрии.&lt;/p&gt;
  &lt;p id=&quot;ODNT&quot;&gt;Я не буду делать вид, что эта тема нейтральна. Любой человек, который всерьёз работал с любым из этих двух редакторов, имеет своё мнение, и его мнение, скорее всего, противоположно вашему. Я постараюсь отдать обоим должное и не воевать ни на чьей стороне. Хотя, признаюсь, к Emacs у меня личное уважение особое — за объём идей, которые в нём поместились. Однако сам я пока до использования Emacs не дорос и использую Neovim. Но мне очень любопытно, какой может стать моя жизнь, если я начну всерьёз работать в Emacs. Где бы только найти на всё время. Или несколько жизней.&lt;/p&gt;
  &lt;h2 id=&quot;1-1976-год-mit-и-редактор-по-имени-teco&quot;&gt;1. 1976 год, MIT, и редактор по имени TECO&lt;/h2&gt;
  &lt;p id=&quot;rNQv&quot;&gt;Чтобы понять, откуда взялся Emacs, вспомним, какие редакторы существовали до него и почему люди были ими недовольны.&lt;/p&gt;
  &lt;p id=&quot;Xp1B&quot;&gt;Главный текстовый редактор Лаборатории искусственного интеллекта MIT в начале 1970-х назывался &lt;strong&gt;TECO&lt;/strong&gt; — &lt;strong&gt;T&lt;/strong&gt;ext &lt;strong&gt;E&lt;/strong&gt;ditor and &lt;strong&gt;C&lt;/strong&gt;orrector. Он был написан ещё в 1962 году для машины PDP-1, потом портирован на PDP-6 и PDP-10. К середине 1970-х TECO был старым, заслуженным, мощным и при этом совершенно нечитаемым редактором. Его команды представляли собой короткие шифры из пары символов. Составленная из этих команд программа могла выполнять сложные правки текста, но прочесть её постороннему человеку было сложно или даже невозможно. В хакерской культуре MIT была шутка про «TECO в стиле line noise», когда строчка команд выглядела буквально как помехи на телефонной линии.&lt;/p&gt;
  &lt;p id=&quot;KoJd&quot;&gt;При этом TECO был расширяемым. Можно было писать макросы — короткие наборы команд, объединённые в одну именованную процедуру, которые потом запускались одной кнопкой. Это превращало TECO в нечто среднее между редактором и языком программирования.&lt;/p&gt;
  &lt;p id=&quot;TUYe&quot;&gt;К 1976 году в MIT AI Lab каждый продвинутый пользователь имел свой собственный набор макросов для TECO. У одного — для разметки текста. У другого — для работы с файлами кода на LISP. У третьего — для писем в ARPANET. Эти наборы получили названия — TECMAC, TMACS, RMODE, DOC, MACROS — каждый со своей логикой клавиш и своими привычками. Если в лабораторию заходил новый сотрудник и спрашивал «как мне отредактировать файл?», его первый ответ был «зависит от того, чьим набором ты хочешь пользоваться».&lt;/p&gt;
  &lt;p id=&quot;KToF&quot;&gt;Это был тот самый момент, когда стало понятно, что пора унифицировать редактор.&lt;/p&gt;
  &lt;h2 id=&quot;2-стэнфорд-1976-визит-и-идея&quot;&gt;2. Стэнфорд 1976: визит и идея&lt;/h2&gt;
  &lt;p id=&quot;AtJw&quot;&gt;В том же 1976 году Ричард Столлман съездил в Стэнфорд-AI-Lab — лабораторию искусственного интеллекта Стэнфордского университета. Там он увидел редактор по имени E, написанный Фредом Райтом, и был впечатлён. E работал в режиме, который сейчас мы называем WYSIWYG (What You See Is What You Get): когда вы нажимаете клавишу, изменение сразу появляется на экране, без необходимости вводить команду «обновить дисплей». TECO так работать не умел, его дисплейный режим был неполноценным.&lt;/p&gt;
  &lt;p id=&quot;nRNC&quot;&gt;Столлман вернулся в Кембридж с мыслью, что нужно сделать то же самое с TECO. И обнаружил, что у его коллеги по AI Lab по имени Карл Миккельсен уже был зачаток такого режима — модификация TECO под названием Control-R, в которой экран автоматически обновлялся после каждого нажатия клавиши. Столлман переписал этот код, чтобы он работал эффективнее, и добавил к нему поддержку макросов внутри display-режима: теперь любая клавиша могла быть переопределена так, чтобы запускать произвольную TECO-программу.&lt;/p&gt;
  &lt;p id=&quot;0kkp&quot;&gt;Это и был последний кирпичик. Гай Стил, ещё один хакер MIT AI Lab (тот самый Стил, который позже станет соавтором стандарта Common Lisp, спецификации Java и кучи другого), предложил Столлману объединить все циркулирующие в лаборатории макропакеты в один общий набор с симметричной системой клавиатурных сочетаний. Стил и Столлман сели за терминалы и за одну ночь написали базовый каркас: систему поиска и выполнения команд.&lt;/p&gt;
  &lt;p id=&quot;xmxa&quot;&gt;Через неделю Стил отошёл от проекта (вернулся к своим обязанностям), а Столлман уже один довёл его до готового состояния. К Новому 1977 году новый объединённый редактор уже теснил TECMAC и TMACS. Через год TECMAC и TMACS были полностью вытеснены.&lt;/p&gt;
  &lt;p id=&quot;G562&quot;&gt;Имя проекта — &lt;strong&gt;Emacs&lt;/strong&gt; — расшифровывалось как &lt;strong&gt;E&lt;/strong&gt;ditor &lt;strong&gt;MAC&lt;/strong&gt;ro&lt;strong&gt;S&lt;/strong&gt; («макросы редактора»). По другой, апокрифической версии — в честь популярного в Бостоне магазина мороженого &lt;em&gt;Emack &amp;amp; Bolio’s&lt;/em&gt;, который Столлман часто посещал, и в названии которого слышалось то же слово. Сам Столлман потом будет иронизировать на эту тему, но никогда не станет отрицать апокриф полностью.&lt;/p&gt;
  &lt;p id=&quot;ezA6&quot;&gt;В любом случае, к 1977 году в MIT появился новый стандарт редактирования текста — Emacs, написанный поверх TECO как набор макросов.&lt;/p&gt;
  &lt;h2 id=&quot;3-множественные-имаксы-eine-zwei-gosling-emacs&quot;&gt;3. Множественные Имаксы: EINE, ZWEI, Gosling Emacs&lt;/h2&gt;
  &lt;p id=&quot;ul6V&quot;&gt;С 1977 по 1984 годы Emacs пережил период бурного размножения. Когда исходный код у вас свободно доступен (а в MIT AI Lab он именно так и был доступен), и когда сам редактор написан в стиле «расширяй как хочешь», у людей мгновенно возникает желание сделать свою версию.&lt;/p&gt;
  &lt;p id=&quot;tBmB&quot;&gt;Появились &lt;strong&gt;EINE&lt;/strong&gt; (рекурсивный акроним &lt;em&gt;EINE Is Not EMACS&lt;/em&gt;, «EINE — это не EMACS») и &lt;strong&gt;ZWEI&lt;/strong&gt; (&lt;em&gt;ZWEI Was EINE Initially&lt;/em&gt;, «ZWEI был сначала EINE») — обе написаны Дэниелом Уайнребом и Майком Макмагоном для Lisp-машин. Они отличались тем, что были написаны на Zetalisp, а не на TECO. Из ZWEI потом вырастет &lt;strong&gt;Zmacs&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;BP3O&quot;&gt;В Honeywell Bernard Гринберг написал &lt;strong&gt;MulticsEmacs&lt;/strong&gt; в 1978 году — версию для операционной системы Multics. Он же первым реализовал значительную часть Emacs в Lisp, превратив его из редактора с макросами в полноценную &lt;strong&gt;Lisp-машину&lt;/strong&gt; с текстовым интерфейсом.&lt;/p&gt;
  &lt;p id=&quot;XV2Q&quot;&gt;В &lt;strong&gt;Bell Labs&lt;/strong&gt; Джеймс Гослинг, тот самый, который позже создаст Java, написал &lt;strong&gt;Gosling Emacs&lt;/strong&gt;, или &lt;strong&gt;gosmacs&lt;/strong&gt; — реализацию на C для UNIX-систем. Гослинг впервые продал свой Emacs коммерчески (его лицензировала компания UniPress), и именно история с этой коммерциализацией &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;позже окажется одним из формирующих моментов&lt;/a&gt; в политическом пути Столлмена.&lt;/p&gt;
  &lt;p id=&quot;ZCL0&quot;&gt;К 1983-му в мире было около десятка различных программ под названием «Emacs», и было понятно, что нужна единая, по-настоящему свободная, версия, которая станет ядром нового открытого проекта.&lt;/p&gt;
  &lt;h2 id=&quot;4-1984-gnu-emacs&quot;&gt;4. 1984: GNU Emacs&lt;/h2&gt;
  &lt;p id=&quot;Gh9D&quot;&gt;В сентябре 1983 года Ричард Столлман &lt;a href=&quot;http://localhost:1313/blog/2026/stallman/&quot; target=&quot;_blank&quot;&gt;объявил о начале работы над операционной системой GNU&lt;/a&gt;. Первой крупной программой в составе ОС стал &lt;strong&gt;GNU Emacs&lt;/strong&gt; — переписанный с нуля свободный редактор на основе всех накопленных к тому моменту идей. Релиз GNU Emacs 13 (первой публичной версии) состоялся &lt;strong&gt;20 марта 1985 года&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;e2q4&quot;&gt;GNU Emacs принципиально отличался от своих предшественников двумя вещами.&lt;/p&gt;
  &lt;p id=&quot;EbHa&quot;&gt;&lt;strong&gt;Во-первых, он был написан на собственном диалекте Lisp — Emacs Lisp (elisp).&lt;/strong&gt; Сам Emacs состоял из небольшого ядра на C, в котором был интерпретатор elisp, и огромного объёма функциональности, написанной непосредственно на elisp. Это означало, что &lt;strong&gt;любую часть редактора можно изменить, не пересобирая его&lt;/strong&gt;. Вы открываете .emacs-файл, пишете там пару строк на elisp, перезагружаете конфигурацию — и редактор уже работает по-новому. Любую функцию можно переопределить. Любую клавишу можно перенастроить. Любое меню можно перестроить. Это была не настройка редактора — это было программирование редактора прямо во время работы.&lt;/p&gt;
  &lt;p id=&quot;cqiG&quot;&gt;&lt;strong&gt;Во-вторых, он был свободным.&lt;/strong&gt; GNU Emacs распространялся под GNU General Public License (GPL) — той самой лицензией, которую Столлман к тому моменту разрабатывал и которая впервые официально вышла в 1989-м. Любой человек мог взять Emacs, изучить его код, изменить под свои нужды, распространять дальше. И при этом любые производные работы тоже должны были оставаться свободными.&lt;/p&gt;
  &lt;p id=&quot;BEh4&quot;&gt;Эти два качества вместе превратили GNU Emacs в нечто большее, чем просто редактор. По выражению Столлмена, это был &lt;strong&gt;«self-documenting, customizable, real-time display editor»&lt;/strong&gt; — «самодокументирующийся, настраиваемый редактор отображения в реальном времени». Под «самодокументирующимся» Столлман имел в виду, что любая команда Emacs знает, как объяснить, что она делает, прямо из самого редактора (нажмите &lt;code&gt;C-h k&lt;/code&gt; и любую клавишу, и Emacs скажет, что эта клавиша делает, и покажет вам исходный код её обработчика).&lt;/p&gt;
  &lt;h2 id=&quot;5-emacs-как-операционная-система&quot;&gt;5. Emacs как операционная система&lt;/h2&gt;
  &lt;p id=&quot;29KG&quot;&gt;К 1990-м годам Emacs накопил такой объём функциональности, что от него начали отшучиваться:&lt;/p&gt;
  &lt;blockquote id=&quot;Eabf&quot;&gt;Emacs — это прекрасная операционная система, в которой не хватает только хорошего текстового редактора.&lt;/blockquote&gt;
  &lt;p id=&quot;QqEQ&quot;&gt;Шутка появилась не на пустом месте. Внутри Emacs к этому моменту жили:&lt;/p&gt;
  &lt;ul id=&quot;gSIW&quot;&gt;
    &lt;li id=&quot;13Oq&quot;&gt;&lt;strong&gt;GNU Info&lt;/strong&gt; — браузер документации GNU, по сути локальный гипертекстовый редактор.&lt;/li&gt;
    &lt;li id=&quot;R75Z&quot;&gt;&lt;strong&gt;Gnus&lt;/strong&gt; — почтовый и Usenet-клиент.&lt;/li&gt;
    &lt;li id=&quot;TzDr&quot;&gt;&lt;strong&gt;VM&lt;/strong&gt; — другой почтовый клиент.&lt;/li&gt;
    &lt;li id=&quot;AsTH&quot;&gt;&lt;strong&gt;Org-mode&lt;/strong&gt; — система ведения заметок и планирования, разработанная Карстеном Домиником в 2003-м; сегодня по ней пишут диссертации, ведут календари, делают презентации, управляют проектами.&lt;/li&gt;
    &lt;li id=&quot;Q4YN&quot;&gt;&lt;strong&gt;Magit&lt;/strong&gt; — клиент для Git, по общему мнению лучший в мире (даже многие пользователи терминала используют именно его).&lt;/li&gt;
    &lt;li id=&quot;4gaI&quot;&gt;&lt;strong&gt;TRAMP&lt;/strong&gt; — прозрачный доступ к удалённым файлам по ssh, ftp, rsync и десяткам других протоколов прямо из редактора.&lt;/li&gt;
    &lt;li id=&quot;j3mN&quot;&gt;&lt;strong&gt;dired&lt;/strong&gt; — файловый менеджер, по совместительству тоже редактор (можно прямо в нём массово переименовывать файлы, как обычный текст).&lt;/li&gt;
    &lt;li id=&quot;Sr0T&quot;&gt;&lt;strong&gt;eshell&lt;/strong&gt; — встроенная командная оболочка, написанная на elisp.&lt;/li&gt;
    &lt;li id=&quot;ss7o&quot;&gt;&lt;strong&gt;calc&lt;/strong&gt; — научный калькулятор класса Mathematica, тоже целиком на elisp.&lt;/li&gt;
    &lt;li id=&quot;aaSG&quot;&gt;&lt;strong&gt;doctor&lt;/strong&gt; — простейший ИИ-психотерапевт (реализация знаменитого ELIZA Джозефа Вейценбаума 1966 года).&lt;/li&gt;
    &lt;li id=&quot;xh2f&quot;&gt;&lt;strong&gt;tetris&lt;/strong&gt;, &lt;strong&gt;snake&lt;/strong&gt;, &lt;strong&gt;doctor&lt;/strong&gt; — да, в Emacs встроены игры. Команда &lt;code&gt;M-x tetris&lt;/code&gt; запускает Тетрис.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;MzsB&quot;&gt;И всё это взаимодействует друг с другом через единый интерфейс. В одном буфере Emacs у вас может быть открыт код на Python, рядом — Org-mode-документ с TODO-листом, в нижней панели — терминал с запущенным тестом, в правой панели — Magit с пуш-кнопкой, и всё это управляется одними и теми же базовыми клавиатурными сочетаниями. По сути, это окружение, которое заменяет вам половину операционной системы. Многие пользователи Emacs действительно проводят в нём весь рабочий день, выходя только за браузером и видеоконференциями.&lt;/p&gt;
  &lt;p id=&quot;YUjK&quot;&gt;Шутка про «операционную систему» не такая уж и шутка.&lt;/p&gt;
  &lt;h2 id=&quot;6-и-в-это-же-время-в-беркли--vi&quot;&gt;6. И в это же время в Беркли — vi&lt;/h2&gt;
  &lt;p id=&quot;6VoG&quot;&gt;Параллельно, в том самом 1976 году, в Калифорнийском университете в Беркли разворачивалась совсем другая история.&lt;/p&gt;
  &lt;p id=&quot;CdKY&quot;&gt;&lt;strong&gt;Билл Джой&lt;/strong&gt; — аспирант, который через несколько лет станет одним из основателей Sun Microsystems и автором языка Java-подобной модели concurrent computing, — сидит дома в Беркли. У него медленный модем (300 бод) и терминал &lt;strong&gt;ADM-3A&lt;/strong&gt; без отдельных клавиш стрелок. Он работает с редактором &lt;strong&gt;ed&lt;/strong&gt; — текстовым линейным редактором Кена Томпсона, в котором вы пишете команды одну за другой, и редактор показывает по одной строке за раз. Это утомительно.&lt;/p&gt;
  &lt;p id=&quot;aCCe&quot;&gt;Летом из Лондона приезжает в гости &lt;strong&gt;Джордж Куло́рис&lt;/strong&gt;, преподаватель Queen Mary College, который незадолго до этого написал свой собственный редактор &lt;strong&gt;em&lt;/strong&gt; (&lt;strong&gt;e&lt;/strong&gt;ditor for &lt;strong&gt;m&lt;/strong&gt;ortals — «редактор для смертных») — улучшенную версию ed с полноэкранным интерфейсом. Куло́рис показывает свой em Джою. Джой впечатляется.&lt;/p&gt;
  &lt;p id=&quot;6quI&quot;&gt;В течение следующих месяцев Джой и Чак Хейли пишут поверх ed свой собственный редактор — сначала &lt;strong&gt;en&lt;/strong&gt;, потом &lt;strong&gt;ex&lt;/strong&gt;, в октябре 1977-го добавляют к ex полноэкранный визуальный режим. Этот визуальный режим вызывается командой &lt;code&gt;vi&lt;/code&gt; — сокращением от &lt;strong&gt;vi&lt;/strong&gt;sual.&lt;/p&gt;
  &lt;p id=&quot;qdB3&quot;&gt;К марту 1978 года ex 1.1 выходит в составе первой Berkeley Software Distribution (BSD) UNIX. К маю 1979 во второй BSD редактор поставляется уже под отдельным именем &lt;code&gt;vi&lt;/code&gt;, которое сразу запускает ex в визуальном режиме. С этого момента vi — стандартный редактор UNIX на следующие сорок лет.&lt;/p&gt;
  &lt;p id=&quot;ISry&quot;&gt;В 1991 году голландец Брам Моленар напишет &lt;strong&gt;Vim&lt;/strong&gt; (&lt;strong&gt;Vi Im&lt;/strong&gt;proved) — улучшенный клон vi, который сегодня и считается «тем самым vi» практически в любом контексте.&lt;/p&gt;
  &lt;h2 id=&quot;7-почему-vi-такой-странный&quot;&gt;7. Почему vi такой странный&lt;/h2&gt;
  &lt;p id=&quot;zfxL&quot;&gt;vi знаменит модальной моделью редактирования. Когда вы открываете vi, вы оказываетесь в командном режиме (Normal mode), в котором обычные буквы алфавита не печатают букву, а выполняют команды. &lt;code&gt;j&lt;/code&gt; — спустить курсор на строку вниз. &lt;code&gt;k&lt;/code&gt; — поднять на строку вверх. &lt;code&gt;h&lt;/code&gt; — налево. &lt;code&gt;l&lt;/code&gt; — направо. &lt;code&gt;d&lt;/code&gt; плюс что-то — удалить. &lt;code&gt;y&lt;/code&gt; — скопировать. &lt;code&gt;p&lt;/code&gt; — вставить. Чтобы начать вводить текст, надо специально нажать &lt;code&gt;i&lt;/code&gt; (insert) или &lt;code&gt;a&lt;/code&gt; (append) — переключиться в режим ввода. Потом, чтобы вернуться в командный режим, нажимаете Escape.&lt;/p&gt;
  &lt;p id=&quot;0nMZ&quot;&gt;Это контринтуитивно. Это сразу отпугивает новичков (есть бесчисленные мемы про людей, открывших vi и не сумевших выйти). И при этом это гениально эффективно, если потратить пару недель на привыкание: в vi сложные правки выполняются за два-три нажатия клавиш. Удалить три слова — &lt;code&gt;d3w&lt;/code&gt;. Скопировать абзац — &lt;code&gt;yap&lt;/code&gt;. Заменить всё «foo» на «bar» в файле — &lt;code&gt;:%s/foo/bar/g&lt;/code&gt;. Эти команды складываются в грамматику, в которой оператор (что делать) сочетается с движением (с чем именно), и в этой грамматике можно выразить почти любую правку.&lt;/p&gt;
  &lt;p id=&quot;XAiH&quot;&gt;Почему Джой сделал именно так? Он сам &lt;a href=&quot;https://www.theregister.com/2003/09/11/bill_joys_greatest_gift/&quot; target=&quot;_blank&quot;&gt;объяснял много раз&lt;/a&gt; — это были вынужденные ограничения. У него был медленный модем — 300 бод, то есть около 30 байт в секунду. Это значит, что обновить весь экран было операцией мучительно медленной: пара секунд. У Джоя не было возможности позволить редактору перерисовывать экран после каждого нажатия. Поэтому он сделал команды короткими, однобуквенными и немодальными в смысле обновления экрана: одно нажатие — одно изменение в файле, без перерисовки. Это и было то самое модальное редактирование, которое позволяло работать осмысленно даже через 300 бод.&lt;/p&gt;
  &lt;blockquote id=&quot;3ilB&quot;&gt;«Люди, делавшие Emacs, сидели в лабораториях MIT с тем, что по нынешним меркам было оптоволоконными каналами связи. Они работали на PDP-10, огромной по сравнению с нашим железом машине, с бесконечно быстрыми экранами. Поэтому у них могли быть забавные команды с мерцанием экрана и всё такое. А я в это время сидел дома в бараках излишков после Второй мировой войны на территории Беркли, с модемом и терминалом, который еле выводил курсор. Это был мир, который сейчас вымер. Люди не знают, что vi был написан для мира, которого больше нет».&lt;br /&gt;— Билл Джой, интервью Linux Magazine, 1999&lt;/blockquote&gt;
  &lt;p id=&quot;ZEFS&quot;&gt;Эта цитата — лучший ключ к редакторским войнам. Vi был оптимизирован под жестокую экономию ресурсов. Emacs был оптимизирован под богатую интерактивную среду. Это не вопрос «кто прав», это вопрос «в каком мире вы живёте».&lt;/p&gt;
  &lt;h2 id=&quot;8-модальный-vs-немодальный-философский-раскол&quot;&gt;8. Модальный vs немодальный: философский раскол&lt;/h2&gt;
  &lt;p id=&quot;ZUUs&quot;&gt;Главное различие между Emacs и vi — даже не в конкретных клавишах, а в подходе к самой идее редактирования.&lt;/p&gt;
  &lt;p id=&quot;dIlZ&quot;&gt;&lt;strong&gt;vi (и Vim) — модальный.&lt;/strong&gt; Редактор всегда находится в одном из режимов: командном, ввода, визуального выделения, и т. д. Одна и та же клавиша делает разные вещи в разных режимах. Это даёт очень короткие, чистые, композициональные команды — но требует постоянно держать в голове, в каком режиме ты сейчас находишься.&lt;/p&gt;
  &lt;p id=&quot;Dy0p&quot;&gt;&lt;strong&gt;Emacs — немодальный (modeless).&lt;/strong&gt; Редактор всегда находится в одном и том же состоянии. Буквы алфавита печатают буквы. Команды вызываются через аккорды — нажатия Ctrl, Meta (Alt) и Super в комбинации с буквами. &lt;code&gt;C-f&lt;/code&gt; (Ctrl-F) — на символ вперёд. &lt;code&gt;M-f&lt;/code&gt; (Alt-F) — на слово вперёд. &lt;code&gt;C-x C-s&lt;/code&gt; — сохранить. &lt;code&gt;C-x C-c&lt;/code&gt; — выйти. Это похоже на то, как сегодня устроены сочетания в любом графическом приложении (Ctrl-C для копирования и т. д.) — только Emacs сделал это первым, ещё в 1976-м.&lt;/p&gt;
  &lt;p id=&quot;MCsR&quot;&gt;Из этой разницы вытекает всё остальное.&lt;/p&gt;
  &lt;p id=&quot;SkoV&quot;&gt;&lt;strong&gt;Кривая обучения.&lt;/strong&gt; Vi/Vim страшнее в первые две недели, потом раскрывается. Emacs мягче в первые часы, но требует постоянного запоминания клавиатурных аккордов, которых &lt;strong&gt;сотни&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;khH9&quot;&gt;&lt;strong&gt;Расширяемость.&lt;/strong&gt; vi настраивается через VimScript (или Lua в новейшем Neovim). Emacs настраивается через Emacs Lisp — полноценный диалект Lisp, в котором написан сам Emacs, и в котором можно прямо во время работы переопределить любую функцию редактора.&lt;/p&gt;
  &lt;p id=&quot;vqvJ&quot;&gt;&lt;strong&gt;Объём функциональности.&lt;/strong&gt; vi — заточен под одну задачу: эффективное редактирование текста. Emacs стремится охватить всё рабочее окружение программиста.&lt;/p&gt;
  &lt;p id=&quot;PhA5&quot;&gt;&lt;strong&gt;Запуск.&lt;/strong&gt; vi запускается мгновенно. Emacs — традиционно медленно (хотя в Emacs 28 появилась нативная компиляция elisp, которая ускорила всё в разы, и время запуска сократилось с нескольких секунд до полусекунды).&lt;/p&gt;
  &lt;p id=&quot;b4QC&quot;&gt;&lt;strong&gt;Эмоциональная окраска у пользователей.&lt;/strong&gt; Vi-пользователи обычно считают, что они выбрали инструмент &lt;strong&gt;минимализма и эффективности&lt;/strong&gt;. Emacs-пользователи — что они выбрали инструмент &lt;strong&gt;глубины и универсальности&lt;/strong&gt;. Каждая сторона свысока поглядывает на другую.&lt;/p&gt;
  &lt;p id=&quot;aOIS&quot;&gt;Религия в чистом виде.&lt;/p&gt;
  &lt;h2 id=&quot;9-редакторские-войны&quot;&gt;9. Редакторские войны&lt;/h2&gt;
  &lt;p id=&quot;BJ01&quot;&gt;Война началась в Usenet примерно в 1985 году и идёт до сих пор. На любой популярный пост про текстовые редакторы в HackerNews, Reddit или Lobste.rs предсказуемо приходят люди обеих сторон и начинают спор, в котором не убедить никого. На GitHub есть проекты, чья единственная цель — троллить противоположную сторону. Шутки про «как выйти из vi» стали мемами.&lt;/p&gt;
  &lt;p id=&quot;Vrgf&quot;&gt;Эрик Реймонд в &lt;em&gt;The Jargon File&lt;/em&gt; зафиксировал: «editor war» — устойчивый термин хакерского лексикона с 1985-го.&lt;/p&gt;
  &lt;p id=&quot;a8yO&quot;&gt;При этом сама война давно стала почти карикатурной. Эпоху, когда выбор редактора реально определял продуктивность программиста, давно сменила эпоха IDE с автодополнением, рефакторингом, LSP-серверами и графическими интерфейсами. Сегодня большинство профессиональных программистов пользуются VSCode, JetBrains-IDE или Cursor, и эти инструменты вобрали в себя всё лучшее из обоих миров: VSCode имеет официальный плагин Vim-эмуляции (модальное редактирование) и Emacs-keymap (немодальное), JetBrains-IDE — то же самое.&lt;/p&gt;
  &lt;p id=&quot;f6Tz&quot;&gt;Но люди, которые остались на чистом Emacs или Vim, сделали это сознатель. Они уже знают, что VSCode существует, но он им не подходит. Им нужен инструмент, в котором они сами решают, как будут работать, а редактор указывает, как с ним взаимодействовать.&lt;/p&gt;
  &lt;p id=&quot;OrKW&quot;&gt;Это в каком-то смысле и есть главный водораздел: между готовым и настраиваемым. И Emacs здесь — крайняя точка спектра «настраиваемого».&lt;/p&gt;
  &lt;h2 id=&quot;10-современный-emacs-doom-spacemacs-и-lisp-возрождение&quot;&gt;10. Современный Emacs: Doom, Spacemacs и Lisp-возрождение&lt;/h2&gt;
  &lt;p id=&quot;2uhC&quot;&gt;Если бы Emacs остался редактором из 1985 года, он бы давно умер. Но он умудрился пережить четыре больших технологических сдвига: переход с PDP-10 на UNIX, переход на персональные компьютеры, переход на графические среды, теперь — переход к LSP/Tree-sitter/нативной компиляции.&lt;/p&gt;
  &lt;p id=&quot;RjPC&quot;&gt;И в нём за это время произошло несколько вещей, которые сделали его пригодным для современного программиста.&lt;/p&gt;
  &lt;p id=&quot;wDH0&quot;&gt;&lt;strong&gt;Emacs 28 (2022) — нативная компиляция elisp.&lt;/strong&gt; До этого все функции редактора интерпретировались на ходу, что для миллионов строк elisp означало заметную медлительность. Native-comp компилирует elisp в нативный машинный код, и в результате Emacs стал в 3–10 раз быстрее по большинству операций.&lt;/p&gt;
  &lt;p id=&quot;BwDB&quot;&gt;&lt;strong&gt;Emacs 29 (2023) — встроенная поддержка LSP&lt;/strong&gt; (Language Server Protocol, тот же протокол, на котором работают VSCode-плагины для языков) &lt;strong&gt;и Tree-sitter&lt;/strong&gt; (новый стандартный парсер для подсветки синтаксиса). Это означает, что любой современный язык программирования из коробки работает в Emacs с тем же уровнем умных подсказок, что и в VSCode.&lt;/p&gt;
  &lt;p id=&quot;DFok&quot;&gt;&lt;strong&gt;Pure GTK (Emacs 29)&lt;/strong&gt; — нативная поддержка Wayland. Emacs наконец-то работает на современном Linux-десктопе без хаков.&lt;/p&gt;
  &lt;p id=&quot;9oaL&quot;&gt;И главное — два дистрибутива Emacs, которые радикально упростили вход в этот мир:&lt;/p&gt;
  &lt;ul id=&quot;SdhE&quot;&gt;
    &lt;li id=&quot;heBq&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://www.spacemacs.org/&quot; target=&quot;_blank&quot;&gt;Spacemacs&lt;/a&gt;&lt;/strong&gt; — появился в 2014 году, изначально как «Emacs для перебежчиков из Vim». Из коробки идёт с Evil-mode (полная Vim-эмуляция, можно использовать клавиши h/j/k/l, командный режим и т. д.) и красивым, продуманным интерфейсом. Все настройки делаются через декларативный конфигурационный файл с понятными «слоями» функциональности.&lt;/li&gt;
    &lt;li id=&quot;TsUX&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/doomemacs/doomemacs&quot; target=&quot;_blank&quot;&gt;Doom Emacs&lt;/a&gt;&lt;/strong&gt; — появился в 2017-м. Минималистичнее Spacemacs, ближе к обычному Emacs, очень быстро запускается (благодаря native-comp — меньше секунды от вызова команды до полностью готового окна). Стал в последние пару лет основным «дистрибутивом Emacs для новичков». Я бы сказал, что сегодня большинство людей, открывающих Emacs впервые, начинают с Doom.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;Vbqk&quot;&gt;Оба дистрибутива решают главную традиционную проблему Emacs, что без двух-трёх лет настройки он выглядит почти так же, как в 1985 году. С Doom или Spacemacs вы получаете готовое современное окружение прямо из коробки.&lt;/p&gt;
  &lt;p id=&quot;JaDL&quot;&gt;В сообществе сейчас (2026 год) — небольшой ренессанс. Люди возвращаются к Emacs после многих лет в VSCode по двум причинам. Первая: &lt;strong&gt;org-mode&lt;/strong&gt; действительно лучшая в мире система ведения заметок и личных знаний, и попытки её клонировать вне Emacs (&lt;a href=&quot;https://logseq.com/&quot; target=&quot;_blank&quot;&gt;Logseq&lt;/a&gt;, &lt;a href=&quot;https://foambubble.github.io/foam/&quot; target=&quot;_blank&quot;&gt;Foam&lt;/a&gt;) до сих пор не дотягивают. Вторая: &lt;strong&gt;Magit&lt;/strong&gt; действительно лучшая в мире обвязка над Git, и пользователи Magit обычно остаются в Emacs ровно ради него.&lt;/p&gt;
  &lt;h2 id=&quot;11-lisp-как-тайная-сверхспособность&quot;&gt;11. Lisp как тайная сверхспособность&lt;/h2&gt;
  &lt;p id=&quot;WwE9&quot;&gt;Я уже упоминал, что Emacs написан в основном на Emacs Lisp (elisp) — собственном диалекте Lisp. Этот факт обычно подаётся в технических обзорах как любопытная деталь. На самом деле это сердце всей идеологии Emacs.&lt;/p&gt;
  &lt;p id=&quot;JDXu&quot;&gt;В большинстве редакторов конфигурация — это отдельный файл с настройками, который читается при запуске. Вы что-то меняете, перезапускаете — изменения вступают в силу. Это статичная конфигурация.&lt;/p&gt;
  &lt;p id=&quot;AhCq&quot;&gt;В Emacs &lt;strong&gt;конфигурация — это код&lt;/strong&gt;. Ваш &lt;code&gt;~/.emacs.d/init.el&lt;/code&gt; — не настройки, а программа на Lisp, которую Emacs выполняет при запуске. Эта программа может определять новые функции, переопределять старые, добавлять хуки на события, переписывать поведение любых частей редактора. И, что важнее всего, эту программу можно изменять прямо во время работы: написали функцию, нажали &lt;code&gt;C-x C-e&lt;/code&gt; — и она тут же доступна. Никаких перезапусков.&lt;/p&gt;
  &lt;p id=&quot;Zaf9&quot;&gt;Это — то самое, что делает Emacs уникальным. Это не настраиваемый редактор. Это Lisp-машина, в которой по совместительству есть текстовый редактор. Большая часть функциональности Emacs реализована не в C, не в скомпилированном виде, а как обычные elisp-функции, которые вы можете прочитать, изменить, заменить.&lt;/p&gt;
  &lt;p id=&quot;eBzf&quot;&gt;Это требует определённого склада ума: вам должно быть интересно писать код, чтобы он редактировал текст. Если вам нужно просто эффективно набирать текст и не возиться с интеграциями, вам не нужен Emacs. Лучше используйте VSCode или Vim. Но если вы из тех, кому нравится сама идея «программируемого окружения», — вы найдёте в Emacs друга на всю жизнь.&lt;/p&gt;
  &lt;p id=&quot;fnE2&quot;&gt;Это, кстати, ещё одно объяснение, почему Emacs всё ещё жив через полвека. Внутри него — Lisp, один из самых выразительных и долгоживущих языков программирования в истории (Lisp придумал Джон Маккарти в 1958-м, и он переживает уже несколько эпох; я уже запланировал написать про Lisp отдельный пост). А Lisp устроен так, что может моделировать любые другие парадигмы программирования — то, что мы сегодня называем функциональным программированием, было в Lisp с самого начала. Объектное программирование? CLOS. Метапрограммирование? Макросы. Асинхронность? Что угодно. Поэтому elisp-сообщество всегда могло добавить в Emacs любую современную парадигму: Lisp как язык настолько гибок, что встраивает их без боли.&lt;/p&gt;
  &lt;p id=&quot;1Sy7&quot;&gt;В vi такой возможности нет. Vim-script — это специализированный язык исключительно для настройки Vim, в нём невозможно написать ничего интересного за пределами редактора. Когда сообщество Vim это поняло, они сделали &lt;strong&gt;Neovim&lt;/strong&gt; — современный форк, который вместо VimScript использует &lt;strong&gt;Lua&lt;/strong&gt;. Это шаг в правильном направлении, но это всё равно не Lisp-машина: Lua вшивается в Neovim как чужеродный язык, а elisp и есть Emacs.&lt;/p&gt;
  &lt;h2 id=&quot;12-что-в-итоге-выбрать-в-2026-году&quot;&gt;12. Что в итоге выбрать в 2026 году&lt;/h2&gt;
  &lt;p id=&quot;gFGj&quot;&gt;Если вы ещё не выбрали инструмент и думаете, стоит ли в 2026 году учить Emacs или Vim, мой честный ответ — зависит от того, чего вы хотите.&lt;/p&gt;
  &lt;p id=&quot;NRek&quot;&gt;&lt;strong&gt;Если вам нужен просто хороший редактор, который работает из коробки и в котором можно писать код&lt;/strong&gt; — берите VSCode, Sublime Text, Zed или JetBrains-IDE. Через десять минут после установки вы продуктивны.&lt;/p&gt;
  &lt;p id=&quot;PgZu&quot;&gt;&lt;strong&gt;Если вы цените эффективное модальное редактирование и хотите минималистичный инструмент&lt;/strong&gt; — берите Vim (или Neovim). Через две недели практики вы научитесь работать в нём быстрее, чем в любом IDE.&lt;/p&gt;
  &lt;p id=&quot;WbLv&quot;&gt;&lt;strong&gt;Если вы любите идею программируемого окружения, обожаете возиться с инструментом, хотите org-mode и Magit, и готовы вложить полгода в постепенное обживание системы&lt;/strong&gt; — берите Emacs. Лучше всего &lt;strong&gt;Doom Emacs&lt;/strong&gt;: это самый быстрый способ войти в современный Emacs без болезненных трёх лет настройки.&lt;/p&gt;
  &lt;p id=&quot;HbKy&quot;&gt;&lt;strong&gt;Если вы хотите всё сразу и не определились&lt;/strong&gt;, установите VSCode и добавьте к нему плагин Vim-эмуляции. Это компромисс, который сейчас выбирает большинство, и это разумно.&lt;/p&gt;
  &lt;p id=&quot;ITVw&quot;&gt;Сам факт, что в 2026 году инструмент, разработанный в 1976-м, до сих пор остаётся для значительной доли программистов рабочим выбором — он не случайный. Emacs пережил столько технологических эпох, потому что внутри него — не редактор, а программируемое окружение. А окружение, в котором можно перепрограммировать что угодно, не устаревает: оно подстраивается под любую новую эпоху своими же средствами.&lt;/p&gt;
  &lt;h2 id=&quot;13-финал-два-мира-одна-задача&quot;&gt;13. Финал: два мира, одна задача&lt;/h2&gt;
  &lt;p id=&quot;tQQu&quot;&gt;Возвращаясь к началу: в 1976 году в MIT и в Беркли два человека написали два редактора, каждый из которых стал стандартом своей школы программирования. Через пятьдесят лет оба инструмента всё ещё активно развиваются и используются миллионами. Они разные. Они спорят. Они никогда не помирятся.&lt;/p&gt;
  &lt;p id=&quot;ILLK&quot;&gt;И в этом — главное наблюдение про инструменты программиста. Хороший инструмент — это не «правильный», а тот, который вы выбираете в полном осознании альтернатив. Vim — отличный выбор, если вы цените модальное редактирование и минимализм. Emacs — отличный выбор, если вы хотите программировать сам редактор. VSCode — отличный выбор, если вам нужно работать прямо сейчас, без месяцев настройки. Vim и Emacs в 2026-м — это не «лучше, чем VSCode». Это другое решение задачи, которое подходит другому типу человека.&lt;/p&gt;
  &lt;p id=&quot;M2VN&quot;&gt;Сам я работаю в Neovim, и он мне нравится: модальное редактирование, Lua-конфигурация, быстрая интеграция с LSP — всё на месте. Но к Emacs у меня глубокое уважение, несмотря на то, что я пока им не пользуюсь. Мне нравится сама идея, что редактор может быть в первую очередь Lisp-машиной, в которой можно написать что угодно. И что после полувека развития эта Lisp-машина всё ещё живёт, развивается и обрастает новой функциональностью — нативной компиляцией, LSP-сервером, Tree-sitter, Wayland, чем угодно. Без шума, без рекламы, без венчурного финансирования. Просто потому, что определённый тип людей продолжает её использовать и улучшать.&lt;/p&gt;
  &lt;p id=&quot;Uarv&quot;&gt;В следующем посте я расскажу про &lt;strong&gt;Lisp&lt;/strong&gt; — язык, который оказался внутри Emacs и который сам по себе живёт уже почти семьдесят лет. У него ещё более удивительная история.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;дополнительное-чтение&quot;&gt;Дополнительное чтение&lt;/h2&gt;
  &lt;h3 id=&quot;историческое&quot;&gt;Историческое&lt;/h3&gt;
  &lt;ul id=&quot;WG3J&quot;&gt;
    &lt;li id=&quot;Dy5s&quot;&gt;&lt;a href=&quot;https://www.gnu.org/software/emacs/emacs-paper.html&quot; target=&quot;_blank&quot;&gt;The original announcement of EMACS&lt;/a&gt;, Стэнфорд, 1981 — статья Столлмена об устройстве и философии раннего Emacs. Читается отлично, многое из тогдашних соображений до сих пор актуально.&lt;/li&gt;
    &lt;li id=&quot;gSZR&quot;&gt;&lt;a href=&quot;https://softwarepreservation.computerhistory.org/emacs/&quot; target=&quot;_blank&quot;&gt;Emacs Historical Archive&lt;/a&gt; — собрание оригинальных исходников TECO-Emacs, MulticsEmacs, Gosling Emacs и других.&lt;/li&gt;
    &lt;li id=&quot;VKwO&quot;&gt;&lt;a href=&quot;https://twobithistory.org/2018/08/05/where-vim-came-from.html&quot; target=&quot;_blank&quot;&gt;«Where Vim Came From»&lt;/a&gt; — отличная популярная статья о происхождении vi из ed → em → ex → vi.&lt;/li&gt;
    &lt;li id=&quot;3XKy&quot;&gt;&lt;a href=&quot;https://lunduke.substack.com/p/the-true-history-of-vi&quot; target=&quot;_blank&quot;&gt;«The True History of vi» (Lunduke)&lt;/a&gt; — детальная хронология истории vi.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;современный-emacs&quot;&gt;Современный Emacs&lt;/h3&gt;
  &lt;ul id=&quot;R2Ks&quot;&gt;
    &lt;li id=&quot;vsa5&quot;&gt;&lt;a href=&quot;https://github.com/doomemacs/doomemacs&quot; target=&quot;_blank&quot;&gt;Doom Emacs&lt;/a&gt; — рекомендованный мной дистрибутив для входа в современный Emacs.&lt;/li&gt;
    &lt;li id=&quot;GxJW&quot;&gt;&lt;a href=&quot;https://www.spacemacs.org/&quot; target=&quot;_blank&quot;&gt;Spacemacs&lt;/a&gt; — альтернативный дистрибутив, более «фреймворковый».&lt;/li&gt;
    &lt;li id=&quot;z7vo&quot;&gt;&lt;a href=&quot;https://www.masteringemacs.org/&quot; target=&quot;_blank&quot;&gt;Mastering Emacs&lt;/a&gt; — лучший современный сайт-учебник по Emacs.&lt;/li&gt;
    &lt;li id=&quot;iP5T&quot;&gt;&lt;a href=&quot;https://www.emacswiki.org/&quot; target=&quot;_blank&quot;&gt;Emacs Wiki&lt;/a&gt; — гигантская коллективная wiki со всем, что нужно знать.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;видео&quot;&gt;Видео&lt;/h3&gt;
  &lt;figure id=&quot;QWM3&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/B6jfrrwR10k?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;HTx7&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=B6jfrrwR10k&quot; target=&quot;_blank&quot;&gt;«Emacs is sexy»&lt;/a&gt; — обзор современных возможностей Emacs (2023).&lt;/p&gt;
  &lt;figure id=&quot;RV31&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/dr_iBj91eeI?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;gwVb&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=dr_iBj91eeI&amp;list=PL0ODg9iAPi4MuA15gbR8NrJLHDWR5A6xK&quot; target=&quot;_blank&quot;&gt;Getting Started With Doom Emacs&lt;/a&gt; — серия видео про Doom Emacs.&lt;/p&gt;
  &lt;h3 id=&quot;для-сравнения--vim&quot;&gt;Для сравнения — Vim&lt;/h3&gt;
  &lt;ul id=&quot;8sqf&quot;&gt;
    &lt;li id=&quot;g4Db&quot;&gt;&lt;a href=&quot;https://github.com/iggredible/Learn-Vim&quot; target=&quot;_blank&quot;&gt;Vim Tutor&lt;/a&gt; — стандартный туториал, поставляется с любым Vim/Neovim, запускается командой &lt;code&gt;vimtutor&lt;/code&gt;.&lt;/li&gt;
    &lt;li id=&quot;Iz7F&quot;&gt;&lt;a href=&quot;https://neovim.io/&quot; target=&quot;_blank&quot;&gt;Neovim&lt;/a&gt; — современный форк Vim с поддержкой Lua и LSP.&lt;/li&gt;
    &lt;li id=&quot;hAB0&quot;&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Editor_war&quot; target=&quot;_blank&quot;&gt;«The Editor War»&lt;/a&gt; — статья в Википедии об истории редакторских войн.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:stallman</id><link rel="alternate" type="text/html" href="https://azhark.cc/stallman?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Ричард Столлман: пророк свободного софта</title><published>2026-05-28T15:58:37.926Z</published><updated>2026-05-28T16:14:05.552Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/fb/0c/fb0c44db-e645-4ecc-8fff-36df898eaf26.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/80/2b/802bc71b-fc26-4997-b89c-c5ce226ed3f7.png&quot;&gt;Сегодня на видеозвонке я обратил внимание на одну деталь за спиной одного из коллег: там на стене висела фотография в рамке — Ричард Столлман с длинными волосами и характерной бородой, держит флаг GNU, а на полях — размашистый автограф. Коллега рассказал, что во время визита Столлмана в Москву ему удалось получить фото с автографом. Ну и мы коротко обсудили личность Столлмана.</summary><content type="html">
  &lt;figure id=&quot;gHvv&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/80/2b/802bc71b-fc26-4997-b89c-c5ce226ed3f7.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;sGPB&quot;&gt;Сегодня на видеозвонке я обратил внимание на одну деталь за спиной одного из коллег: там на стене висела фотография в рамке — Ричард Столлман с длинными волосами и характерной бородой, держит флаг GNU, а на полях — размашистый автограф. Коллега рассказал, что во время визита Столлмана в Москву ему удалось получить фото с автографом. Ну и мы коротко обсудили личность Столлмана.&lt;/p&gt;
  &lt;p id=&quot;11VY&quot;&gt;Уже после этого обсуждения я задумался и восхитился, насколько один человек может быть последователен в своих убеждениях. Не просто декларировать что-то правильное на сцене, а &lt;strong&gt;реально, день за днём, сорок с лишним лет жить по этим декларациям без поблажек самому себе&lt;/strong&gt;. Не пользоваться смартфоном. Не открывать ни одну веб-страницу, на которой исполняется несвободный JavaScript. Не подключаться к Wi-Fi, который требует регистрации. Не пользоваться сервисами Google, Amazon, Apple, Microsoft. Не летать самолётами компаний, требующих биометрию. Не давать интервью изданиям, не публикующим материалы под свободной лицензией. И при этом — продолжать программировать в Emacs на ноутбуке с открытой BIOS-прошивкой, выступать с лекциями по всему миру, и за эти годы построить юридический и этический фундамент, на котором сегодня держится вся индустрия открытого программного обеспечения.&lt;/p&gt;
  &lt;p id=&quot;vosR&quot;&gt;Этот человек — &lt;strong&gt;Ричард Мэтью Столлман&lt;/strong&gt;, основатель Фонда свободного программного обеспечения (Free Software Foundation, FSF), автор GNU Manifesto, главный архитектор операционной системы GNU, создатель GNU General Public License (GPL) — самой популярной свободной лицензии в мире, изобретатель понятия «копилефт» и идеолог всего движения свободного программного обеспечения.&lt;/p&gt;
  &lt;p id=&quot;wWkb&quot;&gt;В этом посте я хочу рассказать об этом по-настоящему неординарном человеке. О его жизни от ребёнка-вундеркинда из Манхэттена до седого пророка с бородой. О том, как в 1980 году сломавшийся лазерный принтер Xerox привёл его к идее, которая через сорок лет станет фундаментом каждого открытого проекта на GitHub. О четырёх свободах и о его образе жизни, который большинство сочтёт чудачеством. О его блистательной репутации учёного и о спорах вокруг его личности, в том числе о скандале 2019 года и возвращении в совет директоров FSF в 2021-м. И о том, почему фотография с его автографом на стене у моего коллеги — это не сувенир, а артефакт почти религиозного значения для многих людей в нашей индустрии.&lt;/p&gt;
  &lt;h2 id=&quot;1-манхэттен-1953-дитя-рождённое-для-машин&quot;&gt;1. Манхэттен, 1953: дитя, рождённое для машин&lt;/h2&gt;
  &lt;p id=&quot;DsWE&quot;&gt;Ричард Мэтью Столлман родился &lt;strong&gt;16 марта 1953 года&lt;/strong&gt; в Нью-Йорке. По его собственной шутке, «собран в одной из лабораторий Манхэттена около 1953 года». В этой шутке больше правды, чем кажется: с раннего детства Ричард производил впечатление мальчика, чей ум устроен иначе, чем у сверстников.&lt;/p&gt;
  &lt;p id=&quot;0aKn&quot;&gt;Мать — Алиса Липпман, школьная учительница и активистка. Отец — Дэниел Столлман, ветеран Второй мировой войны, печатник. Родители развелись, когда Ричарду было около десяти. Воспитывала его мать, в Манхэттене.&lt;/p&gt;
  &lt;p id=&quot;Xjm4&quot;&gt;Калькуляторы и цифровые штуки Ричард полюбил рано. Уже в семь-восемь лет он самостоятельно изучил школьный курс математики на годы вперёд. К двенадцати уже учился в летней лагерной программе для одарённых школьников, к четырнадцати попал в IBM на программу для подростков и впервые написал собственную программу, симулятор работы процессора IBM 7094 на языке APL. Это было лето 1969 года. Через десять лет на этой же платформе будут писать программисты NASA.&lt;/p&gt;
  &lt;p id=&quot;MX6q&quot;&gt;В 1970-м Ричард поступил в &lt;strong&gt;Гарвардский университет&lt;/strong&gt; на математический факультет. Учился отлично, но всё свободное время проводил в &lt;strong&gt;MIT&lt;/strong&gt; — в соседнем кампусе, где была легендарная Лаборатория искусственного интеллекта (MIT AI Lab). Уже на первом курсе Гарварда — в 1971-м — он стал постоянным сотрудником этой лаборатории и нашёл там свой настоящий дом.&lt;/p&gt;
  &lt;h2 id=&quot;2-mit-ai-lab-культура-хакеров-и-совместного-знания&quot;&gt;2. MIT AI Lab: культура хакеров и совместного знания&lt;/h2&gt;
  &lt;p id=&quot;uXoJ&quot;&gt;Чтобы понять Столлмена, надо понять MIT AI Lab начала 1970-х.&lt;/p&gt;
  &lt;p id=&quot;gwTj&quot;&gt;Это было одно из мест, где родилась культура хакеров в исходном смысле этого слова, где хакером называли не взломщика/преступника, а человека, который виртуозно владеет своей программой и любит её улучшать. Лаборатория жила по правилам, которые сейчас кажутся невозможными: круглосуточный открытый доступ, никаких паролей на машинах (Столлман считал пароли «не-академической практикой»), общий код, открытые шкафы с ключами от всех помещений, неформальный обмен наработками. У лаборатории даже была так называемая &lt;strong&gt;«туристическая политика»&lt;/strong&gt;: любой человек с улицы мог зайти, сесть за свободный терминал и поработать, если он не мешал штатным исследователям.&lt;/p&gt;
  &lt;p id=&quot;zLXt&quot;&gt;Программисты-хакеры в этой среде образовывали маленькое племя со своим арго, своими шутками и ритуалами. Они работали на компьютерах, изготовленных в самом MIT — в первую очередь на машинах &lt;strong&gt;PDP-10&lt;/strong&gt; под управлением операционной системы &lt;strong&gt;ITS&lt;/strong&gt; (Incompatible Timesharing System), которая, как и почти всё ПО в лаборатории, была написана самими хакерами и распространялась без всяких ограничений.&lt;/p&gt;
  &lt;p id=&quot;QIb2&quot;&gt;В этой среде прошли годы становления Столлмена. Он быстро стал одним из ведущих программистов лаборатории, известным во всей хакерской сети ARPANET под коротким логином &lt;strong&gt;RMS&lt;/strong&gt; — Richard Matthew Stallman. К концу 1970-х он считался одним из самых способных программистов планеты. Среди его разработок того времени — текстовый редактор &lt;strong&gt;Emacs&lt;/strong&gt;, который он начал писать в 1976-м и который сейчас, спустя ровно полвека, всё ещё активно разрабатывается и используется миллионами программистов.&lt;/p&gt;
  &lt;p id=&quot;tvkZ&quot;&gt;Для Столлмена эта культура — общий код, совместное владение, помощь соседу, самостоятельный ремонт неработающего оборудования — была не идеологией и не утопией, а просто &lt;strong&gt;тем, как программисты должны работать в нормальной научной среде&lt;/strong&gt;. Программа — это рецепт. Рецепт можно передать соседу. Сосед может улучшить рецепт и передать дальше. Так работает наука и так работает кухня. Так должно работать и программирование.&lt;/p&gt;
  &lt;p id=&quot;7uuQ&quot;&gt;Но именно тогда эта культура начала разрушаться.&lt;/p&gt;
  &lt;h2 id=&quot;3-1980-год-лазерный-принтер-xerox-и-моральная-катастрофа&quot;&gt;3. 1980 год, лазерный принтер Xerox и моральная катастрофа&lt;/h2&gt;
  &lt;p id=&quot;MLkz&quot;&gt;В 1980 году MIT получила в подарок от компании Xerox новейший лазерный принтер Xerox 9700. Это была вершина тогдашней техники: дорогой, быстрый, способный печатать на профессиональном уровне.&lt;/p&gt;
  &lt;p id=&quot;JSXX&quot;&gt;Принтер быстро стал популярным в лаборатории. Но он стоял на отдельном этаже от большинства пользователей, и у него была одна неприятная особенность: он периодически зажёвывал бумагу. Старый принтер — XGP, тоже от Xerox, — у Столлмена был доработан собственноручно: программа отслеживала статус задания и уведомляла пользователя, когда печать готова или когда случилась поломка. Все были довольны, не надо было зря бегать на другой этаж.&lt;/p&gt;
  &lt;p id=&quot;L4cV&quot;&gt;Со 9700 такого фокуса не получилось. Xerox прислала вместе с принтером только исполняемый код, без исходников. Просто бинарник, который ничего не сообщал. Столлман попросил у Xerox исходники, чтобы доработать и эту новую машину. Ему отказали, сославшись на корпоративную политику.&lt;/p&gt;
  &lt;p id=&quot;t3O0&quot;&gt;Столлман узнал, что один из преподавателей &lt;strong&gt;университета Карнеги-Меллона&lt;/strong&gt; в Питтсбурге работает с такой же машиной и имеет доступ к её исходникам. Столлман специально приехал в Питтсбург, нашёл этого профессора и попросил поделиться кодом — по правилам той самой хакерской традиции, в которой все они выросли.&lt;/p&gt;
  &lt;p id=&quot;KFf1&quot;&gt;Преподаватель отказал. Сказал, что подписал с Xerox соглашение о неразглашении (NDA), и поделиться кодом не имеет права.&lt;/p&gt;
  &lt;p id=&quot;C67r&quot;&gt;Этот момент сам Столлман потом будет считать решающим в своей жизни. Это был не профессиональный отказ, а &lt;strong&gt;моральная катастрофа&lt;/strong&gt;: один программист отказывал другому в помощи не потому, что не мог, а потому что подписал бумагу. Человек, которого Столлман считал коллегой по цеху и продолжателем общего дела, в одну минуту превратился в чужого, обязанного держать рот закрытым перед бывшими собратьями.&lt;/p&gt;
  &lt;p id=&quot;aM3U&quot;&gt;Сэм Уильямс в биографии &lt;strong&gt;&lt;a href=&quot;https://archive.org/details/faif-2.0&quot; target=&quot;_blank&quot;&gt;«Free as in Freedom»&lt;/a&gt;&lt;/strong&gt; (доступной целиком онлайн под свободной лицензией) пишет, что Столлман вышел из кабинета этого профессора в состоянии, которое сам потом сравнит с религиозным шоком. Он осознал, что мир хакеров, в котором он вырос, заканчивается. Что &lt;strong&gt;программисты теперь могут жить в режиме обязательного молчания друг перед другом&lt;/strong&gt;. Что любой код, в который он или его коллеги когда-либо внесут вклад, может оказаться запертым за корпоративными NDA. Что это не отдельный плохой инцидент, а символ наступления новой эпохи.&lt;/p&gt;
  &lt;p id=&quot;xsEB&quot;&gt;К 1981–1982 годам ситуация в самом MIT AI Lab подтвердила его страхи. Лаборатория раскололась: компания Symbolics, основанная бывшими сотрудниками, переманила к себе почти всех ведущих хакеров и стала разрабатывать проприетарные версии того кода, который раньше был общим. Лаборатория опустела. Столлман в одиночку с 1982-го по конец 1983-го пытался воспроизводить наработки Symbolics для оставшейся в MIT системы, чтобы у компании не сложилась монополия. Это было физически и эмоционально изматывающее занятие, и оно показало ему, что бороться за прошлое бесполезно. Нужно строить будущее.&lt;/p&gt;
  &lt;h2 id=&quot;4-27-сентября-1983-анонс-gnu&quot;&gt;4. 27 сентября 1983: анонс GNU&lt;/h2&gt;
  &lt;p id=&quot;5fD3&quot;&gt;&lt;strong&gt;27 сентября 1983 года&lt;/strong&gt; Столлман отправил в несколько списков рассылки ARPANET и Usenet (новостные группы &lt;code&gt;net.unix-wizards&lt;/code&gt; и &lt;code&gt;net.usoft&lt;/code&gt;) короткое объявление под заголовком &lt;strong&gt;«new UNIX implementation»&lt;/strong&gt; — «новая реализация UNIX». В нём говорилось примерно следующее:&lt;/p&gt;
  &lt;blockquote id=&quot;3SwF&quot;&gt;«Начиная с этого Дня Благодарения, я планирую написать полностью совместимую с UNIX систему программного обеспечения под названием GNU (Gnu’s Not Unix), и раздавать её бесплатно всем, кто может ею воспользоваться. Очень нужны помощники, время, деньги, программы и оборудование».&lt;/blockquote&gt;
  &lt;p id=&quot;q0LN&quot;&gt;Название &lt;strong&gt;GNU&lt;/strong&gt; — рекурсивный акроним: G — Gnu, N — Not, U — Unix. То есть «GNU’s Not Unix». Типично хакерская шутка: имя проекта содержит ссылку на самого себя, и распаковать её можно бесконечно (GNU’s Not Unix’s Not Unix’s Not Unix…). Произносится с твёрдым «г»: «гну».&lt;/p&gt;
  &lt;p id=&quot;tCYw&quot;&gt;Революционность этого анонса была в том, что прежде ни у кого в индустрии не было идеи &lt;strong&gt;с нуля, построить полностью свободную операционную систему&lt;/strong&gt;, в которой каждый компонент мог бы быть открыт, изменён и распространён без ограничений. UNIX, который был на тот момент эталоном, был частной собственностью AT&amp;amp;T. Microsoft DOS — Microsoft. VMS — DEC. Все мощные ОС были чужой собственностью.&lt;/p&gt;
  &lt;p id=&quot;N1is&quot;&gt;Столлман предложил построить собственную ОС, совместимую с UNIX, но свободную: исходный код открыт, любому можно изучать, изменять и распространять. И реализовать полный стек: GNU Emacs, GNU C Compiler, GNU debugger, GNU shell, всё необходимое для нормальной работы программиста. И сам взялся за разработку — в одиночку, без ресурсов и без чьего-либо заказа.&lt;/p&gt;
  &lt;p id=&quot;rtIr&quot;&gt;К &lt;strong&gt;январю 1984 года&lt;/strong&gt; Столлман уволился из MIT, чтобы у лаборатории не было прав на его новые программы и она не могла лицензировать их корпорациям. Он остался работать в лаборатории как «приглашённый учёный» (visiting scientist) без зарплаты — этот статус у него сохранялся до 2019 года. До конца 1990-х он в буквальном смысле жил и спал в своём офисе в MIT, чтобы сэкономить на жилье и тратить все ресурсы на GNU.&lt;/p&gt;
  &lt;h2 id=&quot;5-1985-gnu-manifesto-и-фонд-свободного-по&quot;&gt;5. 1985: GNU Manifesto и Фонд свободного ПО&lt;/h2&gt;
  &lt;p id=&quot;8ADR&quot;&gt;В марте 1985 года Столлман опубликовал в журнале &lt;strong&gt;Dr. Dobb’s Journal&lt;/strong&gt; документ под названием &lt;strong&gt;&lt;a href=&quot;https://www.gnu.org/gnu/manifesto.en.html&quot; target=&quot;_blank&quot;&gt;«GNU Manifesto»&lt;/a&gt;&lt;/strong&gt; — манифест GNU. На сегодня этот текст переведён на десятки языков, в том числе &lt;a href=&quot;https://www.gnu.org/gnu/manifesto.ru.html&quot; target=&quot;_blank&quot;&gt;на русский&lt;/a&gt;, и читается всё так же ясно.&lt;/p&gt;
  &lt;p id=&quot;27ql&quot;&gt;Манифест — это, по сути, программное заявление: что такое GNU, зачем он нужен, какую этическую позицию он отстаивает, почему программисты не должны соглашаться на проприетарную модель. В нём же впервые ясно сформулирована идея, что &lt;strong&gt;«свободное» в выражении „свободное программное обеспечение&amp;quot; — это не „бесплатное&amp;quot;, а „без ограничений&amp;quot;&lt;/strong&gt;. «Think free as in free speech, not as in free beer» — «думайте свободно, как в выражении „свобода слова&amp;quot;, а не как в „бесплатное пиво&amp;quot;».&lt;/p&gt;
  &lt;p id=&quot;5E7B&quot;&gt;В &lt;strong&gt;октябре 1985 года&lt;/strong&gt; Столлман основал &lt;strong&gt;Free Software Foundation (FSF)&lt;/strong&gt; — некоммерческую организацию, целью которой стало поддерживать разработку свободного ПО, нанимать программистов на работу над GNU, защищать свободные лицензии в суде и пропагандировать ценности свободного ПО. FSF существует до сих пор, базируется в Бостоне, имеет филиалы в Европе, Латинской Америке и Индии.&lt;/p&gt;
  &lt;p id=&quot;pkj8&quot;&gt;С этого момента &lt;strong&gt;«свободное ПО»&lt;/strong&gt; перестало быть туманной идеей и стало конкретным движением со своим уставом, своей юридической базой и своим лидером.&lt;/p&gt;
  &lt;h2 id=&quot;6-четыре-свободы&quot;&gt;6. Четыре свободы&lt;/h2&gt;
  &lt;p id=&quot;sN1W&quot;&gt;В основе всей философии Столлмена лежат &lt;strong&gt;четыре свободы&lt;/strong&gt;, которые должна обеспечивать любая программа, чтобы считаться свободной:&lt;/p&gt;
  &lt;ul id=&quot;X3yq&quot;&gt;
    &lt;li id=&quot;aGnf&quot;&gt;&lt;strong&gt;Свобода 0&lt;/strong&gt; — свобода запускать программу для любых целей.&lt;/li&gt;
    &lt;li id=&quot;iN4p&quot;&gt;&lt;strong&gt;Свобода 1&lt;/strong&gt; — свобода изучать, как программа работает, и изменять её под свои нужды.&lt;/li&gt;
    &lt;li id=&quot;iy0n&quot;&gt;&lt;strong&gt;Свобода 2&lt;/strong&gt; — свобода распространять копии программы, чтобы помогать другим.&lt;/li&gt;
    &lt;li id=&quot;DYIu&quot;&gt;&lt;strong&gt;Свобода 3&lt;/strong&gt; — свобода распространять копии своих изменённых версий программы.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;kV4V&quot;&gt;Заметили нумерацию? Она с нуля. Столлман — программист, и для него начало отсчёта — это 0, а не 1. Историческая причина: изначально свобод было три, с номерами 1, 2, 3. Позже Столлман понял, что «право запускать программу» само по себе тоже надо явно перечислить, и добавил его — но не перенумеровывать же уже устоявшиеся 1, 2, 3, поэтому добавилась «свобода 0». Шутка, ставшая канонической.&lt;/p&gt;
  &lt;p id=&quot;X9VF&quot;&gt;Все эти свободы перечислены &lt;a href=&quot;https://www.gnu.org/philosophy/free-sw.html&quot; target=&quot;_blank&quot;&gt;на странице gnu.org&lt;/a&gt; и являются официальным определением свободного ПО, на которое опираются все свободные лицензии — GPL, LGPL, AGPL и десятки других. Если программа нарушает хотя бы одну из этих свобод, она по определению не свободна, а проприетарна.&lt;/p&gt;
  &lt;h2 id=&quot;7-копилефт-и-gpl-гениальный-юридический-хак&quot;&gt;7. Копилефт и GPL: гениальный юридический хак&lt;/h2&gt;
  &lt;p id=&quot;DQjp&quot;&gt;Между 1985 и 1989 годами Столлман сделал то, что я считаю одним из самых элегантных юридических ходов в истории технологий.&lt;/p&gt;
  &lt;p id=&quot;Bm7U&quot;&gt;Проблема была такая: если просто положить программу в общий доступ (public domain), то любой может взять её, добавить туда свои изменения и &lt;strong&gt;закрыть результат проприетарной лицензией&lt;/strong&gt;. То есть свобода исходного кода теряется на первом же шаге.&lt;/p&gt;
  &lt;p id=&quot;mrI9&quot;&gt;Столлман придумал противоядие: использовать сам копирайт против копирайта. Программу выпускают &lt;strong&gt;под собственной лицензией&lt;/strong&gt;, которая разрешает её использовать, изучать, изменять и распространять, но &lt;strong&gt;только при условии, что любые производные работы будут выпущены под той же лицензией&lt;/strong&gt;. То есть свобода становится самовоспроизводящейся: если вы хотите взять свободный код и изменить его, ваши изменения тоже должны быть свободными.&lt;/p&gt;
  &lt;p id=&quot;scsm&quot;&gt;Этот трюк Столлман назвал &lt;strong&gt;«копилефт»&lt;/strong&gt; (copyleft) — анти-копирайт, но на основе того же юридического механизма. Каламбур: правая часть слова «copyright» (left ↔ right), но также и игра на «I left a copy».&lt;/p&gt;
  &lt;p id=&quot;k5jj&quot;&gt;В &lt;strong&gt;1989 году&lt;/strong&gt; Столлман выпустил первую общую версию своей лицензии — &lt;strong&gt;&lt;a href=&quot;https://www.gnu.org/licenses/old-licenses/gpl-1.0.html&quot; target=&quot;_blank&quot;&gt;GNU General Public License version 1 (GPLv1)&lt;/a&gt;&lt;/strong&gt;. Это была первая программно-независимая лицензия, основанная на принципе копилефта. В &lt;strong&gt;1991-м&lt;/strong&gt; вышла GPLv2, в &lt;strong&gt;2007-м&lt;/strong&gt; — GPLv3 (значительно усиленная против корпоративных приёмов обхода свободы через DRM и патенты). Сегодня GPL — самая популярная свободная лицензия в мире. Под ней выпущены ядро Linux, GCC, Git, Bash, MySQL/MariaDB и тысячи других проектов. По разным оценкам, под лицензиями семейства GPL выпущено около 30–35 % всего свободного ПО в мире.&lt;/p&gt;
  &lt;p id=&quot;IKia&quot;&gt;И в основе всего этого — очень умный юридический трюк одного очень упрямого человека.&lt;/p&gt;
  &lt;h2 id=&quot;8-gnu--linux--gnulinux&quot;&gt;8. GNU + Linux = «GNU/Linux»&lt;/h2&gt;
  &lt;p id=&quot;ytLq&quot;&gt;К началу 1990-х у GNU было почти всё: компилятор GCC, отладчик GDB, текстовый редактор Emacs, оболочка Bash, утилиты coreutils, целый набор системных программ. Не было одного: &lt;strong&gt;ядра операционной системы&lt;/strong&gt;. Над собственным ядром под названием &lt;strong&gt;GNU Hurd&lt;/strong&gt; Столлман и его команда работали с 1990 года, но Hurd оказался технически сложным и затянулся на годы (он, кстати, всё ещё разрабатывается, но в основном как академический эксперимент).&lt;/p&gt;
  &lt;p id=&quot;CVJG&quot;&gt;В &lt;strong&gt;1991 году&lt;/strong&gt; финский студент &lt;strong&gt;Линус Торвальдс&lt;/strong&gt; объявил о начале работы над собственным ядром под именем &lt;strong&gt;Linux&lt;/strong&gt; и быстро довёл его до рабочего состояния. Все утилиты GNU отлично с ним работали. Получалась полноценная операционная система. И именно эту комбинацию весь мир сегодня знает как «Linux».&lt;/p&gt;
  &lt;p id=&quot;eSs4&quot;&gt;Столлман по этому поводу до сих пор спорит, и спорит обоснованно. По его настоянию правильное название комбинированной системы — &lt;strong&gt;GNU/Linux&lt;/strong&gt; (произносится «GNU слэш Linux» или «GNU плюс Linux»), потому что &lt;strong&gt;Linux — это только ядро&lt;/strong&gt;, а вся операционная система состоит из ядра Linux плюс пользовательского пространства GNU. Это не педантизм, а вопрос исторической справедливости: GNU был спроектирован за восемь лет до Linux, и большая часть инструментов, которые делают «Linux» полезной для пользователя, написана командой GNU.&lt;/p&gt;
  &lt;p id=&quot;eZS7&quot;&gt;В русскоязычном пространстве эта борьба за название почти проиграна — все говорят «Linux». Столлман в каждом своём выступлении просит коллег говорить &lt;strong&gt;GNU/Linux&lt;/strong&gt;. Это, пожалуй, единственная битва, в которой он проигрывает год за годом.&lt;/p&gt;
  &lt;h2 id=&quot;9-образ-жизни-убеждения-доведённые-до-конца&quot;&gt;9. Образ жизни: убеждения, доведённые до конца&lt;/h2&gt;
  &lt;p id=&quot;WMTR&quot;&gt;Самая поразительная черта Столлмена — не то, что он сделал GNU и FSF. Это, в конце концов, программистская работа: масштабная, но того же сорта, что у тысяч других программистов. Поразительно то, насколько последовательно он живёт в соответствии со своими принципами. Не для красного словца, а &lt;strong&gt;прямо каждый день&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;sLQe&quot;&gt;Вот, например, что Столлман делает и не делает (он сам подробно описал свой быт &lt;a href=&quot;https://stallman.org/stallman-computing.html&quot; target=&quot;_blank&quot;&gt;на своей странице&lt;/a&gt;):&lt;/p&gt;
  &lt;ul id=&quot;mDRE&quot;&gt;
    &lt;li id=&quot;OW6O&quot;&gt;&lt;strong&gt;Не пользуется смартфоном.&lt;/strong&gt; «Мобильный телефон — это мечта Сталина. Я не собираюсь носить с собой устройство, которое регистрирует каждое моё движение и которое в любой момент могут включить на прослушку».&lt;/li&gt;
    &lt;li id=&quot;IIWJ&quot;&gt;&lt;strong&gt;Использует только ноутбуки со свободной BIOS-прошивкой.&lt;/strong&gt; Долгое время это был &lt;strong&gt;Lemote Yeeloong&lt;/strong&gt; — китайский нетбук на процессоре Loongson, единственный на тот момент, способный загрузиться с полностью свободным BIOS. Позже — &lt;strong&gt;ThinkPad X60&lt;/strong&gt;, &lt;strong&gt;T400s&lt;/strong&gt;, сейчас — &lt;strong&gt;ThinkPad X200&lt;/strong&gt; с &lt;strong&gt;Libreboot&lt;/strong&gt; (свободная замена проприетарного UEFI) и дистрибутивом &lt;strong&gt;Trisquel&lt;/strong&gt; (один из официально одобренных FSF полностью свободных дистрибутивов GNU/Linux).&lt;/li&gt;
    &lt;li id=&quot;ykLF&quot;&gt;&lt;strong&gt;Не пользуется браузером в обычном режиме.&lt;/strong&gt; Просит коллег скачивать ему страницы по электронной почте отдельно, чтобы он мог их прочесть без выполнения JavaScript.&lt;/li&gt;
    &lt;li id=&quot;LuqS&quot;&gt;&lt;strong&gt;Не открывает страницы с нетривиальным несвободным JavaScript&lt;/strong&gt; (а это сегодня около 99 % веба).&lt;/li&gt;
    &lt;li id=&quot;R6xd&quot;&gt;&lt;strong&gt;Не пользуется DRM-контентом.&lt;/strong&gt; То есть — не смотрит Netflix, не слушает Spotify, не покупает Kindle-книги.&lt;/li&gt;
    &lt;li id=&quot;qU3P&quot;&gt;&lt;strong&gt;Не пользуется Google, Amazon, Facebook, Apple, Microsoft&lt;/strong&gt; — ни одним из их сервисов.&lt;/li&gt;
    &lt;li id=&quot;RKaH&quot;&gt;&lt;strong&gt;Не подключается к Wi-Fi, требующему регистрации или JavaScript для авторизации.&lt;/strong&gt;&lt;/li&gt;
    &lt;li id=&quot;fEMn&quot;&gt;&lt;strong&gt;Не летает самолётами компаний, требующих биометрическую идентификацию.&lt;/strong&gt;&lt;/li&gt;
    &lt;li id=&quot;61vI&quot;&gt;&lt;strong&gt;Большую часть времени работает в Emacs в текстовой консоли&lt;/strong&gt;, потому что мышь — это лишнее.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;zLtj&quot;&gt;Когда его ноутбук украли в 2012 году в Аргентине, Столлман купил похожий и продолжил работать.&lt;/p&gt;
  &lt;p id=&quot;eRpM&quot;&gt;Многие считают это чудачеством, даже нелепостью. Но если задуматься, &lt;strong&gt;каждое его «нет» — это последовательное применение его же собственного манифеста&lt;/strong&gt;. Если вы серьёзно верите, что несвободное ПО — это этическая проблема, нельзя одновременно верить в это и пользоваться WhatsApp. Большинство людей решают этот когнитивный диссонанс одним из двух способов: либо перестают верить в принцип, либо начинают делать исключения «по жизненной необходимости». Столлман — третий путь: он строит свою жизнь так, чтобы исключения были не нужны. Это сложно, неудобно, изолирует от 95 % современной инфраструктуры, однако он живёт так уже сорок с лишним лет.&lt;/p&gt;
  &lt;h2 id=&quot;10-святой-игнуций-и-песня-свободного-по&quot;&gt;10. Святой ИГНУций и Песня свободного ПО&lt;/h2&gt;
  &lt;p id=&quot;lroX&quot;&gt;Чего у Столлмана не отнять, так это очень своеобразного, сухого, почти британского чувства юмора. Он осознаёт, как со стороны выглядит человек, который сорок лет говорит на одну тему, и придумал для этого защитный механизм.&lt;/p&gt;
  &lt;p id=&quot;dsca&quot;&gt;Этот механизм — &lt;strong&gt;Святой ИГНУций&lt;/strong&gt; (Saint IGNUcius). С 1996 года Столлман периодически выходит на сцену в чёрной рясе, нацепляет на голову нимб (на самом деле — старый магнитный диск от винчестера) и объявляет, что он — святой Церкви Emacs, и любой желающий может тоже стать святым этой Церкви. У Церкви Emacs нет богов («пока», как он осторожно добавляет), но есть гимн — &lt;strong&gt;«Free Software Song»&lt;/strong&gt;, и Святой ИГНУций иногда соглашается его спеть. Слова он &lt;a href=&quot;https://stallman.org/saint.html&quot; target=&quot;_blank&quot;&gt;приводит на своём сайте&lt;/a&gt;, мелодия позаимствована из болгарской народной песни «Садим момчета».&lt;/p&gt;
  &lt;p id=&quot;FB3K&quot;&gt;📺 &lt;strong&gt;Видео:&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;Eubt&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/ubzS1j4vh9Y?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;DxYg&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=ubzS1j4vh9Y&quot; target=&quot;_blank&quot;&gt;Richard Stallman performs as Saint IGNUcius in the Church of Emacs&lt;/a&gt; — Столлман наряжается в рясу и нимб из пластины от HDD.&lt;/p&gt;
  &lt;p id=&quot;ytIC&quot;&gt;На сайте Столлмена есть и &lt;a href=&quot;https://stallman.org/saint.html&quot; target=&quot;_blank&quot;&gt;страница его «эпистолий»&lt;/a&gt; Церкви Emacs — пародия на новозаветные послания. Сам он &lt;a href=&quot;https://stallman.org/saint.html&quot; target=&quot;_blank&quot;&gt;предупреждает&lt;/a&gt;: «принимать Церковь Emacs (или любую другую церковь) слишком всерьёз может быть вредно для вашего здоровья».&lt;/p&gt;
  &lt;p id=&quot;GtIh&quot;&gt;Это и есть Столлман: серьёзный программист, серьёзный идеолог, и одновременно человек, готовый выйти на сцену c нимбом из пластины от старого жёсткого диска. Сочетание, которое объясняет, почему его так не любят корпоративные начальники и так любят инженеры на местах.&lt;/p&gt;
  &lt;h2 id=&quot;11-признание-и-награды&quot;&gt;11. Признание и награды&lt;/h2&gt;
  &lt;p id=&quot;4Coy&quot;&gt;За свою работу Столлман получил много премий:&lt;/p&gt;
  &lt;ul id=&quot;Omo1&quot;&gt;
    &lt;li id=&quot;c9uA&quot;&gt;&lt;strong&gt;1990 год — MacArthur Fellowship&lt;/strong&gt; («премия гениев»). Это $500 000, выплачиваемых в течение пяти лет, без каких-либо условий. Столлман потратил большую часть этих денег на работу FSF.&lt;/li&gt;
    &lt;li id=&quot;KTvM&quot;&gt;&lt;strong&gt;1991 — Grace Hopper Award&lt;/strong&gt; от ACM «за первую реализацию расширяемого редактора Emacs».&lt;/li&gt;
    &lt;li id=&quot;Kqyp&quot;&gt;&lt;strong&gt;1996&lt;/strong&gt; — степень почётного доктора Королевского технологического института Швеции.&lt;/li&gt;
    &lt;li id=&quot;hWJ1&quot;&gt;&lt;strong&gt;1998 — EFF Pioneer Award&lt;/strong&gt; от Electronic Frontier Foundation.&lt;/li&gt;
    &lt;li id=&quot;LH95&quot;&gt;&lt;strong&gt;2001 — Takeda Award за общественную и культурную работу&lt;/strong&gt; (один миллион долларов, на разработку GNU).&lt;/li&gt;
    &lt;li id=&quot;oSxO&quot;&gt;&lt;strong&gt;2002 — членство в National Academy of Engineering&lt;/strong&gt; США.&lt;/li&gt;
    &lt;li id=&quot;y38X&quot;&gt;&lt;strong&gt;2004 — National Academy of Sciences&lt;/strong&gt; (член).&lt;/li&gt;
    &lt;li id=&quot;Z5ba&quot;&gt;&lt;strong&gt;2015 — ACM Software System Award&lt;/strong&gt; (за GCC, вместе с авторами).&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;L0df&quot;&gt;А ещё у него есть с десяток почётных докторских степеней от университетов по всему миру — Глазго, Лионе, Латиноамериканской свободной школы, в Барселоне, Лейдене.&lt;/p&gt;
  &lt;h2 id=&quot;12-2019-год-скандал-отставка-и-его-последствия&quot;&gt;12. 2019 год: скандал, отставка и его последствия&lt;/h2&gt;
  &lt;p id=&quot;9LPU&quot;&gt;В сентябре 2019-го жизнь Столлмена сделала резкий поворот, о котором стоит рассказать, поскольку это нужно для понимания его биографии.&lt;/p&gt;
  &lt;p id=&quot;j3qb&quot;&gt;В августе 2019 года в США появились новые материалы о деле финансиста &lt;strong&gt;Джеффри Эпштейна&lt;/strong&gt;, известного своими сексуальными преступлениями против несовершеннолетних. Выяснилось, что Эпштейн жертвовал значительные суммы Медиа-лабу MIT. Директор Медиа-лаба Джой Ито был вынужден уйти. Внутри MIT начался разбор связей института с Эпштейном, в том числе обсуждалось, кто из преподавателей с ним общался. В обсуждении всплыл покойный к тому моменту легенда ИИ-исследований &lt;strong&gt;Марвин Мински&lt;/strong&gt;, в адрес которого одна из жертв Эпштейна, &lt;strong&gt;Вирджиния Джуффре&lt;/strong&gt;, заявила, что её, тогда несовершеннолетнюю, отправляли заниматься сексом с Мински.&lt;/p&gt;
  &lt;p id=&quot;Mrq9&quot;&gt;В этой почтовой рассылке Столлман &lt;strong&gt;публично возразил&lt;/strong&gt; против формулировки «Мински напал на несовершеннолетнюю». Он не оправдывал Эпштейна — называл его «серийным насильником». Но насчёт Мински написал, что &lt;strong&gt;тот, скорее всего, не знал, что Джуффре несовершеннолетняя и что её принуждали&lt;/strong&gt; к сексу, потому что Эпштейн имел все мотивы скрывать это от своих гостей. Дальше Столлман развил тезис, который для многих стал последней каплей: что определение «изнасилования» в современном американском праве «морально абсурдно», когда оно зависит от «незначительных деталей вроде того, в какой стране это произошло или сколько лет было жертве — 17 или 18».&lt;/p&gt;
  &lt;p id=&quot;R2PX&quot;&gt;&lt;a href=&quot;https://medium.com/@selamie/remove-richard-stallman-fec6ec210794&quot; target=&quot;_blank&quot;&gt;Скриншоты переписки попали в публичный доступ&lt;/a&gt; и быстро разлетелись по соцсетям. К ним добавились раскопанные старые записи в его блоге, где он несколько раз выступал в защиту педофилии как явления и в защиту легализации детской порнографии — позиции, которые сам Столлман впоследствии отозвал, но которые тогда стали топливом для общественного гнева.&lt;/p&gt;
  &lt;p id=&quot;MRuZ&quot;&gt;&lt;strong&gt;16 сентября 2019 года&lt;/strong&gt; Столлман &lt;a href=&quot;https://www.fsf.org/news/richard-m-stallman-resigns&quot; target=&quot;_blank&quot;&gt;объявил об отставке&lt;/a&gt; с поста президента Free Software Foundation и со своей позиции «приглашённого учёного» в MIT, на которой он провёл к тому моменту 35 лет. В своём заявлении он написал, что уходит «из-за давления на меня и на MIT в связи с серией непониманий и неверных интерпретаций».&lt;/p&gt;
  &lt;p id=&quot;R8vd&quot;&gt;В октябре 2019-го 33 ведущих мейнтейнера проекта GNU выпустили &lt;a href=&quot;https://lwn.net/Articles/802818/&quot; target=&quot;_blank&quot;&gt;совместное заявление&lt;/a&gt;, что поведение Столлмена «подорвало одну из ключевых ценностей проекта GNU — равенство всех пользователей», и потребовали коллективного решения о структуре проекта. Тем не менее, &lt;strong&gt;формально Столлман остался главой проекта GNU&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;zqcp&quot;&gt;В &lt;strong&gt;марте 2021 года&lt;/strong&gt; на конференции FSF &lt;strong&gt;LibrePlanet&lt;/strong&gt; Столлман неожиданно &lt;a href=&quot;https://www.fsf.org/news/statement-of-fsf-board-on-election-of-richard-stallman&quot; target=&quot;_blank&quot;&gt;объявил о своём возвращении в совет директоров&lt;/a&gt; FSF. Это вызвало вторую волну скандала: было опубликовано &lt;a href=&quot;https://rms-open-letter.github.io/&quot; target=&quot;_blank&quot;&gt;открытое письмо с требованием его повторного исключения&lt;/a&gt;, которое подписали более 4 000 человек, включая представителей крупнейших технологических компаний. Одновременно появилось ответное &lt;a href=&quot;https://rms-support-letter.github.io/&quot; target=&quot;_blank&quot;&gt;открытое письмо в защиту Столлмена&lt;/a&gt;, подписанное более чем 6 000 человек, в основном инженерами, которые считали критику в его адрес неверной интерпретацией контекста.&lt;/p&gt;
  &lt;p id=&quot;eJnt&quot;&gt;На сегодняшний день Столлман остаётся в совете директоров FSF и продолжает выступать с лекциями по всему миру. Раскол в сообществе свободного ПО, который начался с тех писем 2019-го, до конца не закрылся.&lt;/p&gt;
  &lt;p id=&quot;I27Q&quot;&gt;Этот эпизод — реальная и важная часть его биографии, и обойти его молчанием значило бы дать читателю односторонний портрет. Но и судить исключительно по нему о Столлмене тоже несправедливо: написанные им инструменты и придуманные им лицензии до сих пор работают каждый день — в каждом сервере на Linux, в каждом мобильном телефоне на Android (через ядро Linux), в каждом крупном открытом проекте под GPL. Это два разных уровня его наследия, и читателю важно знать оба.&lt;/p&gt;
  &lt;h2 id=&quot;13-что-столлман-на-самом-деле-построил&quot;&gt;13. Что Столлман на самом деле построил&lt;/h2&gt;
  &lt;p id=&quot;iViQ&quot;&gt;Если попытаться отойти от личной фигуры и посмотреть на то, что Столлман &lt;strong&gt;построил&lt;/strong&gt;, картина получается удивительная.&lt;/p&gt;
  &lt;p id=&quot;1ZQO&quot;&gt;&lt;strong&gt;GPL&lt;/strong&gt; и её разновидности (LGPL, AGPL, GFDL) сегодня — это самое популярное семейство свободных лицензий в мире. На них работают ядро Linux, GCC, Git, Bash, MySQL/MariaDB, Inkscape, GIMP, Blender, OpenSSL (под другими совместимыми лицензиями), значительная часть PostgreSQL и тысячи других проектов. Концепция копилефта, которую Столлман придумал в 1985-м, стала тем юридическим механизмом, через который &lt;strong&gt;открытый код смог защищать сам себя от поглощения корпорациями&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;3jqS&quot;&gt;&lt;strong&gt;GNU-инструменты&lt;/strong&gt; — GCC, GDB, Emacs, Coreutils, Make — это базовый набор каждого юникс-подобного сервера в мире. Каждая сборка Android, каждый дистрибутив Linux, каждый Mac OS X (через утилиты GNU) опирается на код, написанный людьми из проекта GNU. На макбуке любого Apple-программиста стоит GCC, Bash и GNU Make. И ни Apple, ни Google ни доллара не платят FSF за это — таково условие GPL: либо ты вкладываешь свой код обратно в свободу, либо ты не пользуешься плодами свободного движения.&lt;/p&gt;
  &lt;p id=&quot;Y8Hj&quot;&gt;&lt;strong&gt;Free Software Foundation&lt;/strong&gt; существует уже 40 лет. Это организация, которая до сих пор поддерживает проекты GNU, ведёт юридическую защиту разработчиков, организует ежегодную конференцию &lt;strong&gt;LibrePlanet&lt;/strong&gt; и продолжает быть единственным крупным голосом, говорящим именно о &lt;strong&gt;свободе&lt;/strong&gt; программ, а не об их «открытости» (между «free software» и «open source» Столлман видит принципиальное этическое различие, и регулярно об этом напоминает).&lt;/p&gt;
  &lt;p id=&quot;VXRW&quot;&gt;&lt;strong&gt;Концептуальный сдвиг&lt;/strong&gt;: в массовое сознание программистов вошла мысль, что &lt;strong&gt;программное обеспечение может быть общественным благом&lt;/strong&gt;, а не только товаром. Что лицензия — это инструмент защиты, а не нападения. Что свободный код — это базис, а не каприз. Эта мысль, которой Столлман отдал жизнь, изменила реальность всей отрасли: сегодня &lt;strong&gt;каждая крупная компания мира выпускает значительную часть своего кода под свободными лицензиями&lt;/strong&gt;. Google, Microsoft, Meta, Apple, Amazon — все они в той или иной степени являются частью экосистемы, фундамент которой заложил Ричард Столлман в одиночку в 1983 году.&lt;/p&gt;
  &lt;h2 id=&quot;14-что-почитать-и-посмотреть&quot;&gt;14. Что почитать и посмотреть&lt;/h2&gt;
  &lt;p id=&quot;sN1Y&quot;&gt;Самое главное:&lt;/p&gt;
  &lt;ul id=&quot;pnpx&quot;&gt;
    &lt;li id=&quot;eF3S&quot;&gt;&lt;a href=&quot;https://www.gnu.org/gnu/manifesto.en.html&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;The GNU Manifesto (1985)&lt;/strong&gt;&lt;/a&gt; — оригинал, переведён &lt;a href=&quot;https://www.gnu.org/gnu/manifesto.ru.html&quot; target=&quot;_blank&quot;&gt;на русский&lt;/a&gt;. 20 минут чтения. Тот документ, с которого всё началось.&lt;/li&gt;
    &lt;li id=&quot;vFp9&quot;&gt;&lt;a href=&quot;https://www.gnu.org/philosophy/free-software-for-freedom.html&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Why Free Software Is Better Than Open Source&lt;/strong&gt;&lt;/a&gt; — программное эссе о разнице между свободным ПО и открытым кодом.&lt;/li&gt;
    &lt;li id=&quot;u7Mo&quot;&gt;&lt;a href=&quot;https://www.gnu.org/philosophy/fsfs/rms-essays.pdf&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Free Software, Free Society: Selected Essays of Richard M. Stallman&lt;/strong&gt;&lt;/a&gt; — сборник его собственных эссе, изданный FSF, доступен бесплатно в PDF. Лучший компактный способ погрузиться в его философию.&lt;/li&gt;
    &lt;li id=&quot;b2HZ&quot;&gt;&lt;a href=&quot;https://archive.org/details/faif-2.0&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Free as in Freedom (2.0)&lt;/strong&gt;&lt;/a&gt; Sam Williams (с дополнениями самого Столлмена) — каноническая биография на английском. Доступна целиком онлайн под GFDL.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;zXOU&quot;&gt;Видео:&lt;/p&gt;
  &lt;figure id=&quot;bxe1&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/Ag1AKIl_2GM?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;fgF4&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=Ag1AKIl_2GM&quot; target=&quot;_blank&quot;&gt;«What is Free Software?» — лекция Столлмена&lt;/a&gt;&lt;/p&gt;
  &lt;figure id=&quot;XFyr&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/v7FgjOyaYk4?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;3ivp&quot;&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=v7FgjOyaYk4&quot; target=&quot;_blank&quot;&gt;Free software, Software Libero, Richard Stallman, Ginevra, TEDxGeneva 2014&lt;/a&gt; — короткое выступление в формате TEDx в 2014 году.&lt;/p&gt;
  &lt;figure id=&quot;ECc5&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/9sJUDx7iEJw?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;xZ9i&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=9sJUDx7iEJw&quot; target=&quot;_blank&quot;&gt;Free Software Song в исполнении автора&lt;/a&gt;&lt;/p&gt;
  &lt;figure id=&quot;nzao&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/aiKRt3-FbM0?autoplay=0&amp;loop=0&amp;mute=0&amp;start=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;QYdV&quot;&gt;📺 &lt;a href=&quot;https://www.youtube.com/watch?v=aiKRt3-FbM0&quot; target=&quot;_blank&quot;&gt;«The danger of software patents»&lt;/a&gt; — отдельная сильная лекция о патентной системе&lt;/p&gt;
  &lt;h2 id=&quot;15-финал&quot;&gt;15. Финал&lt;/h2&gt;
  &lt;p id=&quot;Kis1&quot;&gt;Возвращаясь к началу: фотография с автографом Столлмена на стене у моего коллеги — это не сувенир. Это символ.&lt;/p&gt;
  &lt;p id=&quot;Y6JB&quot;&gt;Символ того, что &lt;strong&gt;можно прожить сорок с лишним лет, не предав своих убеждений&lt;/strong&gt;. Что можно отказаться от смартфона в эпоху смартфонов, от Google в эпоху Google, от цифрового удобства в эпоху цифровых удобств, и сохранить ясность ума, продуктивность и трезвый юмор. Что один человек, упрямо повторявший в одиночку с 1983 года одно и то же, может в итоге изменить юридическую и культурную базу всей мировой индустрии программирования.&lt;/p&gt;
  &lt;p id=&quot;YC5y&quot;&gt;Столлман не идеален. У него скверный характер, неудобные взгляды и есть страницы биографии, которыми вряд ли стоит гордиться. Но он сделал нечто настолько последовательно и настолько хорошо, что без его работы сегодня не было бы Android (через Linux), Ubuntu, Docker (через Linux), Kubernetes (через Linux), большей части веб-серверов мира, и в принципе той экосистемы открытого ПО, в которой мы все живём.&lt;/p&gt;
  &lt;p id=&quot;8VnD&quot;&gt;И при этом в свои семьдесят с лишним он каждый день встаёт, запускает Emacs в текстовой консоли на ThinkPad X200 с Libreboot и продолжает писать. Без смартфона. Без Google. Без поблажек самому себе. С тем же упрямством, с которым он сорок с лишним лет назад вышел из кабинета профессора в Карнеги-Меллоне и понял, что мир хакеров умирает.&lt;/p&gt;
  &lt;p id=&quot;QyUT&quot;&gt;Пока этот мир ещё жив, во многом благодаря ему. И он вырос в нечто гораздо большее, чем кучка лабораторных энтузиастов 1970-х могла себе представить.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;sysq&quot;&gt;&lt;strong&gt;Источники и дополнительное чтение&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;v43K&quot;&gt;
    &lt;li id=&quot;2Snz&quot;&gt;&lt;a href=&quot;https://www.gnu.org/gnu/manifesto.en.html&quot; target=&quot;_blank&quot;&gt;Stallman R. &lt;em&gt;The GNU Manifesto&lt;/em&gt;, 1985.&lt;/a&gt; Русский перевод: &lt;a href=&quot;https://www.gnu.org/gnu/manifesto.ru.html&quot; target=&quot;_blank&quot;&gt;gnu.org/gnu/manifesto.ru.html&lt;/a&gt;.&lt;/li&gt;
    &lt;li id=&quot;ukvE&quot;&gt;&lt;a href=&quot;https://www.gnu.org/philosophy/fsfs/rms-essays.pdf&quot; target=&quot;_blank&quot;&gt;Stallman R. &lt;em&gt;Free Software, Free Society: Selected Essays.&lt;/em&gt;&lt;/a&gt; FSF Press, расширенное издание 2010 года.&lt;/li&gt;
    &lt;li id=&quot;pjqQ&quot;&gt;&lt;a href=&quot;https://archive.org/details/faif-2.0&quot; target=&quot;_blank&quot;&gt;Williams S. &lt;em&gt;Free as in Freedom (2.0): Richard Stallman and the Free Software Revolution.&lt;/em&gt;&lt;/a&gt; FSF Press, 2010. Каноническая биография под GFDL.&lt;/li&gt;
    &lt;li id=&quot;MZlQ&quot;&gt;&lt;a href=&quot;https://www.gnu.org/licenses/licenses.html&quot; target=&quot;_blank&quot;&gt;GNU General Public License — официальный текст и история всех версий.&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;kjP0&quot;&gt;&lt;a href=&quot;https://www.gnu.org/philosophy/free-sw.html&quot; target=&quot;_blank&quot;&gt;Определение свободного программного обеспечения — четыре свободы.&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;Yr2u&quot;&gt;&lt;a href=&quot;https://stallman.org/stallman-computing.html&quot; target=&quot;_blank&quot;&gt;Stallman R. &lt;em&gt;How I Do My Computing.&lt;/em&gt;&lt;/a&gt; Подробный личный рассказ Столлмена о своём ежедневном быту.&lt;/li&gt;
    &lt;li id=&quot;CbXf&quot;&gt;&lt;a href=&quot;https://stallman.org/rms-lifestyle.html&quot; target=&quot;_blank&quot;&gt;Stallman R. &lt;em&gt;RMS Lifestyle.&lt;/em&gt;&lt;/a&gt; Объяснение его жизненной позиции — отказа от смартфона, веба и т. п.&lt;/li&gt;
    &lt;li id=&quot;02tp&quot;&gt;&lt;a href=&quot;https://stallman.org/saint.html&quot; target=&quot;_blank&quot;&gt;Saint IGNUcius — официальная страница Церкви Emacs.&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;42ZJ&quot;&gt;&lt;a href=&quot;https://www.fsf.org/history/&quot; target=&quot;_blank&quot;&gt;Free Software Foundation: история организации.&lt;/a&gt; Хронология ключевых событий с 1985 по сегодня.&lt;/li&gt;
    &lt;li id=&quot;orGN&quot;&gt;&lt;a href=&quot;https://www.fsf.org/news/resignation&quot; target=&quot;_blank&quot;&gt;Statement on Stallman’s resignation, FSF, 16 September 2019.&lt;/a&gt; Официальное объявление 2019 года.&lt;/li&gt;
    &lt;li id=&quot;81fm&quot;&gt;&lt;a href=&quot;https://lwn.net/Articles/802818/&quot; target=&quot;_blank&quot;&gt;GNU maintainers’ joint statement, October 2019.&lt;/a&gt; Заявление 33 мейнтейнеров проекта.&lt;/li&gt;
    &lt;li id=&quot;orP6&quot;&gt;&lt;a href=&quot;https://www.fsf.org/news/statement-of-fsf-board-on-election-of-richard-stallman&quot; target=&quot;_blank&quot;&gt;Statement of FSF board on Stallman’s return, March 2021.&lt;/a&gt; Возвращение в совет директоров.&lt;/li&gt;
    &lt;li id=&quot;dwP2&quot;&gt;&lt;a href=&quot;https://rms-open-letter.github.io/&quot; target=&quot;_blank&quot;&gt;Open letter calling for Stallman’s removal, 2021.&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;W6Le&quot;&gt;&lt;a href=&quot;https://rms-support-letter.github.io/&quot; target=&quot;_blank&quot;&gt;Open letter in support of Stallman, 2021.&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:shannon</id><link rel="alternate" type="text/html" href="https://azhark.cc/shannon?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Клод Шеннон: жонглёр на моноцикле</title><published>2026-05-27T20:59:56.839Z</published><updated>2026-05-27T20:59:56.839Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/d3/be/d3be943e-543b-460f-8541-d6922e1c05b4.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img3.teletype.in/files/a6/1a/a61a778a-34c5-4b33-b53a-fefbed9448ce.png&quot;&gt;«Я всё это делаю не потому, что надеюсь, что из этого выйдет какая-то польза. Мне просто интересно».</summary><content type="html">
  &lt;figure id=&quot;5Bzt&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/a6/1a/a61a778a-34c5-4b33-b53a-fefbed9448ce.png&quot; width=&quot;1600&quot; /&gt;
  &lt;/figure&gt;
  &lt;blockquote id=&quot;m25H&quot;&gt;«Я всё это делаю не потому, что надеюсь, что из этого выйдет какая-то польза. Мне просто интересно».&lt;/blockquote&gt;
  &lt;p id=&quot;6KeT&quot;&gt;Это сказал человек, благодаря которому работает телефон, интернет, банковские карты, любое цифровое радио в мире, передача данных со спутников, любые видео в стриминге и каждая дисковая операция на вашем компьютере. Без него индустрии в том виде, в каком она сейчас существует, просто бы не было.&lt;/p&gt;
  &lt;p id=&quot;lsLz&quot;&gt;При этом, если вы спросите случайного прохожего, кто такой Эйнштейн, он скорее всего ответит. Если спросите, кто такой Тьюринг, большинство тоже вспомнит. А если спросите, кто такой Клод Шеннон, люди пожмут плечами и переспросят: «Это ещё кто такой?»&lt;/p&gt;
  &lt;p id=&quot;XTZF&quot;&gt;Это особый вид несправедливости. Шеннон стоит вровень с самыми крупными умами XX века, но публика про него почти не слышала. Биограф Джимми Сони, выпустивший в 2017 году &lt;a href=&quot;https://www.simonandschuster.com/books/A-Mind-at-Play/Jimmy-Soni/9781476766683&quot; target=&quot;_blank&quot;&gt;книгу &lt;em&gt;A Mind at Play&lt;/em&gt;&lt;/a&gt;, назвал его «самым важным гением, о котором вы никогда не слышали, с интеллектом уровня Эйнштейна и Ньютона».&lt;/p&gt;
  &lt;p id=&quot;nFv4&quot;&gt;В этом посте я расскажу о мальчике из крошечного городка в Мичигане, у которого в четырнадцать лет уже была собственная телеграфная линия из колючей проволоки. О магистранте, в 21 год, написавшем работу, без которой не было бы ни одного процессора в мире. О военных годах в Bell Labs, где он шифровал разговоры Рузвельта и Черчилля и обедал с Аланом Тьюрингом. О том, как в 1948 году он в одиночку вывел теорию информации и подарил миру слово «бит». О мышонке Тесее, моноцикле, жонглировании и носимом компьютере для рулетки в Лас-Вегасе. О жене Бетти, которая паяла с ним реле и редактировала его статьи. И о том, как болезнь Альцгеймера тихо стёрла из памяти Шеннона ту цифровую революцию, которую он сам же и сделал возможной.&lt;/p&gt;
  &lt;h2 id=&quot;1-гэйлорд-мичиган&quot;&gt;1. Гэйлорд, Мичиган&lt;/h2&gt;
  &lt;p id=&quot;IM7e&quot;&gt;Клод Элвуд Шеннон родился 30 апреля 1916 года в Петоски, штат Мичиган, а вырос в соседнем городке Гэйлорд — городе с населением в три тысячи человек, в тех местах, где зимой замерзает озеро Отсего и куда летом приезжают рыбаки за окунем.&lt;/p&gt;
  &lt;p id=&quot;PICd&quot;&gt;Его отец работал в местном суде и был, как тогда говорили, «деловым человеком». Мать преподавала иностранные языки в школе. Из родственников рядом жил двоюродный дядя Эдвин Шеннон, который держал в городке мастерскую и был любителем мастерить разные диковины. В дальних родственниках Шеннона по матери был Томас Эдисон, и в семье об этом не упускали случая упомянуть.&lt;/p&gt;
  &lt;p id=&quot;W0MA&quot;&gt;С раннего детства Клод что-то собирал и разбирал. К двенадцати годам он смастерил радиоприёмник, который стоял у него в комнате. К четырнадцати построил между своим домом и домом приятеля телеграфную линию длиной около километра. Линия была сделана из колючей проволоки от соседского забора (это была плохая идея с точки зрения соседа, но прекрасная — с точки зрения двух подростков, желавших общаться азбукой Морзе). Принимающий аппарат стоял в сарае.&lt;/p&gt;
  &lt;p id=&quot;2xpO&quot;&gt;Соседи смотрели на это снисходительно. Гэйлорд был тихим городом, где никто не ждал от обычного подростка гениальных открытий. Когда Клод после школы устроился на лето курьером в Western Union, доставляя телеграммы, никто и не подумал, что меньше чем через двадцать лет этот мальчик переизобретёт само понятие «телеграммы» в виде абстрактной математической величины.&lt;/p&gt;
  &lt;p id=&quot;x22B&quot;&gt;В 1932 году, в шестнадцать лет, Шеннон поступил в Мичиганский университет. Он защитил там сразу два бакалаврских диплома — по электротехнике и по математике — оба в 1936 году. Двойное образование, инженерное и математическое, окажется решающим для всего, что Шеннон сделает дальше.&lt;/p&gt;
  &lt;h2 id=&quot;2-кембридж-1937-самая-важная-магистерская-работа-в-истории&quot;&gt;2. Кембридж 1937: самая важная магистерская работа в истории&lt;/h2&gt;
  &lt;p id=&quot;rBMZ&quot;&gt;Окончив Мичиган, Шеннон поехал в Массачусетский технологический институт. Туда его взяли на должность ассистента при необычной машине — &lt;strong&gt;дифференциальном анализаторе Ванневара Буша&lt;/strong&gt;. Это был аналоговый компьютер размером с комнату, придуманный для решения дифференциальных уравнений. Он состоял из тысяч шестерён, валов, реле и переключателей. Управление им было настоящим искусством: люди настраивали его вручную, выставляя положения механических элементов перед каждым новым расчётом.&lt;/p&gt;
  &lt;p id=&quot;GJKd&quot;&gt;Шеннону, двадцатилетнему ассистенту, поручили обслуживать электрическую часть машины — реле. И именно здесь, глядя на эти реле и переключатели, он увидел то, на что никто до него не обращал внимания.&lt;/p&gt;
  &lt;p id=&quot;Yx5K&quot;&gt;Он заметил, что цепи из реле, которые либо замкнуты (1), либо разомкнуты (0), на самом деле подчиняются законам, открытым в 1854 году английским математиком Джорджем Булем. &lt;strong&gt;Булева алгебра&lt;/strong&gt; — это математика, оперирующая только двумя значениями, истиной и ложью, и операциями над ними: И, ИЛИ, НЕ. Долгое время Буль и его последователи считали это абстрактным разделом логики, далёким от практических применений. Но Шеннон увидел, что у этих абстрактных операций есть &lt;strong&gt;прямой физический аналог в виде последовательного и параллельного соединения переключателей&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;qYib&quot;&gt;Из этой мысли вырастает вся современная цифровая техника. Любая логическая операция — это комбинация переключателей. Любой расчёт — это последовательность логических операций. Значит, любую вычислительную задачу можно свести к схеме из реле, которые либо замкнуты, либо разомкнуты. Никаких аналоговых валов и шестерён больше не нужно. Достаточно «да» и «нет».&lt;/p&gt;
  &lt;p id=&quot;QZ7F&quot;&gt;В 1937 году, в возрасте двадцати одного года, Шеннон оформил эту мысль как магистерскую диссертацию: &lt;strong&gt;&lt;a href=&quot;https://dspace.mit.edu/handle/1721.1/11173&quot; target=&quot;_blank&quot;&gt;«A Symbolic Analysis of Relay and Switching Circuits»&lt;/a&gt;&lt;/strong&gt; — «Символический анализ релейных и переключательных схем». Через год работа вышла в &lt;em&gt;Transactions of the American Institute of Electrical Engineers&lt;/em&gt; и получила премию Альфреда Нобеля (не та Нобелевская, а отдельная инженерная награда, тоже именная). Психолог Говард Гарднер позже назвал эту магистерскую «вероятно, самой важной и самой замеченной магистерской работой за всё столетие».&lt;/p&gt;
  &lt;p id=&quot;4DQd&quot;&gt;И это не преувеличение. Сегодня каждый процессор, каждая микросхема памяти, каждое устройство, использующее цифровые сигналы, работает по той самой логике, которую двадцатиоднолетний Шеннон описал на нескольких страницах в кембриджской комнате 1937 года. Включая тот компьютер или телефон, на котором вы читаете этот текст.&lt;/p&gt;
  &lt;h2 id=&quot;3-бункер-на-манхэттене-и-встреча-с-тьюрингом&quot;&gt;3. Бункер на Манхэттене и встреча с Тьюрингом&lt;/h2&gt;
  &lt;p id=&quot;8gcg&quot;&gt;Шеннон защитил докторскую в MIT в 1940 году. Тема — приложение алгебры к генетике (он не остановился на одной области, его интересовало всё). Сразу после защиты его взяли в &lt;strong&gt;Bell Telephone Laboratories&lt;/strong&gt; в Нью-Йорке, тогдашнее частное королевство Bell System, где работали лучшие инженеры и физики Америки.&lt;/p&gt;
  &lt;p id=&quot;nfz1&quot;&gt;Шла Вторая мировая. Шеннона определили в группу, занимавшуюся управлением артиллерийским огнём с радаров и &lt;strong&gt;криптографической защитой телефонной связи&lt;/strong&gt;. Главным его проектом стала система &lt;strong&gt;SIGSALY&lt;/strong&gt; — аппаратура для зашифрованных телефонных разговоров между Уинстоном Черчиллем и Франклином Рузвельтом.&lt;/p&gt;
  &lt;p id=&quot;eKge&quot;&gt;SIGSALY была чудовищной машиной — пятьдесят пять тонн оборудования, две комнаты, мощность 30 киловатт. Она использовала систему одноразовых блокнотов в виде записанных на грампластинки случайных шумов. А математическую основу её защиты разработал именно Шеннон. К концу войны эти размышления оформились в отдельную работу — &lt;strong&gt;«&lt;a href=&quot;https://ia803108.us.archive.org/27/items/bstj28-4-656/bstj28-4-656.pdf&quot; target=&quot;_blank&quot;&gt;Communication Theory of Secrecy Systems&lt;/a&gt;»&lt;/strong&gt; (опубликована в 1949-м, написана в 1945-м), — которая до сих пор считается первой формальной работой по математической криптографии. Многие современные книги по шифрам начинаются с цитаты из неё.&lt;/p&gt;
  &lt;p id=&quot;82xG&quot;&gt;В январе 1943 года в нью-йоркскую лабораторию Bell приехал гость из Великобритании — &lt;strong&gt;Алан Тьюринг&lt;/strong&gt;. Его официально командировали в Bell для обмена опытом по криптографии. Тьюринг и Шеннон обедали вместе несколько недель подряд. О чём они говорили, точно никто не знает: разговоры о шифровании держались в секрете. Но известно, что в это самое время Тьюринг рассказал Шеннону про свою довоенную работу по машинам, способным вычислить всё, что в принципе вычислимо. А Шеннон, в свою очередь, делился с Тьюрингом своей идеей о том, что любую информацию можно измерить количественно.&lt;/p&gt;
  &lt;p id=&quot;DzlV&quot;&gt;Два человека, которые через два десятка лет определят весь облик цифровой эпохи, обсуждали её, попивая кофе, в 1943-м, во время войны. Один — британский математик, который через одиннадцать лет умрёт при невыясненных обстоятельствах в возрасте сорока одного года. Другой — американский интроверт-инженер, который переедет в дом на берегу озера и будет до конца жизни возиться с механическими игрушками. В тот момент они просто работали над общей задачей и были интересны друг другу.&lt;/p&gt;
  &lt;h2 id=&quot;4-1948-год-когда-родилась-информация&quot;&gt;4. 1948: год, когда родилась информация&lt;/h2&gt;
  &lt;p id=&quot;Uoyw&quot;&gt;После войны Шеннон вернулся к работе над вопросом, ответ на который в индустрии связи искали уже лет двадцать: &lt;strong&gt;как точно описать, что такое информация, и каков теоретический предел того, сколько её можно передать по проводу или радио&lt;/strong&gt;?&lt;/p&gt;
  &lt;p id=&quot;VU1z&quot;&gt;Для Bell Labs этот вопрос был совсем не теоретическим. Компания была фактическим монополистом телефонной связи в США. Любое улучшение в передаче сигнала — больше разговоров через тот же кабель, меньше шумов на междугородной линии, бо́льшая дальность по одному проводу — означало для неё дополнительную выручку. Но никакого формального определения «количества информации» в литературе не существовало. Люди говорили о «качестве сигнала», о «шуме», о «полосе пропускания», но между этими понятиями не было общего знаменателя.&lt;/p&gt;
  &lt;p id=&quot;YEcP&quot;&gt;В июле и октябре 1948 года в &lt;em&gt;Bell System Technical Journal&lt;/em&gt; появилась статья в двух частях: &lt;strong&gt;«&lt;a href=&quot;https://onlinelibrary.wiley.com/doi/10.1002/j.1538-7305.1948.tb01338.x&quot; target=&quot;_blank&quot;&gt;A Mathematical Theory of Communication&lt;/a&gt;»&lt;/strong&gt; — «Математическая теория связи». 79 страниц. Один автор: Claude E. Shannon.&lt;/p&gt;
  &lt;p id=&quot;FvlX&quot;&gt;В этой статье Шеннон сделал то, чего не делал никто:&lt;/p&gt;
  &lt;p id=&quot;RUEX&quot;&gt;&lt;strong&gt;Во-первых, он определил информацию как математическую величину.&lt;/strong&gt; Если у вас есть сообщение, которое может быть одним из N равновероятных вариантов, количество информации в нём — это &lt;code&gt;log2(N)&lt;/code&gt; бит. То есть выбор между двумя равновероятными вариантами — это &lt;strong&gt;1 бит&lt;/strong&gt; информации. Между четырьмя — 2 бита. Между восемью — 3. Это не вопрос мнения, это математика.&lt;/p&gt;
  &lt;p id=&quot;VCFi&quot;&gt;&lt;strong&gt;Во-вторых, он ввёл в науку слово «бит».&lt;/strong&gt; В самой статье Шеннон скромно отдаёт авторство своему коллеге по Bell Labs &lt;strong&gt;Джону Тьюки&lt;/strong&gt; (John W. Tukey), который в служебной записке 1946 года предложил сократить «binary digit» до «bit». Но именно Шеннон сделал это слово единицей измерения. С 1948 года и до конца времён бит — это &lt;strong&gt;минимальная единица информации&lt;/strong&gt;, и слово это никогда уже не вернётся к своему дотехническому смыслу («кусочек»).&lt;/p&gt;
  &lt;p id=&quot;zfmm&quot;&gt;&lt;strong&gt;В-третьих, он определил энтропию источника.&lt;/strong&gt; Энтропия — это, по Шеннону, мера непредсказуемости. Если источник всегда выдаёт одну и ту же букву «А», его энтропия равна нулю — мы заранее знаем, что он скажет, информации в его сообщениях ноль. Если источник равновероятно выдаёт одну из 26 букв алфавита, его энтропия максимальна, log2(26) ≈ 4,7 бита на символ. Реальный английский язык, как показал Шеннон, имеет энтропию около 1,1 бита на букву: предсказуемости в нём много, потому что после «q» почти всегда идёт «u», а гласные следуют за согласными по предсказуемой схеме.&lt;/p&gt;
  &lt;p id=&quot;inkT&quot;&gt;&lt;strong&gt;В-четвёртых — и это самое потрясающее, — он доказал теорему о кодировании для канала с шумом.&lt;/strong&gt; У любого канала связи есть &lt;strong&gt;максимальная пропускная способность&lt;/strong&gt; (по-английски Shannon limit, по-русски «предел Шеннона») — максимум бит в секунду, который через него можно передать &lt;strong&gt;без ошибок&lt;/strong&gt;, при условии достаточно умного кодирования. До этой границы можно достичь сколь угодно низкого уровня ошибок. Перешагнуть её невозможно никаким алгоритмом, никаким количеством оборудования. Это закон природы, как скорость света.&lt;/p&gt;
  &lt;p id=&quot;MCFg&quot;&gt;И самое поразительное: Шеннон показал, что &lt;strong&gt;к этому пределу можно подойти сколь угодно близко&lt;/strong&gt;, если применять достаточно сложное кодирование. Он не дал алгоритма (это сделают другие за последующие пятьдесят лет, и каждое продвижение к пределу Шеннона будет научным событием — алгоритмы Хэмминга, коды Рида–Соломона, турбокоды, LDPC). Но он доказал, что предел существует, и в принципе достижим.&lt;/p&gt;
  &lt;p id=&quot;jpsR&quot;&gt;Это переменило всё. С этого момента у инженеров связи появился чёткий ориентир — теоретический потолок канала, к которому имеет смысл стремиться, и понимание, что выше этого потолка прыгнуть нельзя ни при каких ухищрениях. Все современные модемы, Wi-Fi-стандарты, протоколы спутниковой связи, цифровое радио, оптоволоконные системы появились в ходе попыток подобраться к пределу Шеннона. Один человек одной статьёй в 1948 году задал всей индустрии цель на следующие сто лет.&lt;/p&gt;
  &lt;p id=&quot;HQpn&quot;&gt;Историк науки Джеймс Глик, написавший «Хаос» и биографию Фейнмана, поставил статью Шеннона на первое место среди событий 1948 года. На втором месте у Глика — публичная презентация транзистора, состоявшаяся 30 июня 1948 года в тех же Bell Labs (сам прибор был изобретён Бардином, Браттейном и Шокли несколькими месяцами раньше, 16 декабря 1947-го). Однако Шеннон, по Глику, «глубже и фундаментальнее», чем транзистор.&lt;/p&gt;
  &lt;p id=&quot;cP1M&quot;&gt;Журнал &lt;em&gt;Scientific American&lt;/em&gt; назвал работу Шеннона «Великой хартией информационной эпохи» (Magna Carta — английская «Великая хартия вольностей» 1215 года, документ, заложивший основы конституционного права; в современном английском это идиома, обозначающая фундаментальный, учредительный текст какой-нибудь области). Это не преувеличение.&lt;/p&gt;
  &lt;h2 id=&quot;5-машины-для-радости&quot;&gt;5. Машины для радости&lt;/h2&gt;
  &lt;p id=&quot;cwlQ&quot;&gt;Если бы Шеннон ограничился вышеперечисленным, он бы остался в истории как сухарь-математик, спрятавшийся за формулами. Реальный Шеннон был совсем другой.&lt;/p&gt;
  &lt;p id=&quot;D9W9&quot;&gt;С самого начала и до конца жизни он строил &lt;strong&gt;механические игрушки&lt;/strong&gt;. Не потому, что они должны были что-то делать или приносить деньги, а потому, что это было весело и потому, что в каждой такой игрушке Шеннону хотелось проверить какую-нибудь любопытную идею.&lt;/p&gt;
  &lt;p id=&quot;eZzz&quot;&gt;&lt;strong&gt;Тесей&lt;/strong&gt; — самая знаменитая из этих игрушек. В 1950 году Шеннон собрал в лаборатории Bell механического мышонка размером с теннисный мяч, который умел проходить лабиринт. Сначала мышонок двигался случайно, натыкаясь на стенки, пока не находил «сыр» — кусочек медной фольги. На втором запуске он уже шёл к сыру кратчайшим путём. Под лабиринтом стояла схема из примерно 90 телефонных реле, которая «помнила» путь. Лабиринт можно было пересобрать — поставить перегородки в другом порядке, — и Тесей переучивался заново.&lt;/p&gt;
  &lt;p id=&quot;PCvF&quot;&gt;Это была одна из первых в мире демонстраций &lt;strong&gt;машинного обучения&lt;/strong&gt;. ENIAC, первый программируемый электронный компьютер, на тот момент существовал четыре года и занимал большой зал. Тесей же, использующий обычные телефонные реле, помещался под столом. На YouTube до сих пор можно найти оригинальный фильм Bell Labs 1952 года, где Шеннон стоит рядом с мышкой и спокойным голосом объясняет: «Сначала мышь идёт случайно. Потом она запоминает дорогу». В современной литературе по ИИ Тесея называют «прародителем всех систем обучения с подкреплением».&lt;/p&gt;
  &lt;p id=&quot;CqvW&quot;&gt;&lt;strong&gt;Жонглирование&lt;/strong&gt; Шеннон любил с детства, и в Bell Labs оно стало его самой узнаваемой привычкой. Он жонглировал тремя шарами, иногда — четырьмя. Больше у него не получалось, и это его огорчало. Чтобы понять, почему именно не получается, он вывел &lt;a href=&quot;https://www.youtube.com/watch?v=sBHGzRxfeJY&quot; target=&quot;_blank&quot;&gt;математическую формулу жонглирования&lt;/a&gt;: &lt;code&gt;(F + D) / (V + D) = N / H&lt;/code&gt;, где F — время полёта шара, D — время, которое шар находится в руке, V — время, которое рука пуста, N — число шаров, H — число рук. Формула, к его искреннему удивлению, не помогла ему освоить жонглирование пятью шарами.&lt;/p&gt;
  &lt;p id=&quot;oy9s&quot;&gt;&lt;strong&gt;Моноцикл&lt;/strong&gt; Шеннон освоил уже взрослым, в Bell Labs. И тут случилась самая известная сцена в фольклоре лаборатории: Шеннон катался по длинным коридорам исследовательского центра на одноколёсном велосипеде, жонглируя при этом тремя шарами. Колеги, которые встречались ему по пути, прижимались к стенам — никто не был уверен, остановится ли он на повороте. Никто не понимал, &lt;strong&gt;зачем&lt;/strong&gt; он это делает. Спросить его боялись, потому что ответ был предсказуем: «Для удовольствия».&lt;/p&gt;
  &lt;p id=&quot;6vaK&quot;&gt;&lt;strong&gt;Ультимативная машина&lt;/strong&gt; — устройство, которое Марвин Минский придумал в 1952 году, а Шеннон собрал. Это деревянный ящик с одним переключателем. Когда вы включаете переключатель, из ящика выползает механическая рука и выключает переключатель обратно. Ящик закрывается. Больше он ничего не делает. Артур Кларк, увидев этот аппарат на столе Шеннона, написал: «Есть что-то невыразимо зловещее в машине, единственное назначение которой — выключить саму себя».&lt;/p&gt;
  &lt;p id=&quot;X6JN&quot;&gt;&lt;strong&gt;Другие игрушки&lt;/strong&gt; Шеннона включают: семь различных шахматных автоматов, моноцикл с эксцентрическим колесом, который катился как пьяный, прыгающую палку на пружине (такая детская игрушка с педалями и ручками, на которой подпрыгивают) — только у Шеннона эта палка имела бензиновый двигатель; нож на сто лезвий; механический манекен в виде Уильяма Клода Филдза (W. C. Fields, 1880–1946 — знаменитый американский комик и цирковой жонглёр, в США 1930-х фигура примерно того же ранга, что в СССР Юрий Никулин), жонглирующий бильярдными шарами; компьютер, считающий в римских цифрах (Шеннон шутил, что мечтал «увидеть римлянина с настоящим калькулятором»); Кубик Рубика, который собирала отдельная машина; пенопластовые тапочки, в которых можно ходить по воде через озеро у дома (его жена Бетти подтвердила, что они работали).&lt;/p&gt;
  &lt;p id=&quot;7zll&quot;&gt;Ни одна из этих игрушек так и не была описана в научной статье, не запатентована и не запущена в производство. Шеннон делал их не для славы и не для продажи. Он просто играл.&lt;/p&gt;
  &lt;h2 id=&quot;6-бетти-дом-на-озере-мистик&quot;&gt;6. Бетти, дом на озере Мистик&lt;/h2&gt;
  &lt;p id=&quot;3jjr&quot;&gt;В 1948 году, в год выхода той самой статьи про теорию информации, Шеннон познакомился в Bell Labs с молодой коллегой — &lt;strong&gt;Мэри Элизабет «Бетти» Мур&lt;/strong&gt;, программисткой и аналитиком. Они поженились в 1949 году.&lt;/p&gt;
  &lt;p id=&quot;AVjH&quot;&gt;Бетти оказалась не «женой великого человека», а полноценным интеллектуальным партнёром. Она и сама была математиком: до Bell Labs работала в Bell Aircraft на численных расчётах, потом в Bell Labs — на ранних программируемых калькуляторах. Когда Шеннон строил Тесея, Бетти помогала ему паять реле. Когда он писал статьи, она их редактировала и часто находила в них ошибки и неудачные формулировки. В их доме на берегу озера Мистик в Винчестере, штат Массачусетс, куда они переехали в 1956 году, был не один общий рабочий стол, а несколько.&lt;/p&gt;
  &lt;p id=&quot;2sAG&quot;&gt;Они вырастили троих детей. Дома у них всегда было много гостей и ещё больше странных предметов: шкаф с десятью моноциклами, гараж, забитый шахматными автоматами, чердак с механическими рыбами и кубиками Рубика. По словам биографа &lt;a href=&quot;https://www.simonandschuster.com/books/A-Mind-at-Play/Jimmy-Soni/9781476766683&quot; target=&quot;_blank&quot;&gt;Джимми Сони&lt;/a&gt;, Шеннон-семьянин был совершенно не похож на Шеннона-академика: дома он улыбался, шутил, играл на саксофоне и кларнете, кормил кошек. На работе он был известен как человек, который мог часами сидеть в кабинете молча и думать, никого к себе не пуская.&lt;/p&gt;
  &lt;p id=&quot;Tn6b&quot;&gt;В одном эпизоде Шеннон и его друг Эдвард Торп (математик, придумавший подсчёт карт в блэкджеке) построили первый в истории носимый компьютер — устройство размером с пачку сигарет, которое прятали под одеждой и которое предсказывало, куда упадёт шарик в рулетке в казино. Они поехали в Лас-Вегас и заработали приличные деньги. Шеннон по характеру был не игрок — ему было любопытно, может ли вообще такая машина работать. Когда выяснилось, что может, интерес Шеннона ушёл. Он подарил устройство Торпу и больше в казино не ходил.&lt;/p&gt;
  &lt;p id=&quot;4XIP&quot;&gt;Жил он спокойно, выступал редко, журналистам давал интервью с большой неохотой. Когда писатель Джон Хорган в 1990-х добился встречи с ним, Шеннон, к тому времени уже больной, показывал гостю свои механические игрушки, как ребёнок показывает взрослому любимые поделки. Хорган позже написал &lt;a href=&quot;https://johnhorgan.org/cross-check/my-meeting-with-claude-shannon-father-of-the-information-age&quot; target=&quot;_blank&quot;&gt;воспоминания об этой встрече&lt;/a&gt; — это один из самых трогательных текстов о Шенноне, который у нас есть.&lt;/p&gt;
  &lt;h2 id=&quot;7-альцгеймер-и-тихий-уход&quot;&gt;7. Альцгеймер и тихий уход&lt;/h2&gt;
  &lt;p id=&quot;1UcB&quot;&gt;В начале 1980-х близкие заметили, что Шеннон стал забывать имена и события. Через несколько лет диагноз был поставлен формально: болезнь Альцгеймера. К моменту, когда диагноз был ясен, Шеннону было около семидесяти.&lt;/p&gt;
  &lt;p id=&quot;u2as&quot;&gt;Болезнь развивалась медленно, но неумолимо. Бетти ухаживала за ним дома, насколько могла. К концу 1990-х он уже не узнавал своих коллег и не помнил, что когда-то писал статьи.&lt;/p&gt;
  &lt;p id=&quot;8tyY&quot;&gt;Главная горечь этого ухода в том, что именно в эти годы случилось всё то, для чего Шеннон создал фундамент. В 1989-м появился веб. В 1995-м — массовый интернет. В 1998-м — Google. В 1999-м — Wi-Fi и DSL, оба построенные на алгоритмах, асимптотически приближающихся к пределу Шеннона. В 2000-м — MP3, ZIP, DivX, JPEG, и каждый из этих алгоритмов сжатия упирается в шенноновскую энтропию источника, больше которой данные сжать без потерь невозможно (это вторая большая теорема из той же его статьи 1948 года). И всё это — прямое следствие одной его статьи, написанной полвека назад.&lt;/p&gt;
  &lt;p id=&quot;VjbU&quot;&gt;Только он этого уже не видел. Не понимал. Не помнил, что был к этому причастен.&lt;/p&gt;
  &lt;p id=&quot;YPQl&quot;&gt;Биограф Шеннона Джимми Сони в &lt;a href=&quot;https://www.simonandschuster.com/books/A-Mind-at-Play/Jimmy-Soni/9781476766683&quot; target=&quot;_blank&quot;&gt;книге &lt;em&gt;A Mind at Play&lt;/em&gt;&lt;/a&gt; пишет об этом с тихой грустью: «Если бы Шеннон оставался в ясном уме до самой смерти, он увидел бы, как интернет переменил мир, и понимал бы, какую роль в этом сыграла его работа. Он осознал бы успехи искусственного интеллекта, которые сделали возможным Deep Blue. У него было бы чувство, что у этого всего есть будущее. Альцгеймер лишил его этого знания».&lt;/p&gt;
  &lt;p id=&quot;LrPQ&quot;&gt;Клод Шеннон умер 24 февраля 2001 года в доме престарелых в Медфорде, Массачусетс. Ему было 84. Бетти пережила его и дожила до 2017 года.&lt;/p&gt;
  &lt;h2 id=&quot;8-почему-его-так-мало-знают&quot;&gt;8. Почему его так мало знают&lt;/h2&gt;
  &lt;p id=&quot;W97F&quot;&gt;Эйнштейн известен потому, что был интересный в общении, дружил с журналистами и не отказывался от микрофона. Тьюринг известен своей трагической судьбой и яркой военной историей. Фейнман известен потому, что любил рассказывать истории о себе и оставил мемуары. Хокинг известен потому, что был визуально узнаваем и писал популярные книги.&lt;/p&gt;
  &lt;p id=&quot;65qT&quot;&gt;Шеннон не оставил мемуаров. Он не любил журналистов и не выступал по телевидению. Не давал автографов, не сидел в кругу коллег и не рассказывал смешных историй. Когда в 1985 году ему присудили Премию Киото — японский эквивалент Нобелевки, — он приехал на церемонию, выступил с короткой технической речью, отказался от интервью и улетел домой. К этому времени болезнь уже подбиралась к нему, но и в более здоровые годы он вёл бы себя так же.&lt;/p&gt;
  &lt;p id=&quot;BypE&quot;&gt;Это редкая, теперь почти исчезающая порода учёного: человек, который делал то, что считал интересным, ради самого процесса, и абсолютно не заботился, кто и как это запомнит. Слава для Шеннона была побочным шумом. Его интересовали только математика и игрушки.&lt;/p&gt;
  &lt;p id=&quot;pa2o&quot;&gt;Поэтому массовое сознание ничего не знает о Шенноне. Но в любом учебнике по теории информации, в любом курсе по передаче данных, в любой статье по сжатию или коррекции ошибок он стоит в первом абзаце как первооткрыватель всей области. В любом серьёзном университете на факультете информатики есть курс «Теория информации», и первая лекция этого курса начинается со слов «В 1948 году Клод Шеннон…».&lt;/p&gt;
  &lt;p id=&quot;r59V&quot;&gt;При этом несколько лет уже идёт системная работа по возвращению Шеннона публике. Каждый год на ML-конференциях кто-нибудь вспоминает Тесея как первого ИИ. В 2017-м вышла биография Шеннона авторства Джимми Сони, неожиданно ставшая популярной. В 2016-м, к столетию Шеннона, MIT, Bell Labs и IEEE провели большую серию мероприятий. В &lt;em&gt;Quanta Magazine&lt;/em&gt; в 2020-м был &lt;a href=&quot;https://www.quantamagazine.org/how-claude-shannons-information-theory-invented-the-future-20201222/&quot; target=&quot;_blank&quot;&gt;очень хороший очерк&lt;/a&gt;, пересказывающий его теорию для широкой аудитории. Постепенно его начинают узнавать. Но всё ещё не так, как он заслуживает. Отчасти потому, что он сам этого не хотел.&lt;/p&gt;
  &lt;h2 id=&quot;9-финал&quot;&gt;9. Финал&lt;/h2&gt;
  &lt;p id=&quot;SmPV&quot;&gt;Иногда, читая про Шеннона, думаешь: вот человек, который мог бы быть профессором с поджатыми губами, не подпускающим к себе мир за пределами кафедры. Мог бы быть бизнесменом, который перевёл свои патенты в миллиарды (он этого не сделал — теорию информации Bell Labs не патентовала, и она сразу стала общественным достоянием). Мог бы быть строителем империи: с его мозгом он легко мог бы возглавить лабораторию или даже компанию.&lt;/p&gt;
  &lt;p id=&quot;0fvg&quot;&gt;Вместо этого он жонглировал на моноцикле, паял мышонка с женой, подсчитывал карты в Лас-Вегасе ради эксперимента, строил кубик Рубика, который собирался сам, потому что было любопытно. Тихо жил в доме у озера, играл на кларнете и кормил кошек.&lt;/p&gt;
  &lt;p id=&quot;yc6I&quot;&gt;Но при этом — походя, в перерыве между делами, — придумал теорию, без которой не было бы ни одного гигабайта в вашем телефоне, ни одного килобита в вашей Wi-Fi-сети, ни одного бита из тех, что прямо сейчас приносят вам этот текст с сервера на экран.&lt;/p&gt;
  &lt;p id=&quot;PIwU&quot;&gt;Слово «бит» в первый раз появилось в печати в его статье 1948 года, в седьмой строке третьего абзаца. С тех пор это слово вошло в каждый язык мира и стало одной из базовых единиц измерения наряду с метром, граммом и секундой. И за всем этим стоит тихий, любопытный мужчина из Гэйлорда, штат Мичиган, который однажды посмотрел на реле и увидел в нём математическую красоту логики.&lt;/p&gt;
  &lt;blockquote id=&quot;cyEP&quot;&gt;«Я часто думал о том, что, если бы Шеннон не оказался в нужном месте в нужное время, кто-нибудь другой написал бы примерно то же самое лет через десять. Но эти десять лет — целая эпоха в технологическом развитии. Без него двадцатый век был бы другим».&lt;br /&gt;&lt;br /&gt;— Соломон Голомб, математик и коллега Шеннона.&lt;/blockquote&gt;
  &lt;p id=&quot;QkC5&quot;&gt;Шеннон не согласился бы. Он бы пожал плечами, сел на моноцикл и уехал по коридору Bell Labs, посвистывая, и жонглируя тремя шарами.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;2mow&quot;&gt;&lt;strong&gt;Источники&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;THZQ&quot;&gt;
    &lt;li id=&quot;0VoP&quot;&gt;Soni J, Goodman R. &lt;a href=&quot;https://www.simonandschuster.com/books/A-Mind-at-Play/Jimmy-Soni/9781476766683&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;A Mind at Play: How Claude Shannon Invented the Information Age.&lt;/em&gt;&lt;/a&gt; Simon &amp;amp; Schuster, 2017. Полноценная биография Шеннона, на которую опирается основная часть фактов в посте.&lt;/li&gt;
    &lt;li id=&quot;UMun&quot;&gt;Shannon CE. &lt;a href=&quot;https://dspace.mit.edu/handle/1721.1/11173&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;A Symbolic Analysis of Relay and Switching Circuits.&lt;/em&gt;&lt;/a&gt; MS Thesis, MIT, 1937. Та самая магистерская — оцифрованный архив MIT, читать можно прямо в браузере.&lt;/li&gt;
    &lt;li id=&quot;AhbA&quot;&gt;Shannon CE. &lt;a href=&quot;https://onlinelibrary.wiley.com/doi/10.1002/j.1538-7305.1948.tb01338.x&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;A Mathematical Theory of Communication.&lt;/em&gt;&lt;/a&gt; Bell System Technical Journal, 27 (1948): 379–423 и 623–656. Оригинальная статья 1948 года, всё ещё читается удивительно ясно.&lt;/li&gt;
    &lt;li id=&quot;UtFK&quot;&gt;Shannon CE. &lt;a href=&quot;https://ia803108.us.archive.org/27/items/bstj28-4-656/bstj28-4-656.pdf&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;Communication Theory of Secrecy Systems.&lt;/em&gt;&lt;/a&gt; Bell System Technical Journal, 28 (1949): 656–715. Криптографическая работа, написанная во время войны.&lt;/li&gt;
    &lt;li id=&quot;Ad7g&quot;&gt;Hartnett K. &lt;a href=&quot;https://www.quantamagazine.org/how-claude-shannons-information-theory-invented-the-future-20201222/&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;How Claude Shannon’s Information Theory Invented the Future.&lt;/em&gt;&lt;/a&gt; Quanta Magazine, 2020. Лучшее популярное изложение теории информации, доступное онлайн.&lt;/li&gt;
    &lt;li id=&quot;LFxv&quot;&gt;Horgan J. &lt;a href=&quot;https://johnhorgan.org/cross-check/my-meeting-with-claude-shannon-father-of-the-information-age&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;My Meeting With Claude Shannon, Father of the Information Age.&lt;/em&gt;&lt;/a&gt; Личные воспоминания Хоргана о встрече с уже больным Шенноном в 1990-х.&lt;/li&gt;
    &lt;li id=&quot;n2Yp&quot;&gt;&lt;a href=&quot;https://spectrum.ieee.org/claude-shannon-tinkerer-prankster-and-father-of-information-theory&quot; target=&quot;_blank&quot;&gt;Claude Shannon: Tinkerer, Prankster, and Father of Information Theory.&lt;/a&gt; IEEE Spectrum, 2016. Подборка эксцентричных изобретений Шеннона к его столетию.&lt;/li&gt;
    &lt;li id=&quot;AIFS&quot;&gt;&lt;a href=&quot;https://cyberneticzoo.com/mazesolvers/1952-%E2%80%93-theseus-maze-solving-mouse-%E2%80%93-claude-shannon-american/&quot; target=&quot;_blank&quot;&gt;Theseus the Maze-Solving Mouse, 1952.&lt;/a&gt; Cyberneticzoo.com — техническое описание и фотографии оригинального устройства, плюс ссылки на видео Bell Labs.&lt;/li&gt;
    &lt;li id=&quot;WXFv&quot;&gt;&lt;a href=&quot;https://news.mit.edu/2001/shannon&quot; target=&quot;_blank&quot;&gt;MIT News: «MIT Professor Claude Shannon dies; was founder of digital communications».&lt;/a&gt; Официальный некролог MIT 2001 года.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry><entry><id>azhark:5-a-day</id><link rel="alternate" type="text/html" href="https://azhark.cc/5-a-day?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=azhark"></link><title>Пять порций в день</title><published>2026-05-26T09:51:09.240Z</published><updated>2026-05-26T09:51:09.240Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/74/0f/740f1b03-1e0a-4cb4-a3f9-c1cd021ba4ca.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/9c/81/9c81f231-3938-4727-9a4f-6a1015116324.png&quot;&gt;«Ешьте пять порций овощей и фруктов в день» — ещё одна навязчивая и универсально-цитируемая диетологическая рекомендация в современном мире. Её произносят педиатры, цитируют школьные учебники, перепечатывают женские журналы, повторяют в роликах ютуб-блогеров про правильное питание. На стороне этой рекомендации — ВОЗ, Минздрав, NHS, USDA и в целом всё человечество. Никто как будто и не возражает.</summary><content type="html">
  &lt;figure id=&quot;o35J&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/9c/81/9c81f231-3938-4727-9a4f-6a1015116324.png&quot; width=&quot;1672&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;JWfU&quot;&gt;«Ешьте пять порций овощей и фруктов в день» — ещё одна навязчивая и универсально-цитируемая диетологическая рекомендация в современном мире. Её произносят педиатры, цитируют школьные учебники, перепечатывают женские журналы, повторяют в роликах ютуб-блогеров про правильное питание. На стороне этой рекомендации — ВОЗ, Минздрав, NHS, USDA и в целом всё человечество. Никто как будто и не возражает.&lt;/p&gt;
  &lt;p id=&quot;bipE&quot;&gt;И всё же эта рекомендация, как и большинство круглых чисел в этом цикле, родилась не в лаборатории. У неё есть конкретное место и время рождения: &lt;strong&gt;Сакраменто, Калифорния, около 1988 года&lt;/strong&gt;. За ней стоят Министерство здравоохранения штата, онкологи Калифорнийского университета и Ассоциация фруктово-овощной индустрии. У всех троих были вполне материальные причины желать, чтобы американцы съедали больше фруктов и овощей. Научное обоснование появилось позже и оказалось намного скромнее, чем заявлял лозунг.&lt;/p&gt;
  &lt;p id=&quot;ltm9&quot;&gt;В этом посте расскажу, как калифорнийская маркетинговая кампания за три года превратилась в общенациональную программу США, а потом в международный стандарт от ВОЗ, почему британский Минздрав 2003 года вынужден был задним числом придумать определение «порции», которого до этого не было, что на самом деле показывают современные метаанализы, и почему сама идея «порции», как и американская привычка мерить муку «чашками» — историческое недоразумение, которое мы продолжаем тащить за собой по непонятной инерции.&lt;/p&gt;
  &lt;h2 id=&quot;i-сакраменто-1988-онкологи-штата-плюс-индустрия-овощей&quot;&gt;I. Сакраменто, 1988: онкологи штата плюс индустрия овощей&lt;/h2&gt;
  &lt;p id=&quot;uMLJ&quot;&gt;К концу 1980-х американская онкология всё чаще говорила о роли питания в профилактике рака. В обзорах &lt;em&gt;National Cancer Institute&lt;/em&gt; (NCI) к 1986–1988 годам уже было сведено достаточно эпидемиологических данных, показывающих обратную связь между потреблением свежих овощей и фруктов и частотой ряда онкологических заболеваний (особенно ЖКТ, лёгких, гортани). Идея была не нова, она восходит ещё к работам Дениса Бёркитта 1970-х о роли клетчатки. К концу 80-х накопилось достаточно работ, чтобы поставить вопрос: а сколько всё-таки овощей и фруктов надо съедать?&lt;/p&gt;
  &lt;p id=&quot;YnEW&quot;&gt;В 1988 году &lt;strong&gt;Министерство здравоохранения штата Калифорния&lt;/strong&gt; запускает программу под названием &lt;strong&gt;«5 a Day — for Better Health»&lt;/strong&gt; — «5 в день — для лучшего здоровья». Лозунг придуман маркетологами, а не учёными. Логика была не «вот наука доказала, что 5 порций оптимально», а «вот аккуратное круглое число, которое легко запомнить, легко произнести, удобно напечатать на плакате и разместить рекламу в супермаркете».&lt;/p&gt;
  &lt;p id=&quot;YCUo&quot;&gt;Партнёром выступила &lt;a href=&quot;https://www.5aday.com/about/pbhf/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Produce for Better Health Foundation&lt;/strong&gt; (PBHF)&lt;/a&gt; — некоммерческий маркетинговый фонд, представляющий интересы американской фруктово-овощной индустрии. Их интерес был финансовый: больше американцев покупает овощи и фруктов — больше выручка у производителей и сетей. Объединение государственного здравоохранения и отраслевого маркетинга оказалось эффективным: программа быстро попала в супермаркеты в виде ценников и наклеек, в рекламные ролики, в школьное меню.&lt;/p&gt;
  &lt;p id=&quot;J7IJ&quot;&gt;В &lt;strong&gt;1991 году&lt;/strong&gt; программа выходит на федеральный уровень. &lt;a href=&quot;https://pubmed.ncbi.nlm.nih.gov/7632448/&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;National Cancer Institute&lt;/strong&gt; и &lt;strong&gt;Produce for Better Health Foundation&lt;/strong&gt; подписывают общенациональное партнёрство&lt;/a&gt; и масштабируют «5 a Day» на всю страну. К программе подключаются USDA, CDC, Американское онкологическое общество, ассоциации производителей, фитнес-блогеры и тогдашние «инфлюенсеры». В 1993 году NCI финансирует девять региональных исследовательских проектов по внедрению программы — в школах, церквях, на рабочих местах, в общинных центрах. К 1995-му «5 a Day» уже знает любой американский школьник.&lt;/p&gt;
  &lt;p id=&quot;qAOX&quot;&gt;Важно отметить, что &lt;strong&gt;число «5» никогда не было результатом эпидемиологического расчёта&lt;/strong&gt;. Это маркетинговая величина. Авторы программы открыто пишут в публикациях середины 1990-х: цель состояла в том, чтобы дать публике «простое, понятное, измеримое число, которое легко запомнить». Что бы наука ни показывала про реальный дозо-эффект, цифра должна была быть круглой и достижимой. Пять порций — это что-то, что среднестатистический американец, ранее съедавший две порции, может представить. Десять — нет.&lt;/p&gt;
  &lt;p id=&quot;tjKC&quot;&gt;К 2000-м американская версия программы расширилась до «&lt;strong&gt;5 to 9 servings&lt;/strong&gt;» — пяти-девяти порций (для более активных людей и определённых возрастных групп). Само число 5 при этом сохранилось как нижняя граница, как минимальный порог, как «пропуск в зону здоровья». На плакатах и в массовом сознании осталась именно «пятёрка».&lt;/p&gt;
  &lt;h2 id=&quot;ii-лондон-2003-nhs-подхватывает-и-задним-числом-определяет-что-такое-порция&quot;&gt;II. Лондон, 2003: NHS подхватывает и задним числом определяет, что такое «порция»&lt;/h2&gt;
  &lt;p id=&quot;00pw&quot;&gt;К концу 1990-х американский лозунг «5 a day» по дипломатическим и научным каналам попадает в Европу. В 2000 году британский &lt;strong&gt;NHS Plan&lt;/strong&gt; включает планируемую кампанию «5-A-Day» как один из приоритетов общественного здоровья. Реальная программа стартует &lt;a href=&quot;https://en.wikipedia.org/wiki/5_A_Day&quot; target=&quot;_blank&quot;&gt;зимой 2002–2003 года&lt;/a&gt; и быстро становится одной из самых узнаваемых публичных кампаний британского здравоохранения.&lt;/p&gt;
  &lt;p id=&quot;5mxc&quot;&gt;В этот момент возникает любопытная инженерная задача. Американская формулировка «5 порций» опиралась на американское понимание «порции» (servings), которое в США отчасти регулируется FDA для маркировки продуктов, отчасти — кулинарной традицией. У британцев никакого подобного определения не было. Откуда взять цифру?&lt;/p&gt;
  &lt;p id=&quot;o5FX&quot;&gt;NHS разрешает задачу через простую арифметику. ВОЗ к этому моменту &lt;a href=&quot;https://www.who.int/news-room/fact-sheets/detail/healthy-diet&quot; target=&quot;_blank&quot;&gt;официально рекомендует не менее &lt;strong&gt;400 г овощей и фруктов в сутки&lt;/strong&gt;&lt;/a&gt; для снижения риска сердечно-сосудистых заболеваний, инсульта и ряда видов рака. Делим 400 на 5 — получается &lt;strong&gt;80 граммов&lt;/strong&gt;. Это и становится официальным британским определением «порции»: 1 порция = 80 г.&lt;/p&gt;
  &lt;p id=&quot;9lZo&quot;&gt;На базе этих 80 граммов NHS строит &lt;a href=&quot;https://www.bhf.org.uk/informationsupport/heart-matters-magazine/nutrition/5-a-day/what-counts-as-5-a-day&quot; target=&quot;_blank&quot;&gt;подробный справочник&lt;/a&gt; того, что считается одной порцией:&lt;/p&gt;
  &lt;ul id=&quot;iLKy&quot;&gt;
    &lt;li id=&quot;AyxV&quot;&gt;одно среднее яблоко, банан или груша;&lt;/li&gt;
    &lt;li id=&quot;3yl1&quot;&gt;три горки столовой ложки варёных овощей (зелёного горошка, моркови, шпината, цветной капусты);&lt;/li&gt;
    &lt;li id=&quot;5CRM&quot;&gt;две веточки брокколи;&lt;/li&gt;
    &lt;li id=&quot;h2IP&quot;&gt;семь черри-помидоров (или один обычный);&lt;/li&gt;
    &lt;li id=&quot;5Ht2&quot;&gt;три горки столовой ложки бобовых.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;4t4c&quot;&gt;С тех пор именно британское определение — 1 порция = 80 г — стало международным стандартом де-факто. Его использует российский Роспотребнадзор, ВОЗ в официальных коммуникациях и большая часть европейской диетологии.&lt;/p&gt;
  &lt;h2 id=&quot;iii-что-такое-порция-и-почему-дурацкие-чашки-в-рецептах--того-же-поля-ягода&quot;&gt;III. Что такое «порция» и почему дурацкие «чашки» в рецептах — того же поля ягода&lt;/h2&gt;
  &lt;p id=&quot;mBZb&quot;&gt;На этом я хочу остановиться отдельно. Понятие «порция» применительно к еде — это одно из самых неприятных явлений в массовой нутрициологии и одно из самых ярких напоминаний о том, как часто популярные рекомендации делаются на глазок.&lt;/p&gt;
  &lt;p id=&quot;UHMM&quot;&gt;Возьмём ту же британскую методичку. С одной стороны, в ней зафиксировано аккуратное «80 г». С другой — справочник, переведённый на русский какой-нибудь сетью супермаркетов или фитнес-приложением, выдаёт: «одно среднее яблоко». Но &lt;strong&gt;«среднее яблоко» — это какое?&lt;/strong&gt; Яблоко сорта голден весит 130–180 г, польское голден делишес — 200 г, ранетка с подмосковной дачи — 70 г, антоновка из бабушкиного погреба — 300 г. Между минимумом и максимумом — четырёхкратная разница. Какое из них «среднее», и как с этим жить?&lt;/p&gt;
  &lt;p id=&quot;0Qsj&quot;&gt;С «тремя горками столовой ложки» — ещё веселее. Столовая ложка в зависимости от страны и набора имеет объём от 10 до 20 мл. «Горка» — это уже совсем не определимая величина. Если у вас бабушкин советский набор столовых приборов с глубокими ложками, ваша «порция» получится в два раза больше, чем у соседа с икеевскими почти плоскими ложками.&lt;/p&gt;
  &lt;p id=&quot;dgfF&quot;&gt;И эта проблема присутствует в каждой популярной диетологической рекомендации, в каждом приложении для подсчёта калорий, в каждой инструкции на упаковке. «Употреблять 2–3 порции молочных продуктов в день», «съедайте порцию белка с каждым приёмом пищи», «детям до года — порция овощного пюре». Сколько это в граммах, почему-то не указывается. Считается, что читатель сам должен догадаться. Меня это безумно бесит.&lt;/p&gt;
  &lt;p id=&quot;3soP&quot;&gt;Ещё один пример подобного идиотизма в кулинарии — американская привычка мерить ингредиенты &lt;strong&gt;чашками&lt;/strong&gt;. «1 чашка муки», «½ чашки сахара», «2 чашки воды». Эта система — личный кошмар каждого, кто пытается готовить по американскому рецепту вне США. Чашка муки — это сколько в граммах? Зависит от того, просеивали вы муку перед тем, как насыпать, или нет, утрамбовали или нет, какая у вас мука — обычная, цельнозерновая, рисовая (плотности у них разные). Какая у вас чашка — фирменная мерная (236 мл) или обычная кофейная (160–200 мл)?&lt;/p&gt;
  &lt;p id=&quot;Rh7M&quot;&gt;У этой американской странности тоже есть конкретное место и время рождения. В 1896 году в Бостоне выходит &lt;a href=&quot;https://en.wikipedia.org/wiki/Fannie_Farmer&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;The Boston Cooking-School Cook Book&lt;/em&gt;&lt;/a&gt; — книга американской поварихи и педагога &lt;strong&gt;Фанни Фармер&lt;/strong&gt; (Fannie Merritt Farmer). До этого американские рецепты вообще не содержали внятных количеств: было что-то типа «добавьте кусок масла размером с яйцо», «соли — сколько надо», «муки — чтобы тесто было правильным». Фармер впервые в массовой американской кулинарии вводит &lt;strong&gt;точные объёмные меры&lt;/strong&gt;: чашки, столовые ложки, чайные ложки, обязательно «вровень с краем». Книга расходится тиражом 360 000 экземпляров при жизни автора и устанавливает стандарт, который США тащат за собой до сих пор.&lt;/p&gt;
  &lt;p id=&quot;RDY3&quot;&gt;Это, конечно, был большой шаг вперёд для того времени: до 1896-го американская домашняя кухня была вообще лишена количественной строгости. Но к концу XX века весь мир кроме США и Канады перешёл на килограммы и граммы, потому что для сыпучих продуктов вес объективен, а объём с поправкой на плотность, утрамбовку и температуру — нет. Но американская кулинария так и осталась в плену чашек и столовых ложек, фиксированных кулинарной школой 1896 года.&lt;/p&gt;
  &lt;p id=&quot;T4Zd&quot;&gt;Параллель с «5 порциями» прямая: и там, и там зафиксирована формула, которая выглядит конкретной — есть же число, — но на практике опирается на культурную интуицию: что такое «порция» или «чашка», каждый понимает по-своему). И там, и там переход на нормальную метрику решает проблему: «400 г в сутки» вместо «5 порций» — это вполне понятно и не допускает разночтения. «250 г муки» вместо «1 чашки муки» — тоже. А идиотские «порции» и «чашки» — это невнятные единицы измерения, в которых легко прятать любую неточность.&lt;/p&gt;
  &lt;p id=&quot;s99H&quot;&gt;В случае «5 порций» эта неточность ещё и забавна с точки зрения арифметики: реальная цель — 400 г в сутки. 5 яблок «по 80 г» — это, понятно, 400 г, но если у вас антоновки по 200 г, то для нормы достаточно двух штук. А если у вас черри-помидоры размером с виноградину, то и пятидесяти штук может оказаться мало. Цифра «5» в этой связке вообще теряет смысл как ориентир.&lt;/p&gt;
  &lt;p id=&quot;kKSp&quot;&gt;Поэтому если вы хотите следовать рекомендации не на словах, а по делу, держите в голове &lt;strong&gt;400 г&lt;/strong&gt;, а не «5 порций». Граммы можно прикинуть на глаз, а порции — нет.&lt;/p&gt;
  &lt;h2 id=&quot;iv-что-на-самом-деле-говорит-наука-aune-2017-и-кривая-которая-выходит-на-плато&quot;&gt;IV. Что на самом деле говорит наука: Aune 2017 и кривая, которая выходит на плато&lt;/h2&gt;
  &lt;p id=&quot;O1Gb&quot;&gt;К моменту, когда рекомендация «5 a day» стала глобальной кампанией, наука накопила достаточно данных, чтобы посмотреть на сам вопрос строже: а сколько граммов всё-таки действительно нужно съедать, чтобы быть здоровым?&lt;/p&gt;
  &lt;p id=&quot;NHRb&quot;&gt;В 2017 году в &lt;em&gt;International Journal of Epidemiology&lt;/em&gt; вышел &lt;a href=&quot;https://academic.oup.com/ije/article/46/3/1029/3039477&quot; target=&quot;_blank&quot;&gt;крупнейший на тот момент метаанализ по теме&lt;/a&gt; под руководством &lt;strong&gt;Даги Эуне&lt;/strong&gt; (Dagfinn Aune), норвежского эпидемиолога из Имперского колледжа Лондона. Объединены результаты проспективных когортных исследований, в которых наблюдалось в общей сложности &lt;strong&gt;более двух миллионов человек&lt;/strong&gt;. Изучаемые показатели: сердечно-сосудистая смертность, онкология, общая смертность.&lt;/p&gt;
  &lt;p id=&quot;lifE&quot;&gt;Главные результаты:&lt;/p&gt;
  &lt;ul id=&quot;ENhy&quot;&gt;
    &lt;li id=&quot;hOTz&quot;&gt;&lt;strong&gt;есть явная обратная связь&lt;/strong&gt; между потреблением овощей и фруктов и риском сердечно-сосудистых событий, общей смертности и (в меньшей степени) онкологии;&lt;/li&gt;
    &lt;li id=&quot;r1Ht&quot;&gt;&lt;strong&gt;дозо-зависимый эффект прослеживается вплоть до 800 г в сутки&lt;/strong&gt; (примерно 10 порций по британскому стандарту), но &lt;strong&gt;большая часть пользы достигается на первых 4–5 порциях&lt;/strong&gt;;&lt;/li&gt;
    &lt;li id=&quot;4fub&quot;&gt;по оценке авторов, если бы всё население земного шара съедало по 800 г овощей и фруктов в день, можно было бы предотвратить порядка &lt;strong&gt;7,8 миллиона преждевременных смертей в год&lt;/strong&gt;;&lt;/li&gt;
    &lt;li id=&quot;Shtu&quot;&gt;между фруктами и овощами есть нюансы: овощи (особенно зелёные листовые и крестоцветные) дают чуть больший эффект, чем фрукты, в пересчёте на грамм;&lt;/li&gt;
    &lt;li id=&quot;5s7q&quot;&gt;разнообразие важно: широкий набор разных видов работает лучше, чем большие количества одного-двух.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;figure id=&quot;mHry&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/9f/09/9f09e0c1-6f57-452e-99f0-9d1b08440008.png&quot; width=&quot;964&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;nL3n&quot;&gt;Из этих данных следует две вещи. Во-первых, &lt;strong&gt;рекомендация ВОЗ «не менее 400 г в сутки» — это нижняя планка&lt;/strong&gt;, входной билет в зону снижения риска. Это не «идеал», а «приличный минимум». Если есть возможность съедать 500–600 г, эффект будет ещё лучше. Если 800 г — ещё чуть-чуть лучше.&lt;/p&gt;
  &lt;p id=&quot;KXit&quot;&gt;Во-вторых, &lt;strong&gt;кривая выходит на плато&lt;/strong&gt;. Польза не растёт линейно. Если вы уже едите 5 порций в день (400 г), переход на 10 порций (800 г) даст вам небольшое улучшение, но это меньший прирост, чем переход с одной порции на пять. Это типичная для биологии «убывающая отдача»: первые сдвиги дают максимум, дальше — всё медленнее.&lt;/p&gt;
  &lt;p id=&quot;bBeE&quot;&gt;Что ещё интересно: дополнительные &lt;strong&gt;БАДы и витамины в таблетках не дают того же эффекта&lt;/strong&gt;, что цельные овощи и фрукты. Эуне в комментариях к работе говорит, что, по всей видимости, работает «весь пакет полезных веществ синергически» — клетчатка, полифенолы, разнообразные витамины, минералы, плюс, возможно, влияние на микробиоту кишечника. Попытка заменить салат таблеткой витамина С — путь в никуда.&lt;/p&gt;
  &lt;p id=&quot;bEPL&quot;&gt;Иначе говоря, наука по этой теме говорит примерно так:&lt;/p&gt;
  &lt;ul id=&quot;TwG7&quot;&gt;
    &lt;li id=&quot;H6Yf&quot;&gt;ешьте 400–800 г разных овощей и фруктов в день;&lt;/li&gt;
    &lt;li id=&quot;1JZ6&quot;&gt;первые 400 г — самые важные;&lt;/li&gt;
    &lt;li id=&quot;iZfD&quot;&gt;больше — лучше, но не в разы;&lt;/li&gt;
    &lt;li id=&quot;ZBOZ&quot;&gt;пользу приносят цельные продукты, а не БАДы.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;AZPN&quot;&gt;Никакого сакрального числа «5» в этой картине нет. Есть просто масса овощей и фруктов в граммах.&lt;/p&gt;
  &lt;h2 id=&quot;v-россия-400-г-есть-но-в-граммах-а-не-в-порциях&quot;&gt;V. Россия: 400 г есть, но в граммах, а не в порциях&lt;/h2&gt;
  &lt;p id=&quot;eJVK&quot;&gt;В России &lt;a href=&quot;https://77.rospotrebnadzor.ru/index.php/press-centr/186-press-centr/13402-400-g-v-den-kak-est-bolshe-ovoshchej-i-fruktov-24-09-2024&quot; target=&quot;_blank&quot;&gt;рекомендации Роспотребнадзора и Минздрава&lt;/a&gt; на эту тему сегодня сформулированы аккуратнее, чем в массовой культуре. Они опираются непосредственно на ВОЗ:&lt;/p&gt;
  &lt;ul id=&quot;dycd&quot;&gt;
    &lt;li id=&quot;ppyS&quot;&gt;&lt;strong&gt;не менее 400 г в сутки&lt;/strong&gt; свежих овощей, фруктов, ягод и зелени (некрахмалистых — то есть без картофеля);&lt;/li&gt;
    &lt;li id=&quot;V2Rh&quot;&gt;сверх того — &lt;strong&gt;250 г картофеля&lt;/strong&gt; и &lt;strong&gt;280 г фруктов&lt;/strong&gt; в детализированных нормах &lt;a href=&quot;https://minzdrav.gov.ru/opendata/7707778246-normpotrebproduct/visual&quot; target=&quot;_blank&quot;&gt;приказа Минздрава России № 614 от 19 августа 2016 г.&lt;/a&gt;;&lt;/li&gt;
    &lt;li id=&quot;Y5w2&quot;&gt;400 г — это «оптимальная и при этом предельная» норма, без надобности перегружаться сверху.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;K0ed&quot;&gt;В коммуникации Роспотребнадзора официально появляется и оговорка о «5 порциях по 80 г», но как &lt;strong&gt;производное от 400 г&lt;/strong&gt;, а не как самостоятельный ориентир. Российский документ по сути транслирует европейскую логику: первичная цифра — масса в граммах, дальнейший пересчёт в «порции» — это уже маркетинговое упрощение для тех, кто не любит считать.&lt;/p&gt;
  &lt;p id=&quot;XdHR&quot;&gt;В массовой же культуре «5 порций» работает примерно так же, как в Великобритании: запоминается легко, выполняется плохо. По разным оценкам, реальной нормы 400 г в России достигают около &lt;strong&gt;15–20 % взрослого населения&lt;/strong&gt;. В Великобритании, где кампания идёт уже 20+ лет, — около 27 %. То есть даже в стране-родоначальнице большинство людей рекомендации не выполняют. Лозунг закрепился в культуре, поведение почти не изменилось.&lt;/p&gt;
  &lt;h2 id=&quot;vi-что-с-этим-делать&quot;&gt;VI. Что с этим делать&lt;/h2&gt;
  &lt;p id=&quot;z3Tu&quot;&gt;Если собрать всё вышесказанное, получается такая картина.&lt;/p&gt;
  &lt;p id=&quot;ZrHx&quot;&gt;&lt;strong&gt;Первое.&lt;/strong&gt; «5 порций овощей и фруктов в день» — это маркетинговая упаковка для рекомендации ВОЗ «не менее 400 г в сутки», придуманная в Калифорнии в 1988 году в партнёрстве здравоохранения и фруктово-овощной индустрии. Число «5» в этой рекомендации для запоминаемости, никакой магии и никакой науки.&lt;/p&gt;
  &lt;p id=&quot;JBFv&quot;&gt;&lt;strong&gt;Второе.&lt;/strong&gt; Реальный ориентир — &lt;strong&gt;400 г разных овощей, фруктов, ягод и зелени в сутки&lt;/strong&gt; (некрахмалистых — без картофеля). Картофель — отдельная категория, в счёт «овощей и фруктов» по международным стандартам не идёт.&lt;/p&gt;
  &lt;p id=&quot;pvKw&quot;&gt;&lt;strong&gt;Третье.&lt;/strong&gt; Старайтесь не считать в порциях, а прикидывать в граммах. Среднее яблоко — около 150–180 г, банан — 120 г, плотная горсть черники — 100 г, тарелка нормального салата — 150–200 г. Если вы съели два яблока, тарелку овощного салата и горсть ягод, вы уже выполнили норму.&lt;/p&gt;
  &lt;p id=&quot;0f9k&quot;&gt;&lt;strong&gt;Четвёртое.&lt;/strong&gt; Эффект усиливается с разнообразием. Замените повседневный «помидор-огурец-помидор» на регулярную ротацию: брокколи, шпинат, морковь, болгарский перец, тыква, зелёные листовые, бобовые, ягоды, цитрусовые, яблоки, груши. Польза идёт от пакета веществ, а не от одного-двух «суперпродуктов».&lt;/p&gt;
  &lt;p id=&quot;Kz3i&quot;&gt;&lt;strong&gt;Пятое.&lt;/strong&gt; Овощи и зелень в граммах ценнее фруктов: больше клетчатки, меньше сахара. Если вы доходите до 400 г преимущественно через бананы и виноград — это лучше, чем ничего, но всё же стоит добавить именно зелень и салаты.&lt;/p&gt;
  &lt;p id=&quot;GQMk&quot;&gt;&lt;strong&gt;Шестое.&lt;/strong&gt; БАДы и поливитамины не заменяют цельные овощи и фрукты. Эпидемиология показывает, что таблетка витамина С или добавка с антиоксидантами не воспроизводят эффект цельного рациона. Работает «весь пакет» — клетчатка, полифенолы, влияние на микробиоту, плюс простое замещение в тарелке других, менее полезных продуктов.&lt;/p&gt;
  &lt;p id=&quot;UVRo&quot;&gt;&lt;strong&gt;Седьмое.&lt;/strong&gt; Если в вашем рационе сейчас 100 г овощей и фруктов в сутки, не пытайтесь за неделю выйти на 800. Кишечник так же не любит резких изменений, как и любой другой орган. Прибавляйте по одной порции в неделю, пока не выйдете на 400 г, дальше — по самочувствию.&lt;/p&gt;
  &lt;h2 id=&quot;vii-финал&quot;&gt;VII. Финал&lt;/h2&gt;
  &lt;p id=&quot;Scsj&quot;&gt;«5 порций овощей и фруктов в день» — это удачная маркетинговая обёртка от тех же людей, которые продают вам фрукты в супермаркете, наложенная на разумную, но не такую красивую рекомендацию ВОЗ «не менее 400 г в сутки». В этой обёртке скрывается ещё одна загадка — что такое «порция», которая на проверку оказывается типичным безразмерным понятием из той же серии, что и американская «чашка муки» в рецептах. Чашка муки — это не количество, это пожелание. Порция овощей — тоже не количество, а пожелание.&lt;/p&gt;
  &lt;p id=&quot;viLo&quot;&gt;Тем не менее, под обёрткой имеются вполне научные обоснования. Метаанализ Эуне 2017 года на двух миллионах человек показывает, что 400–800 г овощей и фруктов в сутки реально снижают риск сердечно-сосудистых событий, общей смертности и онкологии, и что львиная доля этой пользы достигается именно на первых 4–5 порциях. То есть рекомендация по сути правильная, просто упакована в странную единицу измерения.&lt;/p&gt;
  &lt;p id=&quot;kRWf&quot;&gt;Если у вас есть выбор, ориентируйтесь на граммы, а не на порции. И, по той же логике, если у вас есть выбор, пользуйтесь рецептами в граммах, а не в чашках. Объёмные «единицы» в любых формулах здоровья и кулинарии — это удобный камуфляж для пренебрежения деталями, и с ним по-настоящему дружат только маркетологи.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;aPMH&quot;&gt;&lt;strong&gt;Использованные исследования и источники&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;lnfE&quot;&gt;
    &lt;li id=&quot;tEUv&quot;&gt;Foerster SB, Kizer KW, Disogra LK et al. &lt;a href=&quot;https://pubmed.ncbi.nlm.nih.gov/7632448/&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;California’s “5 a Day — for Better Health!” Campaign: An Innovative Population-Based Effort to Effect Large-Scale Dietary Change.&lt;/em&gt;&lt;/a&gt; American Journal of Preventive Medicine, 1995. — обзор калифорнийской кампании-родоначальницы.&lt;/li&gt;
    &lt;li id=&quot;45Gy&quot;&gt;Heimendinger J et al. &lt;a href=&quot;https://pmc.ncbi.nlm.nih.gov/articles/PMC1382077/&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;5 A Day for Better Health — Nine Community Research Projects to Increase Fruit and Vegetable Consumption.&lt;/em&gt;&lt;/a&gt; Public Health Reports, 1995. — отчёт о федерализации программы.&lt;/li&gt;
    &lt;li id=&quot;hr49&quot;&gt;Aune D, Giovannucci E, Boffetta P et al. &lt;a href=&quot;https://academic.oup.com/ije/article/46/3/1029/3039477&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;Fruit and vegetable intake and the risk of cardiovascular disease, total cancer and all-cause mortality — a systematic review and dose-response meta-analysis of prospective studies.&lt;/em&gt;&lt;/a&gt; International Journal of Epidemiology, 2017. — главный современный метаанализ темы на двух миллионах человек.&lt;/li&gt;
    &lt;li id=&quot;iyth&quot;&gt;&lt;a href=&quot;https://www.who.int/news-room/fact-sheets/detail/healthy-diet&quot; target=&quot;_blank&quot;&gt;WHO. &lt;em&gt;Healthy diet.&lt;/em&gt;&lt;/a&gt; Информационный бюллетень ВОЗ, в котором закреплено «не менее 400 г фруктов и овощей в сутки».&lt;/li&gt;
    &lt;li id=&quot;XHVV&quot;&gt;&lt;a href=&quot;https://www.nhs.uk/live-well/eat-well/5-a-day/5-a-day-what-counts/&quot; target=&quot;_blank&quot;&gt;NHS UK. &lt;em&gt;5 A Day: what counts?&lt;/em&gt;&lt;/a&gt; — официальный британский справочник «что считается одной порцией 80 г».&lt;/li&gt;
    &lt;li id=&quot;FqVO&quot;&gt;&lt;a href=&quot;https://77.rospotrebnadzor.ru/index.php/press-centr/186-press-centr/13402-400-g-v-den-kak-est-bolshe-ovoshchej-i-fruktov-24-09-2024&quot; target=&quot;_blank&quot;&gt;Роспотребнадзор. &lt;em&gt;400 г в день: как есть больше овощей и фруктов.&lt;/em&gt;&lt;/a&gt; — российская трансляция рекомендации ВОЗ.&lt;/li&gt;
    &lt;li id=&quot;AxHX&quot;&gt;&lt;a href=&quot;https://minzdrav.gov.ru/opendata/7707778246-normpotrebproduct/visual&quot; target=&quot;_blank&quot;&gt;Приказ Минздрава России № 614 от 19 августа 2016 г. &lt;em&gt;Рациональные нормы потребления пищевых продуктов, отвечающие современным требованиям здорового питания.&lt;/em&gt;&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;tsSV&quot;&gt;Farmer FM. &lt;a href=&quot;https://en.wikipedia.org/wiki/The_Boston_Cooking-School_Cook_Book&quot; target=&quot;_blank&quot;&gt;&lt;em&gt;The Boston Cooking-School Cook Book&lt;/em&gt;, 1896.&lt;/a&gt; — историческая отправная точка американских кулинарных «чашек».&lt;/li&gt;
  &lt;/ul&gt;

</content></entry></feed>