Powered by AppSignal & Oban Pro
Would you like to see your link here? Contact us

Async Elixir

chapters/ch_0.0_start.livemd

Async Elixir

Overview

Welcome to Async Elixir

Welcome to the Async Elixir course, a comprehensive exploration of Elixir’s advanced concurrency features. This course is tailored for individuals with a foundational understanding of Elixir programming and a desire to elevate their expertise to the next level.

Course Overview

This course is your gateway to becoming proficient in Elixir’s asynchronous capabilities. Whether you’re an experienced developer expanding your skill set or a curious learner fascinated by concurrent programming, you’ll gain a deep understanding of Elixir’s powerful asynchronous features.

By the conclusion of this course, you will have developed a robust understanding of processes, OTP patterns, and the Elixir standard library’s utilization for effective process management. You’ll be well-equipped to apply these concepts confidently in real-world situations.

Key Topics Covered

  • In-Depth Process and Concurrency: Explore the intricate workings of Elixir processes and the art of achieving concurrency.

  • Essential Process Management Concepts: Learn vital concepts such as process linking, monitoring and more.

  • Abstractions for Resilience and Control: Navigate essential abstractions like GenServers, Supervisors, and core Elixir modules such as Task, Registry, and Agents.

  • Applied Learning with a Project: Put your knowledge into practice through a hands-on project, solidifying your grasp of asynchronous programming and process management.

Course Focus

  • Prerequisite Elixir Knowledge: This course assumes a foundational familiarity with Elixir’s syntax and concepts. It DOES NOT teach Elixir basics but instead focuses on the asynchronous capabilities of Elixir.

  • Core Concepts, Not Libraries: Our emphasis remains on core concepts. The course doesn’t cover libraries like Phoenix or Phoenix LiveView. Instead, it equips you with a strong foundation to comprehend such libraries more effectively.

Prerequisites

Before diving into the course, make sure you have the following:

  • Installed Elixir
  • Installed Livebook
  • A basic understanding of Elixir syntax and the ability to write code in Elixir. If you need a refresher, you can review Elixir basics here.

Livebook is an excellent tool for learning Elixir and experimenting with its concepts. Learn more about Livebook here.

About me

I am a full-stack software engineer with four years of focused experience in Elixir programming. Over this period, I have actively engaged in various Elixir projects, extensively delved into Elixir literature, including books and blogs, and honed my skills in this powerful language. My fascination with Elixir’s process-oriented architecture has inspired me to condense my insights into this course.

Table of Contents

Part 1: Concurrency and Processes

Part 2: Processes

Part 3: GenServer

Part 4: Registry Module

Part 5: Supervision

Part 6: Project: Building a Download Manager

Part 7: Tasks

Part 8: Agents

Part 9: Misc


So without further ado, let’s get started… 🚀