DDD in Ruby on Rails
A YouTube collection of webinars focused on Domain-Driven Design in Ruby on Rails. The series was prepared by our consultants and senior developers: Paweł Strzałkowski and Michał Łęcicki.
Be sure to check out our series of articles on Domain-Driven Design in Ruby on Rails
Part I
Domain Modeling in Ruby on Rails
- Introduction to Domain-Driven Design
- Strategic elements of DDD
- Tactical elements of DDD and how to use them with any Ruby on Rails application
- Practical example of domain modeling in Ruby on Rails
Part II
How to fit Domain-Driven Design concepts into a Ruby on Rails application
- Splitting a Ruby on Rails app into bounded contexts
- Using layered architecture
- Modeling domain layer using PORO
- Implementing repositories
- Using application services
- Communicating between bounded contexts using domain events
Part III
From Idea To Implementation: A Practical Guide To Event Storming
- definition and purpose of Big Picture Event Storming
- benefits of the Event Storming technique
- identifying and visualizing business processes
- most common Event Storming problems
- tips and tricks to lead successful workshops
- introduction to Process Level Event Storming
- all of the above during the example Event Storming session!
Part IV
Ensuring Data Consistency Using the Aggregate Pattern
- an eventful story about Christmas elves and their struggle with work burnout
- how and when to use aggregates in Ruby on Rails applications
- optimistic and pessimistic locking
- dealing with race conditions
- aggregate pattern
- eventual consistency
What we're about
As Visuality, for the past 15 years, we've built countless apps for multiple industries. Throughout this time we've encountered many challenges, that gave us skills and know-how how to deal with the design and architecture.
Almost every month we meet at our office to share the knowledge. Visuality's meetups became very popular in the Ruby on Rails community. We now want to reach out to all of you that cannot appear at our office in person.
One of the most noteworthy accomplishments is the shift towards Domain-Driven Design. For us it was one of the most interesting discoveries that not only helps us grow, but also pushes us to be closer to the dev community.
This time we decided we wanted to share some of this knowledge. We cordially invite you to our webinar that we hope will motivate you to research and implement DDD in your projects.