JEG2

JEG2

Author of Designing Elixir Systems with OTP

How to Train Your Scrappy Programmer (plus free guide on data modelling) (self-published) (interactive guide)

If you don’t make it past the first sentence of this post, here’s what you need to know: I’ve published a free Livebook guide about data modeling in Elixir.

For the completionists, that guide is actually one part of a series of five interactive guides about honing your scrappy programming skills in Elixir using Advent of Code problems for practice. I’ve pulled together five of my favorite problems from 2023 and distilled them down to the essential programming lessons that they have helped me hone. The full series includes discussions about code driven exploration, taming inputs, my undying love for sets, middle school math (but fun), and five of my closest algorithms.

Those who are interested can grab the full series, How to Train Your Scrappy Programmer, with an Elixir Forum discount based on alliteration. You’re welcome, nerds.

Almost every challenge that a programmer faces is in some way unique. You may have done similar things before, but each application seems to require a new twist. How can we prepare ourselves for constantly facing unknowns?

Effective programmers train to use whatever is at hand and push forward with determination in spite of obstacles. In short, they’ve gotta stay scrappy.

This bundle is a collection of five interactive guides, each exploring a different problem from the popular internet challenge site Advent of Code. In these problem solving guides, we will dive into:

  • How to use Livebook, the interactive code exploration framework
  • Gain insights with charts, animations, data tables, and more
  • Uncover four different parsing strategies
  • Leverage higher level data structures including sets and graphs
  • Employ various optimization techniques, such as working backwards, pre-calculation, and even a little math (binary and middle school)
  • Deploy multiple algorithms: binary search, point in polygon, flood fill, and more

By the end of these lessons you will have a full array of tools to confidently face all the unknowns ahead. You might even need to upgrade the old tool belt to a tool box.

If you don’t want five shiny new Livebooks, you can choose to pick up the individual chapters that interest you:

Thanks in advance for the support and don’t hesitate to ask me any questions!

Most Liked

JEG2

JEG2

Author of Designing Elixir Systems with OTP

I was invited on BeamRadio to talk about my How To Train Your Scrappy Programmer Livebook series and educating developers in general. It was a fascinating discussion. Here’s the episode:

JEG2

JEG2

Author of Designing Elixir Systems with OTP

I just wanted to post a quick reminder that I wrote up detailed solutions to five days from 2023 — ten problems — highlighting parsing, data modeling, analysis, and optimization techniques that you can use in your own attempts.

Here’s a link that includes a HALF OFF coupon for the full set visible once it’s added to your cart: How to Train Your Scrappy Programmer – Voyages in Code

herminiotorres

herminiotorres

Congrats @JEG2 - this one looks fun (and thanks for another great resource!) :023:

Where Next?

Popular in Courses Top

nikos
Get 20% off with coupon code “elixirforum”! Ruby programming was one of the best course I have taken. I can’ t wait !
New
lubien
I’ve been posting videos about LiveView JS Commands in my Youtube channel and so far I have 3 already published and 5 recorded and in edi...
New
arrowsmith
Hi, I’m George Arrowsmith - you may remember me from such educational Elixir content as Learn Phoenix LiveView, Phoenix on Rails, and Ma...
New
mikeclark
:rocket: Today we opened early access to the Pro Package of our Phoenix LiveView course! So now you can get the course in two flavors… T...
New
zkessin
Hi All I have a new email course to introduce people to GenServers, which I think will be useful for those trying to get up to speed with...
New
AlchemistCamp
I’ve finished writing up the show notes for my free 13 screencast series “Ecto Beginner”! :partying_face: You’ll see them with notes at ...
New
AstonJ
Grox.io looks really nice and I love that they’re doing a Joe Armstrong tribute :heart: Bruce Tate (@redrapids) has put together a team ...
New
DmytroNasyrov
Hey folks! A brand new course about distributed systems and microservices. The course is recorded based on my offline lectures for stude...
New
caike
Hey, friends :waving_hand: I’ve recently published a new Elixir course called Phoenix LiveView: The Big Picture in partnership with Plur...
New
New

Other popular topics Top

senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
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
ovidiubadita
Hey all, I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
pmjoe
I have a relationship of love and hate with Elixir. Lots of things are just absolutely right, but there are some things that are kind of ...
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
svb
Hi! Currently I want to submit a form by pressing the Enter key. However, since my input field is of type “textarea” this is just adds a...
New

We're in Beta

About us Mission Statement