Все потоки
Поиск
Написать публикацию
Обновить
-1

Ruby on Rails *

Фреймворк, написанный на Ruby

Сначала показывать
Порог рейтинга
Уровень сложности

N+1 больше не будет проблемой

Время на прочтение3 мин
Количество просмотров22K

В данной статье я покажу как N1Loader сделает вашу жизнь легче!

Каждый разработчик рано или поздно сталкивается с проблемой N+1. ActiveRecord (Rails default ORM) поддерживает подгрузку ассоциаций с помощью includes для обхода N+1.

К сожалению, зачастую, не все данные, что нам нужны можно задекларировать в виде стандартных ассоциаций. Рассмотрим несколько примеров.

Читать далее

Ruby-Дайджест за неделю (10 янв — 17 янв)

Время на прочтение2 мин
Количество просмотров1.5K

В этом дайджесте:

Обновление популярных гемов.

Сборник гайдов и статей (RU/ENG) #2.

Подборка полезных гемов #4.

Интересный видео/аудио контент, связанный с Ruby.

Подборка ruby-сообществ для совместного изучения/общения.

Новые вакансии на рынке труда.

Читать далее

Ruby-Дайджест за неделю (3 янв — 10 янв)

Время на прочтение2 мин
Количество просмотров1.4K

В этом дайджесте:

Обновление популярных гемов.

Сборник гайдов и статей (RU/ENG) #1.

Интересные open-source проекты на GitHub #3.

Подборка полезных гемов #3.

Интересный видео/аудио контент, связанный с Ruby.

Читать RubyDigest

Ruby-Дайджест за неделю (27 дек — 3 янв)

Время на прочтение2 мин
Количество просмотров1.8K

В этом дайджесте:

• Обновление популярных гемов.
• Статистика по гемам за год.
• Интересные open-source проекты на GitHub #2.
• Подборка полезных гемов #2.
• Интересный контент, связанный с Ruby.
• Рейтинги языка за 2021 год.

Читать RubyDigest

На пути к идеалу. Как мы приводим тестовое окружение в соответствие с продакшеном

Время на прочтение5 мин
Количество просмотров2.3K

Привет, Хабр! Меня зовут Вячеслав Савельев, я отвечаю за разработку ключевых сервисов Учи.ру. Сегодня расскажу, как в процессе постепенного внедрения микросервисов в компании (тут, тут и тут можно прочитать об этом подробнее) мы столкнулись с проблемой конфигурации стейджовых окружений. И вот как мы с ней справились.

Читать далее

Ruby-Дайджест за неделю (20-26 декабря)

Время на прочтение4 мин
Количество просмотров1.6K

В этом дайджесте:

Обновление популярных гемов.
Митапы, где засветился Ruby.
Интересные open-source проекты на GitHub.
Ruby 3.1.0
Подборка полезных гемов.
Интересный контент, связанный с Ruby.

Читать RubyDigest

Ruby-Дайджест за 3 недели (1-21 декабря)

Время на прочтение4 мин
Количество просмотров1.8K

В этом дайджесте:

Обновление популярных и не очень, гемов
Седьмые рельсы?
Конференции/Митапы
"From Node to Ruby on Rails" - Откровение матерого JS разработчика-стартапера после открытия Ruby on Rails

Читать далее

Представляем онлайн-самоучитель по Kubernetes и деплою с werf для разработчиков

Время на прочтение3 мин
Количество просмотров12K

Рады представить новую версию онлайн-самоучителя по werf, нашей CI/CD-утилите с открытым кодом!

Общая идея самоучителя — познакомить разработчиков с Kubernetes, показав на простых приложениях (готовы примеры для Ruby on Rails, Node.js и Laravel), как можно развертывать приложения в K8s с помощью werf. Это отличная возможность быстро освоить практические основы K8s без погружения в его объемную теоретическую базу. Если вы еще не решили, как провести новогодние каникулы с пользой, — вот вам идея.

Читать далее

«Все дороги ведут к Ruby»: сравнение smart-rb и dry-rb, лайв-кодинг вычислений и карьера в Канаде

Время на прочтение3 мин
Количество просмотров2.8K

Привет! Публикуем полезные материалы по Ruby с нашего митапа. Из видео узнаете:

— Как СберМаркет решает проблему нехватки Ruby-специалистов.

— Как на Ruby реализовать модель, сопоставимую по возможностям целому компьютеру.

— Плюсы и минусы новой серии библиотек smart-rb и уже известной в Ruby-коммьюнити dry-rb.

А еще бонус: мы приглашали Стеллу Миранду, старшего разработчика в Shopify и организатора RubyConfCo и сообщества Rails Girls Vancouver. Она ответила на вопросы о RoR, работе в Shopify, карьерном росте ruby-разработчиков и развитии лидерских качеств, а также о том, как устроены сообщества в Колумбии и Канаде.

Для удобства везде проставили таймкоды, залетайте на нужные темы!

Смотреть далее

Таков путь или как я познавал Ruby

Время на прочтение10 мин
Количество просмотров7.8K

Многие из тех, кто прочитает эту статью, уже давно "вошли в IT", а кто-то даже уже успел покинуть наши ряды. Но будут и те, кто только думает о том, чтобы начать свой путь. И я хочу поделиться своим опытом, так как помню, как сложно делать первые шаги и вообще решить, с чего начинать. Особенно потому, насколько недавно это было.

Читать далее

Фронтенд на рельсах (почти) без JS

Время на прочтение17 мин
Количество просмотров10K

Вопреки слухам на пространствах девелоперских комьюнити, Rails не становится устаревшей технологией, он не собирается умирать, и остается отличным инструментом для разработки вашего нового проекта. И одна из причин заключается в том, что у Rails имеется достаточно инструментов, чтобы покрыть базовый функционал типичного веб-приложения. Вам не нужно думать о том, как обрабатывать НТТР запросы, что использовать для ввода и получения данных из базы, как отрисовать HTML, который пользователи увидят в своих браузерах, и даже как "вдохнуть жизнь" в пользовательский интерфейс.

Читать далее

История поиска проблемы, которая происходит раз в 1000 лет

Время на прочтение5 мин
Количество просмотров7.4K

Как сейчас помню, понедельник 25е октября, я заступаю на дежурство по проду и с самого утра мне прилетает задача: сегодня в ночь с 24 на 25 ноября, наблюдалась проблема с недоступностью приложения. Глянув сентри я увидел кучу ошибок от базы со statement timeout, а так же непонятные ActiveRecord::ConnectionNotEstablished: No connection pool with 'primary' found С мыслью "база не отвечала, проблема не на нашей стороне" я спокойно отдал задачу на разбирательство админам, а сам параллельно глянул графики, может там был всплеск каких-нибудь джобок или запросов, но ничего криминального в графане небыло: тяжеловесных джобок в 12 не запускается, а те, что запускаются отработали очень быстро.

Узнать, в чем была проблема

Сколько мы переплачиваем за сервера используя Ruby on Rails

Время на прочтение4 мин
Количество просмотров9.9K

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

Читать далее

Ближайшие события

Работаем с индексами при высокой нагрузке в rails с psql: как добавить/удалить индекс и при этом не умереть

Время на прочтение8 мин
Количество просмотров6.5K

Всё, что кладёт прод, делает тебя умнее. © программист, положивший прод

Привет! Я — Женя, рубист из Каруны. В этой статье расскажу, как мы получили, на первый взгляд, тривиальную задачу по работе с индексами, набили кучу шишек и пришли к не очень тривиальному и эффективному решению.

Читать далее

Будущее Web это HTML через WebSockets

Время на прочтение12 мин
Количество просмотров13K

Будущее веб архитектуры  программного обеспечения уже обретает формы и на этот раз server-side рендеринг (опять). Но есть кое-что новое,  а именно передача HTML по WebSocket.

Подход с использованием SPA(Single Page Appllication) и JSON API привел к тому, что многие команды разработки погрязли в бесконечных спорах о структуре данных и ошибках синхронизации между этими двумя слоями. Это увеличивает стоимость разработки, замедляет релизный цикл и сокращает время, которое можно было бы потратить на инновации.

Читать далее

Перестаньте везде использовать first/last

Время на прочтение4 мин
Количество просмотров5.6K

Очень часто разработчики на Rails для извлечения заведомо одной записи из базы используют один из методов first/last из ActiveRecord. Это рабочее решение, но есть одно НО: чтобы извлечь всего одну запись база данных должна найти все, подходящие по условию, отсортировать их и вернуть только одну. Если вы подумали "Сортировка одной записи? Да это же легко!", то не будте так оптимистичны, я постараюсь показать, что это важно.

Читать дальше →

С 4 часов до 1 минуты. Как найти одну строчку, которая ускорит сервис на Ruby

Время на прочтение6 мин
Количество просмотров7.3K

Кейс из жизни, когда удалось на порядки повысить производительность сервиса. Показываю на реальном примере, как можно искать "узкие места" в работающем, казалось бы, коде. И как много профита порой можно получить от минимальных правок. В данном случае весь фикс потребовал замены всего одной строки. Но самое интересное - эту строку найти...

Читать далее

WorkerKiller

Время на прочтение4 мин
Количество просмотров2.9K

Утечки ресурсов и/или памяти, а также её фрагментация являются обычной проблемой для всех языков программирования. Неважно есть там сборщик мусора или нет, компилируемый язык или интерпретируемый. Ruby не является исключением и сегодня мы немного поговорим про эти проблемы, варианты их решения и даже напишем своё собственное.

Читать далее

Генерация картинок в коде

Время на прочтение3 мин
Количество просмотров7.3K

Всем привет! В этой статье я расскажу про процесс автоматизации изображений в коде, написание гема и ускорение рутинных задач.

Читать далее

Вклад авторов