Naming things it's a hard task. Once you named something in the system, you want to follow this naming convention. Especially it's important if term comes from domain experts. But it's not that easy to keep naming right when you have to deal with third-party APIs or microservices.

Hi guys, today we will go through the idea of Inversion Of Control (IoC) by really interesting example: Hanami::Events gem.

In Rails 5 each migration class is inherited from ActiveRecord::Migration[5.0]. It looks quite unusual to see that [5.0] part at the end of the parent class. In this article I'll describe why we might need it and how it works.

This is the last article on SOLID principles and today we're going to talk about Dependency Inversion Principle.

We've covered three SOLID principles so far. But this one is going to be special. Interface Segregation Principle refers to Interfaces, but we don't have it in Ruby. Should we omit this part? I don't think so, we can still learn something from it.

Hi guys, let's continue learning SOLID principles. Today we will talk about Liskov Substitution principle. The principle, that Barbara Liskov defined in 1987 in her conference keynote named "Data abstraction and hierarchy".

In my previous article I covered Single Responsibility Principle. Today I'm going to write about the "O" in SOLID - Open/Closed Principle.

I write a lot about patterns and Object-Oriented Design, so I couldn't miss opportunity to write about SOLID principles of Object-Oriented Design. I'm going to show by example how we can use these principles in Ruby.

Hi guys. Today I would like to discuss Facade Pattern and a little bit of Domain-Driven Design. I will start from description of Facade Pattern and show how it can help us to implement Aggregate - one of the main concepts of DDD.

Uncle Bob (Robert C Martin) said:

Date frameworks, but not to marry them.

Many Ruby/Rails developers married to Rails. This article will show how to start dating with Rails.

← Previous 1