Tоп-10: лучшие доклады HolyJS 2019 Piter
- суббота, 19 октября 2019 г. в 00:33:34
Этой весной прошла HolyJS 2019 Piter — большая конференция для JavaScript-разработчиков. Вместе с программным комитетом конференции мы составили для вас список лучших докладов, посвящённых следующим темам:
Под катом всё это структурировано следующим образом:
Доклады упорядочены по месту, которое он занял в рейтинге по мнению участников. Список на полный плейлист конференции тоже имеется. Добро пожаловать под кат!
В своем докладе Марина рассмотрела практическое применение графов на примере несложной задачи о рекомендациях. Тема графов очень важна для разработчиков на JavaScript, с ней приходится всё чаще и чаще сталкиваться. Доклад был в категории fundamentals, эту категорию мы сейчас активно продвигаем.
Этот доклад поможет вам начать осваивать графы и понимать области их применения.
Изначально была задача каким-то образом отлаживать V8, ставить точки останова и всё такое прочее. Вместо того, чтобы делать под это конкретный инструмент, ребята разработали общий протокол, и при помощи этого протокола написан Chrome DevTools. Поверх него можно делать всякие интересные штуки, например, отлаживать Node.js из Chrome или сделать собственную реализацию Electron, использующую текущий, установленный в системе, Chrome. Можно делать скринкасты, видеокасты, скриншоты, много всякой всячины. Поверх этого протокола написан фреймворк Puppeteer, а поверх него есть уже различные end-to-end системы тестирования. То есть это такая базовая вещь, через которую можно делать неявные прикольные штуки с рантаймом, на котором бежит JavaScript.
После просмотра доклада вы осознаете, насколько просто пользоваться этим протоколом, что с помощью него можно сделать, использовать эти знания для написания своих инструментов. Там нет никакого адского rocket science, и в докладе показывается, как всё это работает вплоть до самого низкого уровня, и это вдохновляет.
Артём поработал с большим количеством инструментов, таких как Flow и TypeScript, обнаружил в них много проблем и решил не просто хейтить эти проблемы, а попробовать решить их самостоятельно, провести исследование. Получился инструмент Hegel, про который и рассказывается в докладе. Инструмент пытается решить многие проблемы JavaScript, поэтому доклад всячески рекомендуется к изучению. А ещё Артем намекает, что можно помогать поддерживать и контрибьютить в сам Hegel.
Чисто практически вы узнаете конкретные проблемы Flow и TypeScript и увидите, что проблемы могут быть решены. Посмотрите на концепции, лежащие в основе инструмента Артёма: это может быть полезно, если вам интересно устройство вывода типов, там очень много таких базовых объяснений. Вы сможете глубже понять, как устроены ваши любимые инструменты.
Денис рассказывает несколько историй миграций. Несколько разных подходов к миграции фронтенда, всё на основе собственного опыта. Речь пойдёт о переходе с ASP.NET на Backbone, с Backbone на Polymer, с Polymer на Angular.js, где он попытается показать, как веб-компоненты могут в этом помочь. Вы сможете разобраться с полезными концепциями стыковки различных фреймворков на время миграции, а иногда и после.
Данный доклад относился к «экспериментальной» секции. Это секция про доклады, которые напрямую не относятся к JavaScript, но являются очень полезными для современных разработчиков. Илья Климов рассказал, как построить базовые пайплайны CI/CD на конкретных примерах. Объяснил концепции и показал на примере GitLab.
Для себя вы можете вынести отсюда основные идеи и базовые рецепты для своих проектов, чтобы начать делать деплой более автоматическим. Как обычно, Илья представил доклад интересно и зрелищно, благодаря чему он очень хорошо запоминается.
Один из самых крутых спикеров в секции Node.js. Рассказывает о практическом примере применения лямбд в AWS для решения очень сложных задач их заказчика. Он показывает, как с помощью лямбд и Node.js можно выстроить гибкую отказоустойчивую архитектуру, которая перерабатывает огромный объем данных. Речь пойдёт об основных концепциях использования на реальном примере из продакшена, в докладе раскрываются все плюсы и минусы. Это не просто какая-то вводная в лямбды и Node.js (таких рассказов видимо-невидимо), а рассказ о том, как построить рабочую архитектуру, выдерживающую высокие нагрузки. Вплоть до того, чтобы выбрасывать из бэкенда Java и переходить на JavaScript, используя его в хардкорной дата-инженерии. Вы сможете понять преимущества такого подхода и поймете, как строить системы на сервисах Amazon.
Martin — developer advocate в Google for Search & Web, он рассказывает людям, как работает SEO со стороны самих создателей гуглопоиска (а не как обычно, с точки зрения чёрной маги: «Делай вот так и станет хорошо, почему — неизвестно»). Martin ведёт про это видеоблог на YouTube. На докладе он рассказывал практики, которых следует придерживаться разработчикам, чтобы делать SEO хорошо и правильно, без использования грязных приёмов.
Это второй в нашем топе доклад про Puppeteer, но на этот раз с уклоном в тесты. Андрей на практическом кейсе показывает, как с помощью Puppeteer начать писать end-to-end тесты. В принципе, таких докладов немало, но Андрей рассказывает это с точки зрения автора данной технологии и приводит очень интересные кейсы.
GraphQL сейчас уже в такой стадии внедрения, когда все уже налюбовались простыми примерами, и начались первые попытки реального использования. Технология набирает зрелость. Павел сравнивает две реализации — Relay и Apollo, и дальше рассказывает, как правильно и неправильно готовить GraphQL. Для слушателя практическая ценность в том, что Павел показывает примеры построения более GraphQL-ориентированной схемы API, чтобы, переходя на него, вы не просто заворачивали REST в GraphQL, а именно пользовались особыми фишками GraphQL. В частности, Павел вводит термин «волосатый GraphQL», который показывает на примере GitHub API. А ещё это просто очень весёлый доклад!
В своем докладе один из самых знаменитых фронтендеров русскоязычного сообщества, чей инструмент используют во всём мире, рассказывает, как правильно подходить к продвижению ваших собственных продуктов. Он акцентирует внимание на том, что важно не только качество вашего решения, но и подход к его продвижению. Всё это подкреплено конкретными примерами. В докладе он рассматривает разные концепции продвижения — как агрессивные, так и те, когда нужно не только пушить инструмент с помощью маркетинга, но и вначале нужно довести инструмент до приемлемого качества, и только потом показывать. И всё это проиллюстрировано собственными проектами — PostCSS и Logux. Доклад будет полезен тем, кто занимается open source или хочет выложить какую-то библиотеку, например, чтобы более качественно подготовить её описание, чтобы она была более понятна пользователю. Также Андрей рассматривает то, как разработчики изучают вашу документацию и на что они обращают внимание в первую очередь.
Все доклады конференции HolyJS 2019 Piter доступны по ссылке на YouTube.
8-9 ноября в Москве состоится новая конференция — HolyJS 2019 Moscow. Это будет восьмая по счёту Холи, вас ждёт ещё больше докладов, больше известных международных спикеров и больше тысячи JavaScript разработчиков под одной крышей. Программу конференции можно посмотреть на официальном сайте, билеты можно приобрести там же.