Skip to content

Slides introduce the notebook: objective, key questions, and a friendlier look #45

Description

@project-delphi

Blocked by #44 — do not start until the notebooks are signed off.
The decks should introduce notebooks that are already good. Reshaping slides
around content that is still moving means doing it twice.

The problem

Each section's slides currently run: # NN · Title {#sec-NN-slug} → the hidden
::: {.sec-part} div → *Part III · exercise* → the .pace-badge → two to
seven concept slides → a "To the notebook" slide with the Colab link.

Two things are off. The concept slides re-teach material the notebook then
teaches again, so the deck competes with the notebook instead of setting it up.
And the objective the section is aiming at never appears on screen at all — it
lives only in scripts/content.py and surfaces only inside the notebook.

Pacing is uneven as a result: §00 gets 2 slides for its 5 minutes, §01 gets 7
for its 20.

Styling is deliberately minimal and now reads as plain rather than as calm.
slides/slides.scss is system-ui only — no web fonts — on three colours:
#2f4858 headings, #2c5f8a links, #1f2933 body, with #b3541e for Kahoot.
The same palette as the site's custom.scss.

The ask — part 1, structure

Reshape each section's slides to what the notebook is → its objective → the
key questions it answers
, then hand over to Colab. The deck frames; the
notebook teaches.

Supporting change: lift objectives out of scripts/content.py into
_variables.yml. That is what lets {{< var >}} reach them from both decks and
from the site, and what gets them a Spanish translation like every other string
there. #43 may already have done this — check before duplicating it.

EN and ES in lockstep, always:

  • 00 · Setup and welcome
  • 01 · What a tensor is
  • 02 · Thinking in N dimensions
  • 03 · Indexing and broadcasting real data
  • 04 · Reshape and transpose real images
  • 05 · Video pipeline design
  • 06 · Contraction with einsum
  • 07 · Inverses and the pseudoinverse
  • 08 · Recursion with matrices and vectors
  • 09 · Convolution and deconvolution
  • 10 · Tucker decomposition on real data
  • 11 · Wrap-up and take-homes

The ask — part 2, make it fun to look at

  • Fonts — Google Fonts is the one external host Quarto allows here. Give
    every face a real fallback stack; slides.scss currently has none because
    it never needed one.
  • A warmer, wider palette than the current three colours, without losing
    contrast on the Kahoot slides or under the pace chrome.
  • Illustrations. Extend scripts/gen_figures.py and
    scripts/gen_thumbnails.py rather than dropping in stock art — every
    figure in this repo is drawn from an array the workshop actually uses, and
    that property is worth keeping.

Constraints

  • slides/deck-pace.html is include-after-body for both decks and owns
    TOTAL_SECONDS = 11700. check_links.py fails if that stops matching
    workshop.minutes. Quarto runs its shortcode parser over included HTML
    a bare var shortcode written out in a comment there crashes the render with
    Cannot get Attr from TypeNil.
  • A section's part number must stay a hidden ::: {.sec-part} div. As a data-
    attribute on the heading it is not parsed as an attribute at all: pandoc folds
    the whole brace into the heading text and auto-generates an id from it, which
    silently destroys every #sec-NN anchor.
  • check_links.py enforces that both decks carry every section anchor and list
    the same twelve sections. EN and ES change together.
  • slides/slides.scss:31-37 is a Kahoot-contrast comment introducing an empty
    rule block
    — the comment ends and .reveal .callout follows directly. Fix
    it as part of this, and check it against Cold load: reveal misclassifies every slide as dark, and the footer goes unreadable #39.
  • section.factorization-ladder (§10's four-rung slide) and section.data-slide
    (the nine-card dataset grid) are hand-tuned to 1280×760. A font change will
    move both.
  • The image generators are not in CI — they need network and a scientific stack
    the workflow does not install. Nothing will tell you a figure is stale; rerun
    them by hand when their inputs change.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

blockedWaiting on another issue before work can startcontentTeaching content: accuracy, examples, referencesenhancementNew feature or requestslidesslides/en and slides/es revealjs decks

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions