27 февраля 2025

💎📐 Ruby on Rails vs Next.js: почему дед веб-разработки до сих пор дает жару

Пишу об IT и на Python. https://kungurov.net, https://hmhm.wtf
Как винил в музыке, который снова в тренде, Rails продолжает жить и процветать в мире, где технологии меняются быстрее, чем мы успеваем о них узнать.
 💎📐 Ruby on Rails vs Next.js: почему дед веб-разработки до сих пор дает жару
Статья основана на публикации «Why Ruby on Rails still matters».

🎵 Уроки винила

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

То же самое можно сказать и о веб-технологиях – мы часто забываем, что старые сайты до сих пор прекрасно работают. Текстовая страничка из 90-х загружается в современных браузерах точно так же, как и тогда.

Со временем сайты обзавелись новыми возможностями – CSS для стилизации, JavaScript для интерактивности, веб-сокеты для обновлений в реальном времени. Но их фундамент все еще строится на страницах, формах и сессиях.

Ruby on Rails появился двадцать лет назад как универсальный подход к созданию интерактивных веб-приложений с базами данных. Он стал основой для множества успешных компаний – Airbnb, Shopify, Github, Instacart, Gusto, Square и других. Всего-то на триллион долларов бизнесов работает сегодня на Ruby on Rails.

Ruby умер
Ruby умер

🚗 Абстракция как ключ к эффективности: почему Rails работает

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

Rails упаковал лучшие практики веб-разработки в доступный инструментарий: авторизацию, защиту от CSRF-атак, работу с базами данных. Эта абстракция позволяет разработчикам сосредоточиться на создании продукта, а не на технических деталях. Сегодня большинство программистов не знают содержимое своей авторизационной куки, хотя она обеспечивает работу их приложения.

Next.js сейчас стал самым популярным инструментом для создания стартапов. Этот фронтенд-ориентированный фреймворк обеспечивает динамические состояния загрузки, серверный рендеринг и создание сложных компонентов. Триллионные компании строятся на Next.js, и эти веб-приложения быстрее и отполированнее того, что можно было создать на Ruby on Rails.

🧩 Сложность vs простота: обратная сторона JavaScript-фреймворков

Правда в том, что новая волна JavaScript-фреймворков вроде Next.js сделала создание веб-приложений сложнее, а не проще. Эти инструменты дают разработчикам больше возможностей, но ценой меньшей абстракции.

Rails развивался на протяжении двух десятилетий, добавляя JavaScript-интерактивность, управление фоновыми задачами, состояния загрузки и инструменты для приложений реального времени. По мере эволюции паттернов Rails включал их как функции фреймворка, сохраняя свою HTML-основу.

🧪 Эксперимент разработчика: сравнение Rails и Next.js на реальных проектах

У меня есть опыт работы с обоими фреймворками. Find AI, венчурный AI-стартап, я построил на Rails. Как поисковому движку, ему подошла возможность Rails справляться со сложными бэкенд-операциями при простом фронтенде. Сейчас я работаю над Chroma Cloud для исследования и управления большими наборами данных, и Next.js обеспечивает его продвинутые интерактивные возможности.

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

👨‍💻🎨 Библиотека фронтендера
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека фронтендера»

💼 Почему технологии вторичны по отношению к ценности продукта

В конце концов, пользователям важнее польза продукта, чем детали реализации. Лоск проходит, а полезность остается. И пока мы восхищаемся отполированным интерфейсом Linear, старомодный Craigslist на своем сайте из 90-х преспокойно зарабатывает больше них.

 💎📐 Ruby on Rails vs Next.js: почему дед веб-разработки до сих пор дает жару
***

Frontend-разработка с нуля: что дает курс Frontend Basic от Proglib Academy

Курс Frontend Basic от Proglib Academy дает структурированный путь в веб-разработку: от основ HTML/CSS до создания интернет-магазина на React за 2 месяца, с обратной связью от практикующих разработчиков из Газпромбанка и Аэрофлота.

Чему вы научитесь за 2 месяца:

  • Верстка адаптивных макетов на HTML и CSS с учетом семантики
  • Программирование на JavaScript и взаимодействие с DOM
  • Разработка пользовательских интерфейсов
  • Обмен данными с сервером
  • Создание проектов на React.js
  • Работа с системой контроля версий Git

Формат обучения:

  • 26 видеоуроков и 28 практических заданий
  • Бессрочный доступ к материалам
  • Обратная связь от преподавателей по всем заданиям
  • Возможность персональных консультаций (зависит от тарифа)

Преподаватели – практикующие разработчики:

  • Игорь Грудинин – программист ООО «Айньюс», экс-инженер Аэрофлота
  • Константин Теляков – Frontend-разработчик в Газпромбанке

А какой фреймворк используете вы в своих проектах? Поделитесь опытом, когда старая технология неожиданно оказалась лучшим решением для современной задачи.

ВАКАНСИИ

Добавить вакансию
Flutter Developer
по итогам собеседования
AppSec BP
по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ