C.W.K.
Stream
← C.W.K. Quests
🧬

JAX Quest

Updated: 2026-05-03

From your first jit to differentiable physics

Composable function transformations on accelerators. Fourteen tracks, 73 lessons, ~28 hours. Walk you from 'jax.numpy is just NumPy?' to writing differentiable simulators and custom XLA kernels.

14 tracks · 73 lessons · ~28h · difficulty: intermediate-to-advanced

Level 0Curious
0 XP0/73 lessons0/17 achievements
0/100 XP to next level100 XP to go0% complete
JAX isn't just another deep-learning framework — it's a numerical computing system that happens to be great for ML. This quest takes you from your first jax.grad call all the way to research-grade patterns: SPMD parallelism, custom_vjp, gradient checkpointing, meta-learning, differentiable physics. The four core transforms (jit, grad, vmap, pmap) compose freely, and the rest of the JAX ecosystem (Flax, Equinox, Optax, Diffrax, NumPyro, Brax) reuses the same DNA. Finishing this quest leaves you fluent in modern numerical research.

Tracks

  1. 01🧬Why JAX Exists and What Makes It Different

    0/6 lessons

    Why JAX exists, what makes it different from PyTorch and TensorFlow

    Where JAX came from, why it isn't just another deep-learning framework, and what its functional-transform thesis means for the way you write numerics.

    Lesson list (6)Quiz · 3 questions
  2. 02🔢JAX as NumPy — The Foundation

    0/6 lessons

    JAX as accelerated, differentiable NumPy

    Drop-in NumPy semantics on accelerators. Where jax.numpy mirrors NumPy, where it deliberately doesn't, and the dtype defaults that bite every newcomer.

    Lesson list (6)Quiz · 2 questions
  3. 03Pure Functions — The Rule That Unlocks Everything

    0/5 lessons

    Pure functions — the rule that unlocks every transformation

    Why JAX makes you write pure functions, what 'pure' actually means in trace-time terms, and how to refactor real impure NumPy code into JAX-clean shape.

    Lesson list (5)Quiz · 2 questions
  4. 04jit — Just-In-Time Compilation with XLA

    0/5 lessons

    Just-In-Time compilation with XLA

    How jit traces, compiles, and caches. Static arguments, abstract values, and the canonical errors you'll trip over before you internalize tracing.

    Lesson list (5)Quiz · 2 questions
  5. 05📐grad — Automatic Differentiation, Functional Style

    0/5 lessons

    Automatic differentiation, functional style

    Functional auto-diff in JAX: grad, value_and_grad, has_aux, higher-order gradients, Jacobians, and the canonical compose-grad-with-jit-and-vmap pattern.

    Lesson list (5)Quiz · 2 questions
  6. 06🔄vmap — Automatic Vectorization

    0/4 lessons

    Automatic vectorization without batch loops

    Vectorization without writing a batch loop. in_axes, out_axes, per-example gradients, nested vmap — the transformation that ends batch dimension hand-coding.

    Lesson list (4)Quiz · 2 questions
  7. 07🌐pmap — Multi-Device Parallelism

    0/5 lessons

    Multi-device SPMD parallelism

    SPMD parallelism over multiple devices. Collectives, distributed training pattern, and why jax.sharding + Mesh is the modern replacement for pure pmap.

    Lesson list (5)Quiz · 2 questions
  8. 08🎲Random Numbers — The Functional Way

    0/6 lessons

    Functional PRNG keys and reproducible randomness

    Why JAX makes randomness explicit, how PRNG keys split and partition cleanly, and the patterns that stop you from accidentally training with the same seed forever.

    Lesson list (6)Quiz · 2 questions
  9. 09🌳Pytrees — JAX's Universal Data Structure

    0/5 lessons

    JAX's universal nested-structure abstraction

    Pytrees are JAX's nested-structure abstraction — every parameter pack, every state dict, every model. Map, flatten, register custom nodes.

    Lesson list (5)Quiz · 2 questions
  10. 10🧠Building Neural Networks — Flax, Equinox, and Friends

    0/6 lessons

    Flax NNX, Equinox, and JAX-native neural networks

    Why core JAX has no nn.Module, what fills that gap (Flax NNX, Equinox), and how the same CNN looks in both libraries side by side. Plus a Transformer block.

    Lesson list (6)Quiz · 2 questions
  11. 11🔄Training Loops — Optax and the JAX Way

    0/5 lessons

    Optax, schedules, and explicit training loops

    Optax composes gradient transformations like Lego. Schedules, the canonical training step, and how to scan + checkpoint with Orbax for robust runs.

    Lesson list (5)Quiz · 2 questions
  12. 12Advanced Transformations and Patterns

    0/5 lessons

    custom_vjp, remat, scan, and meta-learning patterns

    Custom gradient rules, gradient checkpointing for memory, scan for structured control flow under jit, jax.debug, and meta-learning grad-of-grad patterns.

    Lesson list (5)Quiz · 2 questions
  13. 13🔬JAX for Scientific Computing Beyond ML

    0/5 lessons

    JAX beyond ML — Diffrax, NumPyro, differentiable physics

    JAX outside ML: differential equations with Diffrax, Bayesian inference with NumPyro, physics simulators, and a fully differentiable simulation example.

    Lesson list (5)Quiz · 2 questions
  14. 14🚀Ecosystem, Deployment, and What's Next

    0/5 lessons

    Production deployment, profiling, and the road ahead

    Exporting models for production, the TPU/GPU runtime story, profiling tools, Pallas custom kernels, and an honest 2026 take on where to go next.

    Lesson list (5)Quiz · 2 questions
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.