Earlier quoted context omitted.
For me personally, Programming Elixir and Programming Phoenix , from the Pragmatic Bookshelf, were both very useful. Quite a few of my students have said great things about Phoenix in Action , from Manning, and it looks to me like a fantastic resource for beginners. Elixir in Action is also top-notch and will show you what's special about the BEAM.
To those out there learning from “Programming Phoenix”, although is the best resource for lay of the land of Phoenix, the content is getting out dated with the rise of auth generator and the context model has also changed a lil bit. It takes diligence in following along and referencing the documentation to not get stuck. Great book though.
The auth generator is just a new feature. Learning how the pieces work from the book is still worthwhile.
My advice if you want to avoid confusion as you're learning is to just use the same version of Phoenix the book does! (1.4 in this case)
After you go through it, you can follow the official upgrade guides in just a few minutes.