TL;DR
I started my Elixir functional language learning path. My goal is to learn Phoenix framework, and this is precondition. I will explain why I found that Elixir School is not a good fit for functional programming absolute beginner.
Important note: feature image features my daily elixir, which is good craft beer. Remember that this contains alcohol and you need to enjoy it responsible as legally major person.
Elixir learning page gives several options how to start. I started with Elixir School, and as absolute beginner in functional programming I lost them at matching patterns in case statement. Pattern matching is core feature for functional programming. Elixir school gives you examples, with no additional explanation. I think that precondition is that you know functional programming, and if this is true, they should state it this fact at the beginning of the lectures.
As a software tester, I read a lot about how to effectively learn something. You should always start with a book. Elixir official page listed Programming Elixir 1.2 as first resource. My heuristic was, “Does that mean that this is best option?” In order to check my fallible heuristic, I googled “best book to start Elixir” and found recomendation blog posts for this book.
So far so good. I am satisfied with book and author. Here are my notes for first chapter and my note taking tools:
What I liked so far:
Instead, it is intended to give you enough information to know what questions to ask and when to ask them. So approach what follows with a spirit of adventure. Try the code as you read, and don’t stop there. Ask yourself questions and then try to answer them, either by coding or searching the Web.
Dave Thomas. Programming Elixir 1.2 (for Karlo Smid) (Kindle Locations 561-563). The Pragmatic Bookshelf, LLC (586659).
And:
The foundations of programming are not assignments, if statements, and loops.
Dave Thomas. Programming Elixir 1.2 (for Karlo Smid) (Kindle Locations 572-573). The Pragmatic Bookshelf, LLC (586659).
Conclusion
We recently had workshop on taking notes. One of the conclusion was is that you need to practice in order to create great graphically enabled notes that will help you to better understand them. Before every new chapter, I will use notes to recap what I learned in previous chapter and to use them as my Elixir reference.