Главное Авторские колонки Вакансии Образование
Выбор редакции:
859 11 В избр. Сохранено
Авторизуйтесь
Вход с паролем

История разработки

Однажды вечером я общался с друзьями в WhatsApp, и у меня появилось желание сделать картинку мем в ключе разговора, со своим текстом. Так и началась история разработки проекта ClassicMemes.
Мнение автора может не совпадать с мнением редакции

Почему мемы?

Однажды вечером я общался с друзьями в WhatsApp, и у меня появилось желание сделать картинку мем в ключе разговора, со своим текстом. Делать на компьютере и отправлять на iPhone было слишком неудобно и долго. Выбор был очевиден - необходимо приложение. И я отправился на его поиски в AppStore. Все, что удалось найти, были отдельные приложения для создания мемов вида «картинка + текст сверху и снизу», демотиваторов и мотиваторов. Интерфейс и юзабилити в найденных и опробованных приложениях не устроили, а еще хотелось, чтобы было все в одном. Ничего не оставалось, как сесть и написать самому, благо есть «ПРОшка».

Скачиваю Xcode и приступаю

Большим минусом было то, что новенький Swift я и в глаза не видел, а опыт разработки в Xcode был на уровне «Hello, world». Но были и плюсы: достаточно много материала и видео по Swift и Xcode 6, а так же наличие небольшого опыта разработки на Delphi и PHP.

Синтаксис Swift оказался очень дружелюбным, в отличие от Objective-C (хотя с ним были не очень продолжительные отношения). Принцип написания и изучения сводился к следующему: «сначала пишем приложение, а более детально изучать Swift будем позже», в связи с чем возникали ступорные ситуации, в которых я просто не знал как реализовать данную функцию. В такие моменты на помощь приходил YouTube и stackoverflow.com. Оказалось, в рунете совсем мало информации по Xcode и Swift, а зарубежные ресурсы в этом плане более насыщенны.

Интерфейс приложения никак не разрабатывался - я просто доверился своей интуиции; представил, как должно выглядеть приложение, с которым было бы приятно и удобно работать мне. Любовь к минимализму так же сыграла свою роль, а неопытность - к использованию того, что предлагает Apple в Xcode. b_561f51afde82e.jpg

Демотиваторам и мотиваторам - быть!

Пускай они уже не так популярны, мне они были необходимы. Это мемы на которых я вырос, от них исходит какое-то «ламповое» тепло.

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

b_561f5249627fc.jpgb_561f521523a4c.jpg

«Другой мем» и планы на будущее

На данный момент в приложении представлен еще один конструктор - «Другой мем», являющийся самым популярным в сети сегодня. Разработать конструктор для «другого мема» было весьма просто, однако к процессу необходимо было подойти со всей ответственностью, ведь это самый используемый шаблон. Его вид так же был приведен к классическому образцу.

Новые варианты оформления и подписи для картинок появляются в сети каждый день. Какие-то становятся популярными и задерживаются, какие-то нет. В планах - добавление новых типов конструктора популярных мемов. Уже в ближайшем будущем кнопка «Другие мемы» заменит сегодняшнюю «Другой мем».

b_561f52c98f30d.jpg

Галерея

Опубликовать созданный мем в социальной сети или мессенджере - самая важная функция приложения, ведь ради этого все и задумывалось; так же хотелось добавить функцию сохранения мемов внутри приложения, чтобы иметь возможность обратиться к ним в любой момент и при необходимости поделиться. Так и появился раздел «Галерея», с простой системой сортировки по типу, возможностью детального просмотра, удалением ненужных и отправкой мемов в другие приложения.

b_561f52ef43a4d.jpg

Инструкция, первый шаг к «коммерческому» проекту

Когда приложение обрело первоначальный вид, и я уже во всю отправлял из тестовой версии созданные мемы друзьям, появилась мысль: «в поисках подобного приложения, найди я среди них свое, заплатил бы я за него? конечно!». Так проект стал двигаться в сторону «коммерческого».

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

b_561f531d50428.jpgb_561f5342677db.jpgb_561f5363b270d.jpgb_561f539bb0d96.jpgb_561f54251c11b.jpg

Шаблоны, второй шаг к «коммерческому» проекту

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

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

Как оказалось, «не так страшен черт…», и первые шаблоны я тестировал уже через пару ночей разработки. После чего было отобрано и добавлено более 100 популярных картинок, используемых в мемах.

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

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

b_561f54b7d7849.jpgb_561f54c3c2e36.jpg

Название, третий шаг к «коммерческому» проекту

Изначально я не особо задумывался о названии и было выбрано MyDMM - Мои Демотиваторы, Мотиваторы и другие Мемы. Для себя да, достаточно, но для AppStore название скудноватое. Долгое время в голову ничего лучше не приходило, пока не дошел к краткому описанию. Тут то и сорвалось с языка это слово - «классический». AppStore по запросу «ClassicMemes» ничего не выдал, а я вздохнул спокойно и приступил к изменению приложения и сайта.

Иконка - лицо приложения

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

b_561f54fc905d9.jpgb_561f54f3a0e39.jpg

AppStore и iTunes Connect - публикация

Приложение готово, пора и миру показать. Было страшно, страшно от неизвестности. Как публиковать? что заполнять? как потом обновлять и т.д? Но, как говориться, - «глаза боятся, а руки делают». По инструкциям в сети создал сертификаты для обоих версий (платной и lite версии - бесплатная, с ), а в iTunes Connect оказалось подробно расписано, что и куда, да еще и на русском. Ход действий так же подсмотрел в роликах на YouTube. Добавил описание, скриншоты, заполнил все, что было необходимо и вот, столкнулся с вопросом: как свое приложение, собственно, загрузить? И снова отправляюсь «гуглить». Оказалось, ничего сложного - приложение отправляется в iTunes Connect в пару кликов, а уже там выбирается.

После отправки на проверку, как это обычно бывает, нашлись недочеты и необходимо было заменить версию. Долго смотрел на кнопку «удалить версию, ожидающую проверки» и все же решился. Проверка слетела, и я уже заливал новую сборку. Без нюансов тоже не обошлось. Оказывается, каждый раз, когда мы отправляем новую сборку, необходимо повышать ее номер, иначе система ругается и не отправляет сборку в iTunes Connect.

Шишек набил много, но самая большая вышла, конечно же, с названием приложения. При выборе названия в iTunes Connect я почему то решил, что это и будет мое название в AppStore и в устройствах при установке, а как называется проект - неважно. Спустя 6 дней ожидания проверки я наткнулся на такой пункт, при котором могут отказать в публикации: «Пункт 3.4: Названия приложений в iTunes Connect и на самом устройстве должны быть одинаковыми, чтобы не вызывать замешательства». А что остается делать? Готовлю новые сборки и отправляю в iTunes Connect с расчетом, что мне откажут и я отправлю на проверку новую сборку, после чего меня рассмотрят в течение дня. Но к моему удивлению, проверку я прошел, и Lite версия уже была в AppStore, а платная перешла в состояние «Ожидание договора».

«Ожидание договора» так же заставило понервничать и перелопатить половину интернета. Ответы нашел, и уже через час платная версия появилась в AppStore.

После того как приложения перешли в состояние «Готов к продаже», мои загруженные сборки с исправленным названием уже не подошли, пришлось делать сборки новой версии 1.1, и «снова ожидание проверки»…

b_561f554919467.jpg

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Иван Александрович
Что тут скажешь... Браво! Отличная идея! Успехов!
Ответить
Social Coins
Краудфандинг за бесплатно
Игорь Алексеев
Супер! Люблю такие драйвовые рассказы)
Жду продолжения
Ответить
ClassicMemes
Приложение для создания мемов
Sergey Leppyanen
Большое спасибо за комментарии! Писал на одном дыхании)
Ответить
ClassicMemes
Приложение для создания мемов
Sergey Leppyanen
Спасибо! Статью отредактировал, думаю стало лучше.

Есть хорошие новости по обновлению, в версии 1.1:
- Исправлено название приложения
- Увеличено разрешения создаваемого мама в 2 раза
- Удалены все водяные знаки
- Мелкие исправления

Ждем проверки, снова неделю (ранее выставленное обновление пришлось снять)
Ответить
Полиция грамотности
Полиция грамотности выходит на охоту. Берегись!
Иван Сулейко
Желание по-прежнему общается с друзьями :)
Ответить
ClassicMemes
Приложение для создания мемов
Полиция грамотности
Полиция грамотности выходит на охоту. Берегись!
Starter
Экспертная помощь стартапам
Данил Каримов
Забавно, а разве это еще нигде не реализовано?
Ответить
ClassicMemes
Приложение для создания мемов
Sergey Leppyanen
Простите, не могу уловить, это сарказм или вы действительно удивлены?
Ответить
Evgeny Kaygorodov
Www.Uzvt.ru батя да у вас вышла точная копия зарегестрированного товарного знака УЗВТ с 2002года. Как бы было не обидно но Иконку стоит поменять ! директор УЗВТ.
Ответить
ClassicMemes
Приложение для создания мемов
Sergey Leppyanen
Уважаемый директор УЗВТ!
Почему Вы решили, что мой логотип точная копия? Квадратик с палочкой похож? Вы серьезно? Для нарушения прав на товарный знак, необходимо использовать ТОЧНУЮ копию! Ваша притензия имела вес, если бы я сделал копипаст вашего логотипа. А так, цвет другой, геометрия фона, круг в соотношении с квадратом... Да бросьте, так фольцваген давно бы засудил WordPress.

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

Если ответ не устроил, то для начала пришлите на info@cmemes.ru документы подтверждающие права на данный товарный знак.
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.