PJUllrich

PJUllrich

Author of Building Table Views with Phoenix LiveView

RunElixir.com - A free, 30min Elixir Quickstart Guide

I’m happy to announce RunElixir.com, a free online guide to Elixir. It aims to answer the questions: How can I get started with Elixir?, but also What else is there to learn about Elixir?

I recorded an announcement video with more details here:


TLDW: RunElixir.com is a condensed version of the Elixir docs that aims to give interested developers all they need to get started with Elixir in 30 minutes or so. It is inspired by the Rust by Example online book and the Gleam language tour.

In addition to being a quickstart to Elixir, it will also collect high-level introductions to various Elixir topics to give you an overview of what Elixir has to offer and to explore new topics. For example, you might know about :ets, but do you also know about :persistent_term? Both are useful for keeping state in memory, but you might not hear about them unless somebody tells you about them. That’s what RunElixir tries to do. It will show you what Elixir and Erlang have to offer from a high level.

You can find it at: runelixir.com or on GitHub: GitHub - PJUllrich/run-elixir: Learn Elixir in 30min through Examples · GitHub


I will add more topics in the coming weeks, but your feedback would be much appreciated! What do you think about this idea? Do you have any topics that you think should be in the guide? Any feedback is much appreciated :slightly_smiling_face:

First Post!

gflashner

gflashner

Thanks for this @PJUllrich

Most Liked

PJUllrich

PJUllrich

Author of Building Table Views with Phoenix LiveView

I added a new chapter today: In-memory State!

I explain how to use Agents, ets, dets, or persistent_term to store state in your Elixir application. I also added Big-O complexities for ets and persistent_term where possible. Check it out!

Nefcairon

Nefcairon

Thanks, that’s neat.

Currently I am going through “Lists and Tuples”. I’m not sure if it’s good to have multiple lines in one livebook block and not be possible to evaluate each line on its own… If someone looks at that on a small device, he has to scroll down, up, down, up,… and associate each result to the correct line. Have you already put some thought into this? (Edit: I see now, that you put the number als label therefore. Maybe it’s better to put a short description there? As “get 2nd element”…)

Also, I would mention the Elixir version very soon. I know Elixir doesn’t change much these days, but someone with little experience with Elixir doesn’t know that. Personally, I wouldn’t use a JavaScript, Go or Rust guide if I didn’t know what version it was written for (maybe it’s out of date), so I would mention the version right in the beginning and also that the guide will be close to correct even if the reader’s version is not too far in the future. (Plus a link where to inform you if anything isn’t working anymore → Github?).

harrisi

harrisi

It’s from the pattern matching section, and it’s actually part of a note exactly about why it doesn’t work, and gives two options for actually determining if the map is empty.

I know what you mean, but it seems like even the Elixir docs use the term “operator”. Erlang also does.

Last Post!

harrisi

harrisi

Elixir itself provides Windows binaries as well. As does Erlang. As of OTP 27.1 the Windows Erlang installer doesn’t even need admin privileges, which is great!

Where Next?

Popular in Other Resources Top

dimitarvp
Hello, While coding tests for a hobby project of mine, I stumbled upon something odd when directly comparing Decimals – which is a bad i...
New
zkessin
I have a new free email course on how to best use types in Erlang and Elixir you can sign up here https://elixirtraining.org/types_cours...
New
preciz
Last year I had this idea to stop practicing touch typing with gibberish and start using repositories from GitHub as the source of the t...
New
ericdouglas
I’m very happy to launch this project since it is a culmination of several years of a self-knowledge process and acquired experience in s...
New
GenericJam
It seems like most employers want a reasonably high degree of competence before they’re willing to look at a candidate. Perhaps it’s beca...
New
crockwave
I updated my fork of the live_view_hooks demo repo to include fullCalendar integration, including JSON API, event creation and storage in...
New
hectorperez
Hi, I found that a great way to learn is: play with existing livebook notebooks create new notebooks — completely new or just changing ...
New

Other popular topics Top

baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
Qqwy
Original source of discussion: This topic on the Pragmatic Programmers’ Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
274 42716 114
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
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

We're in Beta

About us Mission Statement