8 ошибок при разработке мобильного приложения

В этой статье мы хотим поделиться своим опытом с другими командами начинающих разработчиков. Наша команда прошла большой путь и столкнулась с множеством неправильных решений, от которых мы вас любезно избавим. Итак, давайте приступим:



Ошибка № 1 — Заблуждение


У вас есть идея мобильного приложения? И, конечно же, она просто “гениальна” и принесет вам сотни миллионов долларов. У меня в голове появилась именно такая идея и я решил действовать. До этого у нас в компании никто не занимался мобильными приложениями. Мы разрабатывали сайты и ничего не знали о мобильной разработке и рынке мобильных приложений. Все наши знания ограничивались одной информацией — Facebook купил WhatsApp за 18 миллиардов долларов. И на основании этого мы сделали вывод, что мобильная разработка — это круто.



Ошибка № 2 — Инвестор


Мы, к счастью, не столкнулись с этой ошибкой, но, в силу большого опыта и понимания, что для многих это будет проблемой, решил написать об инвесторе немного подробнее.

Найти инвестора в наше время не проблема. Я сейчас говорю на полном серьезе. В Москве очень много людей, которые ждут возможности потратить свои деньги. На момент запуска моего “гениального” приложения у меня был выбор из трёх инвесторов. Подробно на поисках я не буду останавливаться, но если статья понравится, то напишу отдельно.

“В чем же тут ошибка?” — спросите вы. Ошибка в том, что многие воспринимают инвестора как мешок денег и забывают, что, в первую очередь, инвестор — человек. И я сейчас не о гуманных качествах говорю. Если вы берете деньги, то вы должны понимать, что у вас могут попросить их назад, и никакой договор инвестирования не спасет. У нас на практике было два случая, когда к нашим клиентам по крупным интернет-проектам их инвесторы присылали “бородачей”. И три случая, где инвесторы просто решили выйти из проекта. Да, именно вот так, проснулся в один прекрасный день инвестор и решил, что больше в эти игры не играет и перестает платить деньги, хоть проект в самом разгаре. Вот такие люди есть, это нужно понимать!



Ошибка № 3 — Планирование


Мы распланировали все расходы на создание нашего приложения, инвестор перевел деньги на счет и понеслось… После получения денег количество ошибок пошло вверх. Мы, конечно, старались придерживаться плана, но проблема была не в этом, а в том, что план был в корне неверный. Мы строили его опираясь на знания, полученные при разработке веб-проектов.Спустя время мы поняли, что всё это было подобно строительству самолета по чертежам автомобиля. Если у вас нет опыта, то я не думаю, что какие-то советы помогут вам избежать ошибок на этом этапе. Тут нет рекомендаций, просто знайте, что ваш план можете сразу засунуть в топку, потому что всё будет в корне не так. Конечно, это не относится к тем, кто в теме.



Ошибка № 4 — АУТсорсинг или всем плевать


В нашей команде, как я писал выше, не было мобильных разработчиков. Мы решили обратиться к сторонним компаниям. Дизайн заказали в одной компании, причем заказывали не просто дизайн, а UI\UX проектировку. Компания на этом и специализировалась. Разработку кода нас убедили делать на Xamarin (для тех кто не в тем, это платформа для разработки мобильных приложений на языке C#). Причем, чтобы Вы понимали, там был специалист, чьё приложение было в американском ТОП. В тот момент нам казалось, что мы еще и сэкономим. На три версии — IOS, Android и Windows Phone мы договорились на сумму около 1 млн рублей. На всё про всё, как и было прописано в плане, мы заложили 3 месяца. Тем временем мы наняли людей, специалистов по подготовке рекламной компании, заказали видео ролики, договаривались с популярными изданиями. Сами написали сервер сайд и даже сделали документацию к API. В общем, навели “движухи”.



Ошибка № 5 — Сроки


Ни для кого не секрет, что сроки — это больная тема в любой сфере, особенно часто это ошибка появляется если вы забыли про ошибку №3. А добавьте ошибку №1, тогда вообще труба. Собственно, с нами это и произошло. Через месяц, как раз на мой день рождения, после многочисленных просьб показать наработки по коду, программист выслал мне программу на IOS. Я радостный, в судорогах начал конектить свой IPhone к компьютеру и заливать IPA (исполняемый файл приложения) на свой телефон. Программа загрузилась, я нажимаю на заветную иконку и… в этот момент я понял, что совершил ошибку №1. Приложение предоставляло собой картинку главного интерфейса. Позвонив программисту я немного успокоился его словами: “Я прорабатывал Backend, а прикрутить дизайн — это ерунда”. Так как проверить работоспособность Backend-a я не мог, то пришлось поверить на слово. Тем более, посмотрев в исходники, и, увидев там заветную папочку с большим количеством файлов, я решил, что всё в порядке и в сроки не впишемся максимум на месяц.

В итоге, через три месяца мы нашли другого разработчика на xamarin, чтобы кроме картинок получить мало-мальски работающее приложение. И процесс пошел сначала.

Через пять месяцев мы получили 2 версии приложения на IOS и Android. И пришло осознание ошибки №4 — всем плевать! Для сторонних исполнителей вы всего лишь мешок денег, все хотят поскорее сдать работу и получить заветные “хрустяшки”. Про “супер-пупер” UI\UX проектировщиков я промолчу, думаю вы и так всё поняли. При этом, мы обращались к профессионалам. Дизайн встал нам в 100к рублей только для IOS версии. Мы, как все нормальные люди, смотрели работы, читали отзывы, много общались и написали развернутое ТЗ. Но тут пришел другой враг — Ошибка №6!



Ошибка № 6 — Недоверие


Пожалуй, это самая страшная ошибка. Когда всё идет не так, то руки опускаются у самых активных участников команды, появляются сомнения в успехе, что проект будет жить. Мы затянули выпуск проекта на 4 месяца и выпустили откровенное г… о. При всем при этом, за это время, потратили около 5 миллионов на зарплаты, аренду и обслуживание офиса и т.д. Одним словом — “прожрали”.

И когда мы пошли к инвестору, то он выглядел примерно вот так:



А как выглядели мы, вам лучше не знать, но уверяю вас, это было нечто. После встречи настроение стало еще хуже, но тут я понял как хорошо, что мы не совершили ошибку №2. Я, как автор и руководитель проекта, собрал всю команду и закатил душещипательную речь. И сказал, что зарплаты больше не будет. Мы можем разойтись или начать все заново. Все единогласно согласились с новыми условиями и решили продолжать. Так мы героически начали всё заново!

Воспользовавшись старыми знаниями, которые я когда-то получил на курсах CCNP CISCO, я решил запустить всё по модели PPDIOO (загуглите, если не знаете что это).

Плюс 5 месяцев я не сидел без дела, я изучал код и архитектуру нашего приложения. Язык программирования C# на тот момент я знал удовлетворительно. Считал его детским, продуктом скрещивания C++ и VB. Собственно, это и спасло. Если вы знаете C++ и понимаете ООП, освоить C# у вас не займет много времени. И после месяца упорного труда, похудев на 5 кг, почти без сна и отдыха, но все-таки смог дать вторую версию нашего “гениального приложения”. И… ничего, ровным счетом ничего не поменялось. А вы что подумали? Что можно написать нормальное приложение за 1 месяц? Да, оно меньше падало! Да, работало лучше! Но, ровным счетом ничего не поменялось. А тем временем…



Ошибка №7 — Команда или Огонь, Вода и Медные трубы


Скажите, вы хорошо знаете тех людей, с которыми вы работаете? Точно? Вот и я так думал. Команда важна, но каждый человек помимо светлого будущего хочет есть, гулять, отдыхать и т.д. У нас сложилась, скажем так, ситуация в команде не из лучших. Ошибки 5 и 6 сделали своё. Потихоньку люди начали расходиться. Но не это оказалось самым страшным. Кто-то не хочет просто так уходить. “Ну ведь мало ли, в будущем, у них всё получится, а я ушел” — думают они. У нас тоже были такие люди. Они пытались навредить нам изнутри и сообщили инвестору о… ну как сказать, нецелевом расходовании средств. Опять же, еще раз, говорю, что нам повезло и мы не совершили ошибку №2. Инвестор, проведя аудит, сразу все понял. В конце концов еще через 4 месяца мы остались вдвоем. Накопления у нас уже были на нуле, я еще от предыдущего успешного проекта закатил стройку, строил дом. Так что у меня деньги закончились быстрее. Пришлось все заморозить и влезть в кредит, чтобы обеспечить жену и ребенка, хотя бы едой.



Ошибка № 8 — Трезвый взгляд


После второго провала я не стал продолжать делать свое “гениальное” приложение, решил отложить его на потом и попробовать сначала запустить маленький, более профильный и простой проект, чтобы как можно быстрее получить результат. Всегда трезво оценивайте свои силы и силы своей команды.

Если подводить итог, то вот вам короткое правило при разработке вашего первого мобильного приложения: не заблуждайтесь, так как знайте, что вы заблуждаетесь. Инвестора легко найти, но сложно найти адекватного и понимающего, если что-то пойдет не так. Забудьте о планировании, небольшого сценария действий на 1-2 листах хватит. Осторожнее к сторонним исполнителям. Вы плохо знаете и понимаете, чего вы хотите, а они хотят одного — денег. Сроки точно будут нарушены. Подготовьтесь к этому сами и подготовьте вашего инвестора, чтобы не совершить ошибки №1 и №2. Никогда не опускайте руки и будьте внимательнее к людям внутри команды. Да, и конечно, оценивайте трезво, что Вы можете сделать, а чего не можете.

Мое “гениальное” приложение я не способен сейчас реализовать и смирился с этим. Но я не сдаюсь и обязательно вернусь к проекту. Вам предоставляю лишь видео ролик от первого проекта… проекта, на который нам не хватило сил:

www.youtube.com/watch?v=Lt0BtTpgoOU

А хватило на приложение под названием «Моя семья», кто захочет посмотреть, может найти в App Store и Google Play.

Как ни странно, но популярность приложение почему-то набирает преимущественно в Саудовской Аравии. Там начался основной процент скачек, но об этом я расскажу после проведения рекламной компании.

P.S.: Спасибо что дочитали до конца, буду рад вашим комментариям.
Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама
Комментарии 19
  • +11
    Статью на мегамозг -_- Вместо этих очевидностей ожидал что-то вроде 1. «логика в Activity»…
    • 0
      Статья неплохая, но возможно её стояло бы назвать " 8 ошибок при создании страртапа". Ну а ожидалось совершенно другое, согласен
      • 0
        Это моя первая статья на хабре, но обещаю что в след. раз вывалю так сказать «технические кишки наружу»
    • 0
      Статья не очень — общие советы, мало конкретики.
      А вот приложение на видео кажется мне достаточно интересным и имеет достаточно высокие шансы на успех.
      Думаю, вам не стоит забрасывать разработку, откладывая все на «потом когда-нибудь». Вы ведь, как я смог понять, тоже программист => при желании сможете освоить и мобильную разработку.
      • –1
        Приложение на видео очередной буллшит
      • 0
        Почитайте Rework, там много дельных советов.
        Может и не истина в последней инстанции, но мысли правильные, как по мне.
        • –1
          То есть вы создали полтора приложения и после этого решили, что можете давать такие, прямо-таки скажем, глобальные советы? Ну-ну…
          • +1
            Да, чтобы никто другой не потратил 1,5 года)
            • –2
              То есть вы потратили всего полтора года и считаете, что это достаточно, чтобы давать такие советы? А вы не думали о том, что источники ваших ошибок совсем-совсем в другом? Ну понимаете, полтора года и полтора приложения — это слишком мало, чтобы делать выводы. Выборка очень уж нерепрезентативная. Понимаю, если бы вы потратили полтора десятка лет, и то, не факт, а полтора года — это, извините, ничто.
              • +3
                Я думаю каждый для себя решает полезность информации. Если бы я получил такие, даже незначительные советы на старте, возможно я бы по другому смотрел на вещи. Мы никого не учим, мы просто рассказали нашу историю.
                • 0
                  Вот если бы вы действительно просто рассказали вашу историю, было бы гораздо круче и полезнее. А вы сделали кучу далекоидущих и довольно поверхностых выводов. Ну возьмем для примера «ошибку номер 7» — про команду. Какие выводы на самом деле можно сделать из вашего рассказа? Например, что вы собрали довольно неважную команду. И еще — что команда важна. А можно сделать и противоположный вывод — что без команды работать лучше (и есть прецеденты). Или — что вы просто плохо мотивировали команду. А еще — что вы плохо организовали процесс разработки и людям было скучно.

                  Понимаете, о чем я?

                  Вы правильно заметили, что каждый решает, чем данная информация полезна. Но кроме того, каждый для себя делает свои выводы, а вы — предоставляя читателю свои «готовые» выводы уводите его от главного, от сути, которая, возможно, лежит вовсе не на поверхности.
                  • +1
                    Как же я предоставляю готовые выводы? Вот Вы, все правильно поняли. Если бы они были «готовые» у Вас бы не было столько вариаций в голове ошибки №7.
                    Да и в целом я понял, что нужно было бы лучше написать подробнее о технической стороне вопроса, как мы развертывали сервера в Amazon для проекта и т.д. Уже есть комментарии выше, что статья не в тему.
                    • –1
                      А в чем же тогда ошибка номер 7? Да и была ли ошибка?

                      Что касается технической стороны вопроса, это как раз меня волнует меньше всего. По моим наблюдениям, технические сложности никогда не играют решающей роли в процессе разработки и продвижения продукта. Только сложности, которые можно описать как «человеческий фактор» — только они на самом деле важны.
                      • +2
                        Ошибка была, уверяю Вас. Я все написал. Мне нужно было после первого провала и неудачной реализации видео искателя в приложении закрыть проект. Но я никогда ничего не бросаю, вот и решил идти до конца. И команду за собой повел, но не все готовы быть аскетами и жить одним проектом.
          • 0
            Лучше бы Вы написали о том как привлекли/привлекаете инвесторов, думаю, всем было бы интереснее.
            • 0
              Вы видели комментарии выше? если Вас заплюсают, все подробно распишу.
            • +2
              Иван, спасибо за статью. Действительно дельные советы (хоть и не всем они по душе), идея приложения вообще супер. На Хабре я почти ничего не комментирую, но вам хочу пожелать удачи :)
              • 0
                Интересная статья. Спасибо. Все в точку. По поводу ошибки в оценки сроков. Думаю, надо просто понимать, что такая ошибка это объективное условие разработки. Оценивая сроки, в 90% случаев вы ошибетесь, поэтому планировать надо исходя из этого.
                Идея приложения тоже очень интересная. А как вы планировали идентифицировать пользователей, если это не секрет?
                • 0
                  У нас была привязка к UUID мобильного телефона, так мы избежали регистрации и однозначно идентифицировали пользователя.

                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.