Решил устроить день отдыха от кода и структурировать полученный опыт.
Обычно, в процессе перепросмотра возникают неожиданные мысли, которые будут полезны мне.
А сам материал будет полезен тем, кто только задумывается на тему своего индивидуального проекта, уже занимается им, или даже выпустил несколько релизов.
Наверняка, я делал что-то неверно и продолжаю делать, поэтому очень рассчитываю на комментарии более опытных людей, не важно в каком аспекте - дизайн, код, подход, что угодно.
Составил план на несколько статей:
Взгляд сверху. С чего все началось, сколько времени заняло, в каком режиме происходило, какой результат на данный момент.
Проблемы с AppStore и как их решать. Покупка аккаунта, где взять иностранную карту, как релизить, сколько это занимает времени, причины отказа при ревью. Как я решил проблему с тем, что apple не дает разработчикам из России монетизировать свои приложения.
Способы продвижения, реальные диаграммы из AppStore - как много пользователей видят приложение, сколько переходят на страницу из поиска, какой процент из них скачивает и что с этим можно сделать.
Ошибки, которые не стоит повторять.
Проблемы длинной дистанции: выгорание, дисциплина, поддержка и туман неизвестности.
Взгляд сверху
Началось все 3 года назад, я решил освоить мобильную разработку. Она всегда меня манила тем, что я могу сам для себя что-то полезное и законченное писать. В одного, без бекендов и больших команд. Параллельно основной работе. Идей множество, несовершенных приложений тоже, которые можно улучшить, сделав свою версию. Всегда будет, чем заняться.
На основной работе у меня ранее был c#, сейчас javascript и vue.js.
Идею я выбирал по следующим принципам:
Я не силен в дизайне, поэтому никаких игр и приложений типа - обои/иконки.
Я не готов заниматься бекендом (не хватит рук), поэтому никакой серверной части и никакого взаимодействия пользователей друг с другом.
Я только начинаю изучать swift, не знаю возможностей и ограничений iOS, с чем справлюсь, а с чем - нет. Поэтому должно быть что-то простое, не длительное по времени, законченное и при этом крутое.
Приложение должно быть необходимо мне самому, чтобы не пропало вдохновение им заниматься.
Мой выбор пал на беби-трекер. Это приложение, которое помогает молодым мамам отслеживать сон/питание ребенка. У моей жены такой был установлен и я знал под запись все плюсы и минусы, был план, что нужно доработать в своей версии этого приложения. Серверной части не нужно, выглядит все достаточно просто, аналитика на разных ресурсах показывает, что денег они зарабатывают достаточно (для одно разработчика). Через полгода у меня был рабочий прототип. Потом случился переезд в другой город, который лишил меня возможности нормально заниматься проектом на три месяца. Вернувшись к проекту я обнаружил, что из головы моей вся структура проекта пропала, я не понимаю, с какой стороны подступиться для правок и доработок. Проект был похож на вязкую кашу, про себя я называл его нежно ‘кусок говна’. Он вызывал отвращение при каждой попытке продолжить его. Месяца три я потыкался, ребенок подрос и трекер перестал быть нужен. Я вспомнил слова Дон Хуана “Брось путь любой ценой, если этот путь не твой и забирает силы, вместо того, чтобы давать”.
Я решил потратить две недели на детальное изучение архитектурных подходов, чтобы в любой момент я мог вернуться к проекту и уже через 5 минут понимать, где что и как работает. Планировался новый переезд и без надежного фундамента в виде правильной архитектуры я был не готов начинать что-то новое.
Над новой идеей думать не пришлось. 8ч в день работа, затем время с ребенком. Вот день и закончен. Какой тут проект? Нужен инструмент для организации своего времени. Который сможет измерить и отобразить, что я могу оптимизировать или убрать из жизни. Трекер - привычек. Я довел его до публикации.
Заняло все это два года. Примерно 3 месяца вынашивал дизайн и прорисовывал в фигме. Затем код - написал чуть больше 450 классов. В среднем работал над проектом по 4 часа в день. Процесс публикации занял 2 месяца (покупка аккаунта разработчика, решение проблемы с тем, что я из России и мне монетизация запрещена, подготовка локализации на 38 языков для скриншотов и описания, подбор ключевых слов, 6 раз было ожидание ревью, которое я не мог пройти снова и снова).
Трекер получился мощный. 4 режима трекинга: таймер, секундомер, ручной ввод, интервальная программа (pomodoro, tabata, hiit). Подходил для работы, учебы, спорта, учета вредных привычек.
8 виджетов аналитики - по дням недели, времени суток, группировка по тегам и прочие. Было волнительно, я думал оно захватит весь мир. Нет.
Из-за очень широкого спектра применения ему невозможно было дать адекватное (короткое) описание и ключевые слова. Это важно. Мои ключевые слова это “Pomodoro, tabata, hiit, habit tracker и тд”. Ни по одному из них никто ничего не мог найти, тк они широкого спектра и не индексировались нормально. Приложение болталось на 50-100 месте в поиске в зависимости от введенного запроса.
Я получил обратную связь от знакомых и ее общий смысл можно было выразить так: “Я не понимаю, на что оно нацелено. Таймер для варки яиц, спорт, pomodoro, какая-то куча из всего”.
Два месяца я наблюдал статистику. В среднем 0-3 установки в день, при том, что я локализовал его на 38 языков и оно было доступно во всем мире. Одна подписка на 3$, которую через месяц отменили.
Спустя 2 месяца наблюдения, я решил разбить его на несколько специализированных приложений. Кодовая база уже написана, можно сделать на ее основе несколько отдельных приложений: Таймер для готовки, Tabata таймер для спорта, Pomodoro для работы/учебы, Трекер вредных привычек. Первые два были готовы через 4 недели. Но тут ждал сюрприз. При ревью я получил отказ в их публикации с комментарием «spam». «Код, используемый в приложении, уже используется в других ваших приложениях.». Я переименовал все методы, классы, отправил повторно на ревью, и все равно получил ответ — «это спам». Как я обошел это, я расскажу во второй части «Проблемы с AppStore». Есть хаки.
В общем, первое приложение я удалил, а два новых опубликовал и начал следить за результатами.
Вот так они стремненько выглядят:
Все было плохо. Ясделал перерыв в две недели и потом решил посмотреть свежим взглядом на них. Вот человек вводит в поиске «tabata». На первых местах красуются приложения, у которых 10K оценок и средняя 4.9, у другого 5 тыс. Нахожу свое на 15 позиции (уже лучше, чем 50–100 позиция). 3 оценки от знакомых (на скриншоте одна, так как регион другой). Я сам бы доверился и скачал? Дизайн обычный, ничем не выделяется. Шальной пользователь может и скачал бы. Но стал бы платить за подписку? Рейтинг. Должен быть рейтинг. У приложения, выглядевшего как winforms по дизайну (страшное) есть 10К оценок и его скачивают. Оно висит в сторе 7 лет и просто на старте у него не было конкурентов. У ребят, что ниже меня в поиске, все красиво и функционал богаче (я проверял), но оценок нет, никто не качает. В сумме поставили 10 оценок знакомые, но только 3 прошли модерацию. Изучил статистику, действительно, только 1 из 5 оставленных отзывов публикуется. Чтобы у меня была 1000 оценок, нужно, чтобы 5000 пользователей поставили их. Есть сервисы по накрутке оценок. Боты заходят и ставят. У них тоже указано — вы нам платите за 100 оценок, но получите скорей всего 20. Почитал еще, приложение или разработчика могут забанить за накрутку. Рисковать не стал.
Кто‑то может сказать (как моя жена) — нужно просто время, оно потихоньку будет органически расти. Но посмотрите на график за 4 мес существования приложения и получите ответ. Небольшие скачки, что вы видите, это мои попытки продвижения статьями на разных ресурсах (русских, английских) и платная реклама. Подробные графики я приложу в части 3 цикла статей. Если просто смотреть и ждать, оно не будет оно расти, последние недели скачивания по нулям.
Я решил сосредоточиться на дизайне, чтобы, если не оценками, то внешним видом выделяться в сторе. Много времени проводил на Pinterest изучая и сохраняя дизайны приложений. И обратил внимание на один дизайн, за который раз за разом цеплялся мой взгляд, я проваливался внутрь и разглядывал его, хотя уже видел ранее. Картинка регулярно встречалась мне в ленте, значит другие пользователи тоже ее лайкают и смотрят. Вот она:
Но для спортивного приложения и приложения для готовки этот дизайн не подходил. Он идеально ложился на приложение Pomodoro - интервальный таймер для работы/учебы, который помогает сконцентрироваться. И вот, спустя 4 недели я выпустил первую его версию. Чтобы на этапе разработки сразу получать обратную связь, я создал телеграмм-канал, рассказал об идее на pikabu.
Из 5 тыс просмотров статьи на pikabu в специализированных сообществах на канал подписалось 7 человек. Опять несовпадение ожиданий и реальности. Я стал уважительно относиться к тем, у кого в канале есть 100 человек и восхищаться теми, у кого аудитория 1000, а то и 10 тыс человек. Попробуй, собери такую.
Результаты для приложения с симпатичным дизайном получились лучше. За 36 дней существования в сторе, его скачало 518 человек. В некоторые дни было по 40 загрузок, в некоторые по 8. Но появилась стабильность некоторая, нет пока что уходов в ноль.
Impressions = 6100 (столько человек увидели в ленте). Product Page Views = 1400 (количество человек, провалившихся из ленты на страницу приложения, чтобы подробней посмотреть). Оценок 3.
Забыл сказать, что для pomodoro приложения я убрал полностью монетизацию, оно бесплатное. Я решил убрать все барьеры для пользователей, чтобы ничто не ограничивало их желание скачать. А в будущем просто добавить pro-функций, если дела с оценками и отзывами пойдут лучше.
Что получилось реализовать на данный момент:
Неограниченное количество трекеров
Раздел «План на день»
Режим дополнительного времени, если вы не укладываетесь в отведенное программой время
Организация активностей по категориям
Возможность перемещать в архив
Два режима работы: «Интервальная программа» и «Обычный таймер»
Удобная настройка звуков/вибрации/голоса. «На полпути», «Обратный отсчет», «Начало», «Окончание», «Доп. Время», «Малые тики», «Большие тики», «Анонс следующего интервала»
Аналитика — 8 виджетов. Из последнего, это «Характер». По вашей манере работы с трекером вычисляет и отображает 10 параметров вашего характера. Можно смотреть в динамике.
Вся аналитика имеет фильтры и период (день/неделя/месяц/90 дней/год/все время)
Возможность запускать микрозадачи на перерывах, чтобы не сбиваться с программы и не пропускать их (перерывы). Например, это могут быть небольшие порция спорта.
Позиционирую приложение в сторе как Pomodoro. Но по факту оно имеет весь функционал приложений для спорта на основе Tabata. Но я не могу вставить это в ключевые слова, тк есть лимит на 100 символов.
Через 4 недели выйдет новый релиз. В нем добавятся разделы «Желания» и «Стратегии». Создаете список своих желаний «Красивое тело», «Много денег» и тд. За каждым закрепляется список активностей и объем. К примеру, «Тренировка на ноги» — «5 мин, 2 раза | в день» или «Работа над проектом» — «4ч, 5 раз | в неделю». Получаете недельный объем для каждого желания. Желания могут быть без срока (например, «красивое тело») и ограниченные‑разовые (например, «выпустить релиз номер 5», 4 недели).
На основе желаний можно получить план на неделю. Каждый день плана будет содержать стратегию — последовательность активностей, которые за сегодня нужно выполнить. Активности при этом в течение дня могут повторяться в последовательности. Так же будут стратегии типа «форс‑мажор». Создаете стратегии на те дни, когда у вас завал на работе или вы приболели. Не нужно фрустрировать, просто выбираете их и выполняете минимум на такой нестандартный день. И еще будет добавлена возможность отмечать задачи без трекера. Таким задача устанавливаете длительность и просто нажимаете «Выполнено». Подходит для таких задач, как «покурить». Вернулись с перекура, нажали. Потом можете посмотреть статистику за месяц в какие часы ходите, сколько в сумме потратили времени.
На этом завершаю свой челлендж по написанию первой статьи.
На текущий момент результат следующий:
Настрой рабочий. Но финального понимания стратегии, что дальше делать, что улучшать, как продвигать, какие сроки выхода на нормальный уровень скачиваний (и какой он должен быть) — этого у меня нет. Оценки не растут несмотря на скачивания, как конкурировать с теми, у кого 15K оценок, не очень понимаю.
Вот такая реальность обычных приложений. Если у кого‑то, кто пишет свой проект, опустились руки, не опускайте их, мы обязательно найдем ключик:)