Rust async deep-dive course

Introduction

This is an intermediate level course, targeted at developers who have at least some familiarity with Rust and async development models.

Prerequisites

Section 1: Basic async I/O

Section 2: Signals & Reactor loops

Section 3: Advanced Patterns

Build these slides

You can find the code for these slides here!

It's generally recommended to use the CI artifacts for these slides, but if you must build them yourself, you need to have Emacs (v26+) and org-mode installed!

The following function will export the full course into an HTML slide tree.

;; TODO: swap the theme to be more easily readable on white background
(defun export-course ()
  "Export a course tree as a set of HTML files"
  (interactive)

  ;; Manually require ox-reveal
  (require 'ox-reveal)

  ;; Make sure org-reveal is loaded and set-up
  (load-library "reveal")
  (setq org-reveal-root "../../.templates")

  ;; Export the README
  (find-file "README.org")
  (org-html-export-to-html)

  ;; Then export the rest of the slides
  (mapcar
   (lambda (file)
     (find-file file)
     (org-reveal-export-to-html))
   (delete "README.org" (directory-files "." nil "\.org$" t))))
(provide 'export-course)

License

This course, as well as any associated media assets is licensed under Creative Commons CC-BY-SA 3.0. All associated code examples are licensed under the GNU General Public License Version 3.0 (or later).

See the licenses directory for complete copies of the applicable license texts.

Author: Katharina Fey

Created: 2023-02-16 Thu 08:53

Validate