Господи, как долго я мечтал написать сюда этот пост 😍
Поехали 🛫
Оно мне надо?
Вам знакомо чувство, что вы пишете пет, вы такие заряженные и креативные, а через неделю вы понимаете, это все точно уйдет в стол? 😕
Так вот, полюс.ноль - это первый мой проект, с которым у меня не случилось такого ощущения. Я ПОВЕРИЛ в него 😏
О чем это?
Вкратце: полюс.ноль - это конструктор-дневник, который позволяет не только и не столько запоминать, что было интересного сегодня (с этим справится любой Notes), а скорее:
- помогает глубоко рефлексировать 👁️
- пытаться замечать неочевидные зависимости между тем, что мы делаем, и тем, что чувствуем 👀
- помогает придерживатся своих принципов 📃
- помогает задавать самому себе правильные вопросы (с небольшой щепоткой ИИ) 🤔
В этом и суть названия: если взглянуть на компас - там 4 направления. Меня же интересовал сугубо центр - поиск себя.
Мои траблы
У меня была банальная проблема: сегодня я живу с одним вектором развития, завтра - с другим, послезавтра - с третьим. Полная каша 🤪
Потом у меня добавились панические атаки и я решил, что мне точно нужен какой-то способ "удерживать ноги на земле".
Плюс я нигде не видел именно конструктор, чтобы мне давали возможность самому составлять форму своей рефлексии.
Так я года 3 назад и начал его писать ✍️
Вдохновился, воодушевился, даже жене своей не рассказывал, что именно делаю.
Базовая идея
Мысль была супер проста. Я хотел записывать и понимать, что я делаю, и как это влияет на мое состояние. 😌
Мне нужно было дать возможность создавать факторы (то, что я делаю) и состояния (то, что я чувствую). Причем акцент был сделан не на текстовые поля, а на числовые и бинарные. Иначе как я посчитаю зависимость?
Пример: стресс на работе (фактор) - 5 баллов, чувство опустошения (состояние) - 5 баллов.
Потом добавить это все на одну форму. Сохранить. Обсчитать. Показать результат.
Есть даже видос, где я объясняю, как работала первая версия.
Стэк, куча, связный список
Т.к. я рубист, выбор технологий был для меня очевидным.
- Rails 🛤️
- Ruby 💎
- Telegram Bot Ruby gem 🤖
- MongoDb (ниже расскажу, почему именно монга) ⛺️
- React ⚛️
- TailwindCSS 💅
- Digital Ocean 🌊
- Capistrano (да, в 2к24).
Я делал все на server rendering кроме сложных страниц, где мне помогал React. Но позже я отказался от него в пользу более интересной и перспективной технологии (читай ниже).
Почему MongoDB?
Для рубистов это не самый частый выбор, но мне нужна была технология, которая
- позволит гибко составлять дочерне-родительские связи.
Вот у меня есть рефлексия, в ней есть результаты факторов (ссылка на фактор + значение сегодня) и состояний (ссылка на состояние + значение сегодня).
Можно использовать JOIN таблицы в реляционке, а можно не дурить себе голову и сделать просто:
{
"reflection_id": "25",
"factors": [
{
"id": 100,
"value": 5
}
]
}
- позволит удобно менять схему в гибком к требованиям и идеям проекте;
- это новая для меня технология, которую хотелось пощупать.
Почему Telegram Bot
Я считаю себя вменяемым человеком 😅 и осознаю, что веб не должен быть единственным вариантом, а так как я не умел не то, что в Swift/Kotlin, а даже в мобильную верстку, я заюзал телеграм бота, чтобы в нем можно было рефлексировать и получать себе напоминания о принципах.
Это работает до сих пор 🧸
Чем хуже, тем лучше
Спустя несколько месяцев работы в свободное время, я сделал первую версию, торжественно собрал жену и друзей за одним столом, включил камеру и начал ПИТЧИТЬ.
В тот момент я понял, что я неправильно вообще рассказал идею, потому что меня поняли, как будто это просто трекер привычек.
Потом я стал делать акцент, что это все больше про кукуху все-таки 😅
Не просто сложно, а п##дец как сложно
У меня была пипец какая сложная схема, как добавлять себе в страницу рефлексии эти факторы и состояния для трекинга.
НИКТО не мог понять, как это работает. Все только говорили, что должно быть ПРОЩЕ.
Но потом я придумал, как это сделать. Стало лучше, но неидеально до сих пор 😅
УТП (или почему не Notion/Excel)
- факторы/состояния/вопросы существуют не только личные, но и публичные. то есть можно посмотреть (если человек делится), какие вопросы и факторы/состояния трекают другие. своего рода соцсеть / коммьюнити и вдохновение.
- зависимость меджу факторами и состояниями считается автоматически. не нужно писать специальных формул и менеджить, что с чем должно коррелировать.
- в рамках рефлексии можно пользоваться ИИ для вопросов, чтобы углубить анализ. могу сказать, что сам пользуюсь и ИИ действительно помогает задать дополнительные вопросы, которые еще больше заставляют задуматься.
- есть правила/принципы, которые напоминают тебе, кем ты хочешь стать, которые приходят в ТГ бот.
- есть геймификация: за рефлексии и напоминания о правилах можно получать очки, а за пропуск рефлексий - терять. очки влияют на твой уровень. банально и просто - но с чего-то надо начать. можно подумать про ачивки и всякие лейблы.
Ренессанс
После какого-то времени я осознал, что сложные UX вещи надо переписать, заодно применив свои новые знания по фронту.
HTML Over The Wire
В то время как раз вышел Hotwire от Rails. Почитайте, если интересно. Вкртаце, это штука, которая отправляет AJAX запросы на сервер, и присылает готовый HTML, который вставляется в нужное место на странице, заменяя или расширяя текущие элементы/списки.
Я выбросил React, взял UI библиотеку Preline.
Это дало мне такой виток вдохновения, что я не мог оторваться!
Вопросики к ChatGPT?
Также я решил заменить текстовые факторы на другую сущность - вопросы. А потом, во время прогулки, придумал, что ответы на вопросы можно скармливать ChatGPT, и получать новые вопросы для углубления рефлексии 😌
Я прям кайфнул от этой идеи и сделал ее буквально за вечер 😄
Лендос
Preline позволил по-новому взглянуть на фронтенд.
Я мечтал сделать хотя бы один лендинг в своей жизни, и теперь я смог это сделать.
Ничего особенного, но кайф получил.
Интернационализация
Ох, как мне здесь помог ChatGPT. Я тупо скармливал ему свои YAML-ики с переводами и получал назад готовые YAML-ики. Надо было немного проверить и подкорректировать.
Stripe
Я был так воодушевлен, что даже завел себе Stripe и мой друг купил у меня подписку 😅
А потом я прочитал статью, как чела зачарджили в ОАЭ на 10к$ за то, что тот не захендлил VAT. Оказалось, что Stripe не хендлит налоги в странах продажи.
А я и не думал даже про это 😔
Прикрыл пока это дело до тех пор, пока не разберусь. Если есть идеи/соображения по этому поводу, поделитесь, пожалуйста 🙏
Маркетинг
Вначале я вообще не планировал, что этим будет кто-то пользоваться, а потом у меня появился азарт. А почему нет?
Ниже расскажу, что я пробовал.
Tik Tok
Я придумал делать короткие видео с глубокими вопросами, которые бы потом вели на мой пет, но создание видео ( даже коротких ) - это ОЧЕНЬ долго. Поэтому этот вариант пока на паузе.
У меня не очень много подписичков, но я рассказываю о своем проекте иногда. Не уверен, что кто-то пришел оттуда 😅
Недавно сделал промо-сториз в инстаграм. Так рассказал более широкому кругу людей про проект.
При том, что сториз глядело в районе 80 человек - хоть как-то отреагировало человек 5-7.
Возможно, я плохо дал понять, что вообще происходит, и люди подумали, что я просто рассказываю про чей-то проект.
YouTube
Начал вести небольшой блог со своими мыслями. Смотрят в основном друзья 👀 В принципе, все по классике
Reddit, ProductHunt, прямая реклама
До этого я пока не дорос 😕
Над чем работаю сейчас?
Сейчас работаю над тем, чтобы еще упростить UX, немного над дизайном, чтобы просто стало еще аккуратнее.
Очень ценю фидбек первых пользователей и как можно быстрее пытаюсь улучшать. К примеру, по совету одного из пользователей недавно ссылку, с объяснением как работает рефлексия, перенес из футера в самые видные места.
в целом хочется какого-то онбординга по ходу знакомства. мануал почитать это прикольно, но уже не модно. сейчас знакомство с фичей обычно встраивают в юзерфлоу. люди уже ждут, что щас их за ручку проведут и все тут покажут.
я ввела код, бот ответил "lets go". сижу и думаю, либо следующие сообщения не долетели еще, либо на этом все, дальше сама.
короче, хочется добавить какой-то заботы и уюта для пользователя. тем более в приложении для рефлексии — человек решает позаботиться о себе, и приложение по идее дает ему инструменты, но как-то холодно.
Ух, как-то тяжело сразу въехать, но больше всего похоже на self-reflection/mood journal, аудитория которых пользуется чем-то вроде Notion.
Была мысль тоже искать какие-то корреляции между тем, что происходило, и тем, как я в целом себя чувствовал в этот период, но в итоге... победила лень :(
С точки зрения UI вот этот вариант шаблона показался прикольным, где всё на одном экране:
https://poonamsharma.gumroad.com/l/eaikk?layout=profile
Если представить веб-сервис, в котором для каждого дня будет сформирован автоматический «контекст дня» через API:
— Sleep tracker
— Health apps (Welltory, etc)
— Fitness app
— Weather
— RSS (News, etc)
...то мне останется лишь выдать всему этому оценку или подсветить что-то от себя вручную. Наверное, такой вариант бы мог зайти большинству самоедов, которые уже пользуются чем-то подобным.
В плане фич уверен, что сейчас есть прикольные затеи, но одновременно кажется, что это скорее минус из-за высокого порога вхождения.
P.S. Письма с подтверждением летят в спам gmail, хотя проверку проходят: Why is this message in spam? Lots of messages from zeropole.app were identified as spam in the past.
Привет, а у меня не открывается!
Лендос супер, очень вдохновило, но!
Тут ошибка! В 2024 наоборот телефоны больше будут не нужны! (это отсылка на мои новогодние предсказания😁)
Вообще конечно телеграм наверное не самая удачная платформа) не у всех он есть и не все его используют часто/имеют на смартфоне.
Если задумаешься о написании приложеньки — стучись, помогу)
Так и не понял для чего и что делать придется. Кажется дополнительно нужен маленький блок текста с супер простым и понятным описанием.
Пойду открою посмотрю.
зарегалась. хотела написать в телегу, но, возможно, ты сменил ник и не получается найти контакт, поэтому напишу тут.
после регистрации и авторизации перекинуло в настройки и тут просят установить ЧП. а зачем? с точки зрения UX хорошо будет пояснить, что это даст юзеру...
далее кнопка "Как это работает" почему-то не редиректит никуда, хотя ссылка-то там есть... хз.
код подключения к боту, честно говоря, выглядит страшно без пояснений опять же. как будто мне надо будет самой подключать какое-то api куда-то и всё такое - выглядит сложно и может поэтому оттолкнуть.
Вместо Stripe можно попробовать lemonsqueezy, они как раз выступают по сути стором для клиента, беря на себя все детали по налогам и прочему. Ну и по отзывам на индихакерс, они всякие saas любят
У меня что-то не работает( после #start ничего не пишет