At a high level Ecto is about 3 main concepts: 1) managing connections to a database, 2) generating SQL, 3) defining and validating schema structs. This talk ignores the first two and focuses on the last part. Ecto 3.0 was refactored to separate core ecto from ecto_sql, but even Ecto 2.0 can be used without a database.
Changesets are remarkably general and can be used to abstract an HTML form from an underlying data storage layout, or to manage advanced search criteria, or even as an anti-corruption layer for not-completely-trusted data coming into your system. We'll explore these use cases with practical code you could start using in your projects tomorrow.
Greg has spent a circuitous career to finally find a happy place with Elixir. After 20 years working as a software developer, he can now fully embrace concurrency not as a necessary evil, but as a great design tool. He's a 7th generation Texan and resides in the Dallas area with his wife and two children. He's Chief Architect at Seat Scouts where he advances the ticketing industry with the amazing near realtime features Elixir makes easy.