А у нас новый доклад Ruby Russia 2022. В этот раз поговорим о тестах. Автор этого текста, ведущий инженер по автоматизированному тестированию ПО в Альфа-Банке Елена Рыжкова расскажет, как в компании используют популярный Cucumber, и для чего помимо автоматизации он может быть полезен.
Ruby *
Динамический высокоуровневый язык программирования
Зачем вы юзаете ActiveRecord без Rails?
Текст для тех, кто хочет писать мелкие сервисы на руби без рельс.
Убьет ли HTTP/2 лонг поллинг и вебсокеты?
В новом тексте по итогам Ruby Russia 2022 Full-Stack разработчик и консультант Learning Tapestry Александр Уланов рассуждает, есть ли у Server-sent events потенциал обойти websocket-ы и long polling.
3 попытки и 8 лет перехода с Ruby на Elixir
Привет, это очередной доклад Ruby Russia 2022. В нём наш разработчик Дмитрий Клейменов рассказывает, как он восемь лет пытался сменить Ruby на Elixir, благодаря чему ему все же это удалось, и жалеет ли он о переходе в другой стек.
Истории
Что узнали рубисты igooods, делая push-уведомления
В вашей ленте новый текст по мотивам доклада на Ruby Russia 2022. Сегодня Георгий Быков, Ruby и Elixir-разработчик из igooods, расскажет, с какими проблемами столкнулась его команда при создании пушей, и как им удалось их решить.
Ruby под нагрузкой, или Как поменять Puma на Falcon за неделю до релиза
Всем привет! Меня зовут Александр Шерман, я тимлид в команде CRM в Самокате. Мы в первую очередь известны по своей модели доставки заказов от 15 минут. Чтобы укладываться в такой норматив, у нас достаточно жёсткие SLA (2,5 минуты на сборку заказа), что, в свою очередь, диктует строгие требования к надёжности и быстродействию сервисов.
Часть проектов у нас написана на Ruby. Если раньше в качестве web-сервера для них мы использовали Puma (который уже стал de-facto стандартом) и горя не знали, то в определённый момент нам его производительности стало не хватать. В статье, сделанной по мотивам моего доклада на конференции Ruby Russia 2022 расскажу, как и зачем мы переехали на другой веб-сервер.
ActiveRecord Schema Consistency — а если проверю?
Это ещё один текст по мотивам доклада на Ruby Russia 2022. Он посвящён консистентности схемы базы данных на примере библиотеки database_consistency. Автор — Евгений Демин, Principal Engineer и Ruby-разработчик Toptal.
Функциональные аспекты Ruby
Что такое функциональное программирование?
Прежде чем начинать, давайте закрепим понимание термина «функциональное программирование». В основе своей, функциональное программирование это организация кода вокруг функций, а не вокруг объектов. Чтобы это работало, функции должны рассматриваться как тип данных первого класса в рамках языка программирования. Это лишь модный способ сказать, что функции могут храниться в переменных, возвращаться из других функций, использоваться в качестве параметров, потенциально даже быть изменены, так же как любая другая часть программы. Вместо того чтобы погружаться глубже в теорию, давайте перейдём к примерам.
Руби блоки за 5 минут
Блоки — одна из самых мощных и часто игнорируемых фич руби. Признаюсь, у меня ушло прилично времени чтобы разобраться как работают блоки и насколько они могут быть полезными на практике.
Есть нечто в yield
, что делает его крайне трудным для понимания при первом рассмотрении. Я хочу поговорить о концептах и приведу несколько примеров, так что к концу этого поста у вас появится твёрдое понимание руби блоков.
Как Unicorn и Puma взаимодействуют с nginx. Введение в UNIX сокеты с помощью Ruby
Ruby приложения обычно используются вместе с веб сервером типа nginx. Когда пользователь запрашивает страницу вашего Rails приложения, nginx делегирует запрос серверу приложения. Но как именно это работает? Как nginx общается с Unicorn?
Одним из наиболее эффективных способов будут Unix сокеты. Давайте посмотрим как они работают! В этом посте мы начнём с основ Unix сокетов и закончим созданием своего простого Ruby приложения, которое может быть проксировано nginx.
Node.js for ruby developers
Можно ли, зная Ruby, писать код на Node.js? А можно ли с командой Ruby-разработчиков успешно поддерживать и развивать большой легаси монолит на ноде? Можно! А как, расскажет Дмитрий Матвеев, СТО «Поток.Диджитал» и спикер Ruby Russia 2022.
Чиним отставание реплик, не меняя архитектуру Ruby-монолита
Привет, меня зовут Александр Панасюк. Я разрабатываю на Ruby с 2011 года и сейчас руковожу группой разработки на Ruby в СберМаркете. Хочу поделиться опытом того, как при масштабировании e-com’а мы боролись с узким горлышком при помощи репликации и какой метод предпочли при борьбе с отставанием реплик. Об этом я уже рассказывал на конференции Ruby Russia'22, а это текстовая версия моего доклада.
JSON:API 一 это не JSON API
Это третий доклад с прошедшей Ruby Russia. В нём Александр Меркулов, team lead UCHI.ru рассказывает, как его команда решила поэкспериментировать с JSON:API, и что из этого вышло.
Ближайшие события
Как мы еще не перешли с Vue.js на Hotwire
Мы продолжаем публиковать доклады последней Ruby Russia. На этот раз поговорим о новинке Hotwire, которую уже опробовали в Uscreen. Автор текста Марсель Мустафин, задавайте ему вопросы в комментариях!
Чем dry-rb (не) полезен мне
В конце сентября мы провели уже четырнадцатую конференцию Ruby Russia. На ней было много полезного, и чтобы эта польза не пропала, мы оформили доклады в тексты, которые будем публиковать здесь. Автор первого Егор Шморгун, Ruby-разработчик Level Travel.
Курс по Ruby+Rails. Часть 6. Роутинг и RESTful Applications
Сегодня мы поговорим о важнейшем элементе фреймворка Ruby on Rails — маршрутизации, а также посмотрим на принцип, вокруг которого она построена — архитектурный принцип REST.
Маршрутизация — это программное связывание элементов HTTP-запроса с конкретными элементами программного обеспечения сервера, которые выполняют этот запрос. Например, в ответ на определенный глагол и путь запроса вызывается определенный метод (action) определенного контроллера, внутри которого производится обработка запроса.
Курс по Ruby+Rails. Часть 5. Паттерн MVC
MVC — это главный архитектурный принцип, вокруг которого строится не только Ruby on Rails, но и любой другой фреймворк, работающий со сложными структурами данных и их отображением. Этот архитектурный паттерн появился довольно давно, на заре объектно-ориентированного программирования, но он не сразу был принят веб-программистами.
Довольно долго они работали с данными и веб-страницами в общей куче. Каждая веб-страница содержала код множества операций, которые рисовали нужный пользовательский интерфейс. Разделение обязанностей между элементами приложения отдавалась на усмотрение программиста без строгой фиксации каких-либо паттернов или стандартов. Однако с течением времени разработчики перешли к более удобной работе — с моделями и с паттерном MVC как стандартом де-факто.
Давайте подробнее разберёмся во взаимодействиях и рассмотрим каждый элемент в отдельности.
Курс по Ruby+Rails. Часть 4. Структура Rails-приложения
Сегодня начнём знакомство с Ruby on Rails. Для нашего курса это, пожалуй, самый важный инструмент, и следующие несколько лекций будут посвящены именно ему.
Сначала договоримся о терминах: мы не говорим «сайт». Вместо этого будем использовать термин «веб-приложение», потому что времена интернета с простыми статичными страничками прошли. Современные веб-приложения сложны. Для пользователя в них всегда найдётся удобный интерфейс, а заказчику приложения может даже показаться, что работы у разработчика немного. Однако под капотом прячется много движущихся частей: базы данных, генерация динамического контекста, внедрение и интеграция внешних элементов. Механическую работу программиста упрощают фреймворки. В случае Ruby — это Rails.
Курс по Ruby+Rails. Часть 3. Функциональное программирование
Привет! Сегодня мы поговорим про функциональное программирование. В Ruby реализован исключительно гибкий объектно-ориентированный стиль. И как бы он ни был хорош, он имеет свою цену: иногда для реализации сложных алгоритмов и систем он слишком гибкий.
Курс по Ruby+Rails. Часть 2. Объектно-ориентированное программирование
В этой лекции мы рассмотрим объектно-ориентированный стиль в Ruby: поговорим об объектах, классах и модулях, а также вспомним три принципа объектно-ориентированного программирования.
Вклад авторов
alizar 536.0Homakov 300.6kronos 260.0Iskin 239.0DenisVitman 231.0Lxx 208.0dustalov 187.0vorona_karabuta 170.2iv_s 163.0