Заявки на доклады

Конференция FrontendConf проходит в рамках профессионального фестиваля "Российские интернет-технологии". Вам, как участнику конференции, доступны все доклады этой конференции.

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

Поиск по тегам:

Адаптация

Лучшее – враг хорошего, или Почему не надо становиться руководителем

Андрей Смирнов

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

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

Доклад принят в программу конференции

Новинки

React Hooks — новый взгляд на функциональные компоненты в React

Сергей Звездин

Функциональные компоненты в React позволяют писать более чистый, читаемый, тестируемый и понятный код. Но если компонент выходит за рамки чистой функции, приходится использовать классы и/или компоненты высшего порядка.

В докладе я расскажу о React Hooks — нововведении в React, которое позволяет по-новому посмотреть на разработку React-приложений. Покажу, как с помощью Hooks создавать повторно используемую логику и избавиться от многих болей в разработке React-приложений.

Single page application, толстый клиент
,
JavaScript
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Deno - новая Node?

Рустам Имайкин

Расскажу почему мы долго ждали чего то подобного.
Проведем сравнительную характеристику и выясним ответ на вопрос "Deno быстрее Node"?
Выясним как уже можно работать на нем, и что будет дальше.
Узнаем какие фреймворки сейчас под него написаны.

Node.js и io.js
,
JavaScript
,
Фреймворки
,
Бэкенд / другое
Программный комитет ещё не принял решения по этому докладу

Жизнь после Svelte

Павел Малышев

* Что делать, если хочется ещё больше ванилы?
* Готовы ли веб-стандарты для решения прикладных задач разработки?
* Есть ли жизнь после Svelte?

Single page application, толстый клиент
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
,
Фронтенд / другое
Доклад принят в программу конференции

Интерактивные проекции и 3D-маппинг с помощью web-технологий

Денис Радин

Многие из вас видели 3D-маппинг-шоу, но не многие из вас знают, что маппинг можно делать и с помощью web-технологий.

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

* Интерактивные проекции. Примеры.
* Почему web-технологии для проекций?
* Как это работает?
- CSS3D, метод, пример.
- WebGL, метод, пример.
* Преимущества.
* Проблемы.
* Как начать?

JavaScript
,
Веб-графика, оптимизация изображений
,
WebRTC, WebGL и веб-медиа в целом
,
Фронтенд / другое
Доклад принят в программу конференции

Creative Development, жизнь вне энтерпрайза

Денис Сафонов

1. Кто такие криэйтив фронтенд-девелоперы: откуда взялась профессия, чем эти разработчики занимаются, как я в нее попал.
2. Особенности работы в креативном направлении: плюсы и минусы направления, какие навыки требуются.
3. Процессы разработки: взаимодействие различных специалистов агентства, процесс обмена навыками и решениями, развитие и мотивация специалистов.

Совместная работа дизайнеров и верстальщиков
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Хукаем в React, попадаем во Vue

Влад Прусов

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

AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
,
Фронтенд / другое
,
Производительность и мониторинг фронтенда
Программный комитет ещё не принял решения по этому докладу

Эмоциональное выгорание. История успеха

Анна Селезнёва

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

Я не планировала стать лицом выгорания и нести эту тему в массы. Но так вышло, что я выгорела, причём когда это ещё не было мейнстримом.

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

Доклад принят в программу конференции

Простота. Надежность. WebAuthn

Алексей Носов

В Tomsguide пишут "It's Time to Kill Your Eight-Character Password". Но нет, настало время вообще избавиться от паролей, навсегда!

В этом докладе вы узнаете, как уже сейчас, используя FIDO2 и новый стандарт WebAuthn, являющийся частью Credential Management API, можно реализовать password-less-аутентификацию пользователя, избавив его, наконец, от необходимости запоминать длинные комбинации, тем не менее рискуя, что переиспользованные пароли могут быть украдены с других сайтов. Как с помощью биометрической аутентификации можно в перспективе многократно увеличить конверсию, избавив пользователей от мучительной необходимости вводить пароли и одноразовые SMS на мобильных устройствах.

Мобильные сайты и приложения на веб-технологиях
,
Взаимодействие с серверной стороной (API)
,
Node.js и io.js
,
JavaScript
,
Безопасность в браузере
Доклад принят в программу конференции

По***изм при создании проекта или как довести его до ума

Алексей Белозерцев

1. Проблемы при создании проекта и способы их решения.
2. Как подобрать людей на проект.
3. Мотивация на проекте.
4. Приоритеты задач.

Программный комитет ещё не принял решения по этому докладу

The state of CSS

Сергей Попов

Ежегодный опрос https://stateofcss.com/ навёл много шуму, так как большое количество технологий, указанных в нём, оказалось для разработчиков новинкой. Хотя большинство из этих технологий уже используются теми, кто об этом знает.

Я хочу рассказать о потерянных технологиях, их применении и поддержке, чтобы мы начали использовать всю мощь актуального состояния CSS.

Адаптивные дизайн и вёрстка
,
Браузеры
,
Фронтенд / другое
Доклад принят в программу конференции

Производительность

Самый низкий уровень: пишем на WebGL и WebAssembly без фреймворков и транскомпиляторов

Антон Хлыновский

Говоря о WebGL, часто имеют в виду three.js или другие похожие фреймворки. Новичок на поле веб-технологий WebAssembly уже начинает ассоциироваться с языками C или Rust. А как же, ведь нужные утилиты и обёртки WebGL и WebAssembly сложны и непонятны. Или же нет?

Мы познакомимся с самыми основами WebGL и WebAssembly и напишем на их основе несложное визуальное приложение, используя только базовое API.

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

WebRTC, WebGL и веб-медиа в целом
,
Фронтенд / другое
Доклад принят в программу конференции

New Adventures in Front-End, 2019 Edition

Vitaly Friedman

The beast is alive! Have you optimized your JavaScript/CSS delivery for performance with HTTP/2 yet? How are you using service workers and server workers these days? What about critical CSS and Server Push? Are you compiling your code base into WebAssembly yet? How do you feel about ASCII-alike CSS Grid layout with polyfluid sizing and ch unit? Have you ever tried to work around nested CSS Custom Properties, untamed 3rd-party scripts, painful web font reflows, shady CSS Houdini tricks and multi-dimensional variable fonts? Well, let’s bring it on!

Take the techniques with a grain of salt — we do not take responsibility for sleepless nights and nightmares caused by the content of this session. Beware: you will not be able to unlearn what you’ll learn in the session!

Шаблонизаторы и препроцессоры
,
Адаптивные дизайн и вёрстка
,
Мобильные сайты и приложения на веб-технологиях
,
JavaScript
,
Браузеры
,
Accessibility
,
Совместная работа дизайнеров и верстальщиков
,
Фронтенд / другое
Доклад принят в программу конференции

Под капотом реализации Dependency Injection на JS/TS

Владимир Санников

Рост и усложнение приложений требуют от разработчиков гибкости в создании слабозацепленных компонентов системы. В частности, для этого служит принцип Inversion Of Control (IoC) и один из его методов - Dependency Injection(DI).

В докладе разберем теорию и способы реализации DI.

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

JavaScript
,
Архитектурные паттерны
,
Стандарты кодирования
,
Разделение представления и бизнес-логики, шаблонизация
Программный комитет ещё не принял решения по этому докладу

RUST + WEBASSEMBLY

Илья Барышников

* Зачем это нужно?
* О производительности в JavaScript, сильные и слабые стороны браузерных движков.
* Какие проблемы решает WebAssembly.
* Какие выгоды от использования Rust при компиляции в WebAssembly.
* Инструменты для разработки - сборка и публикация модулей, взаимодействие с JavaScript, отладка.
* Прирост производительности по сравнению с JavaScript.
* Внедрение в существующее веб-приложение.
* Опыт применения в реальном проекте.

Оптимизация производительности
,
Производительность и мониторинг фронтенда
Программный комитет ещё не принял решения по этому докладу

Быстрые приложения в 2019

Иван Акулов

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

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

Доклад принят в программу конференции

История одной анимации

Юрий Артюх

Будет рассказано об истории создания одной анимации от получения макета до сдачи клиенту. История включает в себя язык WebGL, Three.js, GLSL, Canvas 2D, графы и немного математики.

WebRTC, WebGL и веб-медиа в целом
,
Фронтенд / другое
,
Производительность и мониторинг фронтенда
Доклад принят в программу конференции

Приложения

Пишем редактор публикаций для сайта, как на Medium

Алексей Авдеев

* Прошло время TinyMCE или CKEditor.
* Пишем свой мощный редактор, используя реактивные фреймворки или веб-компоненты.
* Создаём формат контента для редактора. Рендерим разный контент для разных платформ.

Интерактивные приложения
Программный комитет ещё не принял решения по этому докладу

Angular: меняем магию change detection на реактивность

Федор Щудло

Реактивный подход позволяет эффективно и надежно реализовать сценарии, сложные в классической парадигме: зависимость данных от самих себя, множество источников изменения состояния, обновление состояния по внешним событиям, реализация операции Undo и т.д.

Дополнительно в Angular использование реактивного подхода позволяет реализовать все приложение со стратегией OnPush.

Помимо широко известных преимуществ в производительности и устранения race conditions (вам знакома ошибка “Expression has changed after it was checked”? :)), OnPush отключает магию change detection. Вместо “оно как-то само работает”, мы вдумчиво проектируем data flow, поскольку теперь мы диктуем Angular'у правила игры, а не он нам.

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

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

Так происходит, когда отключаешь магию. И сделать это проще, чем может показаться.

В докладе мы разберем, как перевести приложение на реактивные рельсы. Мы не будем использовать такие инструменты как state managers. Все нужное уже есть в Angular/RxJS, остается разобраться и начать использовать. А state manager нужной степени “прокачанности” можно подключить позже, если в этом действительно возникнет необходимость.

Single page application, толстый клиент
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
,
Асинхронное программирование, реактивное программирование
,
Архитектурные паттерны
Программный комитет ещё не принял решения по этому докладу

Web Components. Компонентный подход на чистом JS

Климент Рудниченко

В докладе будет рассказано про:
1. Список спецификаций, которые включают в себя web component (custom elements, shadow DOM, html templates), и о том, почему была исключена спецификация html imports;
2. Жизненный цикл компонентов (connectedCallback, disconnectedCallback, attributeChangedCallback);
3. Передача данных в компоненты и прослушивание событий;
4. Использование слотов для более гибкого заполнения содержимого компонентов;
5. Стилизация компонентов с использованием :host и ::slotted;
6. Type Script для web components;
7. Сравнение производительности с ведущими библиотеками;
8. Поддержка браузерами и полифилы;
9. В каких случаях можно использовать web components уже сейчас.

AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Старикам тут не место: как поддерживать старые браузеры и не мешать работать новым

Денис Красновский

Ожидание. Всю жизнь мы чего-то ждем: ждем дня рождения, ждем очередного повышения на работе, а кто-то ждет и red dead redemption 2 на ПК. В большинстве своем у нас нет власти над ожиданием. Но я знаю точно, что мы можем сократить время ожидания загрузки страницы, уменьшив размеры статики веб-приложения/веб-сайта.

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

Программный комитет ещё не принял решения по этому докладу

Тёмная сторона веба

Никита Дубко

Тёмные темы сайтов можно признать новым трендом в дизайне веб-приложений. Иногда они уместны, иногда — необходимы. Случается, что они служат скорее во вред пользователям, чем для пользы.

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

Мобильные сайты и приложения на веб-технологиях
,
Совместная работа дизайнеров и верстальщиков
Программный комитет ещё не принял решения по этому докладу

«Алиса, пойдём во фронтенд!»

Никита Дубко

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

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

Мобильные сайты и приложения на веб-технологиях
,
Взаимодействие с серверной стороной (API)
,
Интерактивные приложения
Доклад принят в программу конференции

Angular + GraphQL. Год использования

Сергей Фетискин

Год назад мы решили начать новый проект с использованием GraphQL. Спустя год в нашей команде уже 3 проекта с использованием этой технологии. Как мы смогли улучшить процесс разработки при помощи GraphQL, и какие проблемы возникли на этом пути.

Single page application, толстый клиент
,
Взаимодействие с серверной стороной (API)
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
Программный комитет ещё не принял решения по этому докладу

Философия крутых Angular-компонентов

Александр Инкин

Angular — очень продуманный фреймворк, предоставляющий инструменты для создания впечатляющих продуктов. И когда всё написано "как надо" — код радует глаз, как аккуратно сложившийся сложный пазл. А всем нам, разработчикам, знакомо это ощущение удовлетворения от хорошо написанного кода.

За время создания собственной библиотеки UI-компонентов у нас сложилась определённая философия, воспитывающая тягу к хорошему и отвращение к плохому коду. Эта система взглядов помогла нам создать множество удобных, быстрых и надёжных инструментов пользовательского интерфейса.

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

Тезисы:
1. Философия против Best Practice.
2. Критерии крутого компонента.
3. Критерий 1: Надёжность.
* Контракты.
* Декораторы.
* Состояния.
4. Критерий 2: Скорость.
* Проверка изменений.
* Оптимизация.
5. Критерий 3: Гибкость.
* "Легофикация".
* Шаблоны и контекст.
* Интерфейсы.
6. Критерий 4: Удобство.
* Клавиатура и фокус.
* Доступность.
* Мобильные устройства.
7. Выводы:
* Что даёт создание и использование таких компонентов.
* Чеклист.

AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
,
Accessibility
,
CSS модули и веб компоненты
,
Разработка библиотек, включая open source библиотеки
Программный комитет ещё не принял решения по этому докладу

Ангуляры в Ангуляре, или Как мы сделали мультиапп в Тинькофф.Бизнес

Станислав Петров
Алексей Горошевский

Микрофронтенд – концепция разделения большого веб-приложения на несколько маленьких. Это означает, что мы делим большую систему на отдельные части, что позволяет уйти от монолитной архитектуры в пользу независимых гибких компонент.

Для его реализации можно использовать разные подходы. Один из них это iframe – технология, использование которой многие разработчики стараются избежать. Мы, в Тинькофф.Бизнес, решили испытать ее. Обычно iframe используется для вспомогательной загрузки ресурсов. Мы же загружаем в нем целые приложения. Это позволяет нам переключаться между десятками продуктов банка без перезагрузки страницы и потери общего контекста.

В этом докладе мы расскажем, чего нам это стоило, и как мы решали возникшие проблемы.

Single page application, толстый клиент
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
,
Фронтенд / другое
,
Микросервисы, SOA
Программный комитет ещё не принял решения по этому докладу

Что происходит, когда я набираю "google.com" в адресной строке браузера и нажимаю "Enter"

Алексей Авдеев

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

Программный комитет ещё не принял решения по этому докладу

Сервис для разработки голосового интерфейса

Nelly Kam

1. Будущее и прошлое голосовых помощников.
2. Типы голосовых интерфейсов, состояния.
3. С чего начать.
4. Польза.
5. Внедрение в ваш проект (на примере нашего приложения).
6. Тестирование.

Совместная работа дизайнеров и верстальщиков
,
Фронтенд / другое
,
Архитектуры / другое
,
Непрерывная интеграция
,
Обслуживание клиентов, техническая поддержка, обратная связь
,
Аналитика / другое
,
Юзабилити, дизайн интерфейсов
,
Мобильные решения для enterprise
,
Встраиваемые системы
,
Особенности процессов разработки и тестирования мобильного ПО
,
Нестандартные устройства и периферия
,
Прототипирование
,
Мобильные приложения / другое
,
Онлайн-медиа (видео/аудио)
Программный комитет ещё не принял решения по этому докладу

Кроссплатформенное приложение своими руками...

Егор Малькевич

Если для вас PWA еще не торт, а *-native - это перебор, и вы сталкиваетесь с кроссплатформенными приложениями... Сделаем разбор, определимся, насколько сложно. И проговорим на примерах нюансы разработки платформера с публикацией в стор и веб-версией его же...

Адаптивные дизайн и вёрстка
,
Мобильные сайты и приложения на веб-технологиях
,
Single page application, толстый клиент
,
Дизайн и работа с изображениями
,
CSS модули и веб компоненты
Программный комитет ещё не принял решения по этому докладу

Как поговорить с микроконтроллером из JS

Виктор Накоряков

- Какое бывает железо, что умеет, как с ним разговаривать.
- Способы физического сопряжения с PC.
- Какие варианты коммуникации есть у приложения на JS.
-- Пакет serialport + Firmata.
-- Пакет serialport + самописная прошивка на C++.
-- Espruino: программируем контроллер прямо на JS.
-- Raspberry Pi: обычный Linux-сервер, но с управляемыми ногами.
-- HTTP в локальной сети.
-- HTTP и MQTT через облако.

Взаимодействие с серверной стороной (API)
,
JavaScript
,
Интерактивные приложения
Программный комитет ещё не принял решения по этому докладу

Микросервисный фронтенд

Александр Китов

Как работать над большим фронтовым проектом?

Всегда ли вы уверены, что ваше маленькое изменение не сломало чужой код, когда работаете над большим проектом? В Альфа-Банке мы выбрали другой подход к разработке приложений: используем минимально неделимые SPA, максимально независимые друг от друга.

Я расскажу как про преимущества этого подхода к разработке фронтов, так и про те проблемы, с которыми мы столкнулись, и как мы их решали.

Программный комитет ещё не принял решения по этому докладу

Анатомия редактора: онлайн-IDE на Vue, TypeScript и Monaco Editor

Ольга Лесникова

Есть много сервисов, позволяющих открыть редактор в вебе и быстро проверить какую-то идею, например, codepen, jsbin, jsfiddle, codesandbox. Многие веб-сервисы для разработчиков — от обучающих до хостингов кода — встраивают редакторы на свои страницы.

Я расскажу, как мы делали онлайн-редактор для разработчиков на платформе Voximplant: какие js-библиотеки сейчас есть в свободном доступе, и почему выбрали Monaco Editor. Покажу, как быстро собрать редактор с движком VS Code на Vue и TypeScript и сделать в нем дебагер. Заглянем по ту сторону дебагера: какие есть протоколы дебага, и как интегрировать дебагер, запущенный на удаленном сервере с клиентом.

Доклад будет интересен тем, кто делает веб-продукты для программистов.

Взаимодействие с серверной стороной (API)
,
Интерактивные приложения
,
Браузеры
Программный комитет ещё не принял решения по этому докладу

WebGL на карте. Карта на WebGL

Мстислав Живодков

Недавно мы запустили обновленную версию 2gis.ru с новой 3D-картой, работающей на WebGL. Заходя на сайт, вы видите готовую картинку. Но карта — сложный механизм, в котором скрыто множество интересных деталей, о существовании которых можно даже и не подозревать.

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

Доклад будет полезен как тем, кто уже использует WebGL, так и тем, кто хочет расширить свой кругозор.

WebRTC, WebGL и веб-медиа в целом
,
Интерактивные приложения
Доклад принят в программу конференции

Особенности переноса нативного приложения в WEB, опыт KeepSolid Sign

Тимофей Лавренюк

Жило было приложение для подписи документов. Оно было под все популярные платформы и его основой было C++ ядро. И однажды поступила задача сделать веб-версию этого приложения.

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

Single page application, толстый клиент
,
Взаимодействие с серверной стороной (API)
,
Оффлайн и кэширование в локальных хранилищах
,
JavaScript
Доклад принят в программу конференции

Качество

Как внедрить стандарты разработки, чтобы никто не пострадал

Александра Шинкевич

«Табы или пробелы?», «Нужно ли делать отступы между скобками?», «Одинарные или двойные кавычки?», «Ставить ли точки с запятой в конце строк?» — только начало списка злободневных вопросов на старте проекта. В 2019 году, кажется, пора про них забыть и использовать готовые решения. Но, если честно, настроены ли у вас на проекте все возможные проверки?

В докладе я расскажу, как, наконец, перестать спорить по мелочам. Начиная с настройки редактора и заканчивая настройкой Continuous Integration, коснусь инструментов автоматического линтинга для технологий фронтенда.

Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Hit Points вашего сервиса

Никита Мостовой

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

* Как понимать, что у пользователя "все хорошо" в техническом плане?
* Как сократить время реагирования на проблемы с клиентским приложением?
* Как мониторить баги?
* Как оценить, какая страница грузится долго или какой компонент выполняется неэффективно?
* Влияют ли эти проблемы на бизнес-показатели продукта и зачем этим заниматься?

Давайте разбираться.

JavaScript
,
Производительность и мониторинг фронтенда
Программный комитет ещё не принял решения по этому докладу

Drag&drop-компоненты для слепых пользователей? Вы шутите?

Сергей Кригер

Передвигать вещи для нас настолько естественно, что мы перенесли это из мира вещей в веб. Сортировка todo-списков, организация дашбордов, загрузка файлов — мы просто не можем себе представить все эти события без перетаскивания элементов на странице. А что, если бы мы не могли видеть экран? Было бы перетаскивание элементов все еще возможно и настолько же удобно как прежде? Смогли бы мы выполнить все эти задачи без зрения?

В этом докладе вы узнаете основные принципы drag&drop-паттерна и как создавать перетаскиваемые элементы на странице доступными для людей с ограниченным зрением.

JavaScript
,
Accessibility
,
Фронтенд / другое
Доклад принят в программу конференции

Продвижение опенсорс-проектов

Андрей Ситник

Андрей Ситник, создатель популярных Автопрефиксера, PostCSS, Браузерлиста и Nano ID расскажет про свой опыт продвижения опенсорс-проектов.

Доклад будет полезен опытным разработчикам, которые хотят начать свои опенсорс-проекты. Также доклад будет полезен новичкам — понимая методы маркетинга в опенсорсе, легче защититься от «хайпа» и выбирать технологии по их пользе для проекта.

Доклад принят в программу конференции

MacOS Driven Development

Никита Дубко

Я пишу код в уютной для меня MacOS уже 6 лет. Чёткие картинки, насыщенные цвета на Retina-экране, удобные инструменты, среди которых Sketch, — разрабатывать так приятно! Парадокс в том, что люди, которые пользуются продуктами, для которых я пишу код, в большинстве своём пользуются Windows. Поэтому баги, специфичные для Windows, очень легко могут пройти мимо разработчика. Чёрт с ними, с багами — крестик у попапа ведь должен быть слева! Или всё же справа?

Адаптивные дизайн и вёрстка
,
Мобильные сайты и приложения на веб-технологиях
,
Совместная работа дизайнеров и верстальщиков
Программный комитет ещё не принял решения по этому докладу

Давайте писать интеллигентный JS

Евгений Миротин

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

Мы обратим внимание на такие вещи, как функциональная парадигма, декларативный код, полезные методы стандартной библиотеки, currying и Promises.

JavaScript
Программный комитет ещё не принял решения по этому докладу

Тестирование веб-интерфейсов в мире компонентов

Дмитрий Кравченко

Расскажу про опыт тестирования продукта, построенного на библиотеке компонентов:
* отражение компонентов из мира фронтенда в QA - работаем с компонентами, а не с разметкой;
* как QA Automation перестать бояться релизов и начать жить - сводим к нулю работу по актуализации локаторов;
* как небольшими усилиями разработки сделать продукт дружелюбным к QA - следуем за стандартом WAI-ARIA;
* дополнительный профит подхода: семантичность, доступность, снижение размера.

Программный комитет ещё не принял решения по этому докладу

Синдром качества

Максим Соснов

Всем знакомый пример: условный Илья - крутой frontend-разработчик. Он любит своё дело и делает фичи очень быстро. Пользователи получают фичи, Илья чувствует восторг, бизнесу нравится скорость поставки. Но есть одна проблема - для Ильи важнее готовая фича, чем хороший код. "Мне же не платят за хороший код" - говорит он. Через некоторое время вносить изменения в код все сложнее и сложнее, а заканчивается все фразой "нам нужно все отрефакторить" - подразумевая, конечно же, переписать.

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

Code Review
,
Автоматизация разработки и тестирования
,
Корпоративная культура и мотивация
,
Поиск и развитие команды
,
Продуктовая разработка
Доклад принят в программу конференции

Анализ уязвимостей процесса аутентификации

Вадим Горбачев

Рассмотрим несколько векторов атаки на процесс аутентификации для получения данных о пользователях системы, некоторые ошибочные подходы в контексте node.js и попытаемся поразмышлять об оптимальных способах защиты от утечки информации. В частности, поговорим про post vs get, crypto vs bcrypt, юзабилити vs безопасность.

Безопасность в браузере
Программный комитет ещё не принял решения по этому докладу

Скриншотное тестирование: тернистый путь от идеи до внедрения

Алексей Оганезов

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

Single page application, толстый клиент
,
Автоматизация тестирования
,
Тестирование фронтенда
Программный комитет ещё не принял решения по этому докладу

Как мы разработали правильный Workflow в командах

Зар Захаров

Построение проекта, работа с асинхронными запросами в проекте и избавления от множества дублирования кода. Настройка приложения. Подключение NodeJS к проекту. Сборка webpack'ом, оборачивание все это в docker, отправка на бой.

Программный комитет ещё не принял решения по этому докладу

Видео в вебе. От базовых вещей к деталям

Сергей Кузнецов

* О видео в вебе вообще, а также типах и форматах в частности.
* Про верстку и оформление применительно к плеерам и видео.
* Как избежать слайдшоу и оптимизировать нагрузку.
* Что может испортить задумки дизайнера — ограничения и баги.

Программный комитет ещё не принял решения по этому докладу

Инструменты

Анимация в вебе

Юлия Музафарова

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

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

Веб-графика, оптимизация изображений
,
Дизайн и работа с изображениями
,
Фронтенд / другое
Доклад принят в программу конференции

Продуктовый дизайн в TradingView. Sketch vs. Figma

Александр Каменяр

Почему 2019 год будет годом борьбы дизайн-инструментов Skech и Figma. Почему они совершенно разные. Зачем мы в TradingView отказались от Sketch + Zeplin и перешли на Figma. Как переходили и что это дало. Как повысить эффективность продуктовой разработки, улучшить взаимодействие дизайнеров и фронтендеров и ускорить доставку новых фич пользователям.

Адаптивные дизайн и вёрстка
,
Дизайн и работа с изображениями
,
Совместная работа дизайнеров и верстальщиков
,
Совместная работа, система контроля версий, организация веток
,
Большие проекты/команды
,
Продуктовая разработка
,
Дизайн мобильный приложений
,
Прототипирование
Программный комитет ещё не принял решения по этому докладу

Dependency injection в React

Никита Мостовой

Если вы писали приложения на React-Redux-стеке, то вы неявно для себя пользовались механизмом inversion of control.

16 версия React выстроила четкую структуру работы контекста, магии стало меньше... или все же больше? Какие задачи контекст решает хорошо, а какие не очень?

В докладе подробно разберем механизм работы контекста и его performance. Посмотрим, как с помощью механизма dependency injection имплементировать бизнес-логику в проекте.

AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
Программный комитет ещё не принял решения по этому докладу

Рассылай и властвуй: верстка рассылки без боли

Александр Хлебников

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

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

Расскажу, как готовить рассылки в 2019 году, победить Outlook и не завязнуть в вечном багфиксе.

Доклад принят в программу конференции

Прокачай свой NPM

Денис Колесников

NPM - пожалуй, единственный инструмент для дистрибуции модулей JavaScript-кода. И вне зависимости от того, какой клиент использовать (Npm-cli, Yarn etc.), остается ряд открытых вопросов по организации и публикации пакетов. Например, содержание пакета, его версия и конфигурация почти никак не проверяется и потенциально может содержать ошибки.

В докладе я расскажу, как мы в Авито организуем структуру пакетов, работаем с версионированием, зависимостями, публикуем пакеты, а главное — как автоматизировали все эти процессы и прокачали наш npm-реестр.

Пакетные менеджеры и организация модульности
,
JavaScript
Программный комитет ещё не принял решения по этому докладу

mobx-state-tree: построил DOM, посади дерево. Управление состоянием web-приложения

Денис Яковлев

В современных web-клиентах особое место уделяется способам и средствам для организации и управления данными (состояние приложения). Одним из таких средств является библиотека mobx-state-tree, которую мы в онлайн-кинотеатре ivi использовали как менеджер состояния react-приложения при создании сервиса ТВ-каналы.

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

Single page application, толстый клиент
,
JavaScript
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Создание облачных веб-фреймворков на примере бэк-офисов

Денис Кильдишев

В докладе я расскажу о SPA-архитектуре на примере создания собственной административной панели, заработавшей на GitHub 2000 звезд. Мы разберем, как расширить интерфейс и логику фронтенда за счет Web Components и создать визуальный конструктор интерфейса.

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

Взаимодействие с серверной стороной (API)
,
Фронтенд / другое
,
Обслуживание клиентов, техническая поддержка, обратная связь
Программный комитет ещё не принял решения по этому докладу

Production Ready Design

Ксения Лушникова

В нашей команде Яндекс.Денег мы выработали подход разработки и дизайна веб-интерфейсов.

Я покажу, как легко мы собираем живые интерфейсы и передаём их в продакшн, как создаётся дизайн Яндекс.Кассы и о нашем инструментарии.

Адаптивные дизайн и вёрстка
,
CSS модули и веб компоненты
Доклад принят в программу конференции

Как перестать выбирать фреймворки и начать жить

Александра Шинкевич

Доклад-диалог о состоянии современного фронтенда.

Single page application, толстый клиент
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
Доклад принят в программу конференции

Регулярные выражения ­ не только для валидации e-mail

Андрей Греков aka Лис

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

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

Программный комитет ещё не принял решения по этому докладу

Как интегрировать ReactJS в 1С-Битрикс с автоматической генерацией шаблонов на backend на примере сети Глобус

Антон Тузлуков

- Расширенные возможности платформы Битрикс.
- Как связать компоненты Битрикса с компонентами ReactJS при помощи модуля v8js для php и сохранить основную фронтовую часть сайта.
- Кейс: внедрение ReactJS для интернет-магазина сети гипермаркетов.

Программный комитет ещё не принял решения по этому докладу

Я создал Франкенштейна: 3 истории миграции

Денис Мишунов

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

Но что, если бы мы могли мигрировать наши фронтенд-приложения постепенно, при этом не волноваться, что наш глобальный скоуп будет бесконечно испорчен, CSS начнет выливаться и заливаться во все возможные щели, а различные JS-библиотеки и фреймворки нашего проекта начнут крыть друг друга по матушке? Что, если бы мы могли разбить наше фронтенд-приложение на микро-сервисы, в рамках которых могли бы делать практически все что угодно без стандартных "прелестей" постепенной миграции?

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

Пакетные менеджеры и организация модульности
,
JavaScript
,
CSS модули и веб компоненты
,
Фронтенд / другое
,
Производительность и мониторинг фронтенда
Программный комитет ещё не принял решения по этому докладу

Как построить разработку на 50 команд и не выгореть

Владислав Козуля

- Структура и цели платформы Сбербанка Онлайн;
- как мы улучшаем клиентский опыт;
- работа с доступностью в "Особом банке";
- innersource в Сбербанке;
- наш ответ create-react-app;
- построение сложных форм на JSON;
- фронтенд в высоконагруженном легаси;
- как устроен деплой наших продуктов;
- сообщество разработчиков в крупной компании.

Программный комитет ещё не принял решения по этому докладу

Конструктор прототипов

Юлия Царева

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

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

Дизайн и работа с изображениями
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Dodo GameDev: разрабатываем игрового Telegram-бота на базе Bot Framework и CosmosDB

Михаил Кумачев

Однажды в Додо мы на голом энтузиазме решили сделать игру. После нескольких месяцев работы у нас получился игровой Telegram-bot.

В этом докладе я:
* расскажу о фреймворке для разработки чат-ботов Microsoft Bot Framework v4 for JavaScript;
* приведу реальные примеры приготовления и использования фреймворка в нашем проекте;
* расскажу о тех трудностях, что возникли у нас при взаимодействии с Telegram'ом, и как мы их решали через Telegram API;
* покажу, как мы подключали CosmosDB для сохранения состояния и как с ним работать в Bot Framework;
* и, конечно, расскажу о тех граблях, что мы собирали на этом пути и героически преодолевали :)

Мобильные сайты и приложения на веб-технологиях
,
Взаимодействие с серверной стороной (API)
Программный комитет ещё не принял решения по этому докладу

Создание плагин системы веб-сервиса на основе Web Components, совместимой с любыми библиотеками и фреймворками

Денис Кильдишев

В выступлении я расскажу о том, что такое Web Components, как они позволяют внедрять любой 3rd-party JS код и как с ними работать в Angular/React/Vue. Также коснемся интеграции Web Components в ваш сервис на примере Angular.

Вместе с гостями разберем DEV среду для разработки плагинов, SDK для работы с сервисами.

AngularJS, Backbone.js и другие JavaScript-фреймворки
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Lottie-web. Используем Adobe After Effects для анимации в web

Наталья Габитова

Существует ряд библиотек, позволяющих анимировать SVG: Snap.svg, Paper.js, Velocity.js и другие. Но им не хватает наглядности. Это делает работу над сложной анимацией прерогативой опытных креативных разработчиков и дистанцирует их от дизайнеров.

Поэтому наша команда взяла на вооружение еще один инструмент для работы над векторной анимацией: Adobe After Effects. В сочетании с плагином Bodymovin он позволяет создавать анимацию в формате json и воспроизводить при помощи библиотек Lottie не только в браузере, но и в мобильных приложениях на разных платформах.

Я покажу, как быстро и просто сделать анимацию иконки, шторки или загрузчика. Вы узнаете, как использовать plugin и внедрять анимацию на сайт, как задавать стили элементов в CSS, какие преимущества и особенности работы с библиотекой имеются.

Я расскажу о нашем опыте использования plugin’а, с какими сложностями мы столкнулись во время сложного анимационного проекта и как преодолевали их.

Веб-графика, оптимизация изображений
,
WebRTC, WebGL и веб-медиа в целом
,
Совместная работа дизайнеров и верстальщиков
Доклад принят в программу конференции

Самый мягкий и пушистый путь в Machine Learning и Deep Neural Networks

Алексей Охрименко

Если вы пытались научить машину чему-либо, если зачитали от корки до корки Machine Learning for Dummies, если вы заплатили за самые дорогие курсы по Deep Neural Networks, но у вас так ничего не получилось... то этот доклад для вас!

Я расскажу о базовых примитивах Machine Learning и покажу, что не обязательно обладать глубокими знаниями в области высшей математики и познаниями в нейронных сетях, чтобы уже сейчас решать самые разные продуктовые задачи при помощи глубоких нейронных сетей.

Мы научимся работать с TensorFlow.js - javascript библиотекой для работы c Deep Neural Networks, отлаживать нейронные сети, генерировать данные для обучения и решать задачи, о решении которых вы раньше не могли и мечтать.

Доклад принят в программу конференции

Пошумим! Generative art и градиентный шум

Егор Белов

Поговорим про Generative art. Расскажу про управляемый псевдорандом на примере шумов: для чего он нужен в анимациях, какие крутые штуки можно с ним делать. Объясню, для чего придумали и как работает алгоритм Перлина. Научимся делать в канвасе бесшовные зацикленные анимации с хаотично меняющимся облаком частиц, генерировать 3D- и псевдо-3D-ландшафты и облачка.

Веб-графика, оптимизация изображений
Программный комитет ещё не принял решения по этому докладу

Three.js. Расширяем возможности: добавляем степени свободы

Наталья Габитова

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

Но что делать, если задача выходит за пределы стандартной? Не спешите браться за создание собственного «велосипеда». Я расскажу, как добавить динамичные изменения геометрии и внешнего вида к готовым объектам в Three.js без значительного ущерба производительности.


WebRTC, WebGL и веб-медиа в целом
,
Интерактивные приложения
,
Производительность и мониторинг фронтенда
Программный комитет ещё не принял решения по этому докладу

Svelte. Первый взгляд

Александр Шушунов

Вы давно пишите на React/Angular/Vuе/... и давно хотели попробовать Svelte, но руки не доходят? Я сделал это за Вас :)

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

Single page application, толстый клиент
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
Программный комитет ещё не принял решения по этому докладу

Apollo-react. GraphQL-взгляд из браузера

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

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

За время доклада мы разберем:
- как использование GraphQL избавляет от Redux;
- как управлять кэшом состояния на клиенте;
- как сделать рендеринг на сервере;
- как использовать фрагменты для удобства разработки;
- как генерировать типы на основе метаданных GraphQL-схемы.

Примеры будут делаться на основе Apollo.

Программный комитет ещё не принял решения по этому докладу

Реактивная печать PDF

Виталий Слободин

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

Браузеры
,
Фронтенд / другое
Доклад принят в программу конференции

Продвинутый TypeScript

Михаил Башуров

Пишете на TypeScript, но хотите узнать больше о нем? Уже умеете делать union и intersection, но еще не разобрались в mapped types? Я вам в этом помогу, расскажу как жить с unknown, как делать номинальную совместимость и discriminated unions (и зачем это все нужно), рассмотрим как делать typelevel-программирование с помощью mapped types, conditional types и infer и коснемся продвинутых аспектов вывода типов.

JavaScript
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Автоматический рефакторинг кода с помощью codemodes

Александр Мышов

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

Сodemode - это скрипт, работающий с абстрактным синтаксическим деревом (ast) JavaScript. Цель codemode - автоматизировать рефакторинг кода.

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

Программный комитет ещё не принял решения по этому докладу

Год с ReasonML в продакшне

Евгений Кочетков

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

Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

Токены в дизайн-системах

Юрий Ветров

Я расскажу про один из самых простых способов реализации дизайн-системы в коде — токены. Это набор базовых переменных визуального языка (цвета, шрифты, отступы и т.п.), который передаётся в любой компонентный фреймворк. Это позволяет проще управлять визуальным стилем продуктов и дешевле внедрять на практике.

Программный комитет ещё не принял решения по этому докладу

Интерфейс для React Native-приложения: быстро и без боли

Константин Дзюин

Я поделюсь рецептом безболезненного запуска React Native-приложения за 6 недель командой из трёх человек. Расскажу о подходах, инструментах и техниках, которые нам для этого понадобились.

Начнем с главного ингредиента: берём стайл-гайд, симуляторы и реальные устройства и объединяем их в одну систему. Затем размещаем разработку, отладку компонент и их вариаций на один экран, одновременно отображая их на реальных устройствах. Получаем еще более значительное ускорение, чем ожидали. Нам также потребуется наличие детально документированных UI-композиций, готовых для интеграции с бизнес-логикой. И наконец, время на тестирование сокращаем с помощью проверенных на всех устройствах и платформах компонентов.

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

Мобильные сайты и приложения на веб-технологиях
,
AngularJS, Backbone.js и другие JavaScript-фреймворки
,
JavaScript
,
Разделение представления и бизнес-логики, шаблонизация
,
Методы и техника разработки ПО
,
Кросплатформенная разработка
Программный комитет ещё не принял решения по этому докладу

Управление сложностью в больших приложениях

Дима Королев

Требования к современным веб-приложениям непрерывно растут. Постоянно появляются запросы на всё новую и новую функциональность. Вместе с ростом их количества неизменно растет совокупная сложность веб-приложений.

Рассказ о том, как мы пытались решить эту проблему, какие подходы пробовали и к чему пришли (подсказка: "микрофронтенд" - это совсем не про "разбиение монолита").

Single page application, толстый клиент
,
JavaScript
,
Архитектуры / другое
Программный комитет ещё не принял решения по этому докладу

Удобный CI своими руками

Дмитрий Кузнецов

Если к качеству продукта предъявляются строгие требования, его разработка рискует стать долгой и дорогой. Несмотря на большое количество CI/CD инструментов, создать удобное и одновременно полезное решение, которым бы пользовалась вся команда, непросто.

В докладе я расскажу, каким образом мы кратно ускорили релизный процесс фронтовой js-библиотеки FormBuilder, не потеряв в качестве.

JavaScript
,
Непрерывное развертывание и деплой
,
Тестирование фронтенда
Доклад принят в программу конференции