💎 Learn Rails from Junior to Senior. My way
Продолжаю рассказывать по каким материалам учился и прокачивался в первом профессиональном стеке - Ruby & Rails. Далее вы найдете огромную кучу ресурсов, которые помогли мне
- овладеть основными компонентами фреймворка.
- углубиться в них и решать задачи эффективно с точки зрения времени.
- писать производительный код.
- вырости до уровня Senior и решать сложные задачи.
Аналогичный пост по Ruby - здесь.
💎Getting Started
У Rails просто офигенная документация, я очень часто использовал ее для решения повседневных задач. Для меня это один из примеров того как должна выглядеть дружелюбная к разработчику дока.
Ну и само собой я не могу не отметить классику - туториал Майкла Хартла по написанию клона твиттера
Книги
- Agile Web Development with Rails 7 - тот самый туториал про интернет магазин
- The Rails 7 Way - энциклопедия по Ruby on Rails
💎 Best practices
Репозитории компании разрабатывающих на Ruby в которых они ведут свои соглашения и правила по написанию кода на Ruby on Rails.
Если вы хотите максимально быстро прокачаться лучше ресурса не найти - учитесь на чужих ошибках и впитывайте чужой опыт.
- Best practices for running Rails in production
- Describing the development process used by the Infinum Rails Team.
- A guide for programming in style.
💎 Templates
Для того чтобы с нуля стартовать с крутым набором инструментом и не тратить время на настройку локального окружения можно воспользоваться готовыми сборками:
Статья о том из каких библиотек строят проекты Evil Martians - Gemfile of dreams: the libraries we use to build Rails apps
💎 Performance
Статьи в которых авторы ныряют вглубь фреймворка и разбираются какие же места в нем медленные и как их можно оптимизировать и ускорить.
- Design Rails JSON API with performance in mind - JTWay
- JSON Serialization in Rails: A Complete Guide
- Архитектура сервера PUMA
- Configuring Puma, Unicorn and Passenger for Maximum Efficiency
- Threads are evil. Async Ruby in action - Подробный гайд о тредах, процессах и асинхронности
- Ruby CPU and Memory - Pareto principle - как профилировать производительность приложений
💎 Active Record
Всё что нужно знать чтобы хорошо уметь готовить ActiveRecord и выжимать из него максимум
- самый популярный вопрос на собеседовании - Making sense of ActiveRecord joins, includes, preload, and eager_load
- Rails Database Best Practices (About queries)
- Getting the Most out of your Database with Ruby on Rails (About configuration)
- Understanding Locking in Rails ActiveRecord
- Indexes on Rails: How to Make the Most of Your Postgres Database
- Как правильно готовить Ruby on Rails для работы с PostgreSQL
💎 Архитектура / Паттерны
Rails довольно гибкий и мощный фреймворк в котором многое держится на соглашениях, и если бездумно ими пользоваться то проект может превратиться в запутанное спагетти
- Rails hurts, because we're using it wrong. Let's fix that! - в чём проблема с архитектурой Rails?
- Rails design patterns - простые варианты как улучшить кодовую базу
💎 Rails Security
Работая в production важно не только делать фичу но и писать безопасный код и защищать данные клиентов от вредоносного вмешательства.