В выходные выкатил 1.12 версию #getbetterapp:
• Добавлен уровень сложности (для тех, кто активно пишет или же пишет редко)
• Настройка времени пушей стала удобнее
• Добавлено количество постов по месяцам
https://apps.apple.com/us/app/id1522666671
• Добавлен уровень сложности (для тех, кто активно пишет или же пишет редко)
• Настройка времени пушей стала удобнее
• Добавлено количество постов по месяцам
https://apps.apple.com/us/app/id1522666671
Цифры
Ровно год назад стартовала разработка #getbetterapp.
Полгода назад (9.07.20) я выложил приложение в AppStore.
Сегодня произошла 1000 регистрация аккаунта.
Ура👏
Ровно год назад стартовала разработка #getbetterapp.
Полгода назад (9.07.20) я выложил приложение в AppStore.
Сегодня произошла 1000 регистрация аккаунта.
Ура👏
Раньше я очень любил обновлять софт
Меня завораживало, как ползут индикаторы загрузки, проценты обновления, как иконки на телефоне превращаются в "радар". Мне нравилось думать, что все мои программы становятся лучше.
Так было до того, как я стал разработчиком.
Теперь проблема версий влияет на работу, и лишний раз рисковать не хочется. По этой причине теперь я не спешу ставить мажорную версию ОС или IDE сразу после выхода, жду стабильной версии x.1. А еще лучше подождать, пока кто-то обновится и спросить — как у него, собирается ли проект.
Вот еще свежий пример. Обновил на днях в #GetBetterApp все поды, выкатил релиз в AppStore. И у меня перестала работать аналитика. Перечитал кучу форумов и stackoverflow. В итоге оказалось, что проблема в версии:
Меня завораживало, как ползут индикаторы загрузки, проценты обновления, как иконки на телефоне превращаются в "радар". Мне нравилось думать, что все мои программы становятся лучше.
Так было до того, как я стал разработчиком.
Теперь проблема версий влияет на работу, и лишний раз рисковать не хочется. По этой причине теперь я не спешу ставить мажорную версию ОС или IDE сразу после выхода, жду стабильной версии x.1. А еще лучше подождать, пока кто-то обновится и спросить — как у него, собирается ли проект.
Вот еще свежий пример. Обновил на днях в #GetBetterApp все поды, выкатил релиз в AppStore. И у меня перестала работать аналитика. Перечитал кучу форумов и stackoverflow. В итоге оказалось, что проблема в версии:
Firebase/Analytics 7.5.0 не работает, а на 7.3.0 все хорошо. Откатился и до следующего релиза буду жить без аналитики.Если бы #GetBetterApp были акциями, то вчера можно было бы фиксировать
Не знаю, с чем связан такой рост регистраций и использования. Возможно, с тем, что меня пригласили курировать студентов в мобильной лаборатории одного казанского ВУЗа.
Вчера была первая пара. У меня 11 человек, пришли 8. Рассказывали идеи своих будущих приложений. Идеи интересные: что-то завязано с тесную работу с другими юзерами, что-то должно по-умному работать с данными. Я все время выруливал беседу на вопрос — может уже есть аналог? Хороший research позволит сэкономить много сил на старте.
Приятно удивило, что несколько человек сказали, что сами напишут и поднимут бэк. Это круто, главное, чтобы мобилка была приоритетнее по вкладу и результату. Если вспомнить GetBetter, то Firebase сэкономил мне сотни часов разработки. С нуля до релизной версии прошло чуть больше 3 месяцев.
Не знаю, с чем связан такой рост регистраций и использования. Возможно, с тем, что меня пригласили курировать студентов в мобильной лаборатории одного казанского ВУЗа.
Вчера была первая пара. У меня 11 человек, пришли 8. Рассказывали идеи своих будущих приложений. Идеи интересные: что-то завязано с тесную работу с другими юзерами, что-то должно по-умному работать с данными. Я все время выруливал беседу на вопрос — может уже есть аналог? Хороший research позволит сэкономить много сил на старте.
Приятно удивило, что несколько человек сказали, что сами напишут и поднимут бэк. Это круто, главное, чтобы мобилка была приоритетнее по вкладу и результату. Если вспомнить GetBetter, то Firebase сэкономил мне сотни часов разработки. С нуля до релизной версии прошло чуть больше 3 месяцев.
Наткнулся на vc.ru на пост Clubhouse - почему я не буду там регистрироваться (cutt.ly/Ulz66aO) и делюсь с вами, так как он точно описал мои ощущения.
Вокруг уже СЛИШКОМ МНОГО информации и залетать на еще один огонёк нет желания. Для работы и жизни нужно узнать еще очень много, и впитывать что-то рандомное мне кажется пустой тратой времени.
Да, в Clubhouse интересно (наверно), да, это хайп и модно. Но очень маловероятно, что это будет полезно.
По тем же причинам я не ставил себе TikTok (недавно сдался, так как Технократия завела себе акк, но позже снова удалил). В Instagram захожу раз в день. Лента ВК вообще каждый раз только портит настроение.
С некоторой периодичностью чищу подписки в youtube и телеге.
К следующей аттестации в Технократии надо подтянуть матчасть. Всегда есть чем заняться на пет-проектах. Есть дела по написанию учебной программы для iOS-стажеров. Для разгрузки мозгов есть UFC и FIFA (2-4 часа в неделю), и, конечно, футбол (четверг мой любимый день недели).
А еще, конечно, печатные книги. В них нет оповещений и это прекрасно.
Вокруг уже СЛИШКОМ МНОГО информации и залетать на еще один огонёк нет желания. Для работы и жизни нужно узнать еще очень много, и впитывать что-то рандомное мне кажется пустой тратой времени.
Да, в Clubhouse интересно (наверно), да, это хайп и модно. Но очень маловероятно, что это будет полезно.
По тем же причинам я не ставил себе TikTok (недавно сдался, так как Технократия завела себе акк, но позже снова удалил). В Instagram захожу раз в день. Лента ВК вообще каждый раз только портит настроение.
С некоторой периодичностью чищу подписки в youtube и телеге.
К следующей аттестации в Технократии надо подтянуть матчасть. Всегда есть чем заняться на пет-проектах. Есть дела по написанию учебной программы для iOS-стажеров. Для разгрузки мозгов есть UFC и FIFA (2-4 часа в неделю), и, конечно, футбол (четверг мой любимый день недели).
А еще, конечно, печатные книги. В них нет оповещений и это прекрасно.
vc.ru
Clubhouse - почему я не буду там регистрироваться — Личный опыт на vc.ru
Я думаю сейчас все слышали о новой социальной сети Clubhouse. Это чистый хайп. Инвайты разлетаются, как горячие пирожки. Люди пишут восторженные отзывы и рассказывают почему стоит там зарегистрироваться.
Баг с удалением своего аккаунта
Один пользователь #GetBetterApp написал мне письмо: "Прошу сообщить, почему не удаётся удалить аккаунт в приложении GetBetter? Выдаёт ошибку." Я попросил скриншот ошибки, а сам запустил проект, чтобы воспроизвести ошибку. Создал анонимный аккаунт, жму "удалить" — все работает.
Приходит письмо со скриншотом. Ага, значит требуется повторная аутентификация. Читаю документацию: для критических действий требуется, чтобы пользователь недавно вошел в систему (менее 5 минут назад).
Давайте пофиксим этот баг 👇
Один пользователь #GetBetterApp написал мне письмо: "Прошу сообщить, почему не удаётся удалить аккаунт в приложении GetBetter? Выдаёт ошибку." Я попросил скриншот ошибки, а сам запустил проект, чтобы воспроизвести ошибку. Создал анонимный аккаунт, жму "удалить" — все работает.
Приходит письмо со скриншотом. Ага, значит требуется повторная аутентификация. Читаю документацию: для критических действий требуется, чтобы пользователь недавно вошел в систему (менее 5 минут назад).
Давайте пофиксим этот баг 👇
Мапим ошибку Firebase на case
Показываем алерт с TextField для пароля. Далее используем пароль для создания credentials:
guard
Далее отправляем новый запрос:
и если ошибка, то dismiss алерта и просьба начать заново.
Если же все ок, то снова пробуем
Фикс выкатил в версии 1.14 #GetBetterApp
.requiresRecentLogin и показываем понятное русское описание: "Для продолжения нужно снова авторизоваться".Показываем алерт с TextField для пароля. Далее используем пароль для создания credentials:
guard
let email = user.email else { return }
let credential = EmailAuthProvider.credential(withEmail: email, password: password)Далее отправляем новый запрос:
user.reauthenticate(with: credential) { _, error in }и если ошибка, то dismiss алерта и просьба начать заново.
Если же все ок, то снова пробуем
user.delete(completion: { error in }Фикс выкатил в версии 1.14 #GetBetterApp
Я уже писал, что в этом году планировал сделать #GetBetterApp платным. Долго размышлял, как лучше это сделать, как сообщить пользователям, когда изменить цену. Подписки мне не нравятся, единовременная оплата — самое то. Если просишь денег — предлагай что-то взамен.
Итоги размышлений такие:
Ориентировочные сроки выхода — июнь 2021.
До тех пор приложение можно скачать бесплатно. Бесплатным оно останется и для ранних пользователей.
С выходом версии 2.0 GetBetter будет стоить 99 рублей.
Планы на новую версию:
• Редизайн раздела Колесо Жизни
• Выбор фото через камеру или галерею
• Возможность загрузить несколько фото в один пост
• Новые ачивки и алерты при их достижении
• Новые Советы Дня, редизайн списка советов и просмотрщика
• 1000 символов вместо 300 в посте
• Умный поиск в Дневнике
• График изменения Колеса Жизни
• Английский язык в приложении
Есть публичное обещание и сроки. Осталось все это сделать😅
Итоги размышлений такие:
Ориентировочные сроки выхода — июнь 2021.
До тех пор приложение можно скачать бесплатно. Бесплатным оно останется и для ранних пользователей.
С выходом версии 2.0 GetBetter будет стоить 99 рублей.
Планы на новую версию:
• Редизайн раздела Колесо Жизни
• Выбор фото через камеру или галерею
• Возможность загрузить несколько фото в один пост
• Новые ачивки и алерты при их достижении
• Новые Советы Дня, редизайн списка советов и просмотрщика
• 1000 символов вместо 300 в посте
• Умный поиск в Дневнике
• График изменения Колеса Жизни
• Английский язык в приложении
Есть публичное обещание и сроки. Осталось все это сделать😅
Итак, прошел почти месяц. За это время сделано:
• Редизайн моих Советов Дня
• Загруженные данные сохраняются на устройстве и доступны без сети
• 1000 символов вместо 300 в посте
• Выбор фото через камеру или галерею
• Фильтры для фото
• Можно загрузить несколько фото в один пост
• Галерея для просмотра фото в посте• Мне нравится писать большие посты и в итоге даже 1000 символов оказалось недостаточно. Увеличил лимит до 2000.
• Переписал логику для редактирования постов. Самое сложное было учесть все нюансы с удалением и загрузкой фотографий: продумать UI и загрузку на сервер. Тестил несколько недель — все стабильно работает.
• Один из пользователей предложил идею не прибавлять баллы за некоторые посты. Реализовано, в том числе можно отредактировать старые посты.
• Добавил поиск в дневнике. Пока сырой UI, и не совсем верно флоу работает. Допилю позже.
По редизайну колеса жизни — пока на это совершенно нет времени. Так что, скорее всего, я доделаю основные пользовательские фичи и на этом остановлюсь. Иначе релиз 2.0 отодвинется до осени или позже.
Пока что планируемый срок — конец мая, начало июня.
• Переписал логику для редактирования постов. Самое сложное было учесть все нюансы с удалением и загрузкой фотографий: продумать UI и загрузку на сервер. Тестил несколько недель — все стабильно работает.
• Один из пользователей предложил идею не прибавлять баллы за некоторые посты. Реализовано, в том числе можно отредактировать старые посты.
• Добавил поиск в дневнике. Пока сырой UI, и не совсем верно флоу работает. Допилю позже.
По редизайну колеса жизни — пока на это совершенно нет времени. Так что, скорее всего, я доделаю основные пользовательские фичи и на этом остановлюсь. Иначе релиз 2.0 отодвинется до осени или позже.
Пока что планируемый срок — конец мая, начало июня.
Версия 2.0 в AppStore.
Подведем итоги.
Начал 7 марта, закончил 23 мая.
39 коммитов, изменено 130 файлов.
В строчках кода: +3,824 −2,173.
Сам ipa-файл кстати стал легче (26 против 33 Мб).
Сделано:
• Редизайн списка моих Советов Дня
• Кеширование данных
• 2000 символов в посте (ну да, это было изи)
• Выбор фото через камеру или галерею
• Фильтры для фото
• Можно загрузить несколько фото в один пост
• Галерея для просмотра фото в посте
• Добавлена возможность не прибавлять баллы за пост
• Поиск по тексту, сфере, дате в Дневнике
• Английский язык в приложении (вынес весь харкод в ресурсы)
• Многочисленные улучшения и исправления
GetBetter теперь поддерживает английский и в en-сторах, там он зовется GetBetterApp. Спасибо Леше за новую иконку и маркет скрины.
Как и писал ранее, теперь приложение платное.
Подведем итоги.
Начал 7 марта, закончил 23 мая.
39 коммитов, изменено 130 файлов.
В строчках кода: +3,824 −2,173.
Сам ipa-файл кстати стал легче (26 против 33 Мб).
Сделано:
• Редизайн списка моих Советов Дня
• Кеширование данных
• 2000 символов в посте (ну да, это было изи)
• Выбор фото через камеру или галерею
• Фильтры для фото
• Можно загрузить несколько фото в один пост
• Галерея для просмотра фото в посте
• Добавлена возможность не прибавлять баллы за пост
• Поиск по тексту, сфере, дате в Дневнике
• Английский язык в приложении (вынес весь харкод в ресурсы)
• Многочисленные улучшения и исправления
GetBetter теперь поддерживает английский и в en-сторах, там он зовется GetBetterApp. Спасибо Леше за новую иконку и маркет скрины.
Как и писал ранее, теперь приложение платное.
Auto-renewable Subscriptions
Вчера посмотрел доклад Саши Зимина "История одного pet-проекта". В нем он рассказывал об идее своего приложения, трудностях на пути к окупаемости и выбранной бизнес-модели.
Платная версия GetBetter в сторе уже 2 недели, но продаж почти нет, ровно как и новых регистраций.
Как бы я не относился к модели монетизации через подписки, вынужден признать, что для большинства проектов она более выгодна (а порой и единственно возможная, если проект хочет зарабатывать). Несколько приложений-конкурентов работают именно по модели подписки с автоматическим продлением.
Вместе с тем планирую сделать, что приложением можно будет пользоваться и бесплатно, но в ограниченном виде (без советов дня, без возможности грузить фото, без детальной аналитики в будущем).
Вот такая гипотеза. Надо проверять.
Вчера посмотрел доклад Саши Зимина "История одного pet-проекта". В нем он рассказывал об идее своего приложения, трудностях на пути к окупаемости и выбранной бизнес-модели.
Платная версия GetBetter в сторе уже 2 недели, но продаж почти нет, ровно как и новых регистраций.
Как бы я не относился к модели монетизации через подписки, вынужден признать, что для большинства проектов она более выгодна (а порой и единственно возможная, если проект хочет зарабатывать). Несколько приложений-конкурентов работают именно по модели подписки с автоматическим продлением.
Вместе с тем планирую сделать, что приложением можно будет пользоваться и бесплатно, но в ограниченном виде (без советов дня, без возможности грузить фото, без детальной аналитики в будущем).
Вот такая гипотеза. Надо проверять.
Первые проблемы
У GetBetter были высокие оценки (18 пятерок и отзывы). Но совсем недавно оно получило две единицы. В одном отзыве пользователь жаловался, что категории "нельзя редактировать". Я изначально хотел минимум кастомизации. Вот правила, ты по ним играешь. Я изначально ориентировался на самую популярную схему колеса жизни из 8 сфер.
Второй отзыв был о том, что "невозможно зайти в приложение". Я написал человеку, но без ответа. Тогда я добавил кнопку "написать разработчику" на экране регистрации, чтобы человек сразу мог писать мне в телегу.
И через пару дней написала девушка с той же проблемой. "Не могу зарегистрироваться." Я начал гуглить ошибку, люди в сети обсуждали ее, но все их советы по настройкам Firebase уже были сделаны мной ранее. Девушка прислала скриншот, и меня смутил оператор связи. Погуглил — он работает в Севастополе и Крыму. Вот в чем причина траблов! Firebase — это гугловый сервис, санкции и все такое.
Выкатил новую сборку с дикслеймером для крымчан, чтобы пользовались VPN.
У GetBetter были высокие оценки (18 пятерок и отзывы). Но совсем недавно оно получило две единицы. В одном отзыве пользователь жаловался, что категории "нельзя редактировать". Я изначально хотел минимум кастомизации. Вот правила, ты по ним играешь. Я изначально ориентировался на самую популярную схему колеса жизни из 8 сфер.
Второй отзыв был о том, что "невозможно зайти в приложение". Я написал человеку, но без ответа. Тогда я добавил кнопку "написать разработчику" на экране регистрации, чтобы человек сразу мог писать мне в телегу.
И через пару дней написала девушка с той же проблемой. "Не могу зарегистрироваться." Я начал гуглить ошибку, люди в сети обсуждали ее, но все их советы по настройкам Firebase уже были сделаны мной ранее. Девушка прислала скриншот, и меня смутил оператор связи. Погуглил — он работает в Севастополе и Крыму. Вот в чем причина траблов! Firebase — это гугловый сервис, санкции и все такое.
Выкатил новую сборку с дикслеймером для крымчан, чтобы пользовались VPN.