Структура статьи
Чтобы облегчить восприятие, статью я разбил на этапы клиентского пути:
- Узнавание о приложении
- Страница в App Store
- Онбординг
- Поиск товаров
- Каталог и листинг товаров
- Фильтрация и сортировка
- Просмотр карточек товаров
- Авторизация
- Работа с корзиной
- Оформление заказа
- Ожидание доставки
- Оценка заказа
- Получение поддержки
- Повторное использование
1. Узнавание о приложении
Блок с призывом к установке
О том, что сделать заказ можно через приложение, клиент узнает из блока в футере страницы доставки на сайте, привлекающего относительно мало внимания.
2 приложения
Клиенту предлагаются 2 приложения. Чтобы пользоваться услугами полноценно, нужно скачать их оба. Почему функционал не объединён — вопрос.
Формат перехода на десктопе
Кнопки сторов в версии для ПК бесполезны — в отличие от QR-кода, считав который со смартфона, можно было бы быстро перейти к скачиванию приложения.
Баннеры в мобильной версии
В мобильной версии скачать приложение призывают целых 2 баннера, причем расположенных один под другим. Зачем такая скученность, непонятно.
Привязка к устройствам
Клиент заходит на сайт с iPhone, а ему, помимо App Store, предлагают ещё и скачать приложение из Google Play.
Highlight ценности
В отличие от приложения Магнит, по приложению Магнит Доставка не подсвечиваются какие-либо преимущества сервиса или удобство заказа со смартфона.
Побуждение к скачиванию
Какие-либо дополнительные механики, побуждающие пользователя скачать приложение, в блоке не предусмотрены.
Наличие ссылок на главной
На главной странице блок с призывом к установке приложения Магнит Доставка отсутствует.
Реклама в offline
Посетив в несколько магазинов Магнит, я заметил рекламу лишь основного приложения. Узнать о наличии сервиса доставки клиенту в магазине, мягко скажем, нелегко.
2. Страница в App Store
Первый экран обзора
Первый экран обзора видит большинство клиентов. При этом он минимально информативен и лишь рассказывает нам о том, что есть доставка товаров.
Размер скидок
Хотя в самом приложении часто можно встретить и более внушительные скидки, в экраны обзора вынесена лишь скидка «до 30%».
Число экранов в обзоре
Из 10 возможных экранов обзора используются только 7. Все преимущества сервиса на этом исчерпаны?
Акции в экранах обзора
Некоторые игроки используют экраны обзора, чтобы поделиться промокодами или рассказать о ключевых акциях и предложениях. Магнит в их число не входит.
Формат заголовков
В то время как заголовки можно было бы реализовать в формате призыва к действию, большинство из них оформлены в виде существительных.
Консистентность текстов в обзоре
Подзаголовки на экранах обзора то есть, то нет, хотя можно было бы добавить их везде, делая презентацию более консистентной.
Панорамный дизайн
Панорамный дизайн (элементы начинаются на одном экране и продолжаются на другом) сделать попробовали, но получилось не совсем идеально.
Улучшение функционала
Судя по апдейтам, за последние 4 месяца разработчики не вносили каких-либо значимых изменений в приложение. Не лучший сигнал для нового клиента.
Тексты обновлений
Последние 20 обновлений выпускаются с одним и тем же текстом. Чисто для галочки? Никто их не будет читать? И так сойдёт?
Запрос фидбэка в обновлениях
Текст обновлений можно было бы использовать, чтобы призвать клиента делиться обратной связью по работе приложения. Но эта возможность не используется.
Призыв к оценке в обновлениях
Аналогичным образом в текст обновлений можно было бы внедрять запрос на оценку приложения в App Store.
Единицы в рейтинге
В распределении оценок можно заметить достаточно большое количество резко негативных отзывов. Это может повлиять на восприятие качества приложения.
Избранные отзывы
4 из 6 наиболее полезных отзывов, доступных на странице — резко негативные. Это также влияет на репутацию приложения и желание его скачать.
Ответы на отзывы
На отзывы разработчик отвечает не всегда. Особенно в случае негатива подобное молчание со стороны компании — далеко не лучшая практика.
Преимущества в описании
В тексте описания в основном говорится лишь о фичах приложения, но не о преимуществах самого сервиса для клиента.
3. Онбординг
Welcome экраны
Приветственных экранов в приложении нет, хотя на них можно было бы вынести ключевые преимущества сервиса.
Тайминг запросов
Запросы доступов — первое, с чем клиент сталкивается, зайдя в приложение. Такое «приветствие» нового пользователя — не лучшая практика.
Конкуренция запросов
Более того, один запрос накладывается на другой: клиент не успел дать доступ к уведомлениям, а у него уже запрашивают доступ к геолокации.
Экраны с пояснением
Хорошая практика — перед тем как запрашивать доступ, на отдельном экране пояснить, для чего он требуется. В данном случае она не применяется.
Определение геолокации
Если клиент предоставил доступ к геолокации, но отключил точное местоположение, его вне зависимости от города приземляют на Красную площадь.
Побуждение к покупке
Какие-либо прочие интерфейсные и маркетинговые механики, побуждающие сделать первую покупку, отсутствуют. Клиент остается предоставлен сам себе.
4. Поиск товаров
Переход к поиску из листинга
При нажатии на иконку лупы в листинге категории клиент переходит к экрану поиска, но поисковая строка не активируется: приходится делать это вручную.
Где осуществляется поиск?
Искать по всему товарному предложению Магнита клиент не может: поиск осуществляется лишь в выбранном магазине.
Расположение кнопки отмены
Кнопка отмены вплотную «прилипает» к строке поиска, хотя места для того, чтобы сделать отступ, достаточно.
Фильтрация по категориям
В отличие от каталога, отфильтровать результаты поискового запроса по категориям не получится. Нужно уточнять запрос текстом либо дольше искать товар в листинге.
Тап по пустой области
При тапе по пустой области поиск не закрывается, хотя такая реакция была бы ожидаема. Вместо этого происходит лишь деактивация поисковой строки.
Каталог при закрытии поиска
При закрытии поиска тексты заголовков в каталоге по непонятной причине кратковременно меняются местами.
5. Каталог и листинг товаров
Выбор магазина
Возможности просмотреть общий каталог товаров Магнита нет: ознакомиться с товарами можно лишь внутри конкретного формата магазинов.
Смешивание категорий и акций
В каталоге вперемешку идут и категории товаров, и конкретные точечные акции. Это может усложнить поиск нужной категории.
Визуализация подкатегорий
Подкатегории товаров — это просто plain text, без какой-либо визуализации. Хотя текст можно было бы сопроводить иллюстрациями для улучшения восприятия.
Кликабельность подкатегорий
У подкатегорий второго уровня кликабелен лишь текст, а не вся ячейка. Это усложняет переход к нужному листингу.
Изображения подборок
При первом просмотре каталога изображения подборок не загружаются. Видны лишь placeholder’ы. Шанс испортить первое впечатление не упускают.
Прокрутка подборок и stories
При прокрутке горизонтальных коллекций вертикальная прокрутка не блокируется. Это делает опыт скролла менее удобным.
Snapping в подборках
При прокрутке подборок cell snapping не используется. Из-за этого карточка при скролле может остаться видимой лишь частично.
Время загрузки листинга
Загрузка листинга при переходе из каталога занимает достаточно долгое время. Это может вызвать раздражение, если клиент заходит в разные категории товаров.
Отображение веса товаров
По одним товарам вес отображается в названии, по другим — вынесен в отдельное поле. Есть ли в этом какой-то скрытый смысл? Напишите в комментах.
Индикация доступности товара
Информации о том, сколько единиц товара доступно для покупки, в листинге нет. Об этом клиент может узнать лишь на более поздних шагах.
Реакция каталога на скролл
В отличие от листинга, при быстром скролле каталога он иногда перестает реагировать на касания.
6. Фильтрация и сортировка
Расположение элементов
Кнопки сортировки и фильтрации расположены в верхней части экрана. Из-за этого до них становится тяжелее дотянуться.
Фильтр в категории по умолчанию
При переходе в категорию по умолчанию видны не все товары, а первая из категорий. Причина применения такого фильтра не совсем понятна.
Скорость применения фильтров
Применение фильтров занимает достаточно долгое время. Это может вызвать раздражение, особенно если клиент пользуется ими часто.
Пересечение значений фильтров
Значения некоторых фильтров пересекаются между собой, затрудняя поиск нужного товара.
Деактивация полей с ценами
При переключении между полями с ценами происходит спонтанная деактивация. Чтобы скорректировать поле, приходится нажимать на него заново.
Символы рубля
При изменении цены в фильтрах к значению на какое-то время добавляется символ рубля, который затем пропадает. Скрытый смысл или просто баг?
Дополнительная навигация
Блок с навигацией вверху карточки с фильтрами излишний, а анимированное переключение категорий может отвлечь внимание и дезориентировать.
Категории с 1 фильтром
Часто встречаются категории лишь с 1 фильтром, названия которых фактически дублируют названия этого фильтра и не несут никакой дополнительной ценности.
Отображение бабблов
В главной карточке в формате бабблов отображается лишь часть фильтров. При этом переход к общему списку не интуитивен.
Затемнение экрана
При попытке смахнуть карточку фильтров экран затемнения не растворяется, а смахивается вместе с карточкой.
Сброс фильтров
При нажатии на кнопку сброса фильтров и смахивании карточки с фильтрами они фактически не сбрасываются, хотя это было бы ожидаемо.
Сортировка по рейтингу
Возможности отсортировать товары листинга по рейтингу нет (не потому ли, что оценок по товарам нет в принципе?)
Сортировка по размеру скидки
Сортировка по размеру скидки также не предусмотрена, хотя могла бы быть полезна для части клиентов, особенно в скидочных разделах.
7. Просмотр карточек товаров
Спектр характеристик
Список характеристик в карточках товаров сильно ограничен по сравнению с конкурентами. Это делает их относительно менее информативными.
Релевантность характеристик
Характеристики не всегда соответствуют типу товаров. Например, для садовых граблей минимальная и максимальная температура хранения – 0℃.
Информация по пищевой ценности
Пищевая ценность указывается не на всех продуктах питания. При этом в случае отсутствия блок с КБЖУ не скрывается и продолжает отображаться с прочерками.
Фото товара vs. реальность
По некоторым товарам фотографии не соответствуют действительности. В фото на примере масса — 1 килограмм, хотя фактический вес товара — 200 грамм.
Системный текст в описаниях
В описаниях товаров встречается системный текст HTML-разметки. На проверку качества текстов ресурса, видимо, не хватает.
Язык текстов
По некоторым товарам тексты описаний и составов представлены на английском. У части клиентов это может вызвать затруднение.
Контрастность описаний
Описания товаров выполнены в достаточно неконтрастном тексте. У части клиентов это может вызвать проблемы при чтении.
Качество фото
По многим товарам изображения загружены в плохом качестве и заметно пикселят. Особенно это видно при просмотре в формате галереи.
Подгрузка фото при прокрутке
Фото товара, вероятно, загружаются в момент прокрутки слайдера. Из-за этого появляется заметная задержка в их отображении при скролле.
Закрытие галереи
Для того чтобы закрыть карточку галереи смахиванием проходится проделать длинный путь: длина свайпа, необходимая для смахивания, слишком большая.
Кликабельность характеристик
Значения характеристик не кликабельны, хотя могли бы играть роль фильтров, тем самым упрощая клиенту навигацию по каталогу.
Допродажа
Upsell-блоки в карточках товаров не реализованы. Возможностью увеличить средний чек компания не пользуется.
Похожие товары
Блоков с похожими товарами в карточках также нет. В результате найти наиболее подходящий товар клиенту относительно труднее.
Избранное
Понравившийся или часто покупаемый товар нельзя добавить в избранное. Такой функционал в приложении в принципе не реализован.
Рейтинг и отзывы
Очень значительная доля клиентов принимают решение о покупке на основе рейтинга товара и отзывов покупателей. В приложении этой функции нет.
8. Авторизация
Автоподстановка телефона
Поле ввода не промаркировано, как phone number. Автоподстановка номера не срабатывает, и его приходится вводить вручную.
Ссылка на соглашение
Пользовательское соглашение в тексте согласия по умолчанию никак не выделено, хотя это ссылка. Форматирование появляется лишь при вводе номера телефона.
Формат соглашения
Пользовательское соглашение не оптимизировано под чтение с мобильного устройства. Более того, возможности приблизить текст документа нет.
Исчезновение placeholder’а
При вводе первой цифры placeholder исчезает полностью, хотя мог бы пропадать посимвольно по мере ввода номера телефона.
Placeholder при стирании
При полном стирании текста placeholder уже не отображается, хотя это было бы ожидаемой реакцией интерфейса.
Таймер повторной отправки кода
Таймер повторной отправки кода не снабжен текстом, поясняющим, до чего именно идёт отсчёт. Это может быть неинтуитивно для части клиентов.
Текст SMS с кодом
В SMS с проверочным кодом текст «MAGNIT» без необходимости дублируется в теле сообщения и названии отправителя.
Ручной ввод кода
При ручном вводе кода наблюдается мелькание автоподсказки и изменение положения кнопки повторной отправки кода.
Автоподстановка имени
Поле «Имя» не промаркировано, как First Name. Заполнять его пользователю придется вручную.
Дублирование placeholder’а
В поле «Имя» placeholder фактически дублирует заголовок, хотя при активации поля он мог бы уменьшаться в размерах и вставать на место заголовка.
Автоподстановка Email
Как и в случае с именем и телефоном, поле ввода email не промаркировано соответственно — клиент снова тратит время на ручной ввод.
Highlight активного поля
В форме ввода данных профиля активное поле, кроме курсора, никак не выделяется и привлекает относительно меньше внимания.
Регистр имени
При вводе имени текст по умолчанию пишется со строчной буквы, и клиенту отдельно приходится корректировать этот момент.
Переключение через return
Переключение через return между полями не работает, хотя данная реакция интерфейса была бы ожидаемой.
Прерывание процесса авторизации
На экране заполнения профиля нет элементов выхода. Если клиент решил не заполнять данные, вернуться можно, только выгрузив приложение из памяти.
Ввод года рождения
Если клиент вводит год в формате двух последних цифр, система это событие никак не обрабатывает и лишь выдает ошибку.
Пояснение для запроса email
В отличие от даты рождения, компания не поясняет, зачем ей email клиента и что он начнет получать после регистрации в программе лояльности.
Деактивация поля ввода даты
Хотя дата рождения состоит из фиксированного числа символов, при вводе восьмого символа поле не деактивируется — приходится делать это вручную.
Подключение бонусной карты
Создание бонусной карты не происходит автоматически при регистрации. Клиенту предлагают подождать.
Управление ожиданими по карте
Клиенту просто говорят, что скоро подключат карту. Но когда именно, уточнить забывают. Скоро — сегодня? Завтра? Через неделю? В этом году?
Push при добавлении карты
В блоке выше говорилось о том, что меня уведомят о подключении карты. Но когда это произошло, push я не получил — лишь случайно заметил в профиле.
Изменение блока с картой
Блок с картой в профиле никак визуально не изменился между состояниями, когда карты не было и когда она появилась. Хотя мог бы подсвечивать ее наличие.
9. Работа с корзиной
Разные корзины
Единая корзина в приложении не реализована. Собрать один заказ из разных магазинов не получится.
Необходимость авторизации
Чтобы добавить товар в корзину, необходимо авторизоваться. Возможности сделать гостевой заказ или войти уже на этапе оформления нет.
Расположение кнопки корзины
Карточки не выделяются на фоне, а кнопка корзины размещается ближе к другим карточкам, чем к контенту своей карточки. Это может ввести в заблуждение.
Скорость добавления
Клиенту приходится ждать ответа от системы по несколько секунд — каждый раз, когда он добавляет товар в корзину.
Добавление нескольких единиц
Задать число единиц товара текстом нельзя — лишь через кнопки. Представить трудно, что чувствуют владельцы кошек, решившие заказать 20-30 пачек корма.
Индикатор суммы заказа
В то время как в иконке корзины в таббаре можно было бы разместить сумму заказа, в ней отображается (менее полезное для клиента) число позиций.
Скорость загрузки корзины
При каждом переходе в корзину клиенту приходится ожидать её загрузки. Это резонно может вызвать раздражение.
Минимальная сумма заказа
В то время как Лента Онлайн запускает доставку от 500₽, в Магните заказать товары предлагают на сумму от 2,000₽. Разница значимая.
Цены за единицу товара
Цены за единицу товара никак не отличаются по виду от наименований, хотя могли бы быть визуально вторичными.
Форматирование скидок
Форматирование цен со скидкой по непонятным причинам различается и изменяется при корректировке состава заказа.
Стоимость доставки
Вместо того чтобы явно подсветить факт бесплатности доставки, ее стоимость установлена в размере 1₽. Строка с доставкой визуально теряется.
Highlight общей скидки
Хотя скидка и значительная, вместо того чтобы её подсветить, создав ощущение полученной выгоды, эта строка никак не выделяется и не привлекает внимание.
Размер бонусов
Клиенту начисляется 0.5% бонусами от суммы заказа. На фоне прочих сервисов, использующих кэшбэк, такое предложение выглядит «не очень выигрышно».
Разбиение по категориям
Товары в корзине отображаются единым списком, без разбиения по категориям. Это может усложнить проверку, если товаров в заказе много.
Допродажа
В отличие от большинства конкурентов, какие-либо блоки допродажи на уровне корзины в приложении не реализованы.
Отложенные товары
Решив отложить часть товаров на будущий заказ, клиент сталкивается с тем, что такой возможности нет. Единственный вариант — удалить их из корзины.
Активация поля с промокодом
При попытке ввести промокод поле ввода не активируется по умолчанию. Клиенту приходится делать это самостоятельно.
Брошенная корзина
Если клиент собрал корзину товаров, отвлекся и не перешёл к оформлению, его никак не побуждают это сделать (хотя push-уведомления включены).
10. Оформление заказа
Изменение адреса
В отличие от конкурентов, изменить адрес на этапе оформления заказа в приложении нельзя — приходится откатываться на несколько шагов назад.
Заказы на будущие даты
Сделать заказ предлагается только в рамках текущего дня. Заказать доставку заранее у клиента возможности нет.
Способ оплаты
Единственный способ оплаты — картой онлайн. Возможности не привязывать карту и оплатить картой или наличными в момент доставки нет.
Действия при отсутствии товара
Возможность заранее проинструктировать сборщиков о том, что делать, если товара нет в наличии, у Магнита отсутствует.
Раскладка клавиатуры
При вводе номера подъезда, домофона, квартиры, этажа клавиатура по умолчанию символьная, и в большинстве случаев её приходится переключать.
Переключение между полями
Нажатие на return для переключения между полями не поддерживается. Чтобы перейти к следующему полю, приходится каждый раз тянуться до него пальцем.
11. Ожидание доставки
Управление ожиданиями
Помимо highlight’а временного интервала, компания больше никак не управляет ожиданиями клиента по процессу доставки и дальнейшим коммуникациям.
Визуализация статуса
В отличие от аналогичных сервисов, статус заказа и процесс доставки никак не визуализируются. Это делает интерфейс менее вовлекающим.
Изменение состава заказа
Возможности изменить состав заказа после его оформления у клиента нет, даже если сборщики ещё не взяли заказ в обработку.
Допродажа в заказе
Если заказ можно было бы дополнять, его карточку также можно было бы использовать для допродажи комплементарных товаров, повышая средний чек.
Связь с курьером
Возможности связаться с курьером в рамках интерфейса заказа у клиента нет. Вся коммуникация ведётся через чат с поддержкой.
Кликабельность карточек
Карточки товаров в заказе некликабельны: если клиент решил посмотреть информацию о купленном товаре, его придётся искать в каталоге заново.
Отмена заказа
Возможность отменить заказ в интерфейсе в принципе отсутствует. Заказал? Будь добр получить — как бы ни поменялись твои планы.
Перенос сроков доставки
Аналогично ситуация обстоит и с изменением интервала доставки. Он железно устанавливается при оформлении и не может корректироваться в интерфейсе.
Опоздание vs. статус заказа
По окончании выбранного интервала доставки заказ продолжает висеть в статусе «оформлен». Только один этот пункт может поставить крест на лояльности.
Яндекс.Доставка?
Из внезапного push-уведомления я узнаю, что заказ доставят через Яндекс Go. Почему бы не уведомить меня заранее о том, что заказ доставляется партнёром?
Кто доставляет заказ
Тяжелый заказ из Магнита поручили доставлять… Алине? При всем уважении к равноправию полов заставлять женщину тащить тяжести — сурово.
Live activity
Функционал live activity в рамках приложения не предусмотрен, хотя с помощью него можно было бы динамически отражать статус доставки.
12. Оценка заказа
Оценка в контуре приложения
Возможности оценить заказ в приложении с оповещением через push у клиента нет, хотя уведомления включены. Для сбора фидбэка используется лишь email.
Маркетинговый email
Email с призывом оценить заказ маркируется почтовой службой, как маркетинговый: по умолчанию я не получаю никакого оповещения о том, что он пришел.
Логотип отправителя
В отличие от ряда других email’ов, аватар отправителя письма не содержит логотип компании, делая его менее заметным в общем списке.
Использование emoji
В случае если клиент получил негативный опыт, ржущий смайл в заголовке email может быть воспринят «не совсем так, как ожидалось».
Шкала оценки
10-балльная шкала оценки не несет никакой добавленной ценности относительно привычной 5-балльной и лишь перегружает интерфейс — особенно на мобильных.
Мобильная вёрстка
В мобильной версии вёрстка email «едет»: в отличие от дизлайка, текст лайка визуально оторван от иконки.
Реакция на оценку
После оценки у клиента не уточняют причины, не предлагают оставить комментарий и не благодарят — лишь переводят на страницу в сторе или сайт.
Оценка товаров в заказе
Индивидуальные товары в заказе оценить нельзя, хотя оценки могли бы использоваться для расчёта рейтинга товара в карточках и листинге.
13. Получение поддержки
График работы поддержки
Время работы службы поддержки, указанное в описании приложения в App Store и на экране поддержки различается.
Часовой пояс в графике работы
Часовой пояс в графике работы поддержки не указан. Учитывая, что сервис работает в 100+ городах, у части клиентов это может вызвать проблемы.
Связь через мессенджеры
Возможности связаться с поддержкой через мессенджер нет, хотя эта опция может быть удобной для значительной части клиентов.
Welcome-сообщение в чате
При переходе в чат из профиля клиента не приветствуют каким-либо welcome-сообщением. Все, что он видит — пустой экран.
Кнопка помощи
В карточке заказа кнопка «Помощь» выполнена светло-серым текстом и может быть воспринята частью клиентов, как неактивная.
Привязка поддержки к контексту
Клиент перешёл в чат с поддержкой, нажав на кнопку в карточке заказа. Однако чат-бот это не отслеживает и просит ввести номер заказа. Не надо так.
Копирование номера заказа
Еще больнее клиенту становится, когда он пытается скопировать номер заказа: такая функция не предусмотрена. Приходится его запоминать.
Скорость работы поддержки
Попытавшись отменить заказ, спустя более получаса после предоставления сотруднику поддержки его номера, ответа я так и не получил.
Спектр вопросов в FAQ
Спектр вопросов в FAQ очень узкий и покрывает лишь небольшую часть тематик, влияя тем самым на загруженность операторов колл-центра.
Структурирование раздела FAQ
Если покрываемых вопросов в разделе FAQ станет больше, их можно разбить по категориям, чтобы клиенту было легче найти нужный ответ.
14. Повторное использование
Повтор заказа
Если клиент делает регулярные покупки одного и того же состава товаров, в 1 касание повторить заказ не получится — нужно добавлять все товары заново.
Добавление товаров в корзину
Ещё одна палка в колеса при повторной покупке: заказ не просто нельзя повторить — товары из него нельзя быстро добавить в корзину.
Просмотр баланса бонусов
Клиент накапливает бонусы, но где посмотреть их текущий баланс — большой вопрос. Spoiler: в приложении я этой информации не нашёл.
Использование бонусов
Аналогично дела обстоят и с использованием баллов: накопить я их накопил, но как мне их списать? При оплате заказа нигде такой возможности нет.
Карта при посещении магазинов
Хотя карта лояльности и подключается к онлайн-заказам, карты со штрихкодом в приложении нет: при посещении магазина придётся диктовать 16-значный номер.
Редактирование способов оплаты
В отличие от большинства конкурентов, возможность редактирования способов оплаты в настройках профиля отсутствует.
Отвязывание банковской карты
Отвязать банковскую карту и удалить её из способов оплаты у клиента просто так не получится: необходимо отдельно писать в поддержку, причём не в чат, а на email.
Механики удержания
Кроме стандартных пушей с промокодами каких-либо более продвинутых механик удержания и побуждения к повторным заказам в приложении замечено не было.
To be continued…
Как видим, приложение Магнит Доставка пока что далеко от идеала, но в долгосрочной перспективе решает не то, какой ты сейчас, а то, насколько ты готов меняться у лучшему. Желаю коллегам, ответственным за приложение успехов на этом пути.
А если вам было интересно, буду рад, если поделитесь этим материалом с коллегами.
Свои новые материалы я анонсирую в Телеграм-канале. Подписывайтесь, если хотите их не пропускать. На связи.
Обсуждение
Похожее
Как создать сайт. Пошаговое руководство
Проектируем рейтинг и отзывы о товарах в приложении
Собираем портфолио на Readymag. Шаг первый — знакомство с шаблонами