Начало основного контента

Расписание

  • Время в программе указано для вашего часового пояса .

  1. 1 ноября. ONLINE

    • Тип доклада: Обсуждение

      Открытие конференции Mobius 2023 Autumn

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

    • Тип доклада: Доклад

      Как не наломать дров с Live Activity

      Live Activity – функциональность iOS, предлагающая новый опыт пользовательского взаимодействия. Спикер поделится опытом интеграции с приложением Yandex Go: на что следует обращать внимание, с какими сложностями предстоит столкнуться, что делать и что не делать при поддержке Live Activity.

    • Тип доклада: Доклад

      Как я code coverage внедрял да Gradle plugin для baseline писал

      Спикер расскажет об опыте внедрения code coverage-инструмента с поддержкой baseline на собственном Gradle plugin под impact analysis – конечно, с настройкой на CI.

    • Тип доклада: Доклад

      Как Compose Multiplatform for iOS может убить Flutter?

      Валентин разберет Compose Multiplatform for iOS и ее преимущества. Погрузимся в архитектуру, выясним особенности работы skia/impeller/skiko, а также узнаем, как готовить shared UI. 

      В качестве живого примера спикер реализует нескольких экранов реального KMM-приложения, где iOS-часть написана на swiftUI, и продемонстрирует преимущества и сложности нового подхода. Также обсудим, зачем нужен Flutter при общем UI на KMM.

    • Тип доклада: Доклад

      Core Motion framework в финансовых приложениях

      Как обрабатывать данные с датчиков движения iPhone при помощи фреймворка Core Motion? Примеры и перспективы их использования в финансовых приложениях.

    • Тип доклада: Доклад

      Компиляторные плагины: модификация и анализ Сompose

      В процессе внедрения Jetpack Compose в большой проект Асхар столкнулся с множеством нюансов, и с некоторыми из них удалось разобраться с помощью компиляторых плагинов Kotlin.

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

    • Тип доклада: Доклад

      Путешествие к центру Композиции

      В продолжение разборов внутреннего устройства Compose Runtime Дмитрий расскажет о Композиции — ключевом механизме фреймворка, без которого Compose и вовсе был бы не Compose.

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

    • Тип доклада: Доклад

      Навигация в SwiftUI

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

      Спикер рассмотрит нюансы и внутренности текущего API, а также подход к работе с ним, включая UIKit-расширения для недостающих методов.

  2. 2 ноября. ONLINE

    • Тип доклада: Обсуждение

      Открытие. 2 день

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

    • Тип доклада: Доклад

      Неожиданное путешествие в мир компьютерного зрения и распознавания образов, или Туда и обратно

      Поговорим об использовании моделей для распознавания объектов на мобильных платформах. Спикер расскажет о применении моделей YOLO и библиотеки TensorFlow на Android и о технических вызовах, которые преодолела команда.

    • Тип доклада: Доклад

      Введение в разработку под Apple Vision Pro

      Vision Pro – революционный девайс от корпорации Apple. Доклад про особенности разработки под visionOS и работу с пространством. Введение в разработку под Apple Vision Pro.

    • Тип доклада: Доклад

      Полнодуплексное соединение во Flutter

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

      Улучшаем свои приложения на Flutter с помощью двунаправленной коммуникации и остаемся в тренде цифровой эры.

    • Тип доклада: Доклад

      За пределами покраски кнопок. Методы компьютерного зрения

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

    • Тип доклада: Игра

      Compose Quiz

      На сессии вас ждет увлекательная и познавательная квиз-игра с серией вопросов от ведущих по самым важным аспектам работы с Jetpack Compose.

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

    • Тип доклада: Доклад

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

      Евгений расскажет, как собрать актуальные метрики скорости запуска и отзывчивости приложения; что происходит на всех уровнях от момента нажатия на иконку сервиса до первого клика в приложении; какие тактики применить, чтобы ускорить старт и отзывчивость после запуска; какие возможности для оптимизации есть в iOS и насколько они эффективны – как старые, так и реализованные в свежих версиях SDK.

    • Тип доклада: Доклад

      Встраиваем Unity в мобильное приложение. Боль и костыли

      Есть хорошо работающий на мобильных устройствах 3D-движок, есть нативные мобильные приложения. И вроде бы возьми их и совмести – как в старом меме про Pen-Pineaple-Apple-Pen. Но не все так очевидно.

      В ходе доклада спикер поделится практическим опытом реализации.

    • Тип доклада: Доклад

      Взлом и защита Android-приложений

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

      Сперва поговорим о банальных вещах – таких, как просмотр данных приложения через снифферы трафика или просмотр байт-кода. Далее о более сложном: поговорим об изменении поведения приложения через Frida и защите от этого с помощью C++. И в конце попытаемся взломать С++.

    • Тип доклада: Доклад

      Удивительный мир внутри .ipa

      Cпикер расскажет, что есть внутри .ipa-файла, пройдется по самым часто встречающимся внутри файлам и покажет, что интересного можно из них достать и как файлы можно модифицировать без вреда для приложения; что интересно можно достать из исполняемого файла, не запуская и не используя дизассемблеры; как можно сравнить два приложения на схожесть, используя Hopper + BinDiff, и как сделать эти бинари отличающимися.

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

    • Тип доклада: Обсуждение

      Подведение итогов online-части конференции Mobius 2023 Autumn

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

  3. 9 ноября. ONLINE + OFFLINE

    • Тип доклада: Обсуждение

      Зал 1

      Открытие офлайн-части конференции Mobius 2023 Autumn

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

    • Тип доклада: Доклад

      Зал 1

      SwiftData как замена CoreData. Глубокое погружение

      Глубокое погружение в детали работы нового фреймворка SwiftData, сравнение с CoreData, метрики производительности и план по интеграции в проект. А в конце — вывод о необходимости миграции на новый фреймворк, возможных путях использования в версиях до iOS 17.

    • Тип доклада: Доклад

      Зал 2

      Моментальный запуск: как VK Клипы работают с плейбэком видео на Android

      В VK Клипах Дмитрий с командой постоянно занимаются оптимизациями ленты: от рекомендаций и хранения до воспроизведения на клиенте. Спикер расскажет о том, что им помогает добиться моментального запуска видео. Также рассмотрим эффективное использование ExoPlayer, интеграцию видео в RecyclerView и подводные камни, которые могут встретиться на пути. 

    • Тип доклада: Доклад

      Зал 3

      Убиваем Lottie? Тащим Rive?

      Спикер расскажет о Lottie: обсудим ограничения и посмотрим, как он работает под капотом, а именно – как работает механизм рендера.

      Также обсудим новый инструмент от создателя Lottie – Rive. Евгений покажет, как Rive решает проблемы, с которыми не может справиться Lottie – в качестве примера рассмотрим подкоробочную интерактивность Rive. Реализуем интерактивный анимируемый элемент с помощью Rive и без кодинга.

    • Тип доклада: Доклад

      Зал 1

      А так ли нужна Swift Modern Concurrency?

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

    • Тип доклада: Доклад

      Зал 2

      Как перестать собирать проект и начать работать

      Все мы читали десятки статей с лайфхаками об ускорении сборки Android-проекта. Но что делать, когда советы применены, оптимизации выполнены, проект давно перевалил за 1000 модулей и за время холодной сборки вы успеваете сходить на обед? Алёна расскажет, как платформенной команде Сбербанк Онлайн удалось в 3 раза сократить время локальной сборки проекта, используя индивидуальный подход и щепотку Gradle-магии.

    • Тип доклада: Доклад

      Зал 3

      Рецепт приготовления кроссплатформенного мобильного видеоредактора

      Из доклада узнаем:

      1. Как объединить несколько разных мультимедийных продуктов и технологий в один проект-суперапп.
      2. Как подружить C++ и Kotlin Multiplatform.
      3. Как уживаются вместе разные механизмы управления памятью (Swift, Objective-C, KMM, C++, C)
      4. Как спроектировать presentation-слой так, чтобы на платформе была только верстка.
      5. Какие фишки из KMM помогли в разработке, а какие – наоборот.

      В финале разберем, чего стоит ожидать от использования KMM, и какой же он - «рецепт приготовления кроссплатформенного мобильного приложения».

    • Обед

      Для разных участников обед идет в разное время. Подробности — в печатной программе.

    • Тип доклада: Доклад

      Зал 1

      SwiftUI-навигация: просто, нативно и декларативно

      Рассмотрим, как сделать простую многофункциональную навигацию в декларативном стиле без роутеров и координаторов, опираясь на стандарты технологии SwiftUI. Конечное решение будет иметь поддержку iOS 14 и возможности NavigationStack, а также в нем будут отсутствовать недостатки и баги SDK.

    • Тип доклада: Доклад

      Зал 2

      Как мы создавали дизайн-систему на Jetpack Compose

      Спикер расскажет про путь, который прошла его UI-команда при реализации дизайн-системы на Jetpack Compose. Рассмотрим сложности, с которыми столкнулись при разработке и проведении дизайн-ревью, обсудим способы взаимодействия с Material и особое внимание уделим инструментам для реализации нестандартного UI, которые показали себя лучше всего.

    • Тип доклада: Доклад

      Зал 3

      Code Review in Action

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

    • Обед

      Для разных участников обед идет в разное время. Подробности — в печатной программе.

    • Тип доклада: Доклад

      Зал 1

      Tracer – альтернатива Crashlytics, или Другой взгляд на аналитику ошибок в приложениях

      Зачем нужен Tracer, если есть Crashlytics, Sentry и App Center? Поговорим об отличиях, преимуществах, деталях реализации, а также о проблемах, с которыми вам, возможно, поможет только Tracer.

    • Тип доклада: Доклад

      Зал 2

      Объединяем Combine и Swift Concurrency

      Спикер расскажет, как сочетаются разнообразные UDF-подходы и Swift Concurrency, о подписке на обновления без коллбэков, а также об инструментах для тестирования всего этого.

    • Тип доклада: Воркшоп

      Зал 3

      Проектирование невизуальных интерфейсов: основа, смыслы, примеры. Часть 1

      Интерактивный воркшоп, на котором мы вместе будем проектировать невизуальные интерфейсы:

      • включим TalkBack и VoiceOver и вспомним, как и зачем ими пользоваться;
      • по-честному взглянем на цифровой интерфейс и его представления: визуальное, аудиальное и даже тактильное;
      • проанализируем ключевые компоненты интерфейса и попробуем спроектировать решения с точки зрения их правильного представления вспомогательным технологиям.
    • Тип доклада: Доклад

      Зал 1

      BDUI на 100%: управляем шиммерами с бэкенда

      В команде развития BDUI в Маркете разработали собственный язык для описания шиммеров, научились его быстро парсить и внедрили в приложение и бэкенд. Спикер расскажет, почему решили разрабатывать свой язык, похожий на Lisp, и почему обычный JSON или бинарный формат не подошли, как они научились генерировать код под обе платформы (iOS, Android) с помощью Python и почему отказались от идеи использовать KMM.

    • Тип доклада: Доклад

      Зал 2

      Swift Plugins: ускоряем сборку проекта

      Спикер расскажет про Swift Plugins: что это, как использовать и создавать свои плагины. И вишенка на торте – продемонстрирует оптимизацию затрат сборки с помощниками (SwiftFormat, SwiftGen, Sourcery, Needle, Prefire) с 1м 30с до 5с.

    • Тип доклада: Воркшоп

      Зал 3

      Проектирование невизуальных интерфейсов: основа, смыслы, примеры. Часть 2

      Интерактивный воркшоп, на котором мы вместе будем проектировать невизуальные интерфейсы:

      • включим TalkBack и VoiceOver и вспомним, как и зачем ими пользоваться;
      • по-честному взглянем на цифровой интерфейс и его представления: визуальное, аудиальное и даже тактильное;
      • проанализируем ключевые компоненты интерфейса и попробуем спроектировать решения с точки зрения их правильного представления вспомогательным технологиям.
    • Тип доклада: Доклад

      Зал 1

      Мы решили все проблемы работы в модульном проекте. Хотите так же?

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

    • Нетворкинг и афтерпати

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

  4. 10 ноября. ONLINE + OFFLINE

    • Тип доклада: Доклад

      Зал 1

      Адаптация интерфейсов под ОС Аврора: от компонентов до паттернов

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

    • Тип доклада: Доклад

      Зал 1

      Что скрывает State в Compose

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

    • Тип доклада: Доклад

      Зал 2

      "А у нас сейчас все норм работает?" или что такое observability мобильного приложения

      В мире бэкенда, API и баз данных хороший мониторинг давно является чем-то само собой разумеющимся. Даниэль поделится тем, как в Тинькофф подходят к observability (наблюдаемости) мобильного банка – основного приложения компании с ежедневной аудиторией свыше 10 млн. клиентов. Спикер также расскажет о том, как и за какими метриками следят и какие практики показали свою эффективность в этой теме.

    • Обед

      Для разных участников обед идет в разное время. Подробности — в печатной программе.

    • Тип доклада: Доклад

      Зал 1

      Сколько памяти нужно для сборки? Android-разработчикам о JVM

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

    • Тип доклада: Доклад

      Зал 2

      Баланс между скоростью и надежностью: переиспользовать нельзя перепроверять

      Спикер расскажет, как они в Сбербанк Онлайн нашли золотую середину между скоростью сборки и надежностью после вливания кода pull request'а.

    • Тип доклада: Доклад

      Зал 3

      Best practices локальной аутентификации на Flutter

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

    • Обед

      Для разных участников обед идет в разное время. Подробности — в печатной программе.

    • Тип доклада: Доклад

      Зал 1

      BDUI – удовольствие или боль?

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

    • Тип доклада: Доклад

      Зал 2

      Макросы Swift: проще, чище, быстрее

      Спикер расскажет, как можно использовать макросы Swift 5.9 на практике, ускорить и оптимизировать разработку, а также упростить жизнь разработчикам.

    • Тип доклада: Доклад

      Зал 3

      Оптимизация Compose: проблемы, опыт, тактика, стратегия

      Цель: подсветить проблемы, возникающие при работе с Compose в большой команде. Дать унифицированные подходы к оптимизации. Предложить иной взгляд на архитектуру UI-стейта.

    • Тип доклада: Доклад

      Зал 1

      Жизнь инди в Google Play

      Спикер расскажет о сложностях инди-разработки и правилах Google Play.

      Инди – сам себе хозяин и, как в сериалах про бандитов, за всё отвечает сам. Специфику инди не описать двумя фразами, но из советов можно почерпнуть полезное для себя.

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

    • Тип доклада: Доклад

      Зал 2

      Как быстро сократить вес приложения: переносим картинки и строки локализации на сервер

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

    • Тип доклада: Собеседование

      Зал 3

      Cracking the Android Interview

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

    • Тип доклада: Обсуждение

      Зал 1

      Закрытие офлайн-части конференции Mobius 2023 Autumn

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