1. Какие преимущества и недостатки вы видите в популярных сейчас операционных системах с технической точки зрения (распределение памяти, безопасность приложений)?
Несомненно, «дьявол» в мелочах, но последние пару лет популярные мобильные ОС становятся все больше похожи друг на друга. По этой причине выделить весомые преимущества сложно.
Из недостатков — необходимо продолжать работу над улучшением безопасности системы и возможностей, которые она предоставляет. Джейлбрейки для iOS, выходящие практически день в день с очередным обновлением платформы, и относительная легкость получения root-доступа в Android все еще остаются основными проблемами как для платформодержателей, так и для разработчиков приложений для них.
Для Android основным недостатком остается фрагментация версий ОС и устройств, а точнее долгий процесс вывода обновлений ОС вендорами. В связи с этим необходимо длительно поддерживать устаревшие версии ОС и часто не использовать нововведения сразу.
С iOS в этом плане всё гораздо лучше, но из-за закрытости платформы в целом и средств разработки в частности порой приходиться «бороться» с IDE вместо того, чтобы писать код. Да и сами средства разработки уступают своим Android-коллегам.
Преимущество iOS в хорошо развитой экосистеме, которая сильнейшим образом «затягивает». Android пока только на пути к этому. В пользу Android играет открытость системы и возможность встроить ее хоть в чайник. Основная проблема — в скорости обновления ОС на устройствах. С безопасностью приложений с последним обновлением у Android должно наконец-таки стать все хорошо.
Ограниченный модельный ряд дает возможность Apple превосходно оптимизировать свою операционную систему, в том числе алгоритмы управления оперативной памятью. Поэтому Apple достаточно оснастить свои iPhone всего одним гигабайтом оперативной памяти для получения такого же уровня производительности, как у Android c 3 гигабайтами. С другой стороны, Google постоянно совершенствует работу с Java Virtual Machine и со «сборщиками мусора».
iOS изначально позиционировалась как безопасная операционная система с акцентом на защиту пользовательских данных, хотя и регулярно компрометировалась (находились бэкдоры, недоработки, ошибки). Android же только в последних версиях залатал прорехи в безопасности.
Самая очевидная проблема — проблема вредоносного ПО на платформе Android. Операционная система iOS в этом плане защищена лучше: чтобы поймать вирус, нужна явная ошибка пользователя, а это уже человеческий фактор.
Основной недостаток текущих операционных систем — это фрагментированность платформ. Вендоры выпускают все новые и новые устройства, но пытаются сохранить поддержку старых и совместимость. Это накладывает большие требования на разработчиков, вынужденных поддерживать не только мириады разрешений экрана, но и несколько типов процессорных архитектур, «зоопарк» устройств, а так же 4–5 версий платформы, присутствующих на рынке. Ситуация напоминает эпоху веб-разработки лет 5 назад, когда обязательным требованием была поддержка IE6, а на рынке присутствовало несколько браузерных движков.
2. Какие тренды вы бы могли отметить в развитии мобильных операционных систем в последние годы? Как будет развиваться мобильная разработка?
Последний год Apple и Google сражаются за ускорение работы ОС и приложений и, как одно из следствий, за жизнь батарейки. Это отличная новость для пользователей, но создает определенные сложности для разработчиков. Однако с учетом тенденции к тому, что мобильные средства разработки будут догонять своих «старших братьев» и предоставлять все более удобные инструменты, эту временную сложность можно назвать скорее эволюционным порогом, чем препятствием.
Несмотря на развитие средств кроссплатформенной разработки, пользоваться ими будут только небольшие компании, которые не могут себе позволить держать команды программистов под каждую платформу. Причина в том, что все, кто давно занимаются мобильной разработкой прекрасно понимают, что наиболее быстрый и качественный код получается, когда он пишется под целевую платформу.
Кроме того, мобильные ОС с каждым годом стремятся все больше и больше проникать в личную жизнь пользователей, максимально участвовать в ней, и работа в этом направлении будет только усиливаться.
В целом, мобильная разработка продолжит взрослеть. Вполне возможно, что этот год в Android-разработке можно будет назвать годом тестирования.
Очевидные тренды — носимые устройства, дополненная и виртуальная реальность. А мобильная разработка будет постепенно развиваться в сторону усложнения, благо перетекание трафика с десктопа на мобайл происходит весьма активно.
Наблюдается явный тренд в сторону синхронизации мобильных и десктопных платформ. Особо отчетливо это видно по взаимодействию iOS и OS X от Apple. Последней удалось выстроить единую экосистему, в которой соседствуют ноутбуки, планшеты, смартфоны и даже часы: можно начать действие на одной платформе, продолжить его на другой, а закончить на третьей. Google, понимая это, тоже придет к подобному, хотя есть некоторые сложности из-за фрагментации рынка и множества игроков на нем.
3. Какие перспективы развития wear-платформ?
Прекрасные. Проблема одна — аккумулятор. Жду революции именно в этом вопросе.
Совершенно точно, что перспективы есть и, скорее всего, wear-платформы займут свое место, просто произойдет это не революционно, а эволюционно. Задачи две: нужен аналог дешевых устройств, таких же как простые Android-телефоны, и действительно полезные пользовательские сценарии использования.
Конечно, хотелось бы, чтобы рынок wear-платформ развивался быстро, но так, к сожалению, не будет.
Сейчас очевидны перспективы в трекинге здоровья. Фреймворки Apple (ResearchKit, CareKit, Health Kit) могут сыграть большую роль в развитии медицинской отрасли.
Носимая электроника появилась относительно недавно и в настоящий момент развивается бурными темпами. Пока что на рынке она представлена в основном smart-часами и фитнес-браслетами, но сюда стоит также отнести шлемы виртуальной и дополненной реальности и еще одно очень перспективное направление — умная ткань. Такая одежда способна анализировать состояние человека, например, давать советы спортсменам, следить за нагрузками, может даже вызвать скорую. Сценариев масса, уверен, разработчики придумают еще больше, но пока что все упирается в технологии и готовность для массового рынка, хотя первые ласточки уже вылетели из гнезда.
Носимые устройства — основной тренд будущего, но пока они в самом начале пути. И многие попытки разработки таких устройств все еще выглядят смешно, как те умные носки или унитаз, который постит в Твиттер каждый раз, когда смывают воду.
4. Какие факторы играют главную роль при выборе мобильной платформы, для которой будет разрабатываться приложение?
Если говорить о b2b-приложениях, то выбор чаще всего полностью зависит от унифицированных устройств, которые есть в наличии или доступны большой партией на рынке, и, соответственно, какая мобильная ОС предустановлена на этих устройствах.
Если мы говорим о b2c-приложениях, то включаются традиционные показатели, важность которых для каждого проекта может быть уникальна: целевая аудитория, количество пользователей, доступные ресурсы, способ монетизации, сроки предполагаемой окупаемости и возможные ограничения платформы.
Целевая аудитория, стоимость разработки и поддержки, скорость обновления приложений в сторах (например, для A/B-тестирования).
Аудитория владельцев iOS-устройств более платежеспособна, конверсия покупок выше. Android-пользователи платить не любят, зато берут количеством. Еще надо учитывать географию: в дальних регионах России рассчитывать на обилие телефонов на iOS не стоит. Имеет смысл задуматься об Android-версии, если приложение должно использовать много датчиков, работать в фоне или собирать информацию о пользователях. В iOS таких возможностей меньше.
Прежде всего, целевая аудитория и ее предпочтения.
Выбора почти нет. Есть всего две основные платформы, и нужно работать на обеих. Исключениями являются проекты, где есть явное разделение: если приложение для небогатых масс (например, региональные водители такси), тогда выбирают Android; если какой-то модный сервис — начинают с iOS, Android — после.
Основным фактором будет не выбор платформы, а выбор технологий, которые стремятся быть кроссплатформенными.
5. Повлияли ли облачные технологии на развитие мобильной разработки и если да, то каким образом?
Да, повлияли. Как в виде новых инструментов и сторонних решений, позволяющих быстро решать технически сложные бизнес-задачи, так и в виде нового взгляда на приложения, которые можно создать и предложить пользователю. Так, например, хранение музыки на устройствах становится все менее популярно после появления большого числа игроков на рынке потоковой передачи музыки.
Пока не особенно заметно, но тренд набирает популярность, в том числе облачное тестирование приложений, для которого физически не обязательно иметь огромный парк устройств (например, Cloud Test Lab). Это позволяет небольшим разработчикам выпускать более качественные продукты. А вот на backend для приложений облачные технологии влияют уже сейчас (как облачный хостинг, так и SaaS-решения для интеграций с различными системами).
Это снизило порог вхождения в разработку клиент-серверных приложений. Но для тех, кто использует собственные сервера, это ничего не изменило.
6. В последнее время набирает популярность интернет вещей. Как вы оцениваете его развитие? Каким образом это влияет на технологии мобильной разработки и развитие операционных систем?
У этого направления большие перспективы, и сейчас все только начинается. По мнению McKinsey, к 2025 году вклад этой отрасли в экономику составит от 3,9 до 11,1 триллионов долларов. Сейчас активно применяется в транспортной отрасли, для анализа медицинских показателей, в системах промышленной безопасности и т.д. Приложения становятся центральным интерфейсом для взаимодействия человека с IoT, и параллельно развиваются направления machine learning, DSP, computer vision. В IoT уже создано достаточно много успешных проектов, и мы стараемся этому способствовать.
7. Какие факторы могут повлиять на изменение позиций на рынке мобильных операционных систем?
Трудно назвать хотя бы одну мобильную ОС, неважно, локальную или глобальную, которая смогла успешно конкурировать с двумя хэдлайнерами. Выводы можно сделать самые разнообразные, но скорее всего, это говорит о том, что на настоящий момент рынок сформирован, и пользователям нужны веские преимущества для выбора других платформ, которые никто предложить пока не в силах.
Кроме того, выбор мобильной ОС не стоит рассматривать отдельно от устройств, на которых они поставляются — ведь по сути пользователь выбирает не только мобильную ОС, но и конкретные технические и другие характеристики устройства. Основными факторами выбора являются технические характеристики, цена, дизайн, UI мобильной ОС или дополнительной оболочки, предоставляемой вендором, время жизни устройства, возможности интеграции со сторонними сервисами и устройствами.
На мой взгляд, существенные изменения могут быть связаны с выходом и массовым распространением принципиально новых интерфейсов. Например, для виртуальной реальности могут появиться свои новые ОС, которые станут лидерами. Примерно как в 2008 появилась iOS, затем Android. Они появились и стали популярными в связи с выходом принципиально нового класса устройств.
Рынок мобильных систем уже сформировался. Можно выделить три эпохи персональных компьютеров:
1. Большая корпорация продавала большие компьютеры большим компаниям (мейнфреймы IBM);
2. Средняя компания продавала компьютеры семьям со средним и высоким достатком;
3. Малые компании продают персональные мобильные устройства всем. Порог входа в самые дешевые смартфоны на Android — от 40 долларов.
Поэтому на рынке будет массовая аудитория на Android и аудитория со средне-высоким достатком на iOS. Вполне возможно, что скоро мы увидим Windows 10 в корпоративном сегменте.