asfand

asfand

Which course should I pick!

I am Asfandyar from Pakistan. This is my first time to the forum.
I develop PHP websites using CodeIgniter, which is super easy to learn. Then I also learnt Ruby on Rails. I have a working experience in RoR, even if I did not use it for some real project.

Now I want to learn Elixir and Phoenix, but it’s hard for me to learn. I learnt the pattern matching and other functional programmingn concepts from the official docs, but when it comes to processes, it’s a little hard for me to learn easily. Also when I tried to learn Phoenix, I was forgetting the ideas.

I asked friends, searched google, read different blog posts, and at last I found some courses which I think will be easier to get me up and running. Following are the 3 courses I shortlisted so far,

  1. Discover Elixir and Phoenix, Ludu.com
  2. Elixir for Programmers, Dave Thomas
  3. Developing with Elixir/OTP, Pragmatic Studio

Because I have only limited budget, so I can’t buy all of these courses, and from the free lessons I can’t decide which one is the best. But because hearing a lot about Pragmatic Studio’s RoR course, I think their course might be as easier and beneficial as their RoR course, so I am kind of inclined towards that, but then when I look at the genius Dave Thomas and his experience in Ruby world, I think may be his course is better, then I also read some good reviews about the course at Ludu, so I am not able to decide which course should I take.

Would you people help me in deciding which course should I take?

Also if there is another course which is easier, and only one time payment, and which can make me productive quicker, please send a link to that.

Also if someone have already used the above courses, what are the challenges in following each course?

Note: I got some nice links in the replies which lead to posts with more nice links. So it means I’ll spend some more time in those links. But I’ll still want to know if Pragmatic Studio course will be the best for me or the Dave Thomas one, when I return back from these links.

Most Liked

peerreynders

peerreynders

Erlang using Kent University Erlang master class

Note that the content has been reworked into two MOOCs:
Functional Programming in Erlang
Concurrent Programming in Erlang

The first one is entirely about (sequential) functional programming while the second one goes over the principles and techniques of concurrent programming that OTP is based on - while only taking you to the doorstep of OTP (i.e. you use gen_server at the end of the course). There still is room for a third course exploring the use of various OTP behaviours.

While Learn You Some Erlang is in Erlang, it’s knowledge is all based around the BEAM ecosystem which is what Elixir is based on.

On Erlang’s Syntax:

the syntax is only intimidating, it’s far from difficult.

Erlang is a fairly small language and should be simple enough to learn if you approach it with an open mind (and lots of people don’t). The benefit of learning functional and concurrent programming in Erlang is that it should give you a clean break from your existing PHP/Ruby mindset. Elixir’s Ruby-like syntax may lure you into treating it like Ruby - which it really isn’t. The typical challenges to learning a BEAM language are:

  • Using pattern matching instead of conditionals
  • Using recursion instead of iteration (and by extension, using higher order functions)
  • Thinking concurrently

That being said having to learn Erlang can feel like the straw that breaks the camel’s back.

Learn Functional Programming with Elixir aims to teach functional programming in Elixir (i.e. no need to do it in Erlang). Elixir in Action progresses a bit quicker in order to cover the basics of concurrent programming and explore some of OTP - in way it feels like an Erlang (i.e. BEAM) book that happens to use Elixir - no Ruby-coloured glasses here.

Dave’s course doesn’t provide free lessons in an order, so I won’t be able to get an idea about how easier/harder the whole course is, although I got an idea from the free lessons and the titles of the paid lessons, that the course covers a lot of stuff.

So, I think the biggest risk here is that you start the course and that you find it too fast paced.

You’re a programmer, so you don’t need spoon feeding with the conventional drivel about “this is an integer.” No. You need to know what’s different, and you want to know quickly.

This pretty much sets the tone for what is expected of you. But given how well the course is reviewed here, the biggest risk is that you may have to pause and backfill some concepts before you return to it. So while the course may turn out to be “too much” in the short term, I find it hard to believe that it would be useless in the long term as long as you go back to it when you are ready.

AstonJ

AstonJ

It’s one of the best courses out there :slight_smile:

See my review of it here for my thoughts:

kokolegorille

kokolegorille

Although I have a great respect for teacher, which taugh me a lot on React JS, I have to say I was not convinced by his course on Elixir/Phoenix bootcamp.

The main problem was the misuse of functional terminology, that showed he was more like discovering “at the same time”…

I watched PragDave course and for me he knows more about FP.

I didn’t watched the other courses, so I can’t tell…

Where Next?

Popular in Chat/Questions Top

Iex.new
Hello!, I just started this week to discover Elixir. I’m a PHP-Programmer and did some sutff in Go too. The more I read about Elixir t...
New
dopomecana
The title of this topic may sound silly at the first glance. But why I trying to ask you guys is how to go to the next level? I am curre...
New
Santheepkumar
Hi all, I am a Fullstack JS developer for last 2 years. I need a good guide to learn elixer. Any suggestions please
New
maz
I’m getting this error: ## ** (Ecto.Query.CompileError) Tuples can only be used in comparisons with literal tuples of the same s...
New
miguelsrrobo
hi i was wondering if it is necessary to learn erlang to learn elixir
New
wolfiton
Question: Can someone recommend me some good resources on learning performance for phoenix elixir applications and a design pattern I sh...
New
wallyfoo
Long story short, I have a real world need to create a view for hooking up a shipping terminal to live data, but because of some early ar...
New
AstonJ
It finally feels like I’ve got some time to catch up on my reading - though I am sure lots of people will be wondering the same: what are...
New
Emily
Preface: I’m not sure if thise is the right place, because this is not direclty Elixir related… but I’ve always got some of the best advi...
New
zervis
Hello, I’m about to dive into web development. I was thinking about Laravel or Ruby on Rails, but then I found Phoenix. Do you recommen...
New

Other popular topics Top

Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
AngeloChecked
What learn first? Rust or Elixir Hi Elixir community! I’m here because i want learn a new language. I’m a junior developer and mainly i ...
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
shijith.k
I am trying to start a new phoenix project with elixir 1.9, but mix phx.new does not work. It says that ** (Mix) The task "phx.new" could...
New
axelson
This post is a wiki (feel free to hit the edit button near the bottom right of this post to add your own changes!) This post collects co...
239 47930 226
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New

We're in Beta

About us Mission Statement