# Код на 87 КБ и грабеж в 7-Eleven: история Дэйва Пламмера

Источник: https://www.youtube.com/watch?v=HsLgZzgpz9Y
Канал: Lex Fridman
Опубликовано: 29.08.2025

---

Это подробный разбор беседы между Лексом Фридманом и Дэйвом Пламмером — легендарным программистом Microsoft, создателем Диспетчера задач Windows и автором книги об аутизме.

## 🛠️ Эпоха «железных» первопроходцев: от RadioShack до Commodore 64

Дэйв Пламмер начал свой путь в программировании в конце 70-х, когда компьютеры еще были экзотикой. Его первым опытом стал **TRS-80 Model 1** с 4 КБ оперативной памяти в местном магазине RadioShack. Будучи 11-летним подростком, он не просто играл, а пытался «общаться» с машиной на английском языке, не зная синтаксиса Basic.

### Искусство программирования на машинном коде
Настоящий прорыв произошел с появлением **Commodore 64**. Поскольку у семьи Пламмера не было лишних денег, компьютер покупался без гарантии, и когда дисковод вышел из строя, Дэйв остался с кассетным магнитофоном. В этих условиях он совершил инженерный подвиг:

*   Написал клон игры *Galaga* целиком на **машинном коде** (не путать с ассемблером).
*   Процессор 6502 требовал ручного ввода гексадецимальных опкодов.
*   Отсутствие возможности перемещать код заставляло использовать «спагетти-логику»: если нужно было добавить строку в середину, приходилось делать безусловный переход (JMP) в свободную область памяти, выполнять код и прыгать обратно.

Дэйв вспоминает это время с горечью: из-за случайной ошибки он стер финальную версию игры, перезаписав чистую дискету поверх данных. Этот опыт научил его дисциплине данных и осознанию ответственности программиста.

## 🏗️ Путь в Microsoft: из 7-Eleven в ядро операционных систем

История попадания Пламмера в Microsoft напоминает классическую американскую мечту. После исключения из старшей школы и работы ночным кассиром в магазине **7-Eleven** (где его однажды грабили под дулом ножа, а в 40-градусный мороз он вручную замерял уровень бензина в резервуарах), Дэйв осознал, что хочет другой жизни.

Он вернулся в школу в 21 год, а затем поступил в университет Саскачевана. Чтобы оплатить учебу, он написал **HyperCache** — расширение файловой системы для Amiga.

### «Холодные» письма и вход в Редмонд
Вдохновившись книгой о становлении Microsoft, Дэйв решил найти там работу. Метод поиска был оригинальным:

1.  Он перебрал тысячи регистрационных карточек пользователей своего HyperCache.
2.  Нашел три-четыре контакта с почтовым доменом `@microsoft.com`.
3.  Написал им «холодные» письма с предложением своих услуг.

Это сработало. Он получил приглашение на стажировку в команду **MS-DOS**, где его первым проектом стала оптимизация **SmartDrive** (кеширование CD-ROM).

## 🖥️ Создание легенд: Диспетчер задач и ZIP-папки

Дэйв Пламмер — автор кода, который ежедневно запускают сотни миллионов человек.

### Windows Task Manager (Диспетчер задач)
Диспетчер задач начинался как домашний проект Пламмера в 1994 году. Он хотел создать максимально надежный инструмент, который не зависнет, даже если вся остальная система «лежит».

**Технические секреты Task Manager:**
*   **Минимализм:** Оригинальный размер исполняемого файла составлял всего **87 КБ**.
*   **Отказ от runtime:** Пламмер намеренно не линковал стандартные библиотеки C (CRT), чтобы сэкономить память. Ему приходилось вручную вызывать конструкторы объектов через таблицу диспетчеризации.
*   **Эффективная отрисовка:** Для обновления графиков загрузки ЦП использовался аналог кода Хэмминга для определения только изменившихся пикселей, что делало программу невероятно «легкой».
*   **Многопоточность:** Каждое обращение к внешним API (например, сетевым путям) выносилось в отдельный поток, чтобы интерфейс оставался отзывчивым.

### ZIP в Windows
Интеграция поддержки ZIP-архивов также была личной инициативой Дэйва. До этого пользователям приходилось скачивать сторонние утилиты типа PKZIP Фила Каца. Пламмер выпустил свою версию как shareware (Visual ZIP), и Microsoft выкупила её, превратив в системную функцию «Сжатые ZIP-папки». Одной из сложностей при релизе было экспортное законодательство США: шифрование тогда приравнивалось к вооружению, и многие функции безопасности пришлось вырезать для международного рынка.

## 👤 Жизнь на спектре: аутизм и программирование

Важной частью обсуждения стал диагноз Дэйва — аутизм (ASD) и СДВГ. Пламмер объясняет, что его мозг работает в режиме **монотропизма**: он способен на гиперфокус в одной задаче, но совершенно не умеет в многозадачность.

### Особенности аутичного мышления:
*   **Буквальность:** Пламмер воспринимает всё буквально. Например, на вопрос «в комнате 10 стульев, зашли 6 человек, сколько стульев осталось?» он ответит «10», потому что стулья никуда не исчезли.
*   **Социальное «маскирование»:** Для него обычное общение — это работа. Он «симулирует» нормальность, осознанно контролируя жесты и мимику, что отнимает много энергии.
*   **Эмоциональная постобработка:** Дэйв часто анализирует свои разговоры спустя часы или даже десятилетия. Однажды он отправил письмо с благодарностью владельцу мастерской через 10 лет после ремонта машины, осознав в ходе «постобработки», что тогда он не проявил достаточной вежливости.

### Работа в Microsoft через призму аутизма
Его прямота и внимание к мелочам часто приводили к неловким ситуациям. Пламмер вспоминает, как на барбекю дома у **Билла Гейтса** он прервал своего менеджера, который хвалил его перед Биллом, чтобы поправить одну незначительную цифру в сроках проекта. «Это было неуместно, но я не мог вынести неточности», — признается Дэйв.

## 💾 Техническое наследие и будущее ИИ

Пламмер работал под началом **Дэйва Катлера**, архитектора Windows NT, которого он описывает как «сурового фермера от программирования», не терпящего плохого кода.

### Взгляд на современные языки
Сегодня Дэйв ведет YouTube-канал *Dave's Garage*, где проводит тесты производительности. В его проекте **GitHub Primes** (сравнение скорости вычисления простых чисел) лидируют:

1.  **Zig** — часто оказывается самым быстрым.
2.  **C++** и **Rust** — идут следом.
3.  **Python** — Пламмер использует его для проектов с ИИ, называя процесс разработки «vibe coding» (программирование по наитию с помощью LLM).

### Прогноз на будущее
Дэйв считает, что через 10–20 лет программирование окончательно превратится в высокоуровневое проектирование. Мы будем оперировать компонентами и интерфейсами через ИИ, подобно тому как архитекторы перешли от чертежей карандашом к AutoCAD. Однако он с грустью отмечает, что новые поколения программистов могут потерять понимание того, как работают транзисторы и регистры процессора, — базу, на которой строился весь старый Microsoft.

Программирование для Дэйва Пламмера — это не просто работа, а способ существования: «Смысл жизни — в создании крутых вещей, которые работают именно так, как ты задумал у себя в голове».