
На этот раз это действительно будет путешествие в прошлое и прыжок в новые технологии, притом одновременно, как, собственно, и в концепте самой игры с перемещением личности во времени. И да, — это отсыл к Assassin's Creed, а не историческому значению термина «прыжок веры».
И про игры тоже поговорим, но уже про взрослые. Как сделать приложение только для онлайна, без необходимости загрузки, и наоборот, приложение, которое не требует коннекта к сети.
Возможно, мне даже пропустят не совсем стандартный формат обзорного поста и картинка со всеми спикерами конференции будет уже после ката.
А ещё в этот раз у нас не будет открывающего кейноута, т.е. каждый доклад первого тайм-слота — это маленький кейноут, и времени на раскачку не будет. Сразу в прод!
Что ждать от докладов на конференции и куда с их помощью можно попасть — под катом. Совпадает ли наше видение с реальностью или нет, решать участникам Mobius 2017 Moscow.
Программа
Итак, для начала ознакомимся со списком докладчиков в общем. Возможно, кто-то вам понравится визуально, и вы сразу прокрутите на него. Но если всё-таки вы — сторонник подхода «узнать все варианты и потом выбрать», то, возможно, в хронологии у вас получится связная история.

По классической схеме существует несколько вариантов сред доставки
Доклады про Android

Мат для кого-то — это гимнастический настил, и кому-то не хватает уверенности при прыжке в UI. Что в жизни, что в разработке страхи есть, и, возможно, вы даже уже используете расширения Kotlin и RxJava в роли того самого мата и хотите делать всё чуть быстрее, проще и эффективнее. У нас есть для вас спикер.
Гостья с другой стороны Атлантики готова буквально на пальцах рассказать, как при помощи фреймворка Data Binding значительно уменьшить головную боль с кодом и изменить путь к созданию UI. Лиза не просто Android Google Developer Expert, она — выпускница бакалавриата MIT по музыке и ИТ. Прежде чем начать работать над приложением одного всемирно известного издания, она успела поработать в Google (неожиданно) в команде развития отношений разработчиков Android, Google Glass, Android Wear и т.д.

Jing Li — разработчик-агностик (что бы это сочетание ни значило) с упором на тулы, качество и CI. Возможно краткое интервью сможет сделать картинку более ясной.
CI и так не самый легкий в реализации процесс, и в плане разработки ПО он до сих пор развивается в области мобайл. В докладе Джинга будет введение в Docker и качественно сделанный образ Docker для Android, на основе которого и построена презентация использования последнего для Android CI — с описанием преимуществ, ограничений, фишек и производительности.
Конечно, будет живое демо по настройке Jenkins Android slave через Android Docker image за 2 минуты (Как бы невероятно это ни звучало).
В докладе хватает моментов, которые выглядят как вызов стереотипам. При желании поучаствовать в дискуссии просьба готовить вопросы на английском. *
*Cам написал, сам перечитал… нет, это не та же статья, что и «Docker, Docker, Docker».

Реклама Тинькофф в той или иной мере появляется регулярно, хайпы и т.д. Но в нашей истории примечателен сам спикер, а Сергей уже два года является частью команды разработки мобильного приложения для юридических лиц. При том что в 2013 у него всё начиналось ещё с профессии бармена, Java и бэкенда.
Доклад Сергея будет о текущем проекте на Android, какие проблемы команде принесла ORM (рост размера базы до умопомрачительных размеров) и как их решали. Обсудим назначение ORM и какие ограничения она накладывает на разработчиков. Цель доклада — заставить рядового разработчика задуматься о целесообразности использования ORM в своем проекте. Технологии, которые будут задействованы: OrmLite, Stetho, DBInspector, Sqlite.

Иван — ведущий программист под мобильные платформы компании Аквелон. Позади более 5 лет опыта в игровой индустрии со специализацией на кроссплатформенной разработке под мобильные устройства с использованием C/C++ (и они работают, например, у компании есть видео об управлении устройством для наливания пива с мобильного телефона). С проблемой сбора информации об ошибках в NDK-коде знаком не понаслышке, об этом и будет говорить.
В первой части доклада будут кратко рассмотрены уже имеющиеся наработки: как работает встроенный отладчик Android, какие решения уже существуют.
Вторая часть посвящена рассказу о том, как это работает «под капотом»: как получить состояние процессора на момент ошибки, как раскрутить стек вызовов, как узнать номера строк в исходном коде. Будет дан обзор таких библиотек для раскрутки стека, как libcorkscrew, libunwind, libunwindstack.
Доклад будет интересен как Android-разработчикам, в чьих приложениях используется NDK, так и всем остальным для расширения кругозора.

А вот при изучении этого доклада автору, естественно, вспомнилась куча мемов из области Siri, Alexa, Алёнка и Алиса, Amazon Home, Google Home и, в конце концов, шутка про шотландский акцент и голосовое управление лифта…
Вместе с Алексеем будем погружаться в мир Google Assistant.
В докладе спикер покажет, как начать писать приложения для Google Assistant и тестировать их на Android, iOS и Google Home. В течение 40 минут мы вместе напишем приложение с нуля и отладим его с помощью Google Home.
В общем и целом Алексей знает, как организовать сообщество, что он регулярно и делает, устраивая встречи Google Developers Group Riga, Java User Group Latvia и ежегодную конференцию Riga Dev Day.

Начнём издалека. 4,8 на Google Play — это много или мало? Понятно, что это достаточно условно, но возьмём за гипотезу, что это честный рейтинг, проверенный и добровольный.
Итак, Евгений — лидер команды Лабиринт Android, той самой, которая первой в России реализовала Instant App и может похвастаться приложением с оценкой 4,8 в Google Play.
Говорить будем об Instant Apps — возможности использования приложения без необходимости устанавливать его на устройство. В рамках доклада будет рассказано о самой технологии, об опыте реализации, о том, как подготовить проект к внедрению Instant Apps и подводных камнях, с которыми можно столкнуться в процессе. Особое внимание будет уделено вопросу выбора use cases, а также бенефитам, которые дает чистая архитектура в контексте создания Instant Apps.

Энирике Лопес работает с мобильными технологиями с 2007 года и за это время повидал много хайпов, поэтому знает в них толк. В данный момент идёт хайп вокруг ML и AI, и для того, чтобы быть на волне, он предлагает использовать TensorFlow в роли основного фреймворка от Google. А при условии, что сам Enrique Lopez Manas является Google Developer Expert и одним из основоположников Google LaunchPad accelerator, то как тут не хайпануть, да ещё и получить выгоду от использования ML. Перед конференцией даже выпущен предварительный пост по его работе, чтобы вы могли успеть подготовиться.

Сергей Рябов — независимый Android-разработчик с бэкенд-бэкграундом. Несколько лет назад обрёл Kotlin-суперспособности, которые и по сей день использует во благо в своих экспериментах и продакшне. Rx-фанатик, Kotlin-евангелист.
И как любой евангелист, он готов нести знание в массы. В этот раз о том, как писать Kotlin-код, чтобы его можно было использовать в Java. Действительно, интероп с Java широко разрекламирован. Однако, в то время как Java-код дёргать из Kotlin можно без особых проблем, работа с православным Kotlin-кодом из Java имеет свои нюансы. Сергей расскажет, что же припасли создатели Kotlin для таких случаев.
Доклады про iOS

Андрей Володин — lead developer Cocos2d-ObjC, создатель первого приложения на Swift под Android, автор кроссплатформенного игрового движка Fiber2D, в настоящее время — Metal/ARKit-инженер.
Андрей поможет нам добраться до видеокарты мобильных телефонов. Кто-то может помнить бородатую шутку про «связки Айфонов на колокейшене». В какой-то мере это не шутка. А именно:
Современный мир не был бы таким, какой он есть, без GPU-вычислений. Современные консольные игры, VR, AR, криптовалюты, машинное обучение — всё это работает на горячих графических процессорах.
Однако среди мобильных разработчиков видеокарты не пользуются большой популярностью: многие думают, что это очень сложно, а некоторые вообще не замечают, что iPhone в принципе имеет видеокарту.
С помощью этого доклада хотелось бы ознакомить широкие массы разработчиков с программированием графических процессоров, с прицелом на мобильные платформы и, конечно же, трендовые темы.

Представьте, что вместо того, чтобы оторвать бумажку с телефоном от объявления на подъезде, можно взять смартфон и сразу написать владельцу напрямую, уточнив статус, не мучаясь с проблемой «трубу не берёт, достали, продали» и т.д.
Для получения подобного мессенджера Максиму Соколову, как Team Lead в Avito, пришлось пройти через все тяжкие, от простого HTTP-API до использования веб-сокетов, узнавая про плюсы, минусы и подводные камни различных подходов. Максим поделится, как его команда проектировала клиент-серверное API и как в этом помогал Swift. Вы узнаете о том, как гарантировать доставку сообщений клиентам, онлайн-статусы пользователей, статусы сообщений и других функциях современных мессенджеров и их реализации.
Мессенджеры развиваются стремительно и новый функционал требуется добавлять быстро. В рамках доклада будет рассказано, как заложить масштабируемую архитектуру, которая позволит легко добавлять новые фишки.

Слишком много исторических отсылок получается в ходе обзора. Но что поделать, история движется по спирали: «приложения на десктопе стремятся работать в облаке независимо от локальной памяти», «приложения на телефоне постепенно обретают всё больший оффлайн-функционал».
Хорошо это или не очень, можно будет обсудить с Евгением Камышановым из EPAM после его практической демонстрации данного явления в ходе доклада.
При всём этом, будучи Lead iOS developer в компании EPAM в Санкт-Петербурге, спикер не верит в серебряные пули и по мере сил борется с перфекционизмом.

Marcin — это не просто разработчик и автор Natalie, CryptoSwift и ObjectivePGP, но и тот, кто пытается всё же сохранить приватность при помощи PrivacyApp.io Как следствие последнего, про процессы Encoding он знает много… очень много. Конечно, в докладе будет присутствовать не только практика, но и сравнение encoding vs. encryption. Что больше используется в реальной жизни, пояснения с примерами (по большей части на iOS, но не только).
Кстати, Marcin с нами не в первый раз и уже был приятно удивлен высоким уровнем нашего комьюнити. Надеемся, в этот раз у него будет возможность укрепиться в вере в high level наших мобильных разработчиков.

Итак, с чем у вас ассоциируется звук «о-оу»? За всех, естественно, говорить не стоит, но для тех, кто начинал до пришествия iPhone — это звук одного мессенджера, который по знаменитости был сопоставим с теперешним Telegram.
К чему это всё? Дмитрий 12 лет занимается разработкой мессенджеров под разные платформы. Последние 5 лет делает iOS клиент для ICQ (звук «о-оу») в должности team lead.
Рассмотрим, из чего складывается размер приложения на iOS и как этот размер можно уменьшить. Приведем несколько экспериментов для пояснения, из чего в итоге складывается размер приложения в AppStore, и расскажем про инструменты, которые помогут найти лишние данные и определить наиболее объемные участки кода программы.

Наверняка многим знаком подкаст про мобильную разработку Podlodka. Его ведёт Глеб Новик, автор фреймворка COOperation.
Доклад Глеба будет построен вокруг распространенного способа построения сервисного слоя приложения — это использование механизмов GCD для создания асинхронного взаимодействия компонентов. Многие задумываются, но мало кто использует на практике всю мощь классов NSOperation и NSOperationQueue для данной задачи.
С помощью тщательной декомпозиции и небольшой доработки указанных классов можно получить чрезвычайно гибкий и переносимый компонент, который станет верным другом при создании новых сервисов. Глеб расскажет о том, как можно использовать составные операции при построении сервисного слоя и как в этом может помочь разработанный им фреймворк COOperation.
Область общей полезности — уже не среда, а нечто большее

Владимир — один из достаточно частых гостей наших конференций, и его должность ведущего разработчика в EPAM этому не причина. Всё дело в использовании круга интересов (Android, React, iOS, Web) и не менее занимательного бэкграунда спикера (начинал как Java EE-инженер, но увлекся мобильным технологиями «и покатился»).
Для начала разомнём мат. аппарат (от слова «мат», а не «математика»). Разберём «Legacy». Каждому разработчику приходится сталкиваться с ним постоянно. Более того, каждый новый проект становится legacy со временем, если не уделять достаточно внимания техническому долгу. В докладе поговорим, как жить с особо запущенным случаем, aka проектом возраста более 5 лет.
Мы узнаем:
- как осознать размер долга;
- как придумать план рефакторинга;
- провести его максимально безболезненно.
Код будет на Java, но специфики Android почти нет, поэтому интересно будет инженерам обеих платформ.
Немного теории, много практики, щепотка статистики, нескучные картинки — всё, как вы любите.

Представление данного спикера хотелось бы начать с введения к докладу его коллеги:
«Кто думает, что Badoo — это поисковая сеть? А кто думает, что это китайский внутренний онлайн-магазин?». Честно, в зале на другой нашей конференции на оба вопроса руки поднимали далеко не единицы. Собственно, и ваш покорный слуга в том числе. Так что жертвами стереотипов могут быть все.
В итоге, это самый большой портал по знакомствам (300+ млн. пользователей), бешеное количество обращений и скачиваний. Чем направлять весь этот поток? Константин предлагает отправиться в путешествие в мир универсальных ссылок вместе с ним. Но с большими оговорками:
«Всё это осложняется тем, что, как только универсальные ссылки запущены, пути назад нет. Нужно их поддерживать, и ваши ошибки, возможно, навсегда останутся с вами».
А чтобы у вас осталось меньше ошибок «навсегда», мы и предлагаем этот доклад. Мы ожидаем, что человек, прослушавший его, получит достаточно информации, чтобы с нуля запустить современную систему универсальных ссылок в своей компании без проблем и сомнений.

Уже прошло несколько месяцев с того момента, как мы взяли интервью у Александра, которое можно почитать тут. Информация в статье позволит представить спикера в разы лучше, чем тысяча лишних знаков в обзоре, поэтому перейдём непосредственно к докладу.
В докладе Александр расскажет про подходы к разработке UI, которые позволяют новым разработчикам вносить изменения без переписывания кода и переиспользования написанных компонентов.
Также часть доклада будет посвящена Atomic Design. Многие популярные приложения используют нестандартные визуальные компоненты, и команда Badoo — не исключение. Чтобы это не создавало много головной боли дизайнерам и разработчикам, им пришлось выработать решение, которое и будет представлено в докладе.
Вне категорий (и законов корпорации)
Для начала промокод для тех кто дочитал до этого момента (или случайно на него попал) —
используя при регистрации ключевую фразу выше, вы можете приобрести билеты по октябрьской цене по 5 ноября включительно. Если еще не успели зарегистрироваться – это ваш шанс!
Использовать шанс!
LastCallMobius

У вас когда-нибудь была ситуация, когда вы работаете в компании над приложением, и внезапно вам в голову приходит идея новой крутой фичи? Вы понимаете, вот он — переломный момент, но когда вы обращаетесь за поддержкой и одобрением на разработку, вы сталкиваетесь с препятствием: «У нас нет ресурсов», или «На данный момент у нас другие приоритеты». Сотрудники, которые не понаслышке знакомы с продуктом компании, больше всего подходят для придумывания и проектирования лучших фич для приложения, но иногда на пути встают политики и процедуры компании. Но где есть желание, там есть возможности! Мир завоёвывают повстанцы и мятежники — Империя должна пасть! Если вы знаете, что эта фича важна, но у вас нет разрешения продолжать, вам придётся осторожно балансировать между свободой творчества и уважением к приоритетам вашей компании.
В данном докладе Йонатан поделится, как он разработал фичу без разрешения и как при этом его не уволили/покалечили/убили.
Йонатан — один из ведущих израильских мобильных разработчиков, часть элитной команды Google Developer Experts. Сыграл ключевую роль в успехе Gett, собравшем более 500 миллионов долларов, а также получил финансирование своего стартапа KolGene, набирающего популярность генетического market connector-а. Будучи верным приверженцем мобильного и продукт-менеджмента, Йонатан также с большим энтузиазмом занимается бэкендом. Как состоявшийся разработчик и предприниматель, он точно знает, как превратить умные идеи в прибыльный продукт.
©Mobius 2017 Moscow (текст-описания доклада Йонатана взят с сайта как самодостаточный и не нуждающийся в сокращении или дополнении)
На этом всё с докладами, но не с конференцией. Безусловно, выбрать слот и свой путь можно до начала, следуя программе Mobius 2017 Moscow. Либо просто взять и прийти / взять трансляцию совершив свой «прыжок веры».
Если остались вопросы, то их можно задать в комментариях, либо в нашем телеграм-канале Mobiusсonf .
И если вдруг есть сложности и вы не знаете, как с ними быть, то у нас есть ещё и Ч.А.В.О.
До встречи на конференции Mobius 2017 Moscow!