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

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

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

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

Адаптация

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

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

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

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

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

Новинки

Deno - новая Node?

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

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

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

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

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

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

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

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

Жизнь после Svelte

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Юрий Артюх

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

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

RUST + WEBASSEMBLY

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

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

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

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

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

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

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

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

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

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

Иван Акулов

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

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

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

Приложения

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

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

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

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

Single page application, толстый клиент
,
Взаимодействие с серверной стороной (API)
,
Оффлайн и кэширование в локальных хранилищах
,
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
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

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

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

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

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

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

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

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

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

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

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

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

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

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

Никита Дубко

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

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

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

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

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

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

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

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

Никита Дубко

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

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

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

Философия крутых 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 библиотеки
Программный комитет ещё не принял решения по этому докладу

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

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

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

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

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

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

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

Nelly Kam

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

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

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

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

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

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

Качество

Дом Света / Lighthouse для чайников

Сергей Попов

Доступность, валидность, базовые принципы — вещи, без которых нельзя запускать в продакшн ни один сайт.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

MacOS Driven Development

Никита Дубко

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

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

Функциональный JS: несложно, прикольно, полезно (+React)

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

* JS — странный язык с необычной историей, но это мощный и гибкий язык, сочетающий императивную и функциональную парадигмы.
* Функциональное программирование — это не обязательно что-то заумное и теоретическое. Немного FP делает ваш код проще, понятнее и прикольнее.
* Декларативные трансформации данных — это здорово. Их проще понимать и проще менять такой код.
* Currying — это не только штука, чтоб завалить вас на собеседованиях, но и способ писать меньше кода
* React и некоторые популярные инструменты для него (Redux, reselect) базируются на идеях FP и понимании, как работает JS. FP помогает писать более качественный код и лучше понимать инструменты, а также писать меньше кода.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Зар Захаров

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

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

Инструменты

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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
,
Фронтенд / другое
Программный комитет ещё не принял решения по этому докладу

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

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

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

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

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

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

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

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

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

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

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

Production Ready Design

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

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

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

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

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

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

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

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

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

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

Дима Королев

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

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

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

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

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

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

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

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

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

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

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

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