What is the best way to learn a web framework (in my case Phoenix) from a book?

I am learning Phoenix framework from books. Previously whenever I learned basics of a framework I used some video tutorial and after that used books to learn it further. For Rails the best tutorial was Rails Essential Training by Kevin Skoglund at Lynda.com.
Now I’m learning Phoenix from books from scratch instead of starting from video tutorials. I’m using Shankar’s awesome series, the Phoenix inside out’ books series. I am picking it very easily, because I already have the MVC concept from Rails and CodeIgniter, and a good knowledge of Elixir, and also because Shankar has explained everything in a nice way, but when I try those concepts two days later, I struggle with it.

What is the best way to use books?

  1. Side by side opening books as well as the code editor and practicing the examples right on the spot.
  2. Reading a section and then practicing it after closing the book.
  3. Any other method.

Unfortunately the answer to this question is “it depends”. Everyone learns differently.

Personally when I am going through a book, I code as I read it. If I do not understand what the code is doing, I will start to continue reading to see if there is further explination. If there is not, I will sit there looking up documentation / go on IRC or something to ask questions. Then, if there are exercises at the end of a chapter, I will work through those. I may not do all of them depending on how easy I am finding them.

It also depends on the topic of the book I am reading. As an example, I am going through an Erlang book right now but I do not feel the need to write down each of the code samples because I am familiar enough with Erlang that I may only “participate” with the more advanced topics. On the flip side, I am (ever so slowly) going through the Idris book and I am writing every single line of code from the book into my computer because Idris has concepts that are very foreign to me.

TLDR: What works for me may not work for you. Unfortunately you will need to find out what works for you. And, unfortunately, it could even mean that books do not work well for you.

Either way, I wish you the best. And please feel free to ask any questions that you may have.

for elixir I recommend the elixirkoans: http://elixirkoans.io

for phoenix the write a blog engine is a classic where you don’t have to wrap your head around what is being built - but you get to learn the ins and outs of the framework https://hackernoon.com/introduction-fe138ac6079d

this udemy video course is also pretty solid, and usually around €10 https://www.udemy.com/the-complete-elixir-and-phoenix-bootcamp-and-tutorial/

and then there are all the books of course… I try to code along, and even a bit a head (usually the books states now we will add this or do this - so I try to solve it, before reading/seeing the solution/code in the book) - to get it into brain/muscle memory - if I just read the code it goes right through, and tends not to “stick”:confused:

best learning xp is of course shipping a product… and using it for some real world stuff

The complete Elixir and Phoenix Bootcamp is for Phoenix 1.2, would it be beneficial for me if I’m using Phoenix >= 1.3 ?

Phoenix 1.3 was largely a structural change. They also added some nice new features. I don’t believe they actually removed anything. You can see the full changelog here.

Essentially you should be fine to work with 1.2. Though, if you really want to, you could try using 1.3 with that course and see how it goes.

the last section has 37 minutes on “Phoenix 1.3 Update” - haven’t watched that part myself though… but the changes are largely(solely?) structural, so it should be good… you could perhaps work on “upgrading” the blog engine (which is also 1.2), and get a feel for contexts etc.

1 Like