Rust Programming

Goal

Mastery of Rust for Linux kernel contribution.

Current Course

Course

Rust 101 Crash Course for Beginners

Instructor

Jayson Lennon

Status

In Progress

Started

2026-03-03

Course Progress

Section Topic Status

1

Introduction / Setup

[ ]

2

Variables & Data Types

[ ]

3

Functions

[ ]

4

Control Flow

[ ]

5

Ownership & Borrowing

[ ]

6

Structs

[ ]

7

Enums & Pattern Matching

[ ]

8

Error Handling

[ ]

9

Collections

[ ]

10

Traits & Generics

[ ]

11

Modules & Crates

[ ]

12

Documentation (rustdoc)

[ ]

Learning Path

Rust 101 (NOW)
    ↓
Rustlings exercises
    ↓
CLI tools (ripgrep-style)
    ↓
unsafe Rust + FFI
    ↓
no_std (embedded/kernel)
    ↓
Rust for Linux (R4L)
    ↓
First kernel patch

Key Concepts to Master

The Hard Parts (spend extra time here):

  • Ownership - THE mental model shift

  • Borrowing & lifetimes

  • The borrow checker (friend, not enemy)

  • Result<T, E> and Option<T> patterns

Systems Programming (kernel path):

  • unsafe blocks and when to use

  • FFI - calling C from Rust

  • no_std - running without standard library

  • Memory layout and repr©

Notes

Projects

Projects will be added as you complete course sections.