D:\sideБлогWhite Nights: день второй (часть 1)

⚠️ Обращайте внимание на даты.
Этот блог больше не ведётся с 17 января 2023, и на тот момент с написания этой страницы (28.06.2013) прошло 9 лет.

Частей будет две.

Второй день был несколько более… кислым что ли. Но он выгодно отличался от вчерашнего дня тем, что люди как-то поохотнее шли на какие-то беседы. За сегодняшний день я получил 5 (!) визиток, как минимум три из них мне точно понадобятся. И в который раз пожалел, что не сделал собственную. Но её я сделаю не раньше, чем оформлю на сайте страницу “Навигатор”, которая впоследствии станет главной. Есть вероятность, что сайт несколько сменит назначение с личного сайта на некоторый проект “от разработчиков - разработчикам”. Но об этом пока говорить рано.

В целом конференция… конечно же, понравилась! В первую очередь, я выяснил, какая атмосфера царит на мобильном рынке. Сложилось впечатление, что почти все “мобильные компании” чувствуют пороховую бочку неподалёку. Причём она иногда взрывается, кого-то уносит, кто-то пошатывается, но кто-то ставит новую бочку на новом месте. Конечно, так думать есть причины - в любой день может внезапно выйти приложение или фича, которая внезапно всё испортит. На прочих платформах всё достаточно стабильно, там любому нововведению или продукту придётся пройти через мощный фильтр существующих пользователей - которых ужасающее число разновидностей. А пользователи мобильных платформ больше открыты чему-то новому.

Уже говорил ночью (сегодня), что начну с доклада Google. Но время было и до него, поэтому я заглянул к Supercell. Доклад вышел… странным. Он был интересным, хотелось слушать. Но по сути - это был просто рассказ “кто мы такие и чем занимаемся”, поэтому вспомнить из всего доклада я могу всего два момента.

Первый: Supercell, как организация, состоит из множества небольших команд. Как докладчица (в шутку?) отметила - cell’ов. И все эти cell’ы вместе представляют из себя один большой Supercell. Так-то. Второй: это фотография, где множество народу собралось у стола, чтобы нечто отпраздновать. Оказывается, это они так хоронят провалившийся ещё до выпуска проект. Такие вот праздничные похороны. В стиле Dwarf Fortress. “Проигрывать - это весело!”

Дальше, пожалуй, самый “конкретный” из докладов. Те, кто платформу разработал, рассказывают о том, как с ней работать, точные рекомендации о том, чего не надо делать (но часто делают). Google. Продвижение мобильных приложений в Google Play. Читал Дмитрий Мартынов, менеджер по работе с партнёрскими программами. Огромное ему человеческое спасибо, из всех докладов конференции этот понравился больше всех.

Рассказ шёл о понятии featuring. Что это такое - полагалось известным, поясню тем, кто не в курсе: это демонстрация приложений на главной странице магазина, своего рода “витрине”. Этот процесс (внезапно!) не автоматизирован, и есть специальный человек, который отбирает приложения для главной. И часто бывает, что человек сделал хорошее приложение, но допустил ряд существенных огрехов, поэтому featur’ить его на главной Google Play - ущерб репутации Google. Если такое происходит - разработчику присылают советы о том, как приложение улучшить - “справитесь - будете на главной!”

Для начала - какие показатели влияют на шансы вашего приложения. Их три: качество (оценивается из отзывов пользователей), успех в продвижении (по количеству скачиваний) и ценность приложения (чем меньше пользователей успели стереть его - тем оно ценнее). Конечно, это всё оценивается человеком, поэтому возможны “прогибы”, если нет существенных конкурентов.

Теперь о способах накосячить.

Осмотр любого приложения-кандидата начинается с его страницы в магазине и представления, как оно будет выглядеть на главной. Посему, смотрят на промо-графику (специально для featured-страниц). Следует понимать, что отображается она чаще с самого устройства. Поэтому отдельно рисовать на картинке телефон (имея в виду, что игра для телефона) - плохая идея. Настолько же, насколько плохо рисовать бутылку молока на этикетке для бутылки с молоком. Также стоит обратить внимание на размер шрифта - картинка может (и будет!) масштабироваться на разных устройствах, и делать размер шрифта меньше 10% высоты всей картинки - это риск. Да и информация в тексте воспринимается хуже, чем в картинках, так что и надобности в этом нет.

Окей, мы заметили яркую промо-картинку, пошли посмотреть на страницу приложения. Сразу в глаза бросаются видео и скриншоты. Стоит озаботиться их локализацией - люди любят родной язык. Зачастую, других просто не знают. Это нормально! И ваши пользователи не должны чувствовать себя забытыми. В идеале - стоит держать в игре поменьше текста вообще (это уже совет от меня). Это серьёзная задача для дизайнера, но её разрешение приносит нехилые результаты: пользователей больше, работы на каждую группу и рынок меньше. Angry Birds хотя бы рассмотреть - использование пиктограмм вместо текста. Разве что цифры можно встретить, для которых общепринятых языков очень немного, и они известны почти всем.

Далее на странице некоторые (кого видео и скриншоты ещё не убедили) читают описание. Здесь всего два замечания: озаботьтесь локализацией и не занимайтесь SEO. Причём отсутствие локализации лучше, чем плохая локализация - тоже повод задуматься. А SEO - просто неоднозначное занятие, которое может помочь выйти через поисковик именно на вас, но будет выглядеть очень странным для рядового пользователя. “Что это? Зачем это здесь? Не, не буду качать, мало ли что они затеяли…”

Теперь о дизайне приложения. На iOS нет “вечной” (“железной” или от ОС) кнопки “назад”. На Android она есть, и стоит позаботиться о том, чтобы она не вела себя странно. К примеру, не стоит вешать на неё выход. И даже сообщение “Вы действительно хотите…”. В первом случае это чистой воды frustration (опять запускать?!), в последнем вы просто напоминаете пользователю, что из игры ещё и выйти можно! На самом деле, тут есть элемент случайности. Случайно нажать не туда - и у нас пользователь, классифицирующийся первым случаем. Не надо давать пользователю шансов накосячить из-за криво сделанной навигации по приложению.

Далее. Есть в Андроиде такая штука - уведомления. В системном “трее” (или “лотке”, как называют некоторые). Некоторые любят напоминать пользователю, что прошло какое-то время и в игре что-то происходит. Некоторые вешают туда рекламу. Факт - пользователь регулярно смотрит на уведомления. И если какое-то приложение лезет туда слишком часто - это повод его удалить с устройства. Вам это не нужно. Не надо использовать больше уведомлений, чем реально нужно.

Далее. Сведите к минимуму количество действий со стороны пользователя, нужное для достижения самой сути приложения. У игры - это игровой процесс. Чем это можно испортить? Просьбами сторонних служб зарегистрироваться у них. Рекламой внутриигровых ценностей (о которых игрок ещё даже не знает!). Ну и совсем тупой вариант - хитро спрятанной кнопкой начала игры. Да, бывает даже такое.

Общий принцип - не надо заставлять пользователей чувствовать себя идиотами. В идеале - не давать даже повода для этого (что порой, я считаю, вредно). Они просто этого не любят.  И вы этого тоже не любите.

Поговорим об информационной безопасности. Немножко. Не будите в пользователе параноика. Не надо требовать больше разрешений, чем это разумно для приложения подобного рода. Живой пример - допустим, вы используете аналитику в игре. Отслеживаете активность каждого игрока без фокуса на слежении за кем-то конкретным - просто избавляетесь от результатов-дублей, получая более достоверную статистику об использовании вашей игры. Для этого нужен некий уникальный номер или имя устройства. Некоторые пользуются для этого доставанием разных системных данных. А кто-то берёт и спрашивает у пользователя его личные данные, вроде номера телефона. Или разрешение на их чтение. Реакция? “Зойчем вам это?! Убрать!” Помните также, что у Android есть система аккаунтов, и не надо заставлять пользователя вводить свои логин/пароль от прочих сервисов. Во-первых, это лишняя трата времени, если они есть на устройстве (а вы можете использовать вход через аккаунты других сервисов, того же Google); а во-вторых, это может кому-то не понравиться.

Если пользователь закрыл ваше приложение - не надо его беспокоить без необходимости. Максимум - уведомление за день о чём-то там. Или ещё одно, если пользователь его всё же сегодня открыл. И только в том случае, если в игре какая-то акция (которые бывают нечасто) или произошло действие, привязанное к реальному времени. Следите также за техническими огрехами. К примеру - останавливайте звук, как только приложение закрылось. Вот бывают же случаи, когда необходимо срочно вырубить звук от игры. Быстро нажать “домой”! Потом уже выключить звук во всей системе и открыть обратно.

Пользуйтесь всеми возможностями по восстановлению состояния приложения после сворачивания. Чтобы не вышло так, что пользователь отошёл попить чаю и был вынужден потратить дополнительные полчаса на то, что он уже делал! В ряде случаев можно на это не обращать внимания - но это ряд совсем крайних случаев, когда это действительно может подпортить игровой процесс. Как правило - хорошая система автосохранений решает все проблемы.

Последнее: это что же делать, если вы где-то всё же накосячили. Или пользователь накосячил. Так или иначе, пользователю стоит знать, что пошло не так. Если это ваша ошибка - постарайтесь её объяснить, запишите отчёт своими средствами, попросите пользователя отправить отчёт разработчику. Скорее всего, он этого не сделает. Но вы продемонстрируете, что вы готовы собирать информацию об ошибках и исправлять их. Особенно может впечатлить быстрое исправление присланных ошибок. Это как “просыпаешься утром - а уже предлагают обновление”. Малореальный, но впечатляющий сценарий. Если же ошибся пользователь - объясните, как и где. И главное - как избежать этой ошибки. Кстати, отзывами тоже не пренебрегайте: читайте их, отвечайте на них, реагируйте на них. Их не просто так придумали.

В общем-то, это всё, что было на докладе. Вышло неожиданно много, поэтому продолжу немножко позже. О докладах будет поменьше (намного), потому что интересного среди них во второй день было не так много. Заодно постараюсь поставить Highslide и завершиться с установкой FontAwesome. Скоро вернусь!