<?xml version="1.0" encoding="UTF-8"?>        <rss version="2.0"
             xmlns:atom="http://www.w3.org/2005/Atom"
             xmlns:dc="http://purl.org/dc/elements/1.1/"
             xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
             xmlns:admin="http://webns.net/mvcb/"
             xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
             xmlns:content="http://purl.org/rss/1.0/modules/content/">
        <channel>
            <title>
									Ruby у Невы - Последние темы				            </title>
            <link>https://spbrubyconf.ru/forum/</link>
            <description>Форум петербургских разработчиков Ruby: разбираем практические задачи и чужой код, обсуждаем Rails, тесты, базы, очереди и деплой, собираем встречи и предлагаем темы для коротких докладов.</description>
            <language>ru-RU</language>
            <lastBuildDate>Sat, 07 Nov 2026 16:08:35 +0000</lastBuildDate>
            <generator>wpForo</generator>
            <ttl>60</ttl>
							                    <item>
                        <title>Команда на Hanami, а бизнес просит админку за месяц. Тащить Rails рядом?</title>
                        <link>https://spbrubyconf.ru/forum/rails/komanda-na-hanami-a-biznes-prosit-adminku-za-mesyats-taschit-rails-ryadom/</link>
                        <pubDate>Fri, 30 Oct 2026 16:03:31 +0000</pubDate>
                        <description><![CDATA[Веду команду из четырёх человек, сервис на Hanami 2 и PostgreSQL. Бизнесу срочно нужна внутренняя админка: справочники, поиск по заказам, ручная смена статусов, к концу ноября. Писать это на...]]></description>
                        <content:encoded><![CDATA[Веду команду из четырёх человек, сервис на Hanami 2 и PostgreSQL. Бизнесу срочно нужна внутренняя админка: справочники, поиск по заказам, ручная смена статусов, к концу ноября. Писать это на Hanami руками долго. Думаю поднять рядом маленькое Rails-приложение на ту же базу, только для админки. Кто так делал, какие подводные камни?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>Лариса 2002</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/rails/komanda-na-hanami-a-biznes-prosit-adminku-za-mesyats-taschit-rails-ryadom/</guid>
                    </item>
				                    <item>
                        <title>Тимлид пишет меньше всех. Как ревьюить и не тормозить команду?</title>
                        <link>https://spbrubyconf.ru/forum/kod-revyu/timlid-pishet-menshe-vseh-kak-revyuit-i-ne-tormozit-komandu/</link>
                        <pubDate>Sat, 24 Oct 2026 10:32:05 +0000</pubDate>
                        <description><![CDATA[Полгода как тимлид, команда четыре человека, все на удалёнке, Hanami и PostgreSQL. Кода сама пишу всё меньше, а ревью по-прежнему жду от себя на каждый PR, и к четвергу у меня очередь из вос...]]></description>
                        <content:encoded><![CDATA[Полгода как тимлид, команда четыре человека, все на удалёнке, Hanami и PostgreSQL. Кода сама пишу всё меньше, а ревью по-прежнему жду от себя на каждый PR, и к четвергу у меня очередь из восьми штук. Ребята ждут, я чувствую себя узким местом. Отдать ревью мидлам страшно, они пока сами путаются, где граница между action, репозиторием и операцией. Как у вас устроено, кто имеет право аппрувить?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>Лариса 2002</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/kod-revyu/timlid-pishet-menshe-vseh-kak-revyuit-i-ne-tormozit-komandu/</guid>
                    </item>
				                    <item>
                        <title>Метрики Puma и Sidekiq в Prometheus: что смотреть в первую очередь?</title>
                        <link>https://spbrubyconf.ru/forum/deploy/metriki-puma-i-sidekiq-v-prometheus-chto-smotret-v-pervuyu-ochered/</link>
                        <pubDate>Tue, 20 Oct 2026 07:54:23 +0000</pubDate>
                        <description><![CDATA[Я SRE, недавно в команде с Rails-монолитом, до этого работал с сервисами на Go. Метрики собираем в Prometheus, в Grafana уже есть доски по хостам. Что из Puma и Sidekiq стоит вывести в перву...]]></description>
                        <content:encoded><![CDATA[Я SRE, недавно в команде с Rails-монолитом, до этого работал с сервисами на Go. Метрики собираем в Prometheus, в Grafana уже есть доски по хостам. Что из Puma и Sidekiq стоит вывести в первую очередь, чтобы не утонуть в сотне графиков?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>IlyaKudryavtsev</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/deploy/metriki-puma-i-sidekiq-v-prometheus-chto-smotret-v-pervuyu-ochered/</guid>
                    </item>
				                    <item>
                        <title>Отчёт о встрече 1 октября: 31 человек, Hanami и последнее метро</title>
                        <link>https://spbrubyconf.ru/forum/vstrechi/otchet-o-vstreche-1-oktyabrya-31-chelovek-hanami-i-poslednee-metro/</link>
                        <pubDate>Thu, 01 Oct 2026 18:32:06 +0000</pubDate>
                        <description><![CDATA[Отчитываюсь по встрече 1 октября. Пришёл 31 человек, записывалось 34, трое отписались в день встречи из-за ливня. Переговорка у Московских ворот, 10 тысяч, собрали 10 850. Доклады. Лариса 20...]]></description>
                        <content:encoded><![CDATA[Отчитываюсь по встрече 1 октября. Пришёл 31 человек, записывалось 34, трое отписались в день встречи из-за ливня. Переговорка у Московских ворот, 10 тысяч, собрали 10 850. Доклады. Лариса 2002 рассказала про Hanami 2 для тех, кто знает только Rails: действия, контейнер зависимостей, slices, вопросов было на полчаса. nadya84 разобрала три частые причины флаки-тестов на Capybara: анимации, часовой пояс в CI и порядок записей без ORDER BY. TimurK62 сравнил новый экспериментальный JIT в Ruby 4.0 с YJIT на одном и том же сервисе, вывод «пока рано, но интересно». Проектор опять мигал, на втором докладе перезагружали ноутбук. Официально закончили в 22:30, у входа стояли ещё минут сорок. Мосты пока разводят, так что человек шесть с Васильевского и Петроградки ушли в половине двенадцатого, остальные к метро. Следующая в ноябре, ищу площадку побольше: нас стабильно за тридцать.]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>viktor.petrov</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/vstrechi/otchet-o-vstreche-1-oktyabrya-31-chelovek-hanami-i-poslednee-metro/</guid>
                    </item>
				                    <item>
                        <title>Миграция ждала блокировку и на 4 минуты повесила все запросы к таблице</title>
                        <link>https://spbrubyconf.ru/forum/bazy-dannyh/migratsiya-zhdala-blokirovku-i-na-4-minuty-povesila-vse-zaprosy-k-tablitse/</link>
                        <pubDate>Thu, 24 Sep 2026 08:13:40 +0000</pubDate>
                        <description><![CDATA[Hanami 2, PostgreSQL 17. Вчера днём выкатили безобидную миграцию: добавить в `invoices` колонку без default, просто NULL. Обычно это мгновенно. А тут миграция висела четыре минуты, и всё это...]]></description>
                        <content:encoded><![CDATA[Hanami 2, PostgreSQL 17. Вчера днём выкатили безобидную миграцию: добавить в `invoices` колонку без default, просто NULL. Обычно это мгновенно. А тут миграция висела четыре минуты, и всё это время любые запросы к invoices, даже простые SELECT, стояли в очереди. API отдавал таймауты, пока кто-то не нашёл и не убил долгий отчёт аналитиков. Я правильно понимаю, что виноват отчёт? И как защититься, если отчёты не всегда гоняют по реплике?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>Лариса 2002</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/bazy-dannyh/migratsiya-zhdala-blokirovku-i-na-4-minuty-povesila-vse-zaprosy-k-tablitse/</guid>
                    </item>
				                    <item>
                        <title>Доклады на встречу 1 октября: три слота, кто готов</title>
                        <link>https://spbrubyconf.ru/forum/doklady/doklady-na-vstrechu-1-oktyabrya-tri-slota-kto-gotov/</link>
                        <pubDate>Mon, 14 Sep 2026 12:13:22 +0000</pubDate>
                        <description><![CDATA[Октябрьская встреча будет 1 октября, в четверг, у Московских ворот. Нужны три доклада по 15 минут. Особенно жду тех, кто ещё ни разу не выступал: в прошлом сезоне больше всего вопросов собра...]]></description>
                        <content:encoded><![CDATA[Октябрьская встреча будет 1 октября, в четверг, у Московских ворот. Нужны три доклада по 15 минут. Особенно жду тех, кто ещё ни разу не выступал: в прошлом сезоне больше всего вопросов собрали как раз новички. Пишите тему и пару строк, о чём будет.]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>viktor.petrov</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/doklady/doklady-na-vstrechu-1-oktyabrya-tri-slota-kto-gotov/</guid>
                    </item>
				                    <item>
                        <title>Из ручного тестирования в автотесты на Ruby: с чего начать?</title>
                        <link>https://spbrubyconf.ru/forum/novichkam/iz-ruchnogo-testirovaniya-v-avtotesty-na-ruby-s-chego-nachat/</link>
                        <pubDate>Sat, 12 Sep 2026 14:54:12 +0000</pubDate>
                        <description><![CDATA[Пять лет в ручном тестировании, веб и немного мобилки. В команде бэкенд на Rails, и мне предложили взяться за автотесты, учиться можно в рабочее время. Ruby не знаю совсем. С чего начинать: ...]]></description>
                        <content:encoded><![CDATA[Пять лет в ручном тестировании, веб и немного мобилки. В команде бэкенд на Rails, и мне предложили взяться за автотесты, учиться можно в рабочее время. Ruby не знаю совсем. С чего начинать: язык, RSpec или сразу Capybara? И сколько времени закладывать, чтобы не наобещать лишнего? Когда-то у нас уже пробовали автотесты на Python, и там через строчку стояли паузы по три секунды, повторять это не хочется.]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>nadya84</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/novichkam/iz-ruchnogo-testirovaniya-v-avtotesty-na-ruby-s-chego-nachat/</guid>
                    </item>
				                    <item>
                        <title>Пришла в команду, где нет ни одного системного теста. С чего начать?</title>
                        <link>https://spbrubyconf.ru/forum/testirovanie/prishla-v-komandu-gde-net-ni-odnogo-sistemnogo-testa-s-chego-nachat/</link>
                        <pubDate>Tue, 08 Sep 2026 13:42:09 +0000</pubDate>
                        <description><![CDATA[Месяц как работаю QA-автоматизатором в команде из четырёх бэкендеров, Rails 8.1 и Hotwire. Юнит-тестов много, около 2000 на Minitest, а системных ноль, и регресс перед релизом я прохожу рука...]]></description>
                        <content:encoded><![CDATA[Месяц как работаю QA-автоматизатором в команде из четырёх бэкендеров, Rails 8.1 и Hotwire. Юнит-тестов много, около 2000 на Minitest, а системных ноль, и регресс перед релизом я прохожу руками за два дня. Сама привыкла к RSpec, но тут всё на Minitest. Хочу постепенно автоматизировать и боюсь наделать сто хрупких тестов, которые все возненавидят. С каких сценариев вы бы начали?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>nadya84</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/testirovanie/prishla-v-komandu-gde-net-ni-odnogo-sistemnogo-testa-s-chego-nachat/</guid>
                    </item>
				                    <item>
                        <title>Sinatra: проверка ключа API скопирована в тридцать роутов. Как вынести?</title>
                        <link>https://spbrubyconf.ru/forum/razbory/sinatra-proverka-klyucha-api-skopirovana-v-tridtsat-routov-kak-vynesti/</link>
                        <pubDate>Thu, 06 Aug 2026 11:36:16 +0000</pubDate>
                        <description><![CDATA[Я в Ruby недавно, до этого долго писал на Java. Достался внутренний сервис на Sinatra, Ruby 4.0, около тридцати роутов под /api, и в каждом две одинаковые строки проверки ключа:

...]]></description>
                        <content:encoded><![CDATA[Я в Ruby недавно, до этого долго писал на Java. Достался внутренний сервис на Sinatra, Ruby 4.0, около тридцати роутов под /api, и в каждом две одинаковые строки проверки ключа:

get "/api/orders" do
  token = request.env.to_s.delete_prefix("Bearer ")
  halt 401, json(error: "unauthorized") unless ApiKey.active.exists?(token: token)

  json Order.recent.limit(50).as_json
end

post "/api/orders" do
  token = request.env.to_s.delete_prefix("Bearer ")
  halt 401, json(error: "unauthorized") unless ApiKey.active.exists?(token: token)

  # ...
end

В Spring я бы повесил фильтр, а тут как принято? Rails не предлагать, сервис маленький и пусть таким остаётся)]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>GoshaFedorov</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/razbory/sinatra-proverka-klyucha-api-skopirovana-v-tridtsat-routov-kak-vynesti/</guid>
                    </item>
				                    <item>
                        <title>Переводим проекты студии на Kamal 2: что обычно забывают?</title>
                        <link>https://spbrubyconf.ru/forum/deploy/perevodim-proekty-studii-na-kamal-2-chto-obychno-zabyvayut/</link>
                        <pubDate>Sat, 30 May 2026 13:04:07 +0000</pubDate>
                        <description><![CDATA[Небольшая студия, восемь клиентских проектов на Rails от 7.1 до 8.1, деплой у всех разный: где-то Capistrano, где-то руками по SSH. Хочу привести всё к Kamal 2: на проект один VPS у хостера,...]]></description>
                        <content:encoded><![CDATA[Небольшая студия, восемь клиентских проектов на Rails от 7.1 до 8.1, деплой у всех разный: где-то Capistrano, где-то руками по SSH. Хочу привести всё к Kamal 2: на проект один VPS у хостера, приложение, Postgres как accessory, Thruster перед Puma. Пробный проект уже выкатил. Что обычно забывают на таком сетапе, пока не прилетело ночью?]]></content:encoded>
						                            <category domain="https://spbrubyconf.ru/forum/"></category>                        <dc:creator>chaika</dc:creator>
                        <guid isPermaLink="true">https://spbrubyconf.ru/forum/deploy/perevodim-proekty-studii-na-kamal-2-chto-obychno-zabyvayut/</guid>
                    </item>
							        </channel>
        </rss>
		