Learn Elixir The Beast Mode Way

I’ve been meaning to start learning a new language for a series of books after Python.  My list is pretty long, including Nim, Elixir, Go, Rust, JavaScript, and I even might, just maybe, who knows, do a PHP7 book.  Currently though I have to do three more courses covering Python before I can move on to the next book, but I do want to start getting off Python for my business software soon.

The first thing I’d like to replace is my current Django web stack.  It works, and powers my things, but honestly it’s not the greatest functionality.  I’d love to just code a replacement in anything else, but my time is limited.  I have to work on books right?  Gotta record those videos.

A while back I heard that there’s people who hate my books for total beginners because they are too repetitive and slow.  Alright, sure, if it’s going too slow then chances are it’s not the right book for you.  I actually admit that the book is not for people who can’t handle doing some rote work or are already experts.  No book can perfectly train everyone, and it’s insane to expect my book aimed at a person with zero knowledge to also train everyone else.

But, I’m a problem solver, and I like to solve my problems by combining many things at once.  Solving one problem is boring.  I need to do three at once:

  •  I have a problem that I’d like to learn a new language to do some web development and replace my current Django stack.
  • I also have the problem that I need to learn a new language for my next book.
  • I then have this problem that people who feel my beginner books are beneath them seem to think the books don’t work for anyone else.

I believe there is a class of person who feels they can’t learn by practice, but only that they can learn by “building stuff”.  I don’t really write books for them, but there was a tickle in the back of my brain that said, “You sure?”

Then it hits me!  I got my next book Learn More Python 3 The Hard Way in the works, I need to learn Elixir, well why don’t I just try to do the Learn More exercises in Elixir as my way to learn Elixir?  Then when I’m done I’ll have learned enough Elixir to work on my own site, and then I can probably do a Learn Elixir The Hard Way, and then…

Wait! What if I do a “Learn Elixir The Beast Mode Way”, or probably a better title because that’s super weird, but I think you know what I mean.  What if I take the projects in Learn More Python The Hard Way, do them in Elixir, then add a large initial “crash course” that teaches enough Elixir to make you dangerous enough to do the projects?  Then, the only structure is the projects, and you can do those in almost any order you want.

I’m actually very into this idea now.  I freely admit that when you’re an expert that rote practice style of learning isn’t very useful.  Learn More Python is kind of the list of projects I work through when I’m learning a new language, so why not just do them with Elixir too?

Starting maybe tomorrow or next week (time permitting) I’m going to “beast mode” Elixir using the projects from my Learn More Python The Hard Way and probably find a place to post the results.  I think what I’ll do is go through this awesome Elixir School website as the fast crash course part, then I’ll start going through my book using Elixir.  If it works then this may become the new format for future books aimed at people who aren’t total beginners.

Published by

Zed

I'm the author of The Hard Way series.

4 thoughts on “Learn Elixir The Beast Mode Way”

  1. It’s funny, I just started learning Elixir recently since Discord uses it at a HUGE scale. I mean I know erlang is pretty good at scaling, but they really push its limits.

    I can’t wait to read what you write!

    1. I’ve started hacking out a rough outline recently in my spare time and so far it’s a pretty nice language. I’ll have to look at discord again to see what they do with it.

    1. I probably would just keep really simple and focused on basic skills with the language rather than anything too web related. When I’m introducing a language I don’t want to throw in a whole thing on complicated microservices and web development. Instead, I like to just introduce the language with some basics, then people can go read anything they want.

Leave a Reply

Your email address will not be published. Required fields are marked *