Droidcon Berlin 2015: как это было
Среди крупнейших конференций по Android-разработке в Европе особо можно отметить Droidcon в Берлине и в Лондоне. В столице Великобритании конференция в этом году еще только намечается, а на той, что недавно прошла в Германии, я уже побывал. Далее — небольшой отчет о том, что интересного удалось услышать и увидеть на берлинском Droidcon.
Собственно, целями поездки были:
- послушать про текущие тенденции в разработке — это главная цель;
- пообщаться с другими разработчиками из глобального Android-сообщества;
- оценить организационную часть конференции, чтобы использовать этот опыт в собственных мероприятиях Redmadrobot .
Город
Несомненно, Берлин — один из самых интересных городов Европы, который обязательно стоит посетить просто будучи туристом. Ни на что не похожая атмосфера, удобный общественный транспорт, море отличной уличной еды и велосипедов. Город постоянного общения — настолько мультикультурный, что можно за один вечер поговорить с людьми из десятка стран, и английский язык тут можно услышать всюду наравне с немецким.
Удивительно: несмотря на то, что во время войны большую часть Берлина фактически сравняли с землей, в 2015 году в городе хватает интересной архитектуры — и старой, и новой. Берлин активно реконструируется, старые здания ремонтируются и приспосабливаются под актуальные задачи. Как раз в одном из таких мест — POSTBAHNHOF — и проходил Droidcon.
Формат
Первый Droidcon прошел в Берлине в 2008 году. С тех пор конференция значительно расширилась и на данный момент проходит почти во всех странах Европы, а также в некоторых странах других континентов. Основная часть проходит за 2–3 дня плюс день на хакатон. Как правило, у конференции много именитых спонсоров, но за билет все равно придется заплатить — в этот раз он стоил €199.
В этом году в Берлин приехало более 800 человек. Сессии шли параллельно на четырех сценах, поэтому приходилось выбирать, что посетить. Каждый день начинался с небольшой вводной, дальше — сами презентации. На первом этаже было что-то вроде выставочного пространства для разных технологических компаний, даже Microsoft подсуетился со своим Microsoft Truck«ом. Впрочем, в основном стенды были представлены европейскими компаниями, которые либо продавали свои продукты, либо искали новых сотрудников. Зато было много бесплатного стафа — наклеек, конфеток, напитков и даже Google Cardboard. Также можно было поучаствовать в различных лотереях и выиграть небольшие подарки.
По всей территории стабильно работал бесплатный Wi-Fi, что было полезно (хотя бы для просмотра календаря конференции). Немного статистики:
- 1500 устройств было подключено к сети во время конференции;
- 729 — максимальное число одновременно-подключенных устройств;
- 80% устройств было подключено по каналу 5 GHz;
- Общий трафик за все время конференции — 463 GB;
- Устройств с упоминанием слова «android» — 50.6% от общего числа, «apple» — 32.8% (включая MacBook).
Еда и напитки
Во время обеда всех кормили вегетарианской едой (видимо, чтобы покрыть все требования разом), весь день был доступ к кофе и печенькам.
Плюс был кофе-брейк с капкейками и, как я уже сказал, конфеты и напитки у стендов компаний. В общем не проголодаешься.
Регистрация и семинары
Первый день был организационным — вечером можно было зарегистрироваться и заодно попасть на вечеринку, посвященную окончанию Berlin Buzzwords Conference. Второй день полностью посвятили баркемпам и семинарам. Для презентации в формате баркемпа достаточно было заранее записаться, и рассказчику выделялся тайм-слот. В целом интересного было не слишком много, поскольку многие использовали данный формат для рекламы своих продуктов и компаний.
Параллельно на первом этаже проходили семинары на разные темы. Самым любопытным, пожалуй, оказался семинар Getting Started in VR, на котором ребята из Carbon Five рассказывали об основах построения приложений для виртуальных очков и создании простых демо-приложений для Google Cardboard.
По окончании первого дня всех посетителей Droidcon пригласили посидеть в хакерспейсе А-base — очень атмосферное гиковское место, сделанное по подобию космической станции.
Сессии
Следующие два дня были посвящены сессиям на разные темы. Выступали представители Google, Intel, Dropbox, Facebook, JetBrains и других компаний. Интересного было много, для себя я составил список самых любопытных сессий:
- The Cognitive Abilities of the Human Mind — одна из самых полезных лекций конференции. Специалист по interaction design Янне Юль Йенсен (Janne Jul Jensen) на основе гештальтпсихологии объясняла, что стоит за дизайном и гайдлайнами и как лучше проектировать приложение. Стоит посмотреть как дизайнерам, чтобы дополнить знания по проектированию интерфейсов, так и разработчикам для лучшего понимания дизайна приложений.
- Потом был представлен новый EventBus v3. Пока в стадии беты, но разработчикам показали удобство с новыми аннотациями и его быстродействие, сравнив с предыдущей версией и решением Otto от Square. На что Джейк Уортон (Jake Wharton) уже успел пошутить в твиттере. Но в целом новая версия выглядит многообещающей, поэтому стоит обновиться, когда она выйдет из стадии беты.
- Developing a SDK for Android apps — небольшая презентация про разработку собственного SDK. Как и обычные советы по типу «подумай дважды перед тем как что-то делать», так и конкретные — использование fatarr, демо-приложений и мок-серверов для тестирование и др. К сожалению видео данной сессии нет, поэтому можно познакомиться с pdf-вариантом (и уточнить что-то у меня, если надо).
- Flexing the rules of Material Design — интересно послушать с точки зрения применения гайдлайнов к своим приложениям. Одна из мыслей презентации — «Don’t be a copycat», т.е. не обязательно копировать Material Design один в один. В качестве доказательства были приведены приложения из списка Material Design Awards, в которых какие-то детали выглядели не так, как в гайдлайнах. Тем не менее эти приложения получили награды.
- Kotlin — The Swift of Android. Если вы до сих пор не знали о существовании этого языка или хотите получше узнать его преимущества, то эта презентация будет полезна. К сожалению, язык до сих пор в стадии разработки, но JetBrains надеются скоро его закончить.
- Whats new in Android? — презентация проходила спустя неделю после Google I/O, поэтому послушать разработчика Google про нововведения в системе было интересно. Что нового?
- Android M — новинки новый версии ОС.
- Переделана система пермишенов (на устройствах до версии Android M все будет работать по старому, на M-девайсах и выше работа будет зависить от targetSdkVersion.), новые методы для их проверки, аннотация RequirePermission.
- Еще новые аннотации — FloatRange, CallSuper, CheckResult, Size.
- Новый режим энергосбережения Doze mode.
- Voice integration в приложениях.
- Data binding — уже доступен, пока бета.
- Design Library — новые компоненты, которые облегчают жизнь разработчикам в мире Material Design.
- Разные новые плюшечки в Android Studio.
- AutoBackup для приложений — можно указать что сохранять.
Нововведениями потихоньку делятся с общественностью, поэтому стоить следить за блогом Android Developers Blog. - Layout traversals on android — что происходит за вызовом метода requestLayout ()? Как оптимизируется вывод layout в Android? В этой презентации рассказывают о ключевых шагах, которые проходит Android UI-фреймворк, чтобы отобразить ваш интерфейс на экране.
- RecyclerView to the rescue — все о RecyclerView. На самом деле, примеров в интернете много, но интересно было услышать об использовании паттерна MVVM вместе с RecyclerView, что в некоторой степени облегчает отображение элементов в списке.
- Android reactive programming with RxJava — думаю, этой лекции достаточно, чтобы понять принцип реактивного программирования и его применения в Android с помошью RxJava.
Также можно посмотреть:
- Strip-tease of Android permission system — лекция от Genymobile, основы системы permission в Android и Linux. Ничего нового, но презентация хорошая.
- Level up your Android build — все про настройку gradle и CI. Полезная информация, если у вас до сих пор не выстроены CI-процессы в разработке.
- An alternative to fragments: Say Hello to Mortar & Flow — использование решений от Square вместо фрагментов. Mortar — надслойка над жизненным циклом Activity для использования View как отдельной части приложения. Flow же описывает экраны и их состояния, а также навигацию между ними. При использовании этих двух библиотек получается решение, способное заменить фрагменты. Интересно, но мало документировано и пока в стадии разработки.
- Fitness motion recognition with Android Wear — как с помощью часов выявлять определенные движения. Начиная с того, какие датчики лучше использовать, заканчивая алгоритмом определения движения. Неплохая лекция для того, чтобы разобраться с датчиками в системе Android.
- Let«s go functional — название говорит само за себя, базовые вещи и текущее состояние функционального программирования в Android.
Опять же, этот список я составлял для себя, советую посмотреть расписание конференции, может быть там найдется что-то интересное лично вам.
Общение
Подобные конференции дают редкую возможность пообщаться с глобальным сообществом разработчиков, поэтому было даже немного удивительно видеть, как некоторые ходят обособленно. Излишнее стеснение в таких ситуациях неуместно, так как становится преградой на пути к получению новой информации. Во время разговора можно уточнить детали, спросить реализацию или совета. Все разработчики, даже если и работают в условном Google или Facebook, такие же люди, как и все мы :)
Заключение
Говоря о текущих тенденциях, на мой взгляд, можно в первую очередь выделить реактивное и функционально программирование, MVVM и все, что связано с процессом сборки и тестирования (но это, пожалуй, будет актуально всегда). По поводу прошлогоднего Material Design вроде все успокоились, и разговоры шли больше об общих концепциях в дизайне.
Организация Droidcon была на высоте (впрочем, от немцев едва ли можно было ожидать другого :). Стоит ли ехать в следующем году? Информация и видео с конференции появляются в сети достаточно оперативно, поэтому кое-что узнать можно и из дома. Но конференция прежде всего — это общение с коллегами. Поеду ли я еще раз? Если такая возможность будет, то, конечно же, да. Комьюнити как живой организм, и такие мероприятия — способ влиться в него и сделать его еще более сплоченным.
P.S. Часть фотографий — мои, часть сделаны Грегором Фишером (Gregor Fischer), либо взяты из других источников и распространяются по лицензии cc-by-sa 2.0. Больше фотографий можно увидеть в альбоме.
Читайте также:
Сажаем контроллеры на диету: Android
Архитектурный дизайн мобильных приложений
Архитектурный дизайн мобильных приложений: часть 2