В январе 2011 года у меня были летние каникулы [разработчик из южного полушария, а именно из Новой Зеландии — прим.пер.], но вместо поиска работы на день или общения с людьми я много времени скрывался от всех в своей комнате, где писал первую версию iOS приложения под названием Class Timetable. Годом ранее я искал простое, лёгкое в использовании приложение для учебных расписаний, и ничего в AppStore не подходило под мои нужды — всё было сложно и трудно использовать. Идея состояла в том, чтобы создать простое, без суматохи, прямолинейное решение, нечто более простое и более убедительное, чем бумажное расписание. За несколько месяцев я потратил около 500 часов, проектируя и кодируя его. На сегодня у программы более трёх миллионов загрузок, много положительных отзывов, а временами оно было моим основным источником дохода. Не слышали о приложении? Да, оно ещё не взлетело в США, но довольно популярно в Австралии/Новой Зеландии/Великобритании, по крайней мере, среди студентов колледжей и школьников.
В последнее время в блогах я много читал о людях, которые сорвали джекпот, их программы попали в избранное и они смотрят на цифры вроде 100 000 скачиваний в день. В сравнении с ними я лишь умеренно успешен. Class Timetable никогда не попадала на первое место AppStore, я не стал богатым за день, у меня было больше провалов, чем успехов. Я вложил много времени, вероятно, тысячи часов, в отличие от некоторых хитовых приложений, созданных за выходные. Конечно, три миллиона это много, но они накопились более чем за шесть лет.
В отличие от сорвавших джекпот, моя история «умеренного успеха» ближе к тяжёлой работе и медленному, постепенному прогрессу. Вероятно, она ближе к реальной жизни, чем другие истории успеха, потому что давайте посмотрим правде в глаза: не каждый раскрутится, создав следующую Flappy Bird. Вместо того, чтобы выстрелить как вирусный хит, Class Timetable была умеренно популярна более шести лет, что немного примечательно само по себе — многие #1 приложения не могут похвастаться такой долгой жизнью. Я бы хотел поделиться некоторыми вещами, которые узнал за последние несколько лет. Надеюсь, что-то из этого вы найдёте полезным, независимо от того, насколько вы успешны или нет.
Перед написанием приложением, которое «сделало это», я написал много вещей, которые не сделали это
Я всё ещё думаю, что некоторые из них были отличными идеями — возможно, им не хватило хорошего продвижения или немного удачи. Было приложение Ginge-O-Meter, в которое я вложил много сил. Концепция: сделай фотографию кого-нибудь и определи, сколько рыжего в его волосах. Оно использовало реальное распознавание изображений и техники анализа цвета, чтобы выдать ответ, и действительно работало (почти всегда). К сожалению, идея не взлетела… Думаю, я заработал около $50. Это была моя первая большая попытка, и если честно, меня довольно встревожило то, сколько усилий я вложил в приложение, чтобы в итоге столкнуться с таким провалом. Но на этом я не остановился, и Class Timetable развилось в то, что мы имеем сейчас. В любом случае, я хочу сказать, что не нужно ставить всё на одну ставку. Если ваша победная идея не добилась успеха: вставайте и пробуйте снова и снова… и снова, потому что всё что вы знаете, это то, что ваша следующая идея может сделать это.
Создавайте дизайн в расчёте на новичка
Представьте, что вы получили письмо всеми прописными буквами, которое говорит, что ваше приложение застряло на этапе инсталляции и вам нужно исправить это… эдакое разочарование, не правда ли? После нескольких таких писем вы понимаете, что можете так никогда и не сделать свой продукт достаточно простым в использовании. Чему я научился (кроме того, что окунулся в прорубь и нашёл силы любезно ответить), так это тому, что продукт нужно разрабатывать так, словно пользоваться им будет человек на ступеньку ниже, чем представитель целевой аудитории. Сохраняйте простоту, реализуйте защиту от дурака — проектируйте всё для новичка. Проверьте, что нигде нельзя запутаться и что каждая задача абсолютно однозначна, что всё делается просто. Меньше времени уйдёт на поддержку, люди в целом будут счастливее с вашим продуктом, а ваши рейтинги пойдут вверх.
Когда Class Timetable впервые запустился с тысячами скачиваний в день, я получал примерно 20 писем в неделю. Уверен, были и другие пользователи с теми же проблемами, которые не затруднили себя написанием письма, а просто удалили приложение. Улучшив программу согласно жалобам из писем, я сейчас вышел на уровень в одно письмо каждые два или три дня — и большинство из них не о проблемах, а с предложением фич или редкие письма фанатов (я не вру).
Слушайте критиков, но не делайте того, что они говорят
Наверное, я получил сотни писем пользователей с предложением реализовать разные функции, от действительно хороших до сомнительных предложений. Но теперь, если бы я реализовал все эти функции, приложение превратилось бы в непонятное месиво, с 17 фоновыми выборами, 72 другими фичами, отвлекающими на экране, и списком настроек буквально обо всём. Блин, даже если бы я реализовал каждую разумную идею, результат был бы совсем иным. Дело в том, что даже если пользователи видят истинную проблему с продуктом, они не всегда знают лучшее решение. Так что же делать? Слушайте своих пользователей — их истинные, исконные проблемы — и решайте их так, чтобы это было полезно для продукта в целом. Иногда хорошее предложение фичи имеет побочные эффекты для продукта в целом, и это значит, что такое лучше пропустить. Это часто случалось с Class Timetable: одно из его главных качеств — простота и лёгкость использования. Хотя много функций было добавлено за годы, но многие предложения функций усложнили бы продукт в целом. Иногда это нормально, но чаще я выбирал простоту — ту фичу, которая делает уникальным это приложение.
Отличный продукт лучше, чем вирусные уловки
Class Timetable никогда не попадал на главную страницу AppStore и не получал 100 000 скачиваний в день — но меня это не волнует. Некоторые приложения достигают первого места в чартах только для того, чтобы превратиться в безжизненную пустыню раньше, чем через год. Возможно, в них была какая-то весёлая искринка, вирусная стратегия маркетинга или им просто повезло — но в итоге, в них нет содержания и они не решили реальную мировую проблему осмысленным способом. Делая вместо этого по-настоящему хороший продукт, вы проектируете нечто, к чему пользователи будут возвращаться снова и снова. Вкладывайте усилия там, где люди могут даже не заметить. Концентрируйтесь на решении реальных проблем и делайте продукт таким, что он будет по-настоящему полезным, чтобы пользователи возвращались и приводили с собой других. Вернувшиеся пользователи — хороший знак полезности продукта. В качестве бонуса есть небольшой вирусный эффект, присущий каждому пользователю, да и вообще приятно знать, что каждый новый пользователь — это не просто замена ушедшему.
Будьте щедрыми
Когда Class Timetable впервые появился в AppStore, он стоил $1. Я рассчитал, что на то время, которое я затратил (около 500 часов), 1 доллар — это халява. Итак, в первую неделю приложение купили четыре человека, а на следующую неделю ещё меньше. Не знаю, какие ощущения у человека, сорвавшего джекпот, но у меня таких ощущений не было. 500 часов — это немало времени, чтобы спустить в унитаз! Я мог бы оставить его умирать медленной смертью по одному доллару в неделю, но вместо этого решил сделать приложение бесплатным. Я создал его для решения реальной проблемы и посчитал, что другие найдут его по-настоящему полезным. Почти сразу же скачивания начали расти. 50 скачиваний в день, затем 100, 1000… вау. Если бы я принял в расчёт количество потраченных часов и не был щедрым, то очень сомневаюсь, что скачивания когда-нибудь вообще начались. Вскоре после этого я добавил функцию внутрипрограммной покупки дополнительных функций, что начало приносить уже разумные деньги. Намного больше, чем несколько долларов в неделю. Так что не скупитесь: продукт без платных пользователей (обычно) лучше, чем платный продукт вообще без пользователей. Намного проще получить оплату с существующих пользователей, чем привлечь абсолютно нового платного пользователя.
Делайте шаг назад, часто
Иногда вы застряли с проблемой, и хороших решений не просматривается: это может быть связано с кодом, который вы пишите, или с решением, как продвигать приложение. И тогда вы начинаете думать о проблеме в широком смысле. Вы осознаёте, что этот хитрый кусок кода вообще не нужно писать, если правильно спроектировать программу, а проблему с маркетингом отлично решит один ваш друг, у которого талант решать такие проблемы. Это можно описать как «шаг назад» от проблемы. За всю мою карьеру разработчика я не пожалел ни о секунде, когда так делал. Очень много раз, особенно в начале карьеры, мне следовало так поступить, а я этого не сделал. Я прошёл по трудному пути с Class Timetable: в версии 1.0 куча времени ушло, когда я заходил в тупик, но скрипя зубами добивался своего. Я решал хитрые проблемы, срезая углы и реализуя задуманное, вместо того, чтобы сделать шаг назад. Пока пользователи не знают, в этом нет ничего постыдного, правда? Через год или два пришлось переписывать всю кодовую базу с нуля — по многим причинам — что стало серьёзным мероприятием. Сделайте шаг назад! Оно того стоит.
Сегодня Class Timetable по-прежнему чувствует себя хорошо. Я всегда строю планы, будь то ближайшее обновление под iOS или глобальные планы, во что может превратиться программа. Если вы учитесь в школе или колледже, не стесняйтесь попробовать Class Timetable — надеюсь, вы найдёте её по-настоящему полезной.
Автор: m1rko