Обновить
16K+

Ruby on Rails *

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

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

JWT, FSD и сервисный подход. Итоги года глазами команды разработки Учи.ру

Время на прочтение5 мин
Охват и читатели3K

Привет, Хабр! Команда Учи.ру традиционно подводит итоги учебного года. Для нас — это сезон не только крупных продуктовых релизов, но и изменений под ИТ-капотом Учи.ру. Сегодня команда поделится, что нового произошло в архитектуре и разработке платформы и что сподвигло их на эти изменения.

Читать далее

Плохие тесты: кто виноват и что делать?

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели4K

Тестирование — один из самых больных, если не самый больной вопрос в современной разработке программного обеспечения. Поговаривают, что разработчики не любят писать тесты, что написать правильные тесты зачастую сложнее, чем сам код, что «зеленое — не значит работает», а типовые экстремисты даже утверждают, что АДТ с лихвой эти самые тесты заменяют.

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

Читать далее

Курс по Ruby+Rails. Часть 8. Модели и первые шаги

Время на прочтение8 мин
Охват и читатели3.8K

Миграции – это механизм ActiveRecord, который позволяет вносить изменения в схему базы данных не используя SQl. ActiveRecord предоставляет широкие возможности для манипуляций со базой, беря на себя большую часть работы, автоматизируя многие вещи благодаря принципу соглашения над конфигурацией. Это позволяет генерировать готовые миграции, сразу содержащие код, вносящий необходимые изменения, и минимизировать код для отката миграций. 

Читать далее

Укрощение имен. Как нейминг помогает оптимизировать код

Время на прочтение12 мин
Охват и читатели11K

Что такое имя? Имя — это ярлык, дескриптор, указатель в вашей памяти. Это краткое изложение сложной идеи. Оно позволяет ссылаться на «экономику» или «догфудинг» в середине предложения, избегая развернутого на три абзаца объяснения термина.

Если представить, что разработка программного обеспечения — это просто распределение данных по ячейкам и их маркировка, то становится понятно, почему именование объектов является одной из двух сложных задач в информатике. Объем рабочей памяти мозга ограничен, и хорошее имя позволяет использовать его максимально эффективно. Хорошее имя — всегда лаконичное, вызывающее ассоциации и подходящее по контексту. Оно снижает когнитивную нагрузку и лучше отпечатывается в сознании. Плохое имя — это неясное, вводящее в заблуждение, расплывчатое или явно содержащее недостоверную информацию.

Под катом разработчик Джозеф Гласс* делится правилами эффективного нейминга и разбирает их на практических примерах.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее

Docker для приложения Rails 7

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели7.9K

Широкое распространение развертывания приложений с использованием Docker стало причиной написания этой статьи.

Попробуем подойти к этому вопросу с практической стороны и решить задачу без наличия каких либо специфичных знаний в этой области.

В качестве исходных данных возьмем следующее...

Читать далее

Курс по Ruby+Rails. Часть 7. Модели и ActiveRecord

Время на прочтение14 мин
Охват и читатели6.3K

На одной из прошлых лекций вы познакомились с паттерном MVC – Model, View, Controller. И сегодня пришло время подробней разобраться в том, что прячется за первой буквой этой аббревиатуры.

Читать далее

ActionText в Ruby on Rails. Обзор первого знакомства

Время на прочтение10 мин
Охват и читатели2.2K

Action Text - модуль в Ruby on Rails, дающий возможность работать с текстом. Он включает в себя WYSIWYG редактор Trix. Можно писать и редактировать текст, ссылки, цитаты, списки, сохранять изображения и файлы.

Читать далее

За что мы любим Go, Ruby, React Native, ReactJS и Redux

Время на прочтение5 мин
Охват и читатели4.1K

Привет! Это tech-команда СберМаркет. Сегодня кто-то празднует день влюбленных, а для нас с вами это ещё и профессиональный праздник — день компьютерщика. Если совместить два повода, получим день влюблённых в компьютеры. Кто-то любит копаться в железе, кто-то в программах. Кто-то пишет библиотеки, а кто-то их использует. Но все мы не равнодушны, иначе нас бы здесь не было. Эта статья — любовное письмо языкам, фреймворкам и библиотекам, которые крутятся у нас под капотом — Go, Ruby, React, React Native, Redux.

Читать далее

Сказ о неработающих гайдлайнах: Toptal, GraphQL и линтеры

Время на прочтение8 мин
Охват и читатели1.2K

Это новый доклад Ruby Russia 2022, в котором Анвар Туйкин и Михаил Поспелов рассказывают о том, как в Toptal учили разработчиков писать правльно оформленный код. Ниже подробный текст о том, почему гайдлайны не всегда работают, что делать, чтобы они работали, и можно ли это автоматизировать.

Читать далее

Пишем первый тест на cucumber для Rails

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели3.3K

Краткое описание создания тестов для приложения на Rails 7 с использованием Cucumber.

Установка cucumber, настройка окружения, создание feature теста, шагов, использование переменных.

Сделана попытка собрать в одном месте краткие сведения, необходимые для подготовки к тестированию приложения Rails (или созданию приложения в случае BDD) и написанию тестов.

Перейти к подробностям

Столетний язык программирования — какой он

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели38K

Особо амбициозные разработчики любят заявлять о том, что используемый ими язык программирования или фреймворк будет жить лет сто. Дерзкое заявление, учитывая, что разработке программного обеспечения, как таковой, всего около 65 лет. А фреймворки еще моложе. 

И всё же интересно, какие языки все еще будут использоваться через 100 лет?

Читать далее

Тестирование Rails приложения с Turbo Frames

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели2.5K

Тестирование Rails приложения с Turbo Frames.

Рассмотрено на примере написание теста для приложения, использующего Turbo-frame Rails 7.

Читать далее.

Dry-rb — экосистема, которая упростит архитектуру вашего проекта

Время на прочтение7 мин
Охват и читатели4.3K

Привет! Меня зовут Вероника Молчанова. Я - Ruby-разработчик в компании Joy Dev. В этой статье мы рассмотрим набор Ruby-библиотек dry-rb и расскажем, как они помогли упростить архитектуру проектов. В частности хотим показать, как на наших проектах используются такие гемы из dry-экосистемы, как:

- dry-auto_inject

- dry-validation

- dry-struct

Читать далее

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

Ruby, Cucumber и русский язык: автотесты для Альфа-Банка

Время на прочтение6 мин
Охват и читатели3.2K

А у нас новый доклад Ruby Russia 2022. В этот раз поговорим о тестах. Автор этого текста, ведущий инженер по автоматизированному тестированию ПО в Альфа-Банке Елена Рыжкова расскажет, как в компании используют популярный Cucumber, и для чего помимо автоматизации он может быть полезен.

Читать далее

Зачем вы юзаете ActiveRecord без Rails?

Время на прочтение5 мин
Охват и читатели2.7K

Текст для тех, кто хочет писать мелкие сервисы на руби без рельс.

Читать далее

Убьет ли HTTP/2 лонг поллинг и вебсокеты?

Время на прочтение8 мин
Охват и читатели16K

В новом тексте по итогам Ruby Russia 2022 Full-Stack разработчик и консультант Learning Tapestry Александр Уланов рассуждает, есть ли у Server-sent events потенциал обойти websocket-ы и long polling.

Читать далее

3 попытки и 8 лет перехода с Ruby на Elixir

Время на прочтение6 мин
Охват и читатели3.8K

Привет, это очередной доклад Ruby Russia 2022. В нём наш разработчик Дмитрий Клейменов рассказывает, как он восемь лет пытался сменить Ruby на Elixir, благодаря чему ему все же это удалось, и жалеет ли он о переходе в другой стек.

Читать далее

Что узнали рубисты igooods, делая push-уведомления

Время на прочтение9 мин
Охват и читатели1.8K

В вашей ленте новый текст по мотивам доклада на Ruby Russia 2022. Сегодня Георгий Быков, Ruby и Elixir-разработчик из igooods, расскажет, с какими проблемами столкнулась его команда при создании пушей, и как им удалось их решить.

Читать далее

ActiveRecord Schema Consistency — а если проверю?

Время на прочтение5 мин
Охват и читатели963

Это ещё один текст по мотивам доклада на Ruby Russia 2022. Он посвящён консистентности схемы базы данных на примере библиотеки database_consistency. Автор — Евгений Демин, Principal Engineer и Ruby-разработчик Toptal.

Читать далее

Архитектура Учи.ру: облака, модульность и унификация

Время на прочтение7 мин
Охват и читатели2.5K

В этом году Учи.ру исполняется 10 лет. За это время компания пережила технологические и архитектурные трансформации. Она выросла из простого сайта, где можно было решать примеры на счёт столбиком, до группы компаний с курсами по школьным и внешкольным предметам, олимпиадами и многим другим. Команда научилась справляться с внезапным усилением трафика, одновременно запускать несколько задач и «распиливать» огромный монолит на кусочки.

Сейчас может показаться, что все используемые нами решения стандартны, но в далеком 2012 году мы внедряли их одними из первых. Я, Алексей Вахов, директор по инновациям Учи.ру, расскажу о ключевых технологиях и архитектурных принципах, которые лежат в основе платформы.

Читать далее