2014-04-20

О Droidcon Moscow 2014

Оказалось, что я все же Андроид разработчик и мне есть, что сказать. Так я оказался на Droidcon Moscow 2014. Первой в России международной конференции Андроид разработчиков, по заверению организаторов.


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

Есть удивительное отличие между конференциями в Москве и в Замкадье (за Омск, Новосибирск и Екатеринбург точно ручаюсь). Здесь у нас все спонсоры конференций приходят на неё за кадрами. Хэдхантят, переманивают и соблазняют по полной. А в Москве соблазняют не на работу, а на продукт. Они пытаются привлечь пользователей. Технологии (даже языка), библиотеки или SDK, конкретных товаров. Но именно пользователей, а не работников.

Первым делом я, пройдя через регистрацию на конференцию, перетер с диджеем красоту звучания и удобство использования винила. Потом я пошел щупать ЙотаФон. Это тот самый телефон со вторым электроннобумажным экраном на спине. Концепция интересная. И даже, пожалуй, удобна в некоторых случаях. Например, мне было бы неплохо вывести на задний экран карту текущего маршрута до точки назначения, а на главном экране запустить Ingress. Или удобно было бы открыть на энергосберегательном экране заметочку/рецепт из приложения заметок. Не понравилось мне, что на ЙотаФоне нет ни аппаратных кнопок (кроме вкл и громкости), ни сенсорных, ни наэкранных. Все эти «Домой» и «Назад» делаются жестами на панельке под экраном. А задний экран управляется вообще десятком труднозапоминаемых жестов. Не нравится мне, что девайсом невозможно пользоваться без прочтения инструкции.


Я так интенсивно щупал ЙотаФон, что мне предолжили адаптировать какое-нибудь мое приложение под него. Через час раздумий я решил попытаться вывести погоду из всепогодного приложения на задний экран. Записался на хакатон.

Были там еще телефоны Nokia X, телефоны Alcatel, очки тридэшной дополненной реальности от Epson, тридэ принтер и что-то еще. Про Nokia X даже были доклады. Довольно удручающе. Мало нам всяких оболочек от изготовителей, Киндла, Яндекс.Кита и MIUI. Теперь еще есть и Андроид от Нокии. И лишь 75% приложений совместимы с ним без переделки. Привет, фрагментация!

Виталий Засадный чудесно рассказал про игры для гуглоочков. Игры делать там весьма специфично. Пока получается делать лишь простенькие. Кстати, на хакатоне запилили Арканоид для Очков. А я бы, пожалуй, не отказался от Ingress для них же. Ok, Glass, hack the portal!

Матеуш Герич выдал лучший технический доклад всей конференции. Оказывается, еще с самых первых Андроидов, SQLite в них — это не просто SQLite, а SQLite с включенным расширением полнотекстового поиска FTS3. Не нужно делать медленные и глупые запросы с LIKE, нужно делать нормальный, хоть и простенький, полнотекстовый поиск. Для локальных данных на телефоне. Круто же!


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

Потом начался хакатон. Я решил, что сидеть всю ночь в Digital October — это слишком тяжелое испытание для моего организма. Поэтому, вместе с омскими GDGшниками я прогулялся по вечерней Москве, посетил Макдональдс и Третьяковку, попил пива до полуночи.

А таки несколько часов ночью и пару часов поутру я похакатонил. Повоевал с ЙотаФонным SDK. Оказалось, что у них слегка модифицированный эмулятор, и нужно перезаписать исполняемые файлы оригинального эмулятора. Иначе на заднем экране будет красивый черный фон. Сама SDK подключается к проекту как обычный JARник. Однако все методы в этом JARнике выбрасывают RuntimeException с сообщением «Stub!». JARник, оказывается, нужен только для компиляции, а актуальная реализация находится где-то в девайсе/эмуляторе. SDK — это лишь три с половиной класса. BSActivity для рисования на заднем экране (причем на самом деле это не активность, а сервис). Можно отрисовывать обычные лейауты, превратив их предварительно в картинку. Можно прорисовывать только часть заднего экрана. Можно выдавать уведомления на задний экран. Вот только BSNotification сильно беднее стандартного андроидного уведомления. А вызов BSNotificationManager содержит внутри себя bind к какому-то сервису, из-за чего его нельзя использовать в BroadcastReceiver. С андроидным NotificationManager нет такого ограничения. Ну а набор жестов для управления этими уведомлениями я так и не осилил. Как-то все грустновато. И вообще, мне вдруг захотелось отображать на заднем экране «карточки» с контентом от разных приложений, а этого в SDK нет. Кстати, на хакатоне запилили набор аннотаций для работы с этим задним экраном, йотовцы приз за это дали.


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

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

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

Потом началось и сильно затянулось закрытие хакатона. И я ничего не выиграл. На этом конференция для меня закончилась.


Ссылки: