Dev Story Dossiers. История о продвинутых заметках

ТЕКСТ: Дмитрий Шмидт Иногда я недостаточно благодарен с людьми, которые в свое время оказали мне добрую услугу и наоборот, забываю о каких-то неприятных случаях. В нужный момент можно попросту забыть о предыстории отношений. Важные детали вспоминаются уже после. Хочется помнить многое, что связано с человеком — его интересы, взгляды, что он предпочитает есть и т.д.

Приложение должно помочь найти ответы на вопросы: Что можно подарить другу на день рождения? В какое место лучше всего сводить девушку, чтобы ей безумно понравилось? Любит она котиков или собачек?

Как было сделано приложение

Программировал сам на языке Objective C в Xcode.

База данных — фреймворк Core Data без сторонних фреймворков, пришлось довольно тяжело. Код, отвечающий за Core Data, очень “раздут” и из-за этого сложнее ориентироваться.

Документации Apple мне не хватило, как и примеров с github и учебников по iOS. В учебниках все выглядело очень просто — добавляем модель, копируем код, чуточку исправляем и вуаля — наше приложение готово и даже делать практически ничего не пришлось.

В реальности же дело по-другому. Нужно знать, как правильно делать связи в более сложной модели. Есть и подводные камни — код верен, а приложение вылетает. Здесь здорово помог StackOverflow, но все равно пришлось попотеть.

Была куплена книга по Core Data, которая прояснила многие моменты.

После обратил внимание на фреймворк MagicalRecord, который здорово минимизирует объем кода.

Разница между чистым Core Data и MagicalRecord примерно такая:

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

Однако MagicalRecord не волшебная пилюля, проблемы есть и с ним.

Когда я уже закончил приложение, и счастливо потирал руки (оставалось залить скриншоты в iTunes Connect), решил на всякий случай, протестировать приложение на девайсе еще раз.

Результат — стабильный вылет в месте, которое я до этого успешно протестировал. Были и другие вылеты.

К сожалению, хорошего туториала по MagicalRecord нет, поэтому пришлось искать ответы авторов фреймворка и экспериментировать самому. На устранение багов пришлось потратить еще три дня.

Читайте также  Что ждет Apple Watch, iPhone 6s и iPad mini этой осенью

В-целом, на приложение было затрачено около 4х месяцев, причем работал я гораздо больше 8 часов в день и без выходных.

Аналитика

Для отслеживания посещений и экранов используется Google Analytics. Кроме него, я также тестировал Flurry и Localytics, но мне они понравились гораздо меньше. К тому же, он полностью бесплатен.

Советы начинающему разработчику

Прочесть книги: Rework от компании 37signals, “Programming iOS 6” Matt Neuburg, Карл Сьюэлл “Клиенты на всю жизнь”.

Совет: если перевести несколько туториалов с английского на русский на сайте raywenderlich.com, вы подарят несколько неплохих книг с примерами приложений.

Не рекомендую книгу E.Sadun “The iOS6 Developer’s Coоkbook”. Это сборник рецептов кода, к тому же оформленный не слишком удачно — видны привычки из опыта программирования на языке C. Все это можно найти и на Stackoverflow. К тому же, некоторые вещи лучше и проще делать при помощи open source проектов.

Берегите глаза

За два с половиной года, которые я потратил на разработку приложений, я сильно посадил зрение — работаю я много, с утра до вечера, иногда без выходных.

Так делать не нужно. Хорошие мысли в уставшую голову не придут, приложение без ошибок лучше, чем с ошибками, но чуть раньше.

Поставьте бесплатный Time Out Free на мак, чтобы делать перерывы.

Дизайн

Чтобы понять как делать красиво, не стоит читать серию Лебедева — она для дизайнеров. Лучшая книга это “Робин Вильямс – Дизайн для НЕдизайнеров”. Но из серии Лебедева стоит прочесть книги про проектирование взаимодействия — “Психбольница в руках пациентов”, Алан Купер и “Интерфейс. Новые направления в проектировании” Раскин Дж.

Руководствуйтесь принципами дизайнера Дитера Рамса, не старайтесь нашпиговать приложение фичами и дизайнерскими закидонами — все хорошо в меру.

Для приложения, я купил красивую готовую тему за $80 и немного переделал ее.

Иконку рисовал сам.

Перед началом разработки, сделал прототип в приложении AppCooker. Две недели тестировал и изменял его, чтобы сделать удобным и легким в использовании.

Копии кода

Используйте систему контроля версий — я выбрал Mercurial, он проще, чем Git.

Я использую аккаунт на bitbucket.org в качестве удаленного хранилища(неограниченное количество репозиториев и бесплатно команде до 5ти человек) и приложение SourceTree (бесплатно в MacAppStore).

Пресс-релиз

Написание пресс-релиза я заказал фрилансерше из Греции. Что удивило — писатели пресс-релизов даже не устанавливают себе приложение. Однако, у девушки было достаточно ясное понимание о работе приложения по скриншотам. Стоило $25. После проверил текст и нашел несколько мелких ошибок, а так же она дописала несколько вещей, которых в приложении нет и не будет, несмотря на то, что в интервью я четко указал эти пункты.

Читайте также  App Store + HD Lego Galaxy Squad Bug Battle. Игрушечная дезинсекция

Вывод: если нет хорошего знакомого журналиста, лучше пишите пресс-релиз сами. Возьмите уже готовые пресс-релизы на prmac.com или prweb.com и сделайте из них свой.

Пресс-релиз я отправил на сервис-рассылки prmac.com, поскольку читал о нем на хабре и сайте компании elegion.ru.

Я заказал самый крутой пакет “Extended Distribution with Video” с корректировкой пресс-релиза за $101.

Минусы:

  • Видео было сделано хорошо, но выложено только на их сайте, на youtube видео не выкладывают;
  • Корректировка пресс-релиза стоит $10 и при покупке было указано, что результат будет получен в течение 24х часов. Через две недели после отправки пресс-релиза, когда она уже даром не нужна, ее прислал владелец сайта, оправдывая задержку тем, что он восстанавливался после больницы. На запрос о том, что $10 нужно бы вернуть, он ответил отказом, мотивируя это тем, что он потратил на нее много сил, и у него была важная причина для задержки. Дальнейшая переписка оставила крайне неблагоприятное впечатление о его профессионализме.
  • Некоторые символы в тексте были заменены на символ квадрата, т.е. какие-то проблемы с кодировкой.

Результат рассылки — ко мне обратились 3 владельца сайтов с предложением платных обзоров.

Статистика рассылки из отчета prmac:

Dossiers 1.0 [445 clicks]

Purchase and Download [322 clicks]

Screenshot 1 [232 clicks]

Screenshot 2 [225 clicks]

App Icon [144 clicks].

То есть, какой-то минимальный толк есть, но из-за минусов, описанных выше, этим сервисом пользоваться больше не буду.

По предыдущему опыту, наиболее эффективны обзоры на сайтах. Однако, цены на платные обзоры слишком высоки — от $200 и выше. Цена зависит от посещаемости сайта.

Скачивания

Несмотря на разосланный пресс-релиз, скачиваний приложения практически нет. Ни в каких рубриках его тоже не было, увы. Что странно — ключевые слова вроде бы были выбраны правильно.

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

Тем не менее, я настроен оптимистично, поскольку уверен в том, что приложение сделано качественно, и причина низких продаж в том, что о нем никто не знает.

iPhone: Free [Скачать]

Данная история опубликована в рамках рубрики Developer Story, где разработчики делятся секретами своей внутренней кухни.
Источник: iphones.ru

RIOS