Как стать автором
Обновить
145.03
JUG Ru Group
Конференции для Senior-разработчиков

Состояние JavaScript: что расскажут на HolyJS 2025 Spring

Время на прочтение15 мин
Количество просмотров2.5K

В каком состоянии сейчас JavaScript-разработка? Насколько значим стал TypeScript? Напишут ли уже нейросети за нас юнит-тесты? Что можно закодить в вебе с помощью Emscripten? (спойлер: например, «Героев Меча и Магии»).

Конференции всегда помогали «держать руку на пульсе» и понимать состояние индустрии. А в этот раз перед HolyJS мы ещё и затеяли опрос TechRadar, где разработчики отвечают, чем именно они пользуются. И на конференции узнаем ответы.

До начала HolyJS 2025 Spring осталось меньше недели, и мы публикуем на Хабре полную программу докладов. Возможно, по ней вы поймёте, хотите ли на конференцию. А возможно, просто пробежитесь глазами по названиям, и уже по ним поймёте, что волнует JS-разработчиков в 2025 году.

Содержание

  • Открывающий кейноут

  • Фронтенд

  • Инструменты

  • Mad Skills

  • Бэкенд

  • Архитектура

  • Другое


Открывающий кейноут

State of Frontend 2025 от Программного комитета HolyJS

Мария Кондаурова

BIOCAD

Василий Ванчук

Подведение итогов упомянутого опроса. Чтобы принимать решения, что сейчас стоит использовать, нужно быть «в тренде» — да и вообще интересно, какими технологиями пользуются другие, правда? Поэтому в Программном комитете и затеяли TechRadar — исследование о том, какие технологии и методики мы используем в разработке.

Спойлер: тут учли ваши ответы на тему того, чем вы не хотите пользоваться, и в итоге получилось что-то вроде «стены плача». Она тоже обязательно будет показана!

Фронтенд

Как приручить сигналы, или BI-система на графовой реактивности за 2 месяца

Дмитрий Дин

Далее

Команде Дмитрия было поручено разработать конструктор дашбордов, в котором могли бы функционировать между собой интерактивные виджеты (фильтры, календари, периоды, графики, таблицы). После анализа приняли решение разработать технологию ReGraph как новый слой абстракции над Svelte Stores с сохранением связей подписчиков в виде графа. Данный подход легко применим и к другим фронтенд-фреймворкам, работающим с сигналами или их аналогами. В итоге получили возможность создавать и управлять реактивными связями в runtime, что помогло сделать свою BI.


Все технологии веб-анимаций в одной игре

Андрей Михайлов

Когда необходимо добавить анимацию на сайт или в веб-приложение, перед вами открывается целый спектр технологий, каждая из которых по-прежнему актуальна. Но как же сделать правильный выбор?

В некоторых случаях ответ очевиден, но не всегда. Недавно Андрей выпустил браузерную игру, в которой использованы все доступные методы 2D-анимаций для веба.

Эта игра станет примером, на основе которого он познакомит вас с различными способами анимации с точки зрения программиста. Объяснит, почему выбрал именно эти технологии, поделится особенностями их применения и расскажет о методах оптимизации, которые использовал.

Будет интересно не только программистам.


Как устроен современный видеоплеер

Илья Калашников

VK

Разберемся в протоколах, форматах, контейнерах и кодеках видео и разнице между ними.

Вооружившись MediaSourceExtenion, построим базовый видеоплеер: скачаем, распарсим, буферизируем, разложим, воспроизведем поток, адаптивно его переключим и почистим из памяти.

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

Илья объяснит, как на принципиальном уровне работают все видеоплееры, в том числе и библиотека, которую вы используете.


RxJS: Великий и Ужасный. Описываем сложную асинхронную логику вне зависимости от стека

Николай Пугачев

Сбер

В докладе рассмотрим RxJS как универсальный инструмент, который можно интегрировать в любой проект на React, Vue или Svelte без переписывания архитектуры. Поговорим о том, какое место занимает «реактивное расширение» в современном фронтенде, где у каждого фреймворка уже есть собственная система реактивности. Развенчаем распространённые мифы об RxJS и поймём, почему его настоящая ценность заключается не в самой реактивности, а в декларативном подходе к описанию сложных асинхронных процессов.


Larana vs CSS: как браузер рассчитывает layout

Евгений Кучерявый

LaranaTech

Вас спрашивали на собесах про Event Loop и какие жизненные циклы есть у браузера? Как происходит расчет layout и покраска? А находили ли вы применение этому в реальной работе?

Давайте погрузимся во все это поглубже на примере CSS и его главной альтернативы — LaranaJS. Выясним, что именно происходит под капотом у разработки интерфейсов, почему веб построен на retained mode, но используем мы immediate mode.

Мы пройдем путь от использования CSS к самостоятельному расчету layout. И выясним, можно ли запустить Doom в браузере и без него.


Ускорение веб-приложений за счет предзагрузки страниц: опыт Ozon

Юрий Амелин

Ozon

Юрий расскажет, как ускорить веб-приложение за счет предзагрузки страниц с помощью технологий Service Worker и Speculations API, основываясь на опыте внедрения этих инструментов в Ozon.


Taiga UI Kit, или Как куются гибкие переиспользуемые Angular-компоненты

Герман Панов

Т-Банк

Репозиторий

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


React Native, реалии разработки, проблемы и их решения

Никита Прокуратов

Sheverev

Разработка на React Native набирает обороты, компании находятся в активном поиске специалистов в данной области, но их довольно мало. И еще меньше тех, кто действительно вкусил это удовольствие работы с React Native.

Никита расскажет о проблемах и чудо-багах, которые ловят разработчики. О причинах их возникновения, о том как их надо и не надо решать. А также о том, как быть разработчиком мобильных приложений на React Native в условиях всех ограничений, наложенных на разработчиков из РФ.

После доклада вы узнаете React Native с другой стороны.


MarkdownEditor: следующий шаг в работе с текстом

Сергей Махнаткин

Яндекс

Текстовые редакторы прошли долгий путь — от простых утилит до сложных систем, но разрыв между WYSIWYG и Markdown все еще мешает работать с текстом эффективно. В докладе Сергей расскажет, как в Яндексе создали MarkdownEditor — open source-инструмент, который объединяет оба подхода и позволяет переключаться между ними в реальном времени.

Спикер поделится историей его создания, разберет архитектуру: как ProseMirror, CodeMirror и Gravity UI помогли команде, расскажет, какие вызовы преодолели — от синхронизации режимов до построения системы плагинов. Покажет, как редактор упрощает работу с документацией и оптимизирует процессы в Яндексе.

А еще обсудим будущее: как текстовые инструменты влияют на экосистемы и почему правильные технологии меняют подход к работе с текстовым контентом.


PWA и WebView: как сделать ваше веб-приложение доступным в офлайн-режиме

Алексей Егоров

VK

Алексей проведет глубокий анализ двух популярных технологий для создания веб-приложений на мобильных устройствах: Progressive Web Apps (PWA) и WebView. Рассмотрит их отличия, возможности реализации офлайн-режима, производительность, а также ключевые преимущества и недостатки каждой из технологий. Объяснит, почему их не следует напрямую сравнивать и какие особенности каждой из них стоит учитывать.


Код — тоже интерфейс

Александр Глущенко

Яндекс

Александр расскажет про опыт реализации интерактивного просмотра кода и диффов в браузере при разработке SourceCraft. О том, как в Яндексе ставили себе целью IDE-подобный опыт взаимодействия с кодом в просмотре репозитория в браузере.

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


Разработка embedding SDK

Александр Полянкин

Metabase

Требований к кастомизации встраиваемого приложения стало больше, и было принято решение разработать embedding SDK для React. В докладе вам расскажут о проблемах, с которыми столкнулись в Metabase при реализации SDK, и решениях для переиспользования кода из основного приложения, Content Security Policy, глубокой кастомизации компонентов, визуального тестирования и тестирования совместимости между различными версиями продукта.


Как вдохнуть вторую жизнь в Redux, связав состояние с React-контекстом

Иван Малюгин

билайн

Иван расскажет, с какими основными челленджами столкнулись при натягивании чистой архитектуры на React&Redux-приложение, какое решение нашли и как оно эволюционировало в простой плагин, позволяющий связать Redux с React-контекстом.


Three.js Shading Language: как устроена нодовая система в Three.js

Павел Мажуга

Chipsa

Павел расскажет, что в данный момент не так с материалами в Three.js, зачем придумали Three.js Shading Language (TSL) и как он работает. Разберемся, что же такое ноды, как с их помощью создавать (точнее — «генерировать») шейдеры, а также вам покажут множество экспериментальных демок на TSL (WebGPU).


Используем новые возможности веба в привычной разработке

Александр Нефедов

Яндекс

В браузерах постоянно появляется что-то новое, а профессия «фронтендер» все больше считается устоявшейся. Попробуем расшатать устои и привычки разработчиков, посмотрим на HTML/CSS/JS. При этом будем говорить не про самые свежие возможности, которые пока нигде не применишь, и не про новые возможности геймпадов в браузерах, а остановимся где-то между ними. Чтобы каждый нашел для себя что-то новое и внедрил в повседневные проекты.


Инструменты

Релизим RN-приложение каждый день. Нет, не CodePush

Евгений Прокопьев

Купер

Евгений расскажет, как спроектировать и настроить RN-проект, чтобы команды независимо могли релизить свои части приложения хоть каждый день, при этом будет пересобираться только их код.

О чем поговорим:

  • глубокая работа со сборщиком Metro;

  • погружение в работу Metro runtime;

  • внутреннее устройство RN для загрузки/подгрузки JS кода;

  • частичная проработка архитектуры.


У меня проблема: стабильности не хватает (E2E-тестов). AI, помоги!

Павел Востриков

Kaspersky

Как часто вы встречали досадный баг после своих правок или просто появившуюся без видимых причин проблему в проде?

Наличие E2E-тестов в такой ситуации могло бы сэкономить кучу времени, но самое главное — нервов.

Но что, если даже E2E-тесты не помогают и со временем превращаются в очередную проблему? Что упало, почему упало и как это все поддерживать.

В таком случае поможет системный подход к построению системы автотестирования. Центральное звено в этой системе — JS-разработчик. Или все-таки AI?


Автоматизация дизайна на JS: от Adobe до веба

Сергей Турулин

Эникрафт

Сергей расскажет о том, как начал разрабатывать экстеншены, которые позволили выйти за пределы Adobe: получать данные из Google-таблиц, делать автоматическую верстку, сохранять готовые макеты на сайт клиента. И все быстро и с проверкой данных.

После создания подобных систем он сконцентрировался вообще на отказе от Adobe при масштабировании дизайна. Современный JS позволяет создавать PDF-файлы почти с любыми шрифтами, вкладывать графику или даже делать PDF-файлы из других PDF-файлов. Так Сергей сделал движок JP.

Это что-то вроде CSS+JS для PDF-файлов: некий конфиг графических файлов, который описывает размещение, размер и условия отображения элементов. Работает он даже в браузере (без сервера) и может создавать сотни PDF-файлов за секунды. Современная версия движка уже умеет не только делать PDF-файлы из конфигов, но и собирать конфиги из других конфигов. То есть компонентный подход. В докладе Сергей расскажет про его создание и работу.


TypeScript на максималках: практические кейсы из жизни большого проекта

Константин Логиновских

Cloud.ru

Сегодня уже не найти фронтенд-разработчика, среди скилов которого нет TypeScript. Но как же разработчик решает, что TypeScript освоен? Скорее всего, он запомнил примитивы, шапочно разобрался с ключевыми словами и операторами, посмотрел в сборщики, после чего пожал плечами и добавил язык себе в резюме.

Так действовал и Константин до недавнего времени, когда при работе над проектом пришлось столкнуться с несколькими практическими задачами, которые потребовали погружения в работу с TypeScript. Об этом он и расскажет в докладе.


Безопасность при работе с npm: угрозы, кейсы и истории

Анастасия Егорова

YouTube-канал CosyFrontend

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

Поговорим и о том, какие существуют методологии и способы защиты от подобных угроз, а в конце доклада Анастасия поделится чек-листом по безопасной работе с npm.


Как не бояться сломать production? Опыт автоматизации QA с Testplane

Николай Марков

Яндекс

Разберем, как быстро и «дешево» обеспечить покрытие фронтенда smoke-тестами без кода (если в проекте есть Storybook), почему компонентные тесты в браузере надежнее, чем в jsdom, и как уменьшить боль при работе с e2e-тестами. Поговорим об опыте внедрения этого в проекты Яндекса: с какими проблемами сталкиваются в Яндексе, как их решают и почему решили развивать собственный фреймворк для e2e-тестов — Testplane.


Легальный Copilot для рабочего кода и документов

Павел Франков

VK / ВКонтакте

ChatGPT и подобные сервисы позволяют писать и рефакторить код на порядок быстрее, но только не на рабочих проектах. Если кодовая база закрытая, использование внешних сервисов приведет к нарушению NDA.

Можно ли как-то обойти это ограничение? Что не так с альтернативными решениями? Можно ли справиться без нейросетей?

Павел расскажет, как легально используют Copilot во ВКонтакте, как он сам пользуется AI-помощниками, какие у этого есть ограничения и почему этот текст нельзя было сгенерить нейросетью.


Генерация юнит-тестов с LLM: как если бы посуда мылась сама

Даниил Кобылкин

VK / OK

Тимофей Тимошевский

VK / OK

В докладе вам расскажут:

  • Что такое LLM и как они работают под капотом.

  • Какие решения на рынке помогают писать юнит-тесты.

  • Как реализовали генерацию юнит-тестов в проекте и с какими подводными камнями пришлось столкнуться.


Почему я не буду писать свою следующую библиотеку на TypeScript

Валентин Ульянов

Р7

TypeScript с нами уже больше 10 лет, и за это время было множество статей и докладов о том, какой он чудесный. Но почти не было материалов о его слабых сторонах, и вряд ли это из-за того, что таковых нет. Пришло время изучить этот вопрос. И не просто изучить, а сделать это в контексте разработки инструментов. Валентин не убеждает вас выкинуть TS из своего проекта. А покажет иной взгляд: как можно делать сложные вещи по-другому и, возможно, более эффективно.

Доклад будет особенно полезен разработчикам библиотек и сложных проектов на JS. А также тем, кто считает, что без TypeScript сегодня работать невозможно.


Удаление мертвого кода в проекте: практическое руководство

Виктор Хомяков

Без должного присмотра проект может превратиться в склад забытых артефактов. Виктор покажет, как бороться с мертвым кодом на всех уровнях — от package.json и до выполнения в браузере.


OpenTelemetry в мире JavaScript: как приручить observability в веб-приложениях

Алексей Золотых

МойОфис

OpenTelemetry — это стандарт, который упрощает наблюдаемость в современных JS-приложениях. В докладе вам расскажут:

  • Как JavaScript-программисты могут использовать OpenTelemetry для сбора трассировок, метрик и логов.

  • Типичные задачи: мониторинг пользовательских действий, производительности API, ошибок в real-time.

  • Интеграция с фреймворками: React, Vue, Node.js и Express.

  • Как собрать данные и отправить их в популярные бэкенды: Prometheus, Grafana, Jaeger.

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


Mad Skills

Как работать в террариуме — о команде и о вас

Юлия Уварова

Есть коллега, с которым не хочется общаться? А приходится, ведь только он знает, как решить проблему. После его комментариев на код-ревью хочется втащить ему. Но вместе с этим неприятно: самооценка падает ниже плинтуса, а с ней и мотивация к работе. Возникают мысли: «А не уволиться ли, чтобы его не видеть никогда». Пытаетесь найти обходные пути, задачи решаются долго.

Юлия расскажет о возможных причинах поведения коллеги, а также о том, что делать, если токсик — это вы.


Типизируем eval и new Function: JavaScript-интерпретатор на типах TypeScript

Сергей Соловьев

Т-Банк

Многие слышали, что система типов TypeScript является Тьюринг-полной, но что это значит? Если коротко, с ее помощью можно реализовать любой конечный алгоритм, в том числе интерпретатор JavaScript. Это и попробуем сделать, научившись вычислять значения eval и new Function на этапе компиляции при помощи программирования на уровне типов (type-level programming).

Вы подумали, что задача слегка безумна и результат не имеет практической ценности? TypeScript не является типобезопасным языком, поэтому крайне важно понимать возможности и ограничения его системы типов, а для этого задача подойдет отлично. А еще это просто весело! Во время решения обсудим полезные правила написания удобных и безопасных типов. Из доклада вы узнаете больше о системах типов в программировании, функциональном подходе и устройстве JavaScript-движков.


Герои Меча и Магии 3 в браузере. Сложно или нет?

Александр Гурьянов

GamePix

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

Целевая аудитория: владельцы нативных продуктов, которые пытаются оценить возможность их портирования в веб.


Путь JavaScript-инженера в мир DeFi

Даниил Швецов

Этот доклад — погружение в мир DeFi для JavaScript-инженеров.

Рассмотрим основные концепции и математические модели, лежащие в основе популярных платформ. Особое внимание уделим работе с JavaScript SDK и возможностям создания собственных решений. Даниил представит идею шортового пула ликвидности.

Вы узнаете, как JavaScript-инженер может внести свой вклад в будущее децентрализованных финансов.


Алгоритмическая графика: JS для дизайна и искусства

Иван Дианов

setka.design

Иван пять лет создаёт графику с помощью кода, работает с дизайнерами и агентствами, разрабатывает интерактивные веб-анимации, генеративную айдентику и инструменты для дизайнеров.

В этом выступлении он расскажет о некоторых своих проектах: с какими сложностями столкнулся, какие приемы, инструменты и алгоритмы помогли их преодолеть, и что получилось в итоге.

А еще о суперспособностях, которые дизайнеру открывает JavaScript.


Web VR сегодня

Антон Мирошниченко

Боравто

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


Бэкенд

Любовь, JS и роботы

Вадим Пацев

Яндекс

Многие считают, что JavaScript ограничен браузерами, формами и компонентами React. Но что, если мы скажем, что с помощью JavaScript вы можете управлять роботами? Этот доклад откроет вам мир робототехники, в котором JavaScript встречается с ROS2 — современной платформой для управления роботами.

Обсудим:

  • Что такое роботы и как они работают.

  • Как управлять роборукой, используя JavaScript.

  • Что такое ROS2 и как JavaScript интегрируется с ним.

  • Основные принципы циклов обратной связи, месседж-брокеров и управления в реальном времени.


Удобные транзакции Prisma

Иван Клименко

ORM Prisma предоставляет безопасное, но достаточно низкоуровневое API для транзакций. В докладе рассмотрим способ делать транзакции декларативно и удобно на основе новых или старых декораторов.


Event Sourcing: ключевые принципы и реализация на NestJS

Никита Ульшин

Т-Банк

Паттерн Event Sourcing позволяет строить приложения на основе истории событий. Никита расскажет об особенностях Event Sourcing на практическом примере. Начнем с простого CRUD-приложения на слоистой архитектуре и пошагово внедрим в него работу с событиями, разбирая возникающие сложности и возможные ошибки. Вы узнаете, какие задачи решает Event Sourcing, с какими трудностями придется столкнуться при внедрении и почему это не «серебряная пуля».


Архитектура

Используем различные архитектуры внутри FSD

Александр Моргунов

ecom.tech

Часто можно встретить обсуждения, что лучше: чистая архитектура или FSD? А может, серебряная пуля в модульном подходе? Но что если вам скажут, что все эти подходы могут успешно использоваться совместно?

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


Создание интерактивной доски, или Почему ресерч важнее кода

Константин Лебедев

VK

Как разработать Доску с совместным редактированием, имея ограниченные ресурсы и ноль опыта, и не прогореть? Доклад охватит все этапы от «ничего» до готового продукта с SDK для интеграции со сторонними сервисами, изоморфным кодом, CRTD и гибкой архитектурой, способной адаптироваться под резко меняющеюся требования, а также нестандартные проблемы, которые встретились при работе с совместным редактированием, как на фронтенде, так и бэкенде.

Ну, и главное, зачем вам слушать это?

Все просто: это реальный опыт реального продукта, затрагивающий сразу все фазы разработки — от фронтенда до бэкенда. Возможно, с чем-то вы будете не согласны (и это хорошо), а что-то даст пищу для размышления и готовые решения. Холиварных тем будет достаточно — «жизнь без монорепы», способы доставки, изоморфный код, CRDT и многое другое.


Почему фронтенд такой сложный?

Сергей Константинов

Bolt

Сложность современного фронтенда давно стала мемом. Про новые JavaScript-фреймворки не пошутил только ленивый.

В этом докладе попытаемся посмотреть на ситуацию под другим углом и понять, почему так происходит и что со всем этим делать. Для этого пройдемся по эволюции подходов к разработке GUI, начиная от MVP и заканчивая самыми модными подходами, и обсудим логику, которая стоит за каждым сдвигом парадигмы.

В конце попробуем немного заглянуть и в будущее и предположить, куда фронтенд-мысль будет развиваться дальше.


Другое

Сказка — ложь, да в ней намек...

Дмитрий Побединский

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

Оказывается, многое из этого можно сделать, хорошо разбираясь в физике. Так что сделать сказку былью — намного проще, чем кажется!


Атомно-Moleculerная разработка микросервисов на Node.js

Евгений Кузнецов

Гринатом

В Гринатоме на проектах «Рекорд» (обучение и все HR-процессы с сотрудниками) и «АтомКор» (замена SAP) внедрили и успешно используют открытый, но нераспространенный фреймворк Moleculer JS для разработки микросервисов. К слову, в компании контрибьютят в open source.

Евгений расскажет, какие проблемы решаются этим фреймворком, какие еще есть фреймворки для разработки микросервисов (Node.js) и в чем преимущество Moleculer JS перед ними.


Code in the Dark

Code in the Dark — это соревнование по верстке (HTML, CSS), где четыре участника одновременно стараются повторить реализацию дизайна, имея только макет. Обратите внимание, что во время раунда нельзя предварительно просматривать результаты и использовать какие-либо измерительные инструменты.

В ходе нетворкинга проведем 4 раунда по 15 минут и финальный раунд. Победителя определят зрители.

Участие свободное — достаточно записаться в зоне нетворкинга на площадке конференции.


Открытый микрофон

Попробуйте себя в роли спикера и расскажите обо всем, что волнует, прямо на конференции. Выступите с блицдокладом на свободную тему в любом формате. У каждого участника будет 10 минут, чтобы поделиться своими историями.

Записывайтесь по ссылке, чтобы мы с вами связались и уточнили формат вашего выступления.

Поучаствовать в активности можно, только если у вас есть офлайн-билет на конференцию. Записи не будет.


Почему успех не приносит счастья

Александр Файб

YouTube-канал «Файб»

Счастье — концепт, который человечество не перестает переосмыслять с каждой новой эпохой.

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


Надеемся, даже по описаниям что-то о состоянии JavaScript-мира стало понятно. А если захотелось приобщиться глубже и поучаствовать в конференции, напомним главное:

Даты: 7-8 апреля
Место: Москва + онлайн
Информация и билеты: на сайте конференции

Теги:
Хабы:
+7
Комментарии5

Публикации

Информация

Сайт
jugru.org
Дата регистрации
Дата основания
Численность
51–100 человек
Местоположение
Россия
Представитель
Алексей Федоров