Любой JavaScript-разработчик однажды задается вопросом: на какую конференцию по JavaScript сходить? Интересные доклады послушать, людей посмотреть, себя показать. В 2016 году мы пошли по тому же пути и обнаружили, что в России ничего подходящего на эту тему нет. Всевозможные митапы по фронту — пожалуйста. Но ведь JS давно уже не только фронт. Короче, мы решили исправить эту несправедливость и создали главную и единственную в России JavaScript-конференцию, HolyJS. На Холи бывает не только фронт, но и бэкенд, десктоп, и даже работа с железом. Теперь нам всем есть куда ходить, но это не конец истории. В JavaScript-мире есть важнейшая особенность, которая отличает его от миров типа Java и .NET: технологии и фреймворки развиваются стремительно. Не попавшие на конференцию люди оказываются в невыгодном положении — мало кому хочется смотреть записи, устаревшие на 4 месяца. Обычно есть несколько фундаментальных докладов, которыми можно гордиться и пересматривать еще пару лет, но большая часть материала интересна и полезна в моменте: посмотрел, послушал, пошел использовать на работе. Всё это останется за пэйволлом? А как же комьюнити и чувство локтя? Нет ли в этом чего-то неправильного? Теперь трансляцию первого зала можно смотреть бесплатно, с нашего сайта и на YouTube. Это позволяет всем желающим присоединиться к конференции и провести на ней все два дня. Прийти вживую было бы круче, но на этой полномасштабной трансляции можно по-настоящему погрузиться в тему и ощутить атмосферу происходящего. С другой стороны, покупатели платной трансляции тоже не обижены: там есть возможность смотреть вообще все залы (то есть в три раза больше докладов) и переключаться между ними, плюс они покупают сервис: например, приоритетное решение любых проблем и гарантированные записи всех докладов в высоком качестве. Всё вместе выглядит довольно сбалансированным и честным решением: мы и комьюнити помогли, и себя не забыли. Всё вышесказанное было об упаковке. Что же ждет нас внутри? Куча реально огненных докладов, которые ведут не абы кто, а люди первой величины. Например, будет Дуглас Крокфорд и Азат Мардан, если вам о чем-то говорят эти имена. Будет Виталий Фридман и Леа Веру. Мы понимаем, что Дуглас Крокфорд приезжает в Россию редко — поэтому у него будет целых два доклада. И это только первый зал! Приятного просмотра, и да пребудет с вами сила Пресвятого Джаваскрипта! Раньше мы выкладывали на Хабр ссылки на всевозможные плейлисты на YouTube и предупреждали: «Вот эта ссылка — на первый день, вот эта — на второй, вот эта — еще на что-нибудь». Вам нужно было сохранить ссылку на этот хабрапост и потом следить за его обновлениями.  Есть путь гораздо проще. Бесплатную трансляцию можно смотреть прямо с нашего сайта, вот по этой ссылке: Эта ссылка — конечный источник истины. Именно там отображается самая свежая, актуальная программа. Когда-нибудь в далеком будущем там появятся удобные органы управления онлайн-просмотром, но сейчас для максимального удобства там просто встроен плеер YouTube: можно смотреть с сайта (развернув на весь экран), можно прыгнуть на YouTubе. Еще, можно подписаться на наш канал, чтобы увидеть записи, когда они будут выложены в общий доступ. Развитие конференции очень похоже на развитие программной платформы. Наши языки и платформы постоянно конкурируют между собой: например, Java гонится за .NET по синтаксису основного языка, а .NET пытается догнать Java по кроссплатформенности, и потом все они пытаются угнаться по удобству и скорости разработки за JavaScript. Как только появляется новая идея, реализации этой идеи начинают появляться во всех популярных технологиях. Создание конференций очень похоже на развитие программной платформы. У JUG.ru Group есть своя платформа, список базовых фичей. Как только одна из конференций что-то улучшает, обновление получают и все остальные. За этот год, в том числе этой осенью, было множество конференций, и много всего улучшилось. Онлайн-трансляция — это именно то, что все мы хотим и ожидаем увидеть от хорошей конференции. Чтобы улучшить трансляцию, зачастую достаточно просто добавить больше качественной техники и правильно её настроить. Поэтому трансляции получили за эту осень максимальное количество полезных обновлений.  Конференция проводится в течение двух дней. Первый день начинается в 10.00, второй — в 10.30. Каждый день начинается открывающим кейноутом и оканчивается завершающим кейноутом в 18.15. Актуальную программу первого зала можно увидеть на странице трансляции.  Открывающий кейноут. Douglas Crockford — The Post JavaScript Apocalypse Когда весной легендарный Дуглас Крокфорд выступал на петербургской HolyJS с темой «Numbers», он мимоходом упоминал, что должны появиться новые языки программирования: «не можем же мы оставить нашим детям JavaScript, это было бы ужасно». А в этот раз, открывая конференцию выступлением о «пост-джаваскриптовом апокалипсисе», он раскроет тему подробнее. Каким должен быть язык, который рано или поздно потеснит JavaScript? И что нам делать сейчас, пока его ещё нет? Minko Gechev — Faster Angular applications С одной стороны, мы все понимаем важность того, чтобы веб-приложения открывались и работали как можно быстрее. С другой стороны, мы делаем громоздкие single-page applications, где зачастую требуется разом загрузить много ресурсов, а затем производим столько вычислений в главном треде, что «тормоза» неудивительны. Как добиться рендеринга с частотой 60 FPS и быстрой загрузки Angular-приложения? Минко собирается рассказать и о том, и о другом. Алексей Богачук — Безопасность: уязвимости вашего приложения Актуальны ли ещё угрозы XSS? Прошло около 20 лет с тех пор, как Cross Site Scripting (XSS) появился как вид атаки. С тех пор мы получили богатый опыт и знания, защита наших сайтов стала намного сложнее, а многочисленные фреймворки были призваны оберегать нас от ошибок. Но последние данные показывают совсем другую картину: в первых кварталах 2017 года количество сообщений об XSS-атаках и количество найденных уязвимостей выросло в несколько раз. Алексей расскажет о том, почему ваши приложения в опасности, почему фреймворки не спасают, как находить уязвимости и какие инструменты для этого использовать. Виталий Слободин — Headless browsers: что, как и почему При взгляде на название доклада многие могут подумать: «К чему мне слушать его, я и так в курсе, что такое headless browsers». И действительно, такие браузеры давно вошли в жизнь разработчиков — с их помощью проводят тестирование кода, проверяют качество и соответствие верстки, и не только. Но проблема в том, что разработчики мало знают про то, как устроен и работает их инструмент. Так что вопрос «как» из названия не менее важен — и многие смогут найти для себя ответ. Николай Матвиенко — Поиск и устранение неисправностей Node.js-приложений под капотом «Неочевидные возможности» Node.js, о которых можно будет узнать в кейноуте Азата Мардана — это, конечно, здорово. Но что делать, если с вашим Node.js-приложением возникла проблема, и вам не до прикручивания чего-то нового, а надо быстро починить имеющееся? На докладе Николая вы узнаете о возможностях диагностики production-приложений с использованием отладки и трассировки приложения на разных уровнях; о том, как отслеживать проблемы производительности и утечки памяти внутри Node.js-приложения.  Завершающий кейноут. Виталий Фридман — New Adventures in Responsive Web Design О Responsive Web Design говорят далеко не первый год, но со временем вопросов становится не меньше, а только больше. Браузеры стали поддерживать HTTP/2, Service Workers, Responsive Images, Flexbox, SVG, Font Loading API — как теперь правильнее использовать это всё? А если начал использовать, что делать с легаси-браузерами? Такие вопросы как раз подходят Виталию Фридману, сооснователю известного сайта Smashing Magazine. Во-первых, этот сайт не первый год освещает подобные темы, а во-вторых, самому сайту тоже приходится решать для себя подобные вопросы. В общем, недостатка экспертизы тут явно не будет.  Открывающий кейноут. Azat Mardan — You don't know Node Как известно, если кто-то использует JavaScript, это ещё не значит, что он знает JavaScript. Об этом свидетельствует хотя бы популярность книги «You Don’t Know JS» (она обещает по-настоящему научить JS даже тех, кто считал, что и так всё знает). Азат Мардан заявляет, что с Node.js ситуация похожая: многие разработчики, имеющие с ним дело, при этом не вполне знают его возможности. И кейноут «You don’t know Node» призван это исправить, показав пять неочевидных фич. Антон Лобов — TypeScript, или Зачем так сложно TypeScript всего за пару лет сумел из очередного «JavaScript с классами» превратиться в мощный инструмент для типизации сложного кода на JavaScript. С точки зрения разработчика всё стало очевиднее и удобнее. Но не всё так очевидно, как хотелось бы. Антон поможет разобраться, какие подводные камни таит в себе типизация, предлагаемая в TypeScript, зачем она такая сложная и как она напрямую влияет на поддержку языка со стороны IDE и других средств разработки (иногда очень неожиданным образом). Douglas Crockford — Managing Asynchronicity with RQ И снова Дуглас Крокфорд. В этот раз уже не с общими рассуждениями о «языке будущего», а с конкретным ответом на конкретные вызовы сегодняшнего дня. RQ — маленькая JS-библиотека от Крокфорда, призванная помочь работать с асинхронностью в серверных приложениях. По словам самого Крокфорда, она «призвана облегчить использование, и даже более того, с помощью минимализма». Павел Черторогов — GraphQL: заключаем выгодный контракт между сервером и клиентом GraphQL приходит на смену REST API. GraphQL Model — выработанные за 2 года докладчиком принципы построения, типов и связей. Павел расскажет, как выжать все соки из типизированной схемы и статического анализа кода, затронет «божественный рефакторинг». Будет много информации по бэкенду. Martin Splitt — Better, faster, stronger: getting more from the web platform На петербургской HolyJS Мартин разбирал производительность рендеринга «с самых низов», начиная с отдельного пиксела. Эта страсть «зайти туда, докуда многие не доходят» для него типична — и на московской он будет разобраться с фичами, которые считает либо недооцененными, либо слишком новыми для массового внимания. Ими станут: Web Workers (для параллельной работы без блокировки UI-потока), Streams API (для работы с данными по мере их доступности, без ожидания окончания передачи) и WebAssembly.  Завершающий кейноут. Lea Verou — /Reg(exp){2}lained/: Demystifying Regular Expressions Леа уже впечатлила своим выступлением многих зрителей весенней петербургской HolyJS, а теперь закроет московскую конференцию другой темой. «Регулярные выражения» могут казаться и чем-то тысячу раз разжёванным, и в то же время всё равно не до конца понятным (а потому пугающим). Но Леа умеет объяснять и демонстрировать всё на наглядных примерах так, что не оказывается ни страшно, ни скучно. А если вы считаете, что уже знаете о «регулярках» достаточно и слушать о них снова вам ни к чему, тут как раз будет хорошая возможность проверить, действительно ли вы можете быстро подобрать в уме правильное выражение для некоторых неочевидных случаев.  Теперь доступна вся информация, позволяющая определиться «смотреть ли открытую трансляцию». Надеюсь, программа получилась хорошей, и вы захотели к нам подключиться. Адрес трансляции вы уже знаете. Ждём 10-11 декабря на конференции и у мониторов!   Деврел Axiom JDK, продюсер в Failover Bar