Профессор Дэвид Малдер: «Как работает код под капотом»

WIRED 1,2 млн 33 мин 3 мин 09.12.2025
Главное

Путеводитель по программированию: от основ до компиляции 💻 0:00

Профессор информатики Калифорнийского университета в Беркли Дэвид Малдер (David Mulder) в рамках выпуска WIRED Tech Support отвечает на популярные вопросы пользователей сети, охватывая широкий спектр тем: от истории веба до принципов работы генеративного ИИ и процесса компиляции кода. В этом материале собраны ключевые концепции, советы для начинающих и профессиональные инсайты, которые помогут лучше понять современную разработку.


🌐 Наследие веба и основы обучения 0:14

История интернета берет начало с первых веб-страниц, созданных Тимом Бернерсом-Ли в начале 90-х годов. По словам профессора, эти документы до сих пор доступны и корректно отображаются современными браузерами.

Для тех, кто только начинает свой путь в программировании, Дэвид Малдер предлагает следующие тезисы:


🛠 Языки программирования и разработка 4:10

Выбор языка часто зависит от того, насколько сильно он «подстраховывает» разработчика, перехватывая ошибки до запуска программы.


🤖 ИИ в разработке: хайп или инструмент? 14:54

Большие языковые модели (LLM), на которых основан ChatGPT, по своей сути являются программами для «заполнения пропусков» на основе огромных массивов данных.


⚙️ Как работает «под капотом»: от кода к «нулям и единицам» 29:25

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

  1. Лексический анализ (Lexing/Tokenizing): Превращение текста программы в список токенов (операторов, чисел).
  2. Построение структуры (Abstract Syntax Tree): Создание дерева, отражающего приоритет операций (например, группировка скобок).
  3. Генерация инструкций (Code Generation): Преобразование структуры в набор команд, понятных процессору (например, move в регистры R8/R9 и последующее add).
  4. Двоичный код: Перевод инструкций в машинный код (последовательности нулей и единиц), которые исполняются процессором.

Дэвид Малдер демонстрирует этот процесс в x86-64 playground, показывая, как операции move и add меняют состояние регистров процессора в реальном времени.

💬 Цитаты

«Программирование — это не так много программирования, как вы могли бы пожелать.»

Дэвид Малдер 05:26

«Если вы чувствуете неудовлетворенность JavaScript, просто изучите TypeScript.»

Дэвид Малдер 08:01

«Debugging — это когда ваша ментальная модель того, что делает программа, расходится с тем, что она делает на самом деле.»

Дэвид Малдер 10:50
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Компилятор
Программа, которая переводит код, написанный человеком, в машинные инструкции (нули и единицы).
Vibe coding
Метод программирования, при котором код генерируется с помощью LLM, а не пишется вручную.
Лексический анализ
Первый этап работы компилятора, разбиение текста кода на отдельные смысловые элементы (токены).
JSON
Стандартизированный текстовый формат обмена данными, понятный разным программам.
📊 Цифры
⚖️ Другая сторона
Технологии и IT Дэвид Малдер Программирование Rust Компиляция Генеративный ИИ