Митчелл Хашимото: «Не влюбляйтесь в свой молоток»

Software Unscripted Podcast 16,8 тыс. 1 ч 3 мин 5 мин 17.02.2026
Главное

В новом эпизоде подкаста Software Unscripted Ричард Фелдман обсуждает с Митчеллом Хашимото, создателем терминала Ghostty и сооснователем HashiCorp, философию разработки современного софта. Основной темой беседы стал отказ от кроссплатформенных фреймворков в пользу нативных интерфейсов и то, как искусственный интеллект меняет повседневную работу программиста.

🖥️ Нативный UI против «наименьшего общего знаменателя» 2:08

Митчелл Хашимото придерживается радикальной, по современным меркам, позиции: программное обеспечение должно быть нативным для каждой платформы . Он утверждает, что индустрия наводнена приложениями, построенными по принципу «наименьшего общего знаменателя», которые поддерживают только те функции, которые есть везде, игнорируя уникальные возможности конкретных операционных систем .

По мнению Хашимото, компании, обладающие ресурсами, должны нанимать специалистов под конкретные платформы, а не пытаться сэкономить на Electron или других кроссплатформенных инструментах . Он скучает по приложениям, которые «бесстыдно» заявляют о своей принадлежности к одной экосистеме, например, только к macOS, и глубоко интегрируются с такими сервисами, как iCloud или функцией Handoff .

В качестве примера Хашимото приводит планы для Ghostty:

Ричард Фелдман соглашается, отмечая, что кроссплатформенные PWA-приложения (например, для Android на macOS) часто выглядят небрежно и лишены элементарных функций, таких как регулировка громкости уведомлений .

🏗️ Архитектура Ghostty: Zig и нативные слои 6:26

Несмотря на приверженность нативному UI, Ghostty активно использует общий код для бизнес-логики. Хашимото разделяет приложение на два уровня:

  1. Кроссплатформенная логика: написана на языке Zig. Она включает в себя сложные структуры данных, такие как деревья для управления разделением экрана (splits) .
  2. Презентационный уровень: полностью нативный для каждой ОС (Swift для macOS, GTK для Linux) .

Интересно, что изначально Хашимото пытался реализовать логику разделения окон отдельно на Swift и GTK, но это привело к дублированию багов при операциях вращения или выравнивания панелей . В итоге он вынес эту логику в Zig, оставив нативным слоям только задачу трансляции этих данных в видимые виджеты .

Хашимото считает, что умение разделять бизнес-логику и логику представления — это ключевой навык старшего инженера . Он критикует современные веб-фреймворки (например, React и React Server Components) за то, что они поощряют смешивание этих слоев в одном файле, что затрудняет понимание того, где именно выполняется код и насколько он ресурсозатратен .

🛠️ Инженерный прагматизм: «Не влюбляйтесь в свой молоток» 11:36

Одной из центральных идей беседы стала критика узкой специализации на одном языке программирования. Хашимото полагает, что слишком многие инженеры привязываются к одной экосистеме (например, только JavaScript), воспринимая её как часть своей идентичности .

Его аргументы:

Фелдман добавляет, что компании часто попадают в ловушку «единого кодового базса» на ранних этапах, но в итоге всё равно вынуждены нанимать отдельных iOS или Android-разработчиков, когда понимают, что кроссплатформенное решение не обеспечивает должного качества .

⚖️ Ghostty как некоммерческая организация и критика лицензий 23:36

Недавно Ghostty сменил юридический статус на некоммерческую организацию (non-profit), что гарантирует его независимость и открытость в будущем . Хашимото передал проекту все права на интеллектуальную собственность и торговые марки .

Это решение вызвало неожиданную критику со стороны сторонников «свободного ПО» (Free Software), которые требовали перевода проекта на копилефт-лицензию (например, GPL) вместо текущей пермиссивной . Митчелл относится к этому спокойно:

Митчелл признаётся, что из-за страха необоснованной критики он практически не обсуждает свою внетехническую благотворительную деятельность в интернете .

🤖 Рабочий процесс с ИИ: Агенты и «Оракул» 31:00

На момент записи (декабрь 2025 года) Хашимото полностью интегрировал ИИ в свой рабочий процесс, используя инструмент под названием AMP . Его воркфлоу выглядит следующим образом:

  1. Исследование (Librarian): Агент на базе модели Sonnet 4.5 сканирует репозитории и ищет примеры реализации протоколов (например, T-mux) .
  2. Планирование (Oracle): Модель GPT 5.1 анализирует собранную информацию и составляет детальный план реализации, учитывая типы данных и краевые случаи .
  3. Верификация: Хашимото просит ИИ перепроверить свои же выводы. Однажды это помогло найти одно пропущенное значение в перечислении (enum) среди тысячи задокументированных .
  4. Реализация: Создаются отдельные потоки (threads) для написания конкретных кусков кода .

Митчелл подчеркивает, что не доверяет ИИ вслепую. Он всегда требует ссылки на файлы и номера строк в исходном коде, чтобы лично проверить результат . По его словам, ИИ делает программирование более увлекательным, так как берет на себя рутинный поиск информации, позволяя человеку сосредоточиться на написании самого кода .

📜 Правила для контрибьюторов и проблема «шлака» (Slop) 36:14

В Ghostty действует строгая политика в отношении ИИ-контента от сторонних разработчиков:

Последнее правило было введено из-за негативного опыта: автоматические ответы ИИ на замечания мейнтейнеров никогда не приносили пользы и только усложняли коммуникацию . Хашимото жалуется на огромное количество низкокачественных PR («slop»), созданных с помощью ИИ людьми, которые даже не пытаются разобраться в проекте . Это убивает желание мейнтейнеров выступать в роли наставников для новичков .

🔋 Экология и будущее локальных моделей 47:26

Обсуждая энергозатраты на обучение и работу ИИ, Хашимото занимает прагматичную позицию. Он не считает, что отдельные пользователи должны нести ответственность за экологический след технологий; это задача корпораций и правительств .

Лично Митчелл минимизирует свой вклад в потребление энергии:

В будущем Хашимото надеется на появление качественных моделей (уровня Opus 4.5), способных работать локально на пользовательском железе, что решит вопросы конфиденциальности и скорости . Он полагает, что фаза экспоненциального роста возможностей LLM сменяется фазой итеративных улучшений и оптимизации эффективности .

💬 Цитаты

«Не влюбляйтесь в свой молоток. Это всего лишь инструмент, и он не будет любить вас в ответ.»

Митчелл Хашимото 13:37

«Я действительно скучаю по приложениям, которые бесстыдно заявляют: 'Я — приложение для Mac, и если вам нужна другая платформа, вам не повезло'.»

Митчелл Хашимото 03:52

«ИИ не глупый. Глупым бывает человек, который его использует.»

Митчелл Хашимото 37:06
👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Native UI
Интерфейс приложения, созданный с использованием стандартных инструментов и библиотек конкретной операционной системы.
Zig
Язык программирования общего назначения, ориентированный на производительность и безопасность, используемый в ядре Ghostty.
LLM Slop
Низкокачественный контент или программный код, массово генерируемый нейросетями без последующей проверки человеком.
Agentic workflow
Метод работы с ИИ, при котором несколько специализированных моделей (агентов) последовательно выполняют этапы задачи: исследование, планирование, кодинг.
📊 Цифры
🗓 Хронология
  1. 2021 Митчелл Хашимото начинает работу над терминалом Ghostty.
  2. Декабрь 2024 Ghostty переходит в статус некоммерческой организации.
  3. Декабрь 2025 Время записи подкаста, когда ИИ-модели Opus 4.5 и GPT 5.1 стали стандартом в работе Хашимото.
⚖️ Другая сторона
Технологии и IT Митчелл Хашимото Ghostty Zig Swift нативная разработка