- PVSM.RU - https://www.pvsm.ru -

Tоп-10: лучшие доклады HolyJS 2019 Piter

Tоп-10: лучшие доклады HolyJS 2019 Piter - 1

Этой весной прошла HolyJS 2019 Piter — большая конференция для JavaScript-разработчиков. Вместе с программным комитетом конференции мы составили для вас список лучших докладов, посвящённых следующим темам:

  • Алгоритмы на графах;
  • Протокол Chrome DevTools и Puppeteer;
  • Статические типизаторы;
  • CI/CD;
  • Миграции: с Backbone на Polymer, с Polymer на Angular.js;
  • Большие данные на Node.js в serverless-архитектуре;
  • SEO с точки зрения разработчиков Google Search;
  • GraphQL;
  • Продвижение опенсорс-проектов.

Под катом всё это структурировано следующим образом:

  • Видеоролик на YouTube;
  • Страница доклада с полным описанием на сайте конференции;
  • Ссылка на слайды или специальный сайт доклада (если они есть).

Доклады упорядочены по месту, которое он занял в рейтинге по мнению участников. Список на полный плейлист конференции тоже имеется. Добро пожаловать под кат!

10. Марина Миронович — Алгоритмы на графах

Страница доклада [1]

В своем докладе Марина рассмотрела практическое применение графов на примере несложной задачи о рекомендациях. Тема графов очень важна для разработчиков на JavaScript, с ней приходится всё чаще и чаще сталкиваться. Доклад был в категории fundamentals, эту категорию мы сейчас активно продвигаем. 

Этот доклад поможет вам начать осваивать графы и понимать области их применения.

9. Алексей Козятинский — Протокол Chrome DevTools

Страница доклада [2], слайды [3]

Изначально была задача каким-то образом отлаживать V8, ставить точки останова и всё такое прочее. Вместо того, чтобы делать под это конкретный инструмент, ребята разработали общий протокол [4], и при помощи этого протокола написан Chrome DevTools. Поверх него можно делать всякие интересные штуки, например, отлаживать Node.js из Chrome или сделать собственную реализацию [5] Electron, использующую текущий, установленный в системе, Chrome. Можно делать скринкасты, видеокасты, скриншоты, много всякой всячины. Поверх этого протокола написан фреймворк Puppeteer [6], а поверх него есть уже различные end-to-end системы тестирования. То есть это такая базовая вещь, через которую можно делать неявные прикольные штуки с рантаймом, на котором бежит JavaScript.

После просмотра доклада вы осознаете, насколько просто пользоваться этим протоколом, что с помощью него можно сделать, использовать эти знания для написания своих инструментов. Там нет никакого адского rocket science, и в докладе показывается, как всё это работает вплоть до самого низкого уровня, и это вдохновляет.

8. Артём Кобзарь — Как и зачем я пишу свой статический типизатор

Страница доклада [7]

Артём поработал с большим количеством инструментов, таких как Flow и TypeScript, обнаружил в них много проблем и решил не просто хейтить эти проблемы, а попробовать решить их самостоятельно, провести исследование. Получился инструмент Hegel [8], про который и рассказывается в докладе. Инструмент пытается решить многие проблемы JavaScript, поэтому доклад всячески рекомендуется к изучению. А ещё Артем намекает, что можно помогать поддерживать и контрибьютить в сам Hegel. 

Чисто практически вы узнаете конкретные проблемы Flow и TypeScript и увидите, что проблемы могут быть решены. Посмотрите на концепции, лежащие в основе инструмента Артёма: это может быть полезно, если вам интересно устройство вывода типов, там очень много таких базовых объяснений. Вы сможете глубже понять, как устроены ваши любимые инструменты.

7. Денис Мишунов — Я создал Франкенштейна: 3 истории миграции

Страница доклада [9], слайды [10]

Денис рассказывает несколько историй миграций. Несколько разных подходов к миграции фронтенда, всё на основе собственного опыта. Речь пойдёт о переходе с ASP.NET на Backbone, с Backbone на Polymer, с Polymer на Angular.js, где он попытается показать, как веб-компоненты могут в этом помочь. Вы сможете разобраться с полезными концепциями стыковки различных фреймворков на время миграции, а иногда и после.

6. Илья Климов — Ламповый CI/CD. Как и с чего начать

Страница доклада [11]

Данный доклад относился к «экспериментальной» секции. Это секция про доклады, которые напрямую не относятся к JavaScript, но являются очень полезными для современных разработчиков. Илья Климов рассказал, как построить базовые пайплайны CI/CD на конкретных примерах. Объяснил концепции и показал на примере GitLab. 

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

5. Николай Матвиенко — Обработка озера данных на Node.js в serverless-архитектуре

Страница доклада [12], слайды [13]

Один из самых крутых спикеров в секции Node.js. Рассказывает о практическом примере применения лямбд в AWS для решения очень сложных задач их заказчика. Он показывает, как с помощью лямбд и Node.js можно выстроить гибкую отказоустойчивую архитектуру, которая перерабатывает огромный объем данных. Речь пойдёт об основных концепциях использования на реальном примере из продакшена, в докладе раскрываются все плюсы и минусы. Это не просто какая-то вводная в лямбды и Node.js (таких рассказов видимо-невидимо), а рассказ о том, как построить рабочую архитектуру, выдерживающую высокие нагрузки. Вплоть до того, чтобы выбрасывать из бэкенда Java и переходить на JavaScript, используя его в хардкорной дата-инженерии. Вы сможете понять преимущества такого подхода и поймете, как строить системы на сервисах Amazon. 

4. Martin Splitt — Technical SEO 101 for web developers

Страница доклада [14]

Martin — developer advocate в Google for Search & Web, он рассказывает людям, как работает SEO со стороны самих создателей гуглопоиска (а не как обычно, с точки зрения чёрной маги: «Делай вот так и станет хорошо, почему — неизвестно»). Martin ведёт про это видеоблог на YouTube [15]. На докладе он рассказывал практики, которых следует придерживаться разработчикам, чтобы делать SEO хорошо и правильно, без использования грязных приёмов.

3. Andrey Lushnikov — Modern web testing and automation with Puppeteer

Страница доклада [16], слайды [17]

Это второй в нашем топе доклад про Puppeteer, но на этот раз с уклоном в тесты. Андрей на практическом кейсе показывает, как с помощью Puppeteer начать писать end-to-end тесты. В принципе, таких докладов немало, но Андрей рассказывает это с точки зрения автора данной технологии и приводит очень интересные кейсы.

2. Павел Черторогов — ApolloClient или Relay с фрагментами, «волосатый» GraphQL и TypeScript — всё, что нужно для правильного статического анализа React-приложения

Страница доклада [18], слайды [19]

GraphQL сейчас уже в такой стадии внедрения, когда все уже налюбовались простыми примерами, и начались первые попытки реального использования. Технология набирает зрелость. Павел сравнивает две реализации — Relay и Apollo, и дальше рассказывает, как правильно и неправильно готовить GraphQL. Для слушателя практическая ценность в том, что Павел показывает примеры построения более GraphQL-ориентированной схемы API, чтобы, переходя на него, вы не просто заворачивали REST в GraphQL, а именно пользовались особыми фишками GraphQL. В частности, Павел вводит термин «волосатый GraphQL», который показывает на примере GitHub API. А ещё это просто очень весёлый доклад!

1. Андрей Ситник — Продвижение опенсорс-проектов

Страница доклада [20], слайды [21]

В своем докладе один из самых знаменитых фронтендеров русскоязычного сообщества, чей инструмент используют во всём мире, рассказывает, как правильно подходить к продвижению ваших собственных продуктов. Он акцентирует внимание на том, что важно не только качество вашего решения, но и подход к его продвижению. Всё это подкреплено конкретными примерами. В докладе он рассматривает разные концепции продвижения — как агрессивные, так и те, когда нужно не только пушить инструмент с помощью маркетинга, но и вначале нужно довести инструмент до приемлемого качества, и только потом показывать. И всё это проиллюстрировано собственными проектами — PostCSS и Logux [22]. Доклад будет полезен тем, кто занимается open source или хочет выложить какую-то библиотеку, например, чтобы более качественно подготовить её описание, чтобы она была более понятна пользователю. Также Андрей рассматривает то, как разработчики изучают вашу документацию и на что они обращают внимание в первую очередь.

Полный плейлист

Все доклады конференции HolyJS 2019 Piter доступны по ссылке на YouTube [23].

8-9 ноября в Москве состоится новая конференция — HolyJS 2019 Moscow. Это будет восьмая по счёту Холи, вас ждёт ещё больше докладов, больше известных международных спикеров и больше тысячи JavaScript разработчиков под одной крышей. Программу конференции можно посмотреть на официальном сайте [24], билеты можно приобрести там же [25].

Автор: Олег Чирухин

Источник [26]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/333681

Ссылки в тексте:

[1] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/6go7dbltidzl19bpgymyzj/

[2] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/30t5nkghc0q0syeyqyowcg/

[3] слайды: https://assets.ctfassets.net/nn534z2fqr9f/79LNrnTK4OMG7UMV6gy4Be/d359c0336ea2ef388936040bf87e5a99/Aleksey_Kozyatinskiy_Protokol_Chrome_DevTools.pdf

[4] протокол: https://chromedevtools.github.io/devtools-protocol/

[5] собственную реализацию: https://github.com/GoogleChromeLabs/carlo

[6] Puppeteer: https://pptr.dev/

[7] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/1oieaxfdkrgruzwhprhhmp/

[8] Hegel: https://github.com/JSMonk/hegel

[9] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/2mejtbnfx527pvlic8nh1c

[10] слайды: https://speaking.mishunov.me/03EExr

[11] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/a6w7eehuwdkvw9mw2hlr8/

[12] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/2t9v81y8ywyilvjg1lfmzp/

[13] слайды: https://assets.ctfassets.net/nn534z2fqr9f/v0DvUwICec13eSHre64Kg/91c6f3bc63f1ab9e6ff0344ecf81716e/Nikolay_Matviyenko_Obrabotka_ozera_dannykh_na_Node.js_v_serverless-arkhitekture.pdf

[14] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/3qwtjvhq3vv9fmr5xaxilq/

[15] видеоблог на YouTube: https://www.youtube.com/user/GoogleWebmasterHelp

[16] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/lyqbiqgk1xl9zkf7iujmd

[17] слайды: https://downloads.ctfassets.net/nn534z2fqr9f/3BL3mW29fORsvWhJLJdy3T/5dc36c212e25a971b2019359c2d580cb/Andrey_Lushnikov_Modern_web_testing_and_automation_with_Puppeteer.pdf

[18] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/5aijmcmhxyojks5vdbf5ct/

[19] слайды: https://nodkz.github.io/conf-talks/talks/2019.05.24-holyjs-piter/index.html##/

[20] Страница доклада: https://2019.holyjs-piter.ru/2019/spb/talks/1exjadg8yh5xjdme9b4dsz/

[21] слайды: https://downloads.ctfassets.net/nn534z2fqr9f/7Fn6u1WpheLSSSbvx3Moeu/2b922c1809afed8fb6c50fdf334f2a92/Andrey_Sitnik_Prodvizheniye_opensors-proyektov.pdf

[22] Logux: https://github.com/logux

[23] по ссылке на YouTube: https://www.youtube.com/playlist?list=PL8sJahqnzh8K1ajJiFd1eAcCYJvViAdo6

[24] на официальном сайте: https://holyjs-moscow.ru/schedule/?utm_source=habr&utm_medium=472020&utm_campaign=holyjs19msc

[25] приобрести там же: https://holyjs-moscow.ru/registration/?utm_source=habr&utm_medium=472020&utm_campaign=holyjs19msc

[26] Источник: https://habr.com/ru/post/472020/?utm_source=habrahabr&utm_medium=rss&utm_campaign=472020