В этом выпуске мы пообщались с легендарным реверс-инженером Деми Мурычем, который поделился своим опытом и нетривиальными взглядами на JavaScript. Обсудили, как правильно работать с var, let и const, затронули актуальные вопросы производительности, а также порассуждали о будущем языка и роли TypeScript. Не обошли стороной тему искусственного интеллекта, его влияния на код и профессиональные навыки программистов. Получилась живая беседа с байками, инсайтами и философскими отступлениями. Не пропустите — вас ждут практические советы, нестандартные идеи и свежий взгляд на развитие экосистемы JS!
✅ Подписывайтесь на канал «Организованное программирование» в Telegram: https://ttttt.me/orgprog
– Список подкаст-платформ (Apple Podcast, Google Podcast, Spotify, Яндекс.Музыка и другие): https://podcast.ru/1734325321
– Смотреть в ВК Видео: https://vkvideo.ru/video-224967259_456239098
00:00 Введение и анонс
00:37 Demi Murych: кто он и почему его нужно услышать
03:25 Let vs Const: настоящая угроза быстродействию?
07:02 ES15 и полный анализ бандла: где спрятана «просадка»?
08:57 TypeScript: спасение или «костыль» для JavaScript?
10:51 Статические типы и их влияние: нужен ли новый JavaScript?
11:48 Google Docs и 1,5 млн идентификаторов: уроки для всех
12:42 const против var: мифы, реальность и боль больших проектов
13:39 Как PHP умнее обращается с замыканиями (и зачем нам это знать?)
16:30 Оптимизация V8: секреты «под капотом» движка
21:13 Когда миллион строк JS-кода — не приговор
23:05 Предварительная оптимизация: действительно ли «корень всех зол»?
24:03 React и V8: почему производительность часто «пробуксовывает»
27:49 TypeScript и производительность: чего мы не учитываем?
29:42 Почему React-экосистема может быть «медленной»
32:34 Разделение труда: почему интегратор — не полноценный разработчик
34:28 Статическая типизация: снимаем нагрузку с рантайма
36:23 V8 Lite: отключаем «умную» оптимизацию ради скорости
37:21 TypeScript: в чём подвох «статических» типов?
40:11 Node.js и TypeScript: куда идёт Microsoft?
42:05 Хаос JavaScript: гибкость против системности
45:49 Object Assignment Pattern: цена красивого кода
46:47 Как помогать компилятору и не тратить ресурсы впустую
48:40 TypeScript: «простые вещи сложными, а сложные — простыми»
50:33 Совместимость по типам: почему без неё язык не выживает
52:25 Как Facebook проиграл TypeScript в начале пути
55:17 Искусственный интеллект против типов: кто победит?
57:11 ChatGPT и автогенерация: почему опасно верить слепо
58:05 Ассистент для профи: как не стать заложником инструмента
59:58 «Цифровой дебилизм»: теряем ли мы навыки из-за AI?
01:01:52 Docker-файлы и ChatGPT: границы разумной автоматизации
01:02:48 Код на русском: почему мозг «ломается»
01:04:42 Новый формат работы: программист-ассистент
01:06:35 Сложный проект и AI: где лежит предел?
01:08:28 Чёрный ящик: когда нейросеть пишет весь код
01:09:23 Многопоточность в JS: реальность или пока эксперимент?
01:11:16 Shadow Realm: создаём безопасные песочницы внутри JS
01:14:05 Content Security Policy: подпись скриптов как новый стандарт
01:15:58 Изоляция и Docker: спасают ли от критичных ошибок?
01:18:45 Почему специалистов по кибербезопасности не хватает
01:19:43 «Детские» баги: почему мы наступаем на те же грабли
01:22:35 Семантическая вёрстка и микроразметка: дружба с поисковиками
01:25:26 Подмена контента: разрешённые хитрости Google
01:29:11 Гибкая выборка: как индексировать материалы с подпиской
01:30:08 Flexible Sampling: Google и «усечённый» контент
01:34:49 HTML, XHTML и свобода JavaScript: кто победил?
01:37:35 Dart и WebAssembly: две истории, которым не дали взлететь
01:40:24 WebAssembly без доступа к DOM: где выход?
01:41:21 Возвращение Flash: возможен ли «камбэк»?
01:43:15 WebAssembly GC: ключ к ускоренной компиляции?
01:45:10 Почему Google держится за JavaScript и не отпускает
01:46:06 Универсальный WASM-модуль: пишем один код для всех платформ
01:48:00 Минимизируем зависимости: тренд на «маленький бандл»
01:50:50 Динамический импорт и подводные камни для сборки
01:52:42 «Учиться учиться»: как правильно формировать мозг программиста
01:54:32 Ошибки и рефакторинг: путь к настоящему мастерству
01:56:26 Возвращение идей по спирали: почему всё повторяется
01:57:22 Софтскилы: были ли они важны всегда?
#JavaScript #JSPerformance #TypeScript #V8 #FrontEnd #WebDevelopment #WebAssembly #ReactJS #CodeOptimization #LetVsVar #ModernJS #JSArchitecture #DevTalks #TechPodcast #DemiMurych
Как писать JS-код, который не будет тормозить? Советы от Demi Murych | Максим Бобров #39