
Все вокруг хвалят Supabase за скорость. И да, я тоже повелся. Как бэкендера меня поначалу знатно корежило от того, что фронт ходит тупо прямиком в базу. Но ради быстрой доставки фичей я зажмурился.
Спойлер: пилится-то всё реально быстро. Только потом ты ловишь тихие баги, пропадающие логи и жесткий вендор-лок. Я собрал на Supabase уже несколько проектов и успел поседеть.
Короче, вот за что вы будете страдать на бесплатном тарифе (да и не только на нем).
Логи.Их просто нет
Точнее, они живут ровно 24 часа. Упало что-то в пятницу вечеро - в понедельник с утра ты дебажишь святым духом. Встроенный поиск это вообще кровь из глаз. Без какого-нибудь Datadog или Logflare там тупо не выжить.
Edge-функции и проклятые холодные старты
Это отдельный котел. Писать надо на Deno, так что половина привычных npm-пакетов идет лесом. Лимиты на вызовы жесткие, долгую таску не запустить. Но самое бесячее — холодные старты. Пока поднимется пул коннектов к базе, проходит до трех секунд. В моем сервисе post-cooler.ru edge-функция отдает HTML для линк-страничек. Я смотрю в метрики и плачу: кликов куча, а дожидаются загрузки единицы. Конверсия просто умирает на этапе бесконечного лоадера.
Палево с доменами в OAuth
Юзер логинится через Google, а в окне авторизации торчит <project-id>.supabase.co. Я когда делал photo math, целый час дебажил эту хрень. Думал, что сам где-то накосячил — на локалке-то всё выглядело нормально! Оказалось, не баг, а фича. Хочешь свой домен? Плати.
Хаос со схемами БД
Экспорт схем из дашборда выпилили еще в 2025 году. Сейчас помогаю проекту the-signal переехать на селф-хост. До этого код там писали vibe-кодеры, которые вообще не парились про миграции. Вытащить дамп схемы из облака было той еще болью. Без жесткой дисциплины база очень быстро превращается в неуправляемую помойку.
Тормоза локальной разработки
Я постоянно прыгаю между проектами. И каждый гребаный раз supabase start лезет тянуть свежие Docker-образы. Поднимает 10+ контейнеров, а ты сидишь и тупишь в терминал. Весь кайф от "быстрой" разработки улетучивается.
Тихие RLS-ошибкиRLS (Row Level Security) ошибается молча.
Накосячил в политиках? БД тебе не скажет. UPDATE просто вернет 0 affected rows, а SELECT подтянет половину данных.
Транзакции и боль SQL-функций
Через REST API нельзя сделать нормальную транзакцию на несколько таблиц. Нужно атомарно создать юзера, профиль и настройки? Обломись. У меня пока ничего не отвалилось, но я с ужасом жду, когда в базе начнут копиться "осиротевшие" записи.Чтобы это обойти, приходится писать логику на PL/pgSQL прямо в базе. Редактор там примитивный, автокомплита толком нет и дебажить то еще удовольствие.
Вендор-лок
Клиентский SDK намертво завязан на специфичный синтаксис PostgREST и их собственные токены. Если однажды решишь переехать на нормальный самописный бэк: придется рефакторить вообще весь клиентский код.
Короче. Для MVP или пет-проекта, чтобы просто проверить гипотезу на коленке - это топ. Да, часть этих костылей можно вылечить, если закинуть денег и перейти на платную версию. Но возникает резонный вопрос: за те же 25 баксов в месяц можно спокойно поднять Supabase на нормальной VPS-ке и вообще забыть про лимиты.
Кто еще сидит на Supabase или Firebase? С чем боретесь? И есть тут те, кто уже психанул и переехал на свой бэк?
Дебаж 🐞с ноги 🦶
Мой дорогой Флики улетел, но обещал вернуться, Грым волею мастера завершил кампанию, получил повышение и отправился наносить разумное, доброе, вечное на новое место службы... Пришло время подумать о персонаже для предстоящего ваншота. Условия: 7 уровень, разрешён мультикласс; на выбор - 2 "необычных" магических предмета и стартовая экипировка класса, либо 1 магический предмет и 1000 золотых на закупку.

Йорг из клана Кованый Щит
За свою жизнь мне довелось изрядно попутешествовать. Родители хотели, чтобы я продолжил семейное дело и заменил у горна отца, когда тому станет тяжело держать в руках кузнечный молот. Но, хотя я и перенял у него любовь к работе с металлом, вскорости мне стало понятно, что душа моя не лежит к этому, без сомнения, уважаемому занятию. Помнится, отец, узнав, что я не хочу становиться кузнецом, осерчал и дал мне пару добродушных зуботычин, сломав челюсть и несколько рёбер, но я настоял на своём.
Сначала я нанимался в торговые караваны охранником, выбирая наиболее протяженные маршруты, а позже, подкопив деньжат, решил и сам заняться торговлей. Родичи радовались невиданным в наших краях тканям тонкой выделки, и со временем я приобрёл определённую репутацию и уважение в нашем клане. Стоит сказать, что в каждом городишке, где мне довелось побывать, я покупал какую-нибудь памятную вещицу, и с годами накопил изрядное количество безделушек, на которые любил порой любоваться, покуривая вечерами трубку. Так и проходила моя жизнь: разъезды, торговля, дорога… Чего только не случалось в пути; я не упускал возможности поболтать со спутниками и выучился паре магических ухваток, незнакомых моему батюшке, а как-то раз (по пьяни, чего греха таить) даже получил посвящение какому-то богу (убей, не помню, кому именно; но с тех пор, беря по старой памяти в руки молот, я ощущал порой чей-то добродушный интерес, а поделки, выходившие из моих рук, были прочнее, чем им полагалось бы быть). В дороге же я повстречал и свою жену, прекрасную Артин, и вскоре у нас родилась первая двойня. Так без малого четыре сотни лет я колесил по дорогам, а дома меня ждала семья.
Но ничто не длится вечно. Полученная в случайной стычке рана загнила, и заражение не удавалось установить, несмотря на старания отрядного медика. На моё счастье, с караваном ехал колдун-некромансер. Ему удалось поймать мою ускользающую из сдающего тела душу. Сделанную на скорую руку филактерию передали моим детям и внукам, а те, подумав, оплатили услуги городского мага, который создал для меня новое, механическое тело. Увы, работа по «особому заказу» заняла почти пять лет; за это время партнёры разорвали заключённые мной контакты, супруга тихо угасла от старости, а почти все мои сбережения ушли на оплату редких материалов и работы человеческих магусов – наши мастера не могли выполнить такую филигранную работу. Вновь осознав себя и освоив возможности механического тела, которому не требуются еда и сон (нужно лишь периодически смазывать пружины и подтягивать крепления), я решил, что новую жизнь проведу так, как всегда мечтал – в путешествиях, в поисках приключений. Ну а деньги, коль скоро те осядут сверх необходимого в моих карманах, стану отсылать домой.

Дальше - "техническая часть"
Раса: кованый. Рост: 188 см. Вес: 130 кг. Базовая скорость: 30 фт.
Класс: изобретатель-бронник (5), жрец, домен Кузни (1), волшебник (1)
Ячейки: 4 1-го уровня, 3 2-го уровня, 2 3-го.
Известно: 4 инфузии (2 активн.), 2 + 3 + 3 = 8 заговоров, 6 заклинаний 1+2 уровня изобретателя, 3 заклинания 1-го уровня жреца, 5 заклинаний 1-го уровня волшебника.
Языки: общий, дварфийский (предыстория), гномий (+1 от расы), машинная речь (раса).
Спаcброски: Телосложение, Интеллект.
Навыки: Внимательность (раса), Выживание, Скрытность (предыстория), Магия, Анализ (изобретатель).
Доспехи: Лёгкие доспехи, Средние доспехи, Тяжёлые доспехи (домен Кузни), Щиты.
Оружие: Простое оружие.
Владение инструментами: воровские, жестянщика, ткача (изобретатель), кузнечные (домен Кузни).
Предыстория: Разорённый, + черта "Крепкий" (+2 хр на уровень).
ХР: (8+3+2) + (5+3+2) + (5+3+2) + (5+3+2) + (5+3+2) + (5+3+2) + (4+3+2) = 72.
АС: 17 (наборный доспех) + 2 (щит) + 1 (раса) + 1 (домен Кузни) + 1 (Плащ защиты, настройка) + 1 (инфузия на щит) = 23.
Кости хитов: 5d8+1d8+1d6 = 6d8 + 1d6.
Расовые особенности: нельзя есть, спать или дышать; невосприимчивость к ядам и болезням; при этом - нельзя пить зелья и получать бонусы от пищи, а магическое лечение восстанавливает только половину хитов.

Хотел утанковаться, как несложно догадаться :) Как мне видятся плюсы: умеренно жирненький для своего уровня. Черта "Крепкий" частично компенсирует небольшие кубы здоровья (d8/d6). Высокий класс брони, заклинания Щит и Щит веры позволяют в моменте получить до 30 AC. При этом ячеек заклинаний достаточно много, чтобы и бафы накинуть, и союзников подлечить; 1 ячейку можно восстановить на коротком отдыхе благодаря 1 уровню волшебника.
И минусы, как без них. Нет спасбросков мудрости: пропущенный Испуг/Подчинение личности и т.п. могут доставить неприятностей. Модификатор броска атаки +8: +4 (интеллект) + 3 (бонус мастерства) + 1 (инфузия). Поскольку основное оружие - перчатки модифицированного доспеха, улучшить броски можно только на 10-м уровне изобретателя (инфузия "Улучшенное оружие" из +1 превращается в +2) и при достижении 20 в Интеллекте: +4 превратится в +5, итого получим +10 к атаке. Т.е., если бы это была долгая игра, скорее всего, сопартийцы благодаря магическому оружию получили бы такой же или бОльший бонус раньше.
Ну и вот думаю: это уже минмакс, или ещё нет? Если да - что можно было улучшить/добавить/заменить? На ваш суд, в общем.
Добрый вечер! Хочу предупредить, что для заключения брака с иностранцем нужны особые документы. Например, нотариально заверенное и переведенное на русский свидетельство о том, что будущий супруг не женат в другой стране.
Одна наша знакомая никак не могла устроить личную жизнь своей дочери, Наташи. Девушка не отличалась скромностью, выглядела аппетитно полной, но найти подходящего жениха ей не удавалось. Коллеги маму на работе постоянно спрашивали: «Когда же ваша дочь выйдет замуж?» Это было как издевательство, очень обидно.
Однажды Наташу позвали на дегустацию вин. Мама строго наказала: пить немного, но закусывать обильно.
Представьте себе изысканный зал для дегустации. Здесь нет места посторонним запахам, включая парфюм. Естественное освещение, светлые стены и поверхности создают идеальные условия для оценки натурального вида и аромата вина. Важно также знать, какие бокалы подходят для разных сортов вина. Перед дегустацией вино слегка перемешивают, что влияет на его вкус и аромат. Это не проблема для тех, кто разбирается в тонкостях.
Ходят люди, вино пробуют. Приходит Наташа и, следуя совету мамы, начинает искать закуску. Закуска соответствующая мероприятию находится, но в очень ограниченном количестве. Наташа, попробовав какого-то вина, ничего не поняв к столу с закуской. И начинает интенсивно закусывать.
На нее уже начали косо смотреть. Она сильно смутилась, но не перестала есть закуску. Вскоре к ней подошел элегантно одетый мужчина, как позже выяснилось, представитель одной из компаний. Он спросил: «Девушка, у вас что-то случилось? Вино не понравилось?» Она, продолжая есть, ответила грустным голосом: «Мама сказала, что нужно как можно больше закусывать».
Они познакомились, и вскоре он сделал ей предложение. Свадьба прошла быстро, даже без торжеств, и они уехали жить в одну из восточноевропейских стран, на родину мужа. Можете себе представить, как радовалась мама?
Ну что, мои дорогие маги, решил я найти обряд призыва Юстиции, интернет, сука, всё хранит, вот и вы теперь познакомитесь с обрядами. 😁

Вам понадобится:
• Свечи: Белая (чистота помыслов) и Синяя (закон и истина).
• Металл: Идеально, если на вас будет что-то из серебра или стали.
• Благовоние: Ладан, сандал или кедр (ароматы власти и чистоты).
• Лист бумаги: Где четко и без лишних эмоций изложена суть несправедливости.
Создайте пространство тишины. Зажгите свечи. Представьте перед собой величественную фигуру в сияющих одеждах, чья голова касается звезд. Почувствуйте холодную, спокойную и беспристрастную мощь.
🙏 Заговор-обращение к Фемиде (Сильное воззвание)
(Читать вслух, стоя, расправив плечи, глядя на пламя свечи)
«О, Великая Хранительница Вечного Порядка, Дверь Неба и Земли!
К тебе взываю, к твоей беспристрастной силе, к твоим весам, что не знают трепета перед сильными мира сего.
Встань между мной и моим обидчиком (имя, если известно).
Сними повязку с очей своих для дела моего, узри не слова, но помыслы, не личины, но души.
На одну чашу весов кладу я правду свою, боль свою и чистоту сердца своего.
На другую чашу пусть ляжет деяние того, кто закон Равновесия нарушил.
Я не прошу мести, я взываю к Справедливости!
Пусть Меч твой отсечет ложь, что меня опутала.
Пусть Весы твои качнутся и вернут мне то, что отнято по праву,
А совершившему зло — воздадут по мере его.
Ты — мера всего, ты — голос Космоса.
Да будет суд твой скорым, вердикт твой — неминуемым, а решение — святым.
В силе твоей не сомневаюсь, под защиту твою вверяю судьбу свою.
Сказано — да сбудется! Ибо Закон един для всех!»
После ритуала: Сложите лист с описанием ситуации и сожгите его на пламени синей свечи. Пепел развейте по ветру. С этого момента забудьте об обиде и не пытайтесь «помочь» богине местью. Весы уже пришли в движение. Ответ придет оттуда, откуда вы его не ждете.
Если синих свечей нет то предлагаю рассмотреть такой 👇

Ни в коем случае нельзя просить для врага какого либо конкретного наказания, чтобы с ним случилось то, что именно вы ему желаете, Высшие силы сами решат, какую меру применить обидчикам, в некоторых случаях справедливость и наказание наступает даже более жестокое, чем мера нанесенной обиды. Но если вы сами виноваты в этой ситуации, то и вам достанется.
Ритуал проводится ровно в полночь 00:00 лучше с воскресения на понедельник, можно и в другой день, только не с субботы на воскресение.Откройте окно, балкон или форточку, можно проводить ритуал и на улице, зажгите свечу( можно черную) и читайте заклинание (заглавные буквы- буквы на которые нужно сделать ударение)
«Ако манО Иретос мЕа. ФемИд икАро Ако реЙИ.
Ако сАпро мЕнор мЕо сИфер крОтос.
Ако мЕнти прОвас провАте аррИнто.»
После прочтения заклинания говорят Имя недруга (или недругов) или того кто причинил вам зло, можно так же и рассказать обиду какую причинили Вам.
После того как свеча прогорит, произнесите "отсыл" духов :
«Асар кАтано ФемИд мАно.»
Нравится мне южно-корейское кино. Какие бы смешные ужасы они ни снимали, но эмоции актёров это что-то непередаваемое. Тэги ивента не ставлю, так как пост "притянут за уши" к Сеулу.

Аннотация к фильму: У маленькой Су-ан день рождения. Девочка живет с отцом в Сеуле и очень хочет отправиться к маме в Пусан. По дороге случается непредвиденное, и на страну обрушивается загадочный вирус. Пассажирам поезда в Пусан — единственного города, отразившего атаки вируса — придется бороться за выживание. 442 километра в пути. Добро пожаловать на борт и помните — в этой гонке недостаточно выжить, чтобы остаться человеком.
Тут есть все - дети, беременные женщины, влюблённая молодёжь, плохие-хорошие отцы, смелые люди, глупые люди, бесчестные люди и зомби. Зомби смешные. :) И да, второй фильм (все последующие) не смотрите - какая-то фактически не связанная с первым фильмом херотень.

Кстати, за 6 лет до ковида они сняли фильм "Вирус" (не про зомби, про грипп). Тоже рекомендую. А также Обрушение, Паразиты, Олдбой (именно корейский, американский не надо), Пустой дом... Остальные названия не помню. Приятного просмотра.
Очередной ход королевства миновал, хорошо, что заданий не прибавилось. Зато станет больше слухов, благодаря тайной девушке Хамако.
В общем зале началось обсуждение тревожных новостей, которые принес сэр Гаррес. Со всех ближайших земель поступают сообщения о столкновении с троллями. Их количество сильно выросло, но что ещё хуже, эти некогда одинокие чудовища объединяются, пробуют применять тактику и становятся умнее. Среди их преступлений: ограбление караванов, разорение деревень, убийства мирных жителей. Необычно также и наличие кобольдов в их рядах. Все эти сообщения побудили Хамако наконец разобраться с этой проблемой, но сперва нужно выяснить, где находится источник тролльской угрозы. Для этого очень нужен Экандейо, так что Хамако отправился поговорить с ним.
По пути к Экандейо Хамако заметил Мен Ра. Его идея - воспитать из таракана чемпиона по драке - всё ещё не давала павиану покоя. Тот сделал ему много спортивного инвентаря из веточек, но через время таракан пропал. Хамако пригласил Мен Ра с собой, что было непросто сделать сквозь смех.
Поговорив с Экандейо о планах, было решено взять ещё и Амири, так как она давно никуда не выходила, она уже сражалась с крупными противниками. Ийанна была свидетелем её радости, поскольку лично пригласила её с группой!
Подготовившись, на следующий день выдвинулись в путь. Экандейо предложил отправиться на юг, на другую сторону реки, так как по его разведке тролли собираются где-то в том направлении. И он же предложил обратиться к бабуле Беллдам, раз она сведуща в магии, то возможно ей символ на тролльской груди скажет больше полезного. Ийанна предложила что-то ей подарить в качестве благодарности, раз они уже который раз к ней отправляются, но так и не придумала что.
По окрестностям дома сразу стало очевидно, что все ловушки, которые наблюдали ранее, сработали. И по застывшему каменному троллю ясно, что враги уже были здесь. Благо, бабуля оказалась жива и без единой царапинки. Даже несмотря на то, что она не была в восторге от прерывания её одиночества, она пригласила нас внутрь. Сказала, что тролли приходят довольно часто. Вот и сейчас придут через несколько минут. Зато она сможет их осмотреть на предмет символа и если повезёт поставит несколько экспериментов.
Команда подготовилась к битве как могла даже окружили себя факелами для освещения. Не заставив себя ждать, темными силуэтами громадины выплывали из мрака. На этот раз сражение шло очень тяжело, тролли на удивление хорошо сработались и чуть не убили Амири всего двумя ударами. На протяжении всего боя Ийанна только и делала, что лечила варваршу в надежде, что та разберётся с великанами, как в её историях, но та постоянно промахивалась. Возможно из-за того, что Хамако наложил на неё заклинание увеличения, сделав её более неуклюжей. В итоге один из троллей добрался до Ийанны, стоявшей далеко, и двумя критически сильными ударами заставил её упасть. Если бы не вмешалась старушка Беллдам, скорее всего группа бы поредела. Когда с последним троллем было покончено, и чародейку подлечили, Ийанне очень нетерпелось высказать свое разочарование Амири.
Встряска, полученная от очередного приближения к границе жизни, заставила Ийанну впервые задуматься стоит ли вообще ей продолжать. Возможно она больше поможет, находясь в границах Ревланда.
Кастую @bobercode .
Пришла мне вчера ESP32-C3 с OLED 0.42" дисплейчиком. Подключил к Arduino 1.8.19 (электрон версию не брал). Включил, увидел моргающий светодиодик с периодом в 1 сек. Какой-то текст вида "ESP32-C3" и пр. на дисплейчике, ну и положил всё енто в пакетик с китайским ампер-вольтметром (калибрануть его надо - дома точных эталонных тестеров нет - ширпотреб только). Принёс на работу, а дисплейчик того - хана, разбил я его...
Ну да ладно. Похвастался, поплакался, сегодня начал изучать ардуино-программирование (ранее дела не имел), и вот что получил на выхлопе:
1. ESP32, в отличие от ESP8266 имеет под капотом FreeRTOS (мля, задолбали лочить РФ).
2. Как следствие delay() уже не тормозит одноядерный проц, что имеет место в атмегах и ESP8266, а использует vTaskDelay() от операционки, что позволяет сделать адекватной консолидированную многозадачность
3. Есть уже готовые от ОСи мютексы, инхронизацию потоков и пр., в том числе и асинхронный ввод-вывод с портов, что позволяет ожидать событий на GPIO/портах не нагружая проц в цикле.
Скетч, который я сейчас гоняю и далее изучаю (русские комменты мои, на английском с гугла/примеров и т.п.):

Буду ковырять далее. Думаю до ассемблера с RISC-V дойду не скоро, но буду стараться закапываться глубже, точнее ниже FreeRTOS. Надеюсь меня хватит надолго играться в енто...
Dr. Alban - It's My Life (Top Of The Pops, 1st October, 1992)

The Weeknd - Blinding Lights - Vintage Dance Choreography

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

Мозгоклюи.
Лазил тут по O3 интернет магазу в поисках полезняшек эдектронных. Наткнулся на одну платку (на самом деле бесполезную) - заржал в голос от описания:

После этого начал искать приколюхи. Делюсь картинками и без ссылок - надо будет сами найдёте, дабы пост не сочли за рекламу





А, ну да, теперь в ленте предложений маркетплейса ползёт всякая "шляпа":
