Послезавтра в Петербурге начнётся двухдневная конференция HolyJS. Мы будем рады видеть всех на мероприятии, но и для отсутствующих тоже кое-что припасли: доклады первого зала можно будет смотреть бесплатно в прямом эфире на YouTube.
Хотя это только часть от общей программы конференции, попало много интересного для самых разных слушателей: тут и «приключения во фронтенде», и производительность Node.js, и мобильный веб, и так далее вплоть до майнинга крипты в браузере.
Сразу сообщаем заветную ссылку: holyjs-piter.ru/online-free. А под катом приводим описания докладов, попавших в бесплатную трансляцию — можно пробежаться по ним и быстро понять, что из этого вам интересно.
День первый (19 мая)
10:30 Виталий Фридман — New Adventures In Front-End, Season 2
Одним из самых заметных выступлений предыдущей HolyJS стал доклад Виталия Фридмана «New Adventures in Responsive Web Design». Если не присутствовали на нём лично, можете посмотреть видеозапись.
И теперь Виталий возвращается с новыми «Новыми приключениями». Когда возглавляешь Smashing Magazine, узнаешь массу фронтендерских тонкостей, сложностей и грязных трюков — так что доклад затронет самые разные темы. Как предупреждает автор, «вы не сможете «раззнать обратно» то, что узнаете, и мы не несем ответственность за ваши последующие ночные кошмары».
12:00 Алексей Богачук — Solution Architecture and JavaScript
Часто архитектура в JavaScript сводится к выбору фреймворка согласно последним тенденциям в мире фронтенда. А если сказать, что выбор технологий — это лишь седьмой шаг при принятии проектного решения? Каждый день множество проектов получают убытки или вовсе разваливаются из-за некорректно выбранной архитектуры.
Алексей поделится историями, которые помогут правильно сформировать видение и значение архитектуры в современных приложениях, а также не допустить ошибок, которые могут просто уничтожить ваш проект.
13:45 Николай Рыжиков — Make frontend «backend» again
Эффективная разработка интерфейса пользователя до сих пор, даже при наличии современных реактов и ангуляров, — это боль и потери. Делается долго, результат ненадежен и неудовлетворителен. В докладе мы попробуем разобраться в источниках существенной и случайной сложности разработки мордочек. И на примере стека ClojureScript & Reagent & Re-frame посмотрим, как можно хоть что-то с этим сделать.
15:30 Денис Радин — Майним крипту в браузере: WebWorkers, GPU, WebAssembly и другие хорошие вещи
Посетителям HolyJS Денис уже знаком, например, по докладу «UI-компоненты на пиксельных шейдерах», и его основная работа связана с фотореалистичными веб-играми, но теперь выступит с совсем другой темой. Год назад к нему обратились за консультацией по вопросу «Возможно ли майнить криптовалюту в браузере с использованием GPU», и Денис исследовал вопрос — а теперь готов поделиться знаниями о том, чего ожидать, когда использовать пул браузерных майнеров.
17:00 Николай Матвиенко — Декомпозиция Main Thread в Node.js для увеличения пропускной способности
Рост функциональности в Enterprise Node.js приложениях часто приводит к снижению пропускной способности. В этом докладе мы начнем с дисперсии Main Thread (основного потока Node.js) и разложим его на спектр выполняемых в нем операций. Узнаем, какие из этих операций мы можем перенести в отдельные потоки/воркеры/процессы и как это сделать. Мы выберем успешные способы распараллеливания для каждого типа операций, рассмотрим их преимущества и ограничения. Помимо стандартных способов мы также рассмотрим альтернативные решения распараллеливания задач используя возможности V8 и libuv thread pool. В завершение сравним как архитектура приложения и пропускная способность изменились после декомпозиции Main Thread.
18:30 Максим Юзва — Мерцание технологий, или Инжиниринг 21-го века
Мы пишем код. Интерпретатор четко следует нашим инструкциями. Он не возражает, не спорит, с ним не нужно вести переговоры. Всё четко и по делу. За это мы и любим программирование, ведь это — полная власть в созданном нами мире. Именно поэтому лучшие программисты не терпят общения с чем-то столь несовершенным, как люди, с их бесконечными эмоциями, потребностями и причудами.
Как продать рефакторинг на проекте, как убедить коллег внедрить Линтер или как перестать париться, на чём писать: Angular, React или Vue?
Итак, как же стать инженером XXI века? Расскажет Максим Юзва — фронтенд-тимлид, нанимающий и ресурсный менеджер в EPAM Systems; организатор сообщества FrontSpot и завсегдатай BeerJS.
День второй (20 мая)
10:30 Imad Elyafi — Bringing mobile web back to life
В Pinterest, где сейчас работает Имад, мобильную веб-версию масштабно переделали, управившись при этом за 11 недель. В итоге получилось и добиться результата, близкого к нативным приложениям, и сохранить при этом быструю скорость загрузки. Метрики вовлечённости пользователей резко возросли. Но этот путь не был усыпан розами, так что Имад расскажет, с какими сложностями столкнулись по пути и каким образом их преодолели.
12:00 Роман Дворнов — Каталог компонентов: переосмысление
В Avito, где работает Роман, разрабатывают свой каталог компонентов. Этот доклад — ответ на вопрос «зачем?», когда уже есть готовые решения. Темы, которые будут затронуты:
- Как представлять компоненты, демонстрировать их возможности, технические решения для этого
- Какие функции могут быть полезны дизайнерам и разработчикам
- Как идентифицировать компоненты, сбор и привязка мета-информации, организация базы знаний
- Информация о местах использования компонентов и владении кодом
- Выход за границы каталога и его «дружбе» с другими внутренними сервисами
13:45 Евгений Гусев и Илья Таратухин — Бешеные псы, сезон 2: React vs Vue
«Чувствуешь запах? Это фронтенд, сынок. Больше ничто в мире не пахнет так.
Я люблю запах фронтенда поутру. Однажды мы рефакторили одну фичу двенадцать часов подряд. И когда всё закончилось… Там уже не было ни одного неизменённого файла.
Когда-нибудь эта война фреймворков закончится...»
Да, мы опять с вами! В этот раз эксперты мистер Синий (Илья Таратухин) и мистер Зелёный (Евгений Гусев) берут штурмом новые высоты: наш старый знакомый звёздно-полосатый React пытается отстоять рубежи перед стремительно наступающим Vue. Кругом взрывы, фронтендеры тут и там… Так, стойте, эта аналогия зашла слишком далеко. Давайте по-простому: посмотрим на два фреймворка и поймём, чем они похожи, чем отличаются, и кто же всё-таки победит в этой войне?
15:30 Никита Прокопов — Обретение навыков
Как люди учатся новым навыкам и какие из этого следствия для программистов. Пять стадий прокачки: новичок, продвинутый, компетентный, специалист, эксперт. Основные моменты: как правильно обучать программистов, кто с кем эффективно работает в команде, как переходить на следующий уровень, природа споров и советов.
17:05 Михаил Полубояринов — Чего ждать от JavaScript в 2018 году?
В январе прошел очередной митинг комитета TC39, на котором окончательно сформировалась спецификация ES2018. По её следам и пойдёт выступление Михаила Полубояринова — организатора PiterJS и IT Global Meetup, разработчика с 18-летним опытом, участника Программного комитета HolyJS.
18:35 Илья Климов — 30: слишком много JavaScript
«Мне 30, и я стар. Ок, на самом деле пока еще 29, и я super-star (по крайней мере так мне всегда говорила моя мама, а разве она может быть неправа?), но уже сейчас я отчетливо вижу ограничения своего мозга по переработке информации, восприятию нового контента и обучению».
Наша индустрия растет взрывообразно. Думали ли вы пару лет назад, что на конференции с JavaScript в названии мы будем погружаться в глубины AST, изучать ассемблерные вставки для лучшего понимания производительности V8 и интересоваться Rust (потому что WebAssembly же!)? Этот доклад — ответ на три вопроса, которые задают Илье каждую неделю по несколько раз его студенты:
- Как учить то, что нужно, а не хайпово?
- Как структурировать информацию для максимально быстрого освоения?
- Куда бежать?
Илья терпеть не может разговоры про космические корабли, бороздящие бескрайние просторы Большого театра. Его цель, чтобы после доклада каждый вышел если не с твердым пониманием, что, как и когда учить в JS, то хотя бы со знанием, как это понимание обрести.