Menu

[Dev Story] TripQuest. Історія про подорожі та квестах


[Dev Story] TripQuest. История о путешествия и квестах

ТЕКСТ: Євгенія Баркова Пізно ввечері 5 червня 2013 року на пошту приземлилося повідомлення про публікації в App Store мого дебютного додатки TripQuest і його безкоштовної версії - TripQuest_free. Будучи типовою дівчиною 22 років від роду, я заулюлюкала :) Лаконічна рядок у “вхідних” невигадливо, але безапеляційно сповістила про те, що перший період бурхливого створення i-чого-небудь з абсолютного нічого благополучно завершено. За плечима маячили 8 місяців бойового досвіду в обнімку з кращими друзями і Авось Оченьннада. Відповідь на питання про те, як мене так попало, і що робити, якщо дуже хочеться, а досвіду - нуль, я постараюся викласти сьогодні у своїй багатослівною, емоційної і, чесно зізнаюся, блондинистій dev story.

Для початку розвіємо пару міфів. Говорят, успішному розробнику потрібні відповідні...

Бекграунд. Було б непогано, але на жаль. Бакалавра здобула у Вищій Школі Бізнесу МДУ (в дипломі значиться “Менеджмент”), магістра освоюю за програмою Management Information Systems, але профільних курсів в першому семестрі так і не сталося. З 15-ти років ким тільки не працювала, з 2008 (знову ж, при відсутності лінгвістичного та педагогічної освіти) успішно викладаю англійську мову. Я не вмію встановлювати заново Windows і не знаю, чим Objective C відрізняється від C++. Фраза “Ковчег був побудований аматором, Титанік - професіоналом” якось випадково стала девізом моєї трудової діяльності.

Бюджет. Ціна і цінність - поняття дуже варіативні, щоб без смаку викладати величезну суму за проект. Мої грошові витрати на даний момент не переступили позначку “2000 євро”, чого не скажеш про особисті человекочасах.

Час. Навчання, робота, організація весілля, подорожі, хобі та життя на дві країни. В ідеальному світі можна було б поставити всі інші справи на паузу і цілком віддатися створення додатка, але ми живемо на Землі. Perfect time to start не існує. Вчіться поєднувати.

Команда. “Ти та я, та ми з тобою, - сказала я свого ноутбука в серпні 2012. Про те, як згодом знайшла 100% своїх людей, нижче.

Необхідні якості. Залізна логіка, тверда рука, акулячий зуб на конкурентів... За браком перерахованого вище покладаємося на: старанність, організованість, здоровий пофігізм і, кхм, метрове шило. Особливо шило. Так що якщо раптом не виходить... точите :)

З чого все почалося?

У вищезгаданому серпні 2012 ми з молодим чоловіком і нашим другом Євгеном Пузановим (автор програми айКоса-Коса, чию dev story дуже тепло сприйняли читачі iphones.ru) бродили по Брюсселю у пошуках подружки ссущего пацана Пісяючого Хлопчика. Про те, що в Музеї витончених мистецтв холонуть Брейгель і Мемлінг, хлопці чути не хотіли, і от, озброївшись google maps і одним парасолькою на трьох, ми дійшли до непримітної ніші в глухому куті одного з центральних провулків. “Писающая дівчинка - Check!” - кинув хтось ненароком. А що якщо... додаток, яке... туристичні квести..?

Перший плюс будь-якого проекту - під нього можна придбати гарний блокнот :) Повернувшись з відпустки додому, я одразу взялася за справу і написала навігацію (структуру програми) і якщо не бізнес-план, то якусь концепцію, куди увійшли пункти, підглянуті в цій статті.


[Dev Story] TripQuest. История о путешествия и квестах

Незважаючи на ухил в Microsoft, автор ділиться дуже розумними порадами в п'яти частинах. Враховуючи той факт, що образ додатки спочатку був вельми туманним, особливо корисним мені здалося виявлення “ключових персонажів”: береш трьох окремо взятих з цільової аудиторії людей, описуєш їх смаки, стиль життя; причини, за якими твоє додаток їх потенційно може зацікавити. Де бувають мої ключові персонажі? З ким вони подорожують? Як планують подорож? Як використовують в поїздках смартфони? Підключають чи роумінг? Наскільки активними користувачами соціальних мереж вони є? Все це допомагало виявити основні “фічі” додатка TripQuest, частково перетинаються з конкурентними перевагами:

1) унікальний контент, представлений в ігровій формі;
2) максимальне покриття міст;
3) робота оффлайн;
4) можливість соціалізації - рейтинг, профілі, стрічка друзів, шэринг через соц мережі;
5) міжнародний характер аудиторії;
6) бали як внутрішня валюта: вони даються за проходження квестів і можуть бути витрачені на підказки, квестові ланцюжка і тд.

Best At Statement був сформульований наступним чином: “Додаток TripQuest - найкращий в категорії Travel, тк здатне вдихнути життя в будь-яку поїздку, зробити її захоплюючою і запам'ятовується. Це додаток повинен допомогти внести елемент гри в подорож, поставивши перед користувачем ряд маршрутів і завдань, які можуть бути реалізовані для вивчення способу життя, культури та історії певного міста”. Щоб елемент гри, перевірки результатів і складання рейтингу відбувся, відразу було вирішено прив'язати проходження квестів до геолокації.

Монетизація...

...дуже довго залишалася під питанням. Спочатку хотілося виставити пятибаксовый цінник і агітувати користувачів “завантажити туристичну реаліті гру з квестами по всьому світу за ціною одного путівника”. Потім, походивши по AppStore і начитавшись відгуків про те, яких скарбів інків середньостатистичний користувач очікує від будь-якої програми за 33 рублі і як неохоче з ними розлучається, думала зробити додаток безкоштовним зовсім - розвивати, піарити по-партизанськи, вкладатися пару років і отримати сестричку Инстаграма і Фейсбуку :) Звичайно, це було б нерозумно, тк наша цільова аудиторія менше. Варіант з внутрішніми покупками на самому початковому етапі теж відпав. В підсумку пішла по шляху найменшого опору: 33 рубля/99 центів за платну версію з тисячею квестів і безкоштовна пробна версія з сотнею рандомних квестів - на пробу.

Конкуренція

У двох словах: її не було, принаймні прямій. Так, існує величезна кількість травелогов і путівників, TripAdvisor, Wikitravel, Tourister, тисячі сайтів про туризм в цілому і самостійних подорожах зокрема, але додатка в смартфоні, яке говорило б: ось квест, тобі сподобається, йди і зроби - не було.

Чесно сказати, при первинному дослідженні ринку мобільних додатків мене це дуже здивувало. Враховуючи, що яким-небудь гігантові начебто TimeOut або TripAdvisor достатньо було просто виділити десяток людей зі штату, середній по корпоративним мірками бюджет і почекати пару місяців до випуску подібної програми і досягнення шикарного wow-ефекту, використовуючи вже наявні потужності, я відверто побоювалася виникнення нежданих колег по цеху. Одного разу, вже через кілька місяців роботи, коли дизайнер, розробник і я в шість рук по повній займалися створенням TripQuest, мені приснився сон про те, що мене випередили. Скочила в 5 ранку і сіла писати квести :) до Речі, про них...

Написання квестів

Контент - головний продукт TripQuest, і якістю я не могла поступитися. Саме тому варіант з величезним краудсорсинговым потенціалом світового співтовариства мандрівників був відкладений на майбутнє. Отримуючи бакалавра, я захистила відмінний диплом про особливості розвитку краудсорсингу в Росії і прекрасно розуміла, що наш ринок до такого завдання поки не готовий. Ідея про світовому ринку виконавців також мене не влаштувала через небажання афішувати поява проекту заздалегідь і самостійно модерувати величезна кількість сміття.

А він би був. Навіть намагаючись залучити фрілансерів для прискорення процесу, я встигла усвідомити, наскільки складно добитися від людей якісного, незаяложеного, художньо сформульованого контенту. Різниця між “загадати бажання на різнобарвною парковій лаві, чия ідеальна форма - результат роботи оголених будівельників” і “сходити в парк Гуеля” (Барселона) не всім здавалася очевидною. Було вирішено все робити самій.

Алгоритм роботи, яку я активно продовжую, досить простий. Беремо список найвідвідуваніших міст 2011 року, додаємо в Excel. Вибираємо місто, читаємо всі мислимі і немислимі джерела про його історію, культуру, пам'ятки, off beat маршрутах, заходах, гідних нетуристичних місцях. Особливо корисно вивчення блогів - так, довго і копітко, але часом знаходиш такі цікавинки, що готовий йти пішки в аеропорт. Оглядові майданчики, трекінгові стежки, незвичайна архітектура, місця зйомок фільмів, улюблені парки місцевих жителів, стріт-арт, історичні пам'ятки - намагаюся охопити все. Формулюю квест англійською мовою, якщо необхідно - додаю адресу або назву організації для визначення геолокації.


[Dev Story] TripQuest. История о путешествия и квестах

Далі відбувається додавання квесту в адмінку.


[Dev Story] TripQuest. История о путешествия и квестах

У кожному місті від 10 до 40 квестів, на що йде 3-20 годин роботи. Розкид цілком виправданий, тк, наприклад, дослідження Брюгге і Нью-Йорка непорівнянні. З Топ-10 міст світу квести можна писати до посиніння.
Саме веселощі починається, коли справа доходить до Азії з її иероглифическим листом. Приміром, вичитала на жж про “собачий ресторан” у Сеулі, єдиний у своєму роді. Починаю шукати адреса - глухо. Хештэги в інстаграм і твіттері призводять до двох різними адресами, Google Maps не знає ні один з них. На фото в ЖЖ-пості виглядаю вивіски на будинках по сусідству з рестораном, намагаюся знайти через список організацій. В результаті вірну адресу чекає мене на сайті якогось італійського туристичного агентства (пощастило, що трохи знаю мову).

Програмування

Будучи людиною жодного разу не досвідченим, одразу почала шукати програміста знайомим. Повісила оголошення в блозі, на сторінці в контакті, і - о, щастя! - мені тут же відповів Сергій Югай. На тлі інших листів та переглянутих мною профілів він виглядав відповідальним, нешаблонним, небайдужим, і головне, комунікабельним. Фрілансер-ровесник зі ставкою 500р/год. Ідеальний для мене варіант.

Для dev story Сергій люб'язно надав деталі технічної реалізації проекту. Цитую :)

Сергій Югай: “TQ є клієнт-серверною програмою. В якості сервера у нас виступає цілком стандартна зв'язка PHP + MySQL - на сервері зберігаються дані про країнах, містах києві та квестах + настройки користувачів і дані про прохождениях квестів.

Адміністраторську панель я зробив за допомогою Google Maps API - по суті, всі крапки можна зручно і просто шукати, використовуючи адресу і пересуваючи прапорець на карті. Дані віддаються в форматі JSON.

Тепер про самому додатку-клієнті. Основні моменти, які спочатку нас хвилювали - це:
Забезпечення зручної роботи з додатком для користувачів в режимі «оффлайн»
Захист від «чітерства» (адже ми хочемо бути впевнені, що наші користувачі чесно проходять квести)


[Dev Story] TripQuest. История о путешествия и квестах

Перший пункт - робота «оффлайн» - важливий тому, що мало хто захоче підключитися до інтернету, перебуваючи за кордоном. По суті, підключення і не потрібно - геолокація працює і без підключення, а більшого нам і не треба. Тому ми заздалегідь упакували в додаток набір всіх доступних на момент виходу квестів, міст і країн. Плюс користувач може в будь-який момент (наприклад, перед подорожжю або в готелі) підключитися до інтернету, прогрузить список квестів для потрібного міста і мати в кеші найсвіжішу версію.


[Dev Story] TripQuest. История о путешествия и квестах

Якщо додаток включено, то воно постійно отримує інформацію про поточний місці і якщо ви переглядаєте список квестів, то воно оновлює цей список і обов'язково змінює свитчер з «недоступного» на «доступний для розблокування» як тільки той чи інший квест виявляється доступний. При цьому, дані про проходження зберігаються в файл операцій. В майбутньому, як тільки користувач підключається до інтернету, програма зможе виконати всі незавершені операції цього файлу і повідомити серверу про всіх пройдених квестів.

Усі параметри, які не вимагають участі сервера (зміна телефону, даних про собі і т.д.) так само потрапляють в файл операцій.

Тепер про захист від «чітерства». Нам було важливо, щоб користувач не міг взяти і внести в файл операцій операцію «пройшов квест номер N», тому файл операцій зашифрований за допомогою AES256, а спілкування між сервером і додатком захищається за допомогою одноразових ключів (і частково шифрується).

До речі, Apple AppStore вимагає від програм, що використовують криптографію, ліцензій для експорту на деякі ринки - правда, наш додаток потрапляє під перелік виключень (ми використовуємо шифрування для авторизації), тому нам не знадобилося. Але в деяких випадках доводиться отримувати цю ліцензію, на що витрачається, наскільки я знаю, близько місяця.
Я думаю, що люди, що захоплюються зломом, напевно зможуть обійти цей захист - але від більшості дрібних шахраїв вона врятує :)

В якості висновку, як розробник-фрілансер, хочу окремо згадати організацію нашої роботи.
Мені було дуже приємно працювати в цій команді (і, сподіваюся, мене не звільнять і мені буде приємно працювати багато-багато років), оскільки по кожному моменту, пов'язаного з тим чи іншим рішенням, я брав участь у дискусіях і висловлював свої ідеї. Мені здається, що це дуже важливий момент - замовники не завжди консультуються з програмістами і часто це проявляється в подальшому в різних проблемах у роботі програми. Та й у цілому, працювати всім разом - куди приємніше:) Дякую за увагу”.

Будучи технічно слабо підкованим керівником проекту, я просто не могла знехтувати готовністю і прагненням до координації. Так що ми з Сергієм відразу спрацювалися, чого і Вам бажаю :)

Терміни

Прописавши у вересні ТЗ, ми домовилися, що програмування займе близько шести тижнів. З об'єктивних і не дуже причин термін здачі перевищив очікування в 2-3 рази. Оскільки написання контенту також вимагало величезної кількості моїх робочих годин, а на пошуки потрібного дизайнера пішло більше часу, ніж на підготовку самого дизайну, такий зрив не став критичним для мого проекту, але все ж не є нормою.


[Dev Story] TripQuest. История о путешествия и квестах

Тому на даний момент, щоб уникнути зриву термінів ми з розробником працюємо на відрядній основі з наступним умовою: завершення етапу за 2 і більше діб раніше терміну - плюс 10% від обговореної вартості етапу, завершення в строк - 0% до обговореної вартості етапу, завершення більш ніж через дві доби після закінчення строку - мінус 20% до вартості.

Дизайн

Візуальна частина програми - цар і бог в моїй картині світу. Тому я абсолютно не шкодую, що на пошук дизайнера, який зможе створити унікальний корпоративний стиль у такій популярній сфері, як туризм, у мене пішло більше двох місяців, а на створення дизайну для версії 1.0 - ще чотири тижні.

Варіанти, які мені пропонували:


[Dev Story] TripQuest. История о путешествия и квестах


[Dev Story] TripQuest. История о путешествия и квестах

Але все найкраще знову сталося несподівано. Мені пощастило випадково познайомитися з дизайнером Дариною Федоткиной, яка до цього до вебу і тим більш мобільним додаткам ніякого відношення не мала: погодилася допомогти просто заради цікавості.

Що у нас вийшло, покажуть скріншоти з AppStore:


[Dev Story] TripQuest. История о путешествия и квестах


[Dev Story] TripQuest. История о путешествия и квестах

Варіанти іконок. Зупинилися на другому, тк в крихітному форматі вся краса першої іконки ледь помітна.


[Dev Story] TripQuest. История о путешествия и квестах

Цікава історія вийшла з логотипом. Думаючи, який символ вибрати, перебирала варіанти з Жабою-мандрівницею (немає адекватного англомовного еквівалента), літаком (заезженно), рюкзаком бэкпэкера (звужує цільову аудиторію).

Осінило знову несподівано. Паралельно з розробкою програми я вишивала хрестиком картину з инстаграмки нижче, і всі ці місяці логотип був прямо під моїм носом. Повітряні кулі! Ну звичайно! І за формою нагадують мітку Google Maps :)


[Dev Story] TripQuest. История о путешествия и квестах

Перед запуском

У травні додаток було готове. На позбавлення від багів у нас пішли три довжелезні тижні, до цього розробник був у відпустці, ще до цього розбиралися з дизайном, і в цілому gantt chart проекту (якщо він був) не відбувся. Багато речей, які можна було реалізовувати паралельно, або не враховувалися через відсутність досвіду, або відкладалися з нашої власної вини. Очевидних висновків зроблю кілька:

1. Незважаючи на ступінь готовності контенту, відразу ж після проектування навігації приступайте до дизайну. Нехай краще готовий полежить, не запилиться.
2. Обов'язково тестуйте додаток на максимальній кількості девайсів, а не симуляторах. Робіть це самі: баги люблять замовників.
3. Не намагайтеся зробити вигляд, що в добі сорок годин і ви все встигнете за місяць, просто щоб заспокоїти совість. На початку проекту я обіцяла собі писати квести мінімум по одному місту в день і трохи з ума не сходила від провини перед внутрішнім перфекціоністом, коли цього з об'єктивних причин не траплялося. Ставте реальні терміни, нерви дорожче.

Версія 1.0...

...не була доведена до розуму, навіть аналітикові не вшили. “Занедбане сьогодні, погано працююче додаток все одно краще, ніж ніколи не запущене ідеальне”, - пише автор ще однієї корисної статті, опублікованій нещодавно. Я з ним повністю солідарна.

Саме тому, відправивши на публікацію 1.0, ми тут же почали навздогін клепати 1.1.

Просування 1.0

Додаток було опубліковано рівно за тиждень до мого весілля, і це, чесно скажу, стало справжньою перевіркою на міцність. Хотілося бігти і підкорювати складений заздалегідь медіа план, але рук вистачило тільки на те, щоб розіслати друзям промо лист, викласти запис в блозі і новина на стінку в контакті. Тим не менш, навіть цими зусиллями за перші 15 годин додаток TripQuest вийшла на 4 місце в категорії Travel, а ще через кілька днів додано в New&Noteworthy, де безкоштовна версія перебуває досі на п'ятій позиції.


[Dev Story] TripQuest. История о путешествия и квестах


[Dev Story] TripQuest. История о путешествия и квестах

З топ-100 категорії додаток вилетіло десь через тиждень, коли вірш ефект від першого інфо приводу, а інші в силу зайнятості не з'явилися. І це добре, тк відсутність уваги дозволило нам виокремити 1.1 і вирішити головну проблему: близько 30% користувачів не розуміли, як воно працює, що таке свитчер і чому квести по Сінгапуру не можна розблокувати, сидячи вдома в Нижньому Новгороді. За відсутністю досвіду, я не підозрювала, наскільки величезна кількість користувачів, які, не розібравшись інтуїтивно з принципом роботи програми, не захочуть читати інструкцію в AppStore. Це стало ключовою помилкою.

Дуже порадувало, що більшість користувачів про програму відгукувалися дуже тепло і навіть дякували за “прочитання думок усіх завзятих мандрівників”. Один друг-москвич поділився досвідом: “Живу через дорогу від ВВЦ, не був там років дванадцять в повній впевненості, що крім “совка” дивитися там нічого. Потім скачав твоє додаток і почав проходити квести, дуже здивувався. Стільки цікавого під боком!”

Іноді ми дійсно втрачаємо прекрасні можливості просто по незнанню. Статуя Свободи, Ейфелева вежа, Рейхстаг - ось і вся історія з географією, мабуть... А якщо повернути за найближчий потрібний кут, трапляються справжні дива.

Також за фидбэку, зібраному за перші кілька днів, лідирували такі коментарі:
1. Необхідність вбудованих підказок - будуть реалізовані і доступні за бали (або за гроші у вигляді in-app purchase).
2. Переважання текстового формату - і я поки не придумала, як вирішити питання. У додатку є чудова карта з повітряними кульками-лого, які з'являються на місці пройдених квестів. Користувачі створюють свою TripQuest Map і скоро зможуть завантажувати її з додатка (поки ви збираєте кульки, ми кодим). Ілюструвати квести - не варіант, тк це чистої води підказка. Потрібно встати з дивана і пройти квест, тоді картинки з'являться перед очима в реальному житті :)

Друзі, якщо у Вас є ідеї з цього пункту, буду дуже рада розглянути.

Версія 1.1

Отже, інструкція тепер вшита на кожну сторінку квестів.


[Dev Story] TripQuest. История о путешествия и квестах


[Dev Story] TripQuest. История о путешествия и квестах

Реалізована можливість заробити бали, взявши участь у піарі програми, а також передбачена купівля повної версії відразу ж з безкоштовною.


[Dev Story] TripQuest. История о путешествия и квестах

На даний момент в системі трохи більше тисячі квестів c охопленням сорока країн і введений краудсорсинговый елемент: набравши 250 балів, користувач стає Експертом і отримує можливість пропонувати власні квести для інших мандрівників. Кількість запропонованих і схвалених квестів відображається в профілі і буде доступно іншим користувачам.

Загальна: користувачі проходять квести (у тому числі оффлайн), розповідають про це друзям, набирають бали, поповнюють симпатичну TripQuest Map. На даний момент пишеться версія 1.2, яка дозволить завантажувати карту TripQuest Map з пройденими квестами і кілька перетворить розділ “Профіль”; у версії 2.0 буде реалізована можливість підписки на оновлення друзів, а також рейтинг користувачів (загальний і серед “друзів”). Через планується вихід сайту, на даний момент - одностраничной візитки з parallaх-елементом. Пишу сценарій - буде няшка:)

В цілому, чітко усвідомлюю необхідність роботи за чотирма фронтам:
1) доведення до розуму внутрішньої структури програми та реалізація всіх задуманих фіч (включаючи опції з внутрішніми покупками);
2) написання квестів, підказок і тематичних квестових ланцюжків за певними містами;
3) найактивнішу просування, маркетинг і піар нам в допомогу;
4) розробка версії для Android. Її дуже чекають.

Завантаження...

на даний момент не виглядають переконливо, але і промо діяльність по суті поки не почалася. Безкоштовна версія все ще в New&Noteworthy зареєстрованих користувачів на обидві версії - більше 500, закачувань дещо більше. Дохід не перевищив сотні доларів.


[Dev Story] TripQuest. История о путешествия и квестах

Витрати

Реєстрація домену + сервер - 50€
Програмування 1.0 - 1000€
Дизайн 1.0 - 200€
Реєстрація профілю розробника - 99$
Програмування 1.1 - 350€
Дизайн 1.1 і 1.2 - 160€

Загальна: 1835€

Висновок

Дорогі читачі IPhones.ru! Від імені всіх учасників команди TQ сердечно дякую вам за увагу. Якщо Вам теж не сидиться на місці, ласкаво просимо в TripQuest. Якщо раптом Ви хочете зв'язатися зі мною особисто, це можна зробити вконтакте або за електронною адресою Ця електронна адреса захищена від спам-ботів. вам потрібно увімкнути JavaScript, щоб побачити її. . Завжди рада Вашим відгукам, коментарям, побажанням і будь-який інший зворотного зв'язку.

Яскравих подорожей і успішних проектів! А якщо опинитеся в Брюсселі, передайте від мене Писающей Дівчинці полум'яний привіт :)

iPhone: 33 руб. [Завантажити з App Store]
Lite-версія: Free [Завантажити з App Store]

Дана історія опублікована в рамках рубрики Developer Story, де розробники діляться секретами своєї внутрішньої кухні.
|