He’s shown some real interest in learning to program and I’ve wrestled with the best way to approach it for a while now. So far, I’ve gotten him a linux laptop and I’m starting with the command line. I’m giving him some simple basic Ruby to learn to pull the command line stuff together.
I’m going to touch very lightly on HTML, CSS and SQL. The thought process here is just giving him an idea of different parts of the process so he can see how things fit together.
And after that, I’m planning to focus on Elixir from that point forward. The hope is that it will be easier to reason about as he learns. I also wanted to work with him through the Coding Gnome course because I’m a big fan of how it teaches you to think about code structure.
So what learning resources for Elixir could you recommend that make it fun?
I really enjoyed how Designing Elixir Systems with OTP: Write Highly Scalable, Self-Healing Software with Layers by James Edward Gray, II and Bruce A. Tate was written and broke the problem of building a quiz application down while also teaching about OTP concepts.
I can imagine that you could go for a similar approach described in the book for something like the trading card game kata: Trading Card Game - Coding Dojo
This can start with a simple CLI application where he plays the game against an opponent ( you ). You could then build a web interface with basic html, css on top of it.
Persisting a leaderbord in SQL would then be the final touch.
This might be not the structured approach or a learning resource you have asked for, but I can image such a project might be lots of fun and motivating. Especially if you decide to expand the ruleset of the TCG and import custom card images into your web interface.
This is great actually! He loves trading card games so this will probably resonate well.
How about Joy of Elixir (self-published) (free)? It’s aimed at total beginners
Keep us posted on how you get on Barry!
When you want to teach pattern matching the Thinking Elixir is very helpful. There it has two courses and one is a FREE Pattern Matching Course.
@adolfont any thoughts on this?
@brightball awesome initiative! Can’t wait till I’m in the same position!
My advice for teenagers is what is written here: An Alternative View on Why, When and How Computers Should Be Used in Education
Unfortunately, it doesn’t involve programming until someone is 17.
I’ll certainly take a look.
For what it’s worth, he’s asked me to teach him which is why I’m going down this road now. I’m just trying to find the best way to go about it.