SOLID code isn't flexible
Beginner, Intermediate, Advanced
Chris is a principal software engineering using Elixir to create generate renewable energy. Although he started out writing C for embedded systems, these days he spends his time in Elixir and Rust. When not writing code for work, Chris can be found writing code for fun, talking about the joys of functional programming, playing dungeons and dragons, roasting coffee, or building lego with his kids.
The only constant in software development is change. As engineers, we’re presented with new bugs, new integrations, and new requirements on a regular basis. In order to handle these changes, software engineers have adopted a number of different principles and techniques designed to aid them in code comprehension and adapting to change. Unfortunately, many of the widely accepted software patterns fail to achieve either of these goals. Luckily for us, we have the power of Elixir, Erlang, and functional programming on our side.
In this talk, we will compare and contrast many established ideas from object-oriented design with a more functional approach. Beginners to Elixir may see a new way to think about design, while more experienced Elixirists will hopefully pick up some new techniques and patterns to apply in their own code. Most importantly, we will discuss how to build even simpler systems using the tools that we all love.