Крис Лэси — независимый разработчик-одиночка, который зарабатывает себе на жизнь только разработкой под Android. В этом интервью сайту androidpolice.com он делится своим мнением по поводу развития Android, разработке под него и т.п.
AP: Что привлекло тебя в разработке для мобильных устройств, Android в частности?
Крис: До того как стать разработчиком приложений, я делал игры. Исходя из моего интереса к гаджетам и технологиям, появился таковой и к разработке приложений. iPhone привлёк моё внимание, но после того как iOS4 превратила мой iPhone 3g в медленный кусок пластмассы — я решил выбрать Android.
В конце 2011-го, после релиза ICS, я решил написать первое приложение, и таковым стал клиент для Twitter, в основном по той причине, что тогда у Android нормально выглядящих и работающих клиентов попросту не было.
Разработка под Android привлекла меня по нескольким причинам. API Android более гибкие чем у других мобильных платформ, можно создавать приложения которые попросту невозможны на других ОС. Например с Link Bubble я могу открывать ссылки из других приложений в своём, загружать их в фоне и затем отображать их поверх другого приложения. Круто ведь, правда?
Ещё мне нравилась самая идея того, что я буду писать для платформы от Google. То кол-во различных веб-API, конференций, огромное сообщество разработчиков, программ, возможностей и т.д… Мне казалось что Google настроены помогать обычным разработчикам, двигаться вперёд в этом технологическом пространстве. Мне нравилась идея того, что я, вкладывая свои задумки в приложения, тоже двигаю эту платформу вперёд, может быть лишь в глазах того небольшого числа людей кто ими пользуется, но всё же.
AP: Первое правило каждого разработчика — программы пишутся для того, чтобы решать какие-то проблемы. Что за проблемы решаешь ты?
Крис: Я борюсь с теми проблемами о которых обычно не задумываются или не догадываются о их существовании, т.е я делаю приложение так, чтобы увидев как оно выполняет свою функцию, пользователь подумал — как же я мог делать это по-другому, ведь это же так очевидно. Я не изобретаю что-то кардинально новое, просто беру то, что уже давно было, добавляю свои идеи и надеюсь, что кто-то поймёт мой замысел.
AP: Как Android разработчика, что тебя раздражает/бесит/мешает больше всего в твоей работе?
Крис: WebView (это системное API которое позволяет обрабатывать веб-странички нативным браузером сторонним приложениям, его использует Link Bubble и множество других приложений). В нём я наткнулся на несколько критических проблем, всё обрабатывается медленно, приложение падает и ты ничего не можешь с этим поделать (серьёзно, из-за последнего люди нередко возвращают деньги за приложение или оставляют отзывы с 1 звездой в Google Play).
Google же перешёл на Blink (движок Google Chrome) (в 4.4), заявив что «2014-ый будет годом когда веб полностью изменится для мобильных устройств». Но пока ничего не изменилось, ну как минимум для тех, кто не пользуется Chromом. Разработчики, которым нужен webview в приложениях или люди, которые пользуются браузером на другом движке — курят в сторонке, (если у них не последняя версия ОС — примечание переводчика).
Как раз поэтому Google закладывает всё больше функционала и API в Сервисы Google Play. Мне бы хотелось чтобы API вроде webview и некоторые другие не были бы привязаны к версии ОС, а могли бы обновляться напрямую через эти самые сервисы, чтобы разработчики использующие такой базовый функционал не испытывали разные проблемы на разных версиях ОС.
AP: Как, на твой взгляд, Google может лучше способствовать разработчикам?
Крис: В целом, у Google всё неплохо в этом плане. Группа по отношениям с разработчиками общительна и доступна, Android Studio это огромный рывок вперёд, и возможность тестировать приложения через группы в GPlus, просто загружая новый apk в Play Developer Console — тоже отличная возможность. Приложение обновляется у пользователей буквально через час-два после его публикации, а не минимум через 4 дня, как на iOS, не хочу показаться наглым, но было бы круто если бы это происходило ещё быстрее.
Основное, в чём Google пока не преуспел, на мой взгляд, это сам Google Play. Находить новые приложения сложно, в топах же висит одно и то же. И ещё неплохо было бы упростить процесс монетизации приложений.
AP: Как разработчик и как пользователь, какие изменения в Android ты бы хотел увидеть больше всего?
Крис: Систему разрешений/полномочий для приложений. Вот например при их установке (как apk, так и из Google Play) вы видите и соглашаетесь на определённое для каждого приложения количество разрешений (на использование сенсоров, доступ к данным и т.д), но эта система никак не проявляет себя дальше, и просто полна недостатков. Например почти все не-Nexus/Google Play устройства поставляются с кучей предустановленных сторонних приложений, которые зачастую нельзя не ограничить в действиях, ни удалить, ни даже выключить. Мой неоператорский Galaxy S4 например несёт с собой в прошивке кучу такого добра. Есть приложение называющееся «Com2usPoker» и у него в свою очередь есть доступ к приложениям которые я запускаю, к информации о моём аккаунте, телефонному номеру, интернет соединению и ещё куче всего.
Вы же сочтёте неприемлемым ситуацию, когда купив новый дом, он будет забит скрытыми камерами который снимают вас и вся информация поступает незнамо куда.
Я не сомневаюсь что у Google наверняка где-то в договорах с производителями есть пунктик по поводу подобных приложений, но как пользователь я просто хочу иметь настройку, где будет возможность выключить каждому из приложений доступ к чему-либо.
Как разработчику — мне нравится возможность отказа доступа к данным со стороны пользователя. Link Bubble во время установки (первичного запуска) спрашивает о возможности использовать местоположение, и предупреждает о том что использование GPS может потреблять много энергии, также я сообщаю о подобном и в описании приложения в магазине. К слову, было бы куда удобнее и понятнее если бы приложения запрашивали доступ к чему-либо только в тот момент когда им это нужно (например Link Bubble просил бы доступ к GPS только когда сайт запрашивает об этом). Та же история с Action Launcher и его доступом к номеронабирателю или контактам.
Что печально, так это то, что подобная система существует в 4.4: вы можете выключать доступ к местоположению из настроек, при помещении виджета на стол из несистемного лончера — появляется запрос, есть даже меню с приложениями которые имеют доступ к уведомлениям, но все эти меню настроек и запросов разрознены или появляются только в определённых ситуациях. Как пользователь и разработчик я хотел бы видеть это наглядной и простой функцией / настройкой системы.
AP: По-твоему, насколько успешны Google в дизайне собственных приложений, и в целом в языке интерфейса (в мае ещё не было material design)?
Крис: Мне нравится то, к какому виду пришли приложения Google. Вообще, я не фанат стандартного внешнего вида Android Holo, особенно тёмной его версии. Приложения оформленные в нём, кажутся мне совсем уж бездушными и простыми что-ли…
AP: Если посмотреть, то цена большинства приложений в Google Play не превышает $2. Твои же приложения (не считая скидок) превышают эту планку, Action Launcher — $4, Link Bubble — $5 ещё и с уведомлением что в будущем цена может только вырасти. Почему так?
Крис: Во-первых, я сразу не соглашусь с вами. Если взглянуть на категорию самого покупаемого в GPlay, то видно что если отделить игры, то софт как раз таки стоит больше $2. С Action Launcher я решил — ну раз рынок вполне соглашается покупать хороший софт за $4, то чем я хуже?
С Link Bubble мне показалось что он достоин ещё одного доллара сверху. За свои деньги эта программа во многом меняла мой принцип использования устройства, в некотором роде это можно сравнить с новым телефоном или обновлением ОС.
Я написал Артёму (основателю AndroidPolice.com) в личку насчёт того, что собираюсь повысить цену на Link Bubble на старте, я кстати думал сделать это уже после запуска, но никогда не говорил об этом публично. Хотя будем честны, мы все постоянно думаем о куче разных вещей. И к слову, в данный момент я не собираюсь повышать цену в будущем.
Реакция на цену Link Bubble была в основном положительной. Запуск прошёл удачно. Были и есть люди, кто недоволен ценой в $5 и считает её слишком высокой для софта. Но я нет, моя программа помогает вам пользоваться вашим устройством / улучшает этот опыт, я не бездомный, я не нуждаюсь в деньгах настолько и я не из тех разработчиков кто выпускает дурацкие приложения вроде Virus Shield или Flappy Bird Saga в Google Play, я не краду ваших данных, я честно сделал программу и стоит она в два раза меньше чем билет на Тор 2 (и это если ещё не вспоминать про попкорн и соду и покупки в приложениях) (примечание — наверняка это отсылка к candy crash saga и покупкам в ней) и ещё у приложения есть бесплатная версия показывающая возможности полной.
Ну, что говорить, к концу дня у меня были мысли по поводу того, что ещё важно — цена должна быть такой, чтобы приложение окупило себя и принесло максимальную прибыль, удалось ли мне решить эту задачу или нет — время покажет.
AP: Что за обстоятельства должны повлиять на снижение/повышение цены за новые/текущие приложения?
Крис: Ну, я не думаю что я перевалю за $4.99 как у Link Bubble, но это зависит от самого приложения, как я уже говорил ранее. Кроме того, я не против снижения цен, если на то есть причина.
AP: Ты часто спрашиваешь своих подписчиков о том, что бы они хотели изменить или добавить в твоих приложениях. Следуешь ли ты их советам? Оказывает ли общественное / покупательское мнение на процесс разработки?
Крис: Наличие большого кол-ва людей от которых можно получить моментальный (ну почти) отклик, помогло мне решить всякие небольшие, но важные вещи вроде «какие настройки использовать по умолчанию» и т.п. В основном я пишу приложения для себя, и соответственно для людей с похожим принципом использования. Звучит наверное странно, но просто в прошлом я ошибся, пытаясь сделать то, что как мне казалось, нужно аудитории, а закончилось тем, что получился продукт которым я сам не хочу пользоваться, и соответственно и работать над ним, что не очень хорошо.
AP: Общаешься ли ты с пользователями XDA (xda-developers.com)? Если да, то насколько отличается взаимодействие с ними от такового с твоими подписчиками в социальных сетях (Twitter/G+)?
Крис: У меня вроде-бы есть аккаунт на XDA, но нет, я вообще туда не захожу. Час проведённый на форуме для меня равняется часу, который я мог провести за кодом. Мне кажется, того что я свободно отвечаю всем желающим в социальных сетях вполне достаточно.
Ещё наверное на моё отсутствие на XDA повлияло то, что я совсем не интересуюсь твиками, кастомными прошивками и прочим, что там в основном обсуждают. Я никогда не рутовал свои устройства, не ставил кастомы или xposed и т.п.
AP: Работаешь уже или планируешь ли что-то новенькое?
Крис: У меня есть готовое приложение которое я мог бы выпустить хоть завтра, но есть пара-тройка причин по которым я всё ещё думаю что с ним делать. Оно написано не как проект, а скорее в виде эксперимента, я пользуюсь им каждый день дома. По сути, я собирался по-быстрому его написать для одной нужной мне функции и выпустить, но затем идея разрослась и я думаю над тем, как далеко всё это зайдёт. Скорее всего всё закончится тем, что в какую нибудь пятницу я просто возьму и выпущу его без особой на то причины, и посмотрю, зайдёт ли.
Как-то на днях у меня был такой забавный момент когда в голову пришла жутко крутая идея для приложения, прототип которого я делал 18 месяцев, оно будет очень полезным, но я даже не знаю когда найду время доработать его до полноценного приложения, потому что сейчас я очень занят.
Похоже, что время — мой враг.
AP: Вот ты добился успеха как независимый разработчик-одиночка, рассматривал ли ты варианты работать в компании?
Крис: Да, были предложения как от больших, так и от маленьких компаний и команд. Если вкратце, то все они сводились к одному — я (а значит и моя семья) должен переехать на Побережье (залив Сан-Франциско) из Австралии. Это не очень-то обычное дело для нас, у моей жены тут карьера, мои приложения тоже неплохо продаются и я могу заниматься тем, что мне нравится, у нас тут родственники и друзья, в-общем переезд нельзя назвать особо выигрышной ситуацией.
Но в то же время, работать одному сложно, в первую очередь как человеку. Я редко контактирую с со-работниками по индустрии или очень редко работаю с кем-то в команде над какими-то проектами. Я уже говорил, что были разные предложения, и вот в такие моменты начинаешь пускать слюну на проекты, над которыми была возможность поработать, над тем, что увидят десятки миллионов людей.
Если бы мне предложили перейти в команду, делающую нечто действительно классное, простой переезд в какую-нибудь страну с легко доступным чили-фри и куриными крылышками «Буффало» то было бы сложно отказаться, это точно.
AP: Что думаешь по поводу iOS?
Крис: В последнее время я наконец-то стал немного пользоваться своим iPad Mini Retina впервые с того времени, как купил его на старте продаж. У iOS есть много приятных моментов, которым стоит поучиться. В основном это скорость и плавность анимации во всей системе, Android всё ещё не такой плавный, несмотря на все старания Google. Например мой Nexus 5 иногда задумывается перед разворачиванием уже запущенного ранее приложения, чего на том же iPad я не замечал (он имеет ввиду анимацию разворачивания приложения скорее всего).
Хотя я например не могу понять, почему в 7 версии ОС до сих пор нет способа выбрать стандартный браузер, клиент почты и т.п. И ещё очень бесит отсутствие возможности быстро поделиться любой ссылкой из одного приложения в другое.
На iPad я использую Twitter и Google+ и вот тут мне не хватает моего Link Bubble. После полугода его использования я с болью жду загрузки браузера снова и снова во время открытие новой ссылки.
AP: Что думаешь о флагманских устройствах 2014-го года?
Крис: Да ничего, мне наскучили все эти обновления характеристик каждый год, надоел тренд увеличения флагмана каждой компании. У Galaxy S2 был дисплей 4.3 дюйма но уже спустя три итерации он вырос до 5.1. Чем это закончится?
То что скажу, звучит куда лучше чем реализуется. Я бы хотел увидеть прогресс в тех отраслях, где у смартфонов всё плохо: Хочу чтобы разряжался медленно; Хочу экран который нельзя будет просто так разбить/поцарапать например сев на него; Хочу камеру которая будет делать хорошее фото с первого раза.
AP: Интересны ли тебе другие платформы или типы устройств с ними связанные (Glass, Fire TV, Android Wear)?
Крис: Как тот, кто делал игры для консолей больше 10 лет, я сильно заинтересован в телевизорах. Три последние года я жду что кто-то из производителей (Apple/Google) наконец-то ворвутся в мою гостиную и займут её, но пока этого не произошло.
Мне бы хотелось в чём-то улучшить интерфейс у ТВ, но будем честны, у меня нет на это средств и возможностей, пусть лучше этим займутся ребята из Google ATAP group или Amazon или кто-нибудь ещё.
Есть у меня немного интересных идей для Android Wear, Но пока я не увижу SDK и готовое устройство у себя на руке, ничего не смогу сказать.
AP: Спасибо за ответы, Крис!
Вы можете подписаться на Криса Лэси в G+ и Twitter, а его приложения найти в Google Play.
Автор: wow23