An introduction to controlling mutability and side effects in Ruby, which give us instructions for decomposing our models and testing them rigorously.
A redefinition of the Liskov Substitution Principle, giving insight to why Ruby struggles with NoMethodError on nil, why all the Rails Base classes include callbacks, and how to avoid “oh what the hell now” when you get an exception five steps from where the bug is.
Almost every Rails database contains records that won’t pass their model validations, leading to “can’t happen” bugs months or years later. This talk introduces a gem that detects unsafe practices and lurking corrupt data. Come learn to recognize and prevent
five six ways data becomes corrupt, and maybe replace ActiveRecord validations entirely.