Learning Goals

Two parallel tracks, driven by the same motivation: closing the gap between what I have done professionally and what I deeply understand theoretically.

Track 1: Repairing Engineering Foundations

The Problem

Studied Electronic and Computer Engineering across three universities (Politecnico di Torino, ENSERG Grenoble, University of Illinois at Chicago) from 2003 to 2008. Retained the software and systems thinking. Did not retain the physics, electronics, probability, or foundational math. Can recognize a Smith chart by shape but not by name. Took wave propagation classes but remembers almost nothing.

This is not about getting a second degree. It is about reclaiming knowledge that an engineering education should have given, for genuine understanding.

What I Have Completed

  • Single Variable Calculus (18.01) — refresh
  • Linear Algebra (18.06) — refresh

What I Am Working Toward

Organized by priority (see the full dependency graph in ocw/curriculum.toml):

  1. Mathematics — Multivariable calculus, differential equations, real analysis, optimization
  2. Physics — Classical mechanics, waves, electromagnetism, thermodynamics, optics
  3. Electronics — Circuits, signals and systems, semiconductor physics, microwave engineering
  4. Probability and Statistics — Rigorous probability theory, stochastic processes
  5. Mathematics for AI/ML — Information theory, optimization
  6. Chemistry — General and organic (a gap in scientific literacy, never properly learned)

Supporting Projects

  • ocw (code/youtube/ocw) — Indexes all MIT OpenCourseWare YouTube playlists into structured markdown. SQLite-backed, idempotent. 345 courses cataloged with dependency graph, priority tiers, and per-lecture progress tracking. Python, yt-dlp, SQLite.
  • LearnOS (code/learnos) — Learning infrastructure platform. Turns YouTube and OCW content into structured, dependency-aware curricula with progress tracking. Rust.

Track 2: Learning Finance

The Problem

12+ years working in financial services — brokerage, trading, lending, fraud — but never completed a formal education in finance. Learned by osmosis and building systems. The engineering knowledge is deep; the financial theory is patchy.

Know what options are and how to trade them, but cannot derive Black-Scholes. Built credit scoring systems at Credimi, but the credit risk theory (PD, LGD, EAD) is fuzzy. Optimized no-arbitrage yield curves at Gottex, but duration and convexity are vague. Worked on Goldman’s exchange connectivity, but was never taught market microstructure.

What I Have Written So Far

All finance content now lives in this vault under Finance:

  • Market microstructure — Trading fundamentals, order books, Glosten-Milgrom, Ho-Stoll, Kyle’s lambda, spread decomposition
  • DeFi markets — Bonding curves, constant-product AMMs, impermanent loss, LP profitability, PumpSwap, on-chain data infra
  • MEV — Fundamentals, sandwich attacks, protection strategies
  • Case studies — Pump.fun economy

Math foundations shared across both tracks live under the Math area:

Topics with index pages started but not yet populated: derivatives pricing, fixed income, credit risk, debt capital markets, portfolio theory, structured products, macro-economics.

What I Want to Learn

High-priority gaps:

  • Market microstructure — RFQ, market making, order books, dark pools, execution algorithms, price formation
  • Derivatives pricing — Black-Scholes derivation, risk-neutral pricing, stochastic calculus, volatility modeling
  • Fixed income — Duration, convexity, term structure models (Vasicek, CIR, HJM)
  • Credit risk — PD, LGD, EAD, credit VaR, Basel frameworks
  • Structured products — CDOs, CLOs, ABS, tranching mechanics
  • Debt capital markets — Mezzanine, covenants, leveraged finance
  • Portfolio theory — Markowitz, CAPM, efficient frontier, factor models
  • Macro/monetary economics — Central banking, monetary policy, business cycles

Other Learning Projects

  • learning-bazel (code/learning-bazel) — Lessons and examples for the Bazel build system
  • learn-nvim (code/learn-nvim) — Neovim lessons

The Toolchain

All of this runs on a chezmoi-managed setup (dotfiles at code/dotfiles-chezmoi). Neovim as editor, Jujutsu for version control, mise for tool versions, uv for Python, Dagger for CI pipelines. The PKM vault itself is Obsidian-flavored Markdown, pushed to GitLab. Interactive Marimo notebooks under code/ provide visual, hands-on explorations for both math and finance topics.

See also: About Me, Finance