379 lines
8.6 KiB
Markdown
379 lines
8.6 KiB
Markdown
|
|
# GlitchSlide Content Budget
|
||
|
|
|
||
|
|
This document defines content budgets for GlitchPlayer slide templates.
|
||
|
|
|
||
|
|
The goal is not just to keep slides short. The goal is to force clarity.
|
||
|
|
|
||
|
|
A good GlitchSlide should:
|
||
|
|
|
||
|
|
- express one visual idea
|
||
|
|
- support the spoken script rather than repeat it
|
||
|
|
- fit the template cleanly
|
||
|
|
- be short enough to scan instantly
|
||
|
|
- be specific enough that an AI can generate it reliably
|
||
|
|
|
||
|
|
These limits are for both human authors and AI agents.
|
||
|
|
|
||
|
|
## Core Principle
|
||
|
|
|
||
|
|
Every slide should answer one of these:
|
||
|
|
|
||
|
|
- What is the one thing I want the viewer to notice?
|
||
|
|
- What is the one comparison I want the viewer to hold?
|
||
|
|
- What is the one definition I want the viewer to remember?
|
||
|
|
- What is the one process I want the viewer to understand?
|
||
|
|
|
||
|
|
If a slide tries to do two or three of these at once, it should usually be split.
|
||
|
|
|
||
|
|
## Global Rules
|
||
|
|
|
||
|
|
Across all templates:
|
||
|
|
|
||
|
|
- Prefer one idea per slide.
|
||
|
|
- Do not restate the exact sentence currently being spoken.
|
||
|
|
- Assume the narration carries detail; the slide carries structure.
|
||
|
|
- Keep wording concrete and visual.
|
||
|
|
- Prefer nouns and verbs over abstract qualifiers.
|
||
|
|
- Avoid paragraphs unless the template is specifically meant for prose.
|
||
|
|
- If a slide uses an image, the image should do explanatory work, not decorative work.
|
||
|
|
|
||
|
|
## Character Budgets
|
||
|
|
|
||
|
|
These are hard or near-hard limits.
|
||
|
|
|
||
|
|
- `header`: target 8-28 characters, hard max 36
|
||
|
|
- `title`: target 12-36 characters, hard max 48
|
||
|
|
- `eyebrow`: target 6-18 characters, hard max 24
|
||
|
|
- `body`: target 18-48 characters, hard max 60
|
||
|
|
- `quote`: target 18-55 characters, hard max 72
|
||
|
|
- `definition`: target 20-55 characters, hard max 70
|
||
|
|
- `example`: target 16-45 characters, hard max 60
|
||
|
|
- `step label`: target 8-24 characters, hard max 32
|
||
|
|
- `chart label`: target 4-12 characters, hard max 14
|
||
|
|
- `latexString`: one expression only, hard max 80 characters unless clearly justified
|
||
|
|
|
||
|
|
Important:
|
||
|
|
|
||
|
|
- The hard max exists only for edge cases.
|
||
|
|
- The target range is the real design intention.
|
||
|
|
|
||
|
|
## Template Budgets
|
||
|
|
|
||
|
|
### 1. `SquareYellow`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- one strong image
|
||
|
|
- one short framing phrase
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `header`
|
||
|
|
- `imageSrc`
|
||
|
|
- `imageAlt`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `header`: target 10-24 characters, hard max 32
|
||
|
|
- no body text
|
||
|
|
- image must carry the explanatory weight
|
||
|
|
|
||
|
|
Good:
|
||
|
|
|
||
|
|
- `GROWTH LOOKS FINE`
|
||
|
|
- `LIFE FEELS TIGHT`
|
||
|
|
- `OUTPUT IS NOT SECURITY`
|
||
|
|
|
||
|
|
Bad:
|
||
|
|
|
||
|
|
- `This chart suggests that maybe people do not experience economic growth as safety`
|
||
|
|
|
||
|
|
### 2. `FullscreenSplit`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- one image
|
||
|
|
- one short text block
|
||
|
|
- often used for transitions and seam masking
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `title`
|
||
|
|
- `body`
|
||
|
|
- `imageSrc`
|
||
|
|
- `imageAlt`
|
||
|
|
- `imagePosition`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `eyebrow`: target 6-14 characters
|
||
|
|
- `title`: target 16-34 characters, hard max 44
|
||
|
|
- `body`: target 18-42 characters, hard max 56
|
||
|
|
- title + body together should usually stay under 75 characters
|
||
|
|
|
||
|
|
Good:
|
||
|
|
|
||
|
|
- title: `Fullscreen hides the stitch`
|
||
|
|
- body: `The talk keeps moving underneath.`
|
||
|
|
|
||
|
|
Bad:
|
||
|
|
|
||
|
|
- title: `A fullscreen explanatory slide can be used to conceal the visible segment transition`
|
||
|
|
|
||
|
|
### 3. `EquationFocus`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- one mathematical expression
|
||
|
|
- one short framing line
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `title`
|
||
|
|
- `latexString`
|
||
|
|
- `annotation`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `title`: target 14-32 characters
|
||
|
|
- `latexString`: one expression only
|
||
|
|
- `annotation`: target 18-42 characters, hard max 56
|
||
|
|
|
||
|
|
Rules:
|
||
|
|
|
||
|
|
- no derivations
|
||
|
|
- no multi-line proofs
|
||
|
|
- no second equation unless the template changes
|
||
|
|
- use this slide only when the equation itself is the visual object
|
||
|
|
|
||
|
|
Good:
|
||
|
|
|
||
|
|
- title: `Definition of the mean`
|
||
|
|
- latex: `\\bar{x} = \\frac{1}{N}\\sum_{i=0}^{N} x_i`
|
||
|
|
- annotation: `Add values. Divide by count.`
|
||
|
|
|
||
|
|
### 4. `QuoteImage`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- a short line worth holding in memory
|
||
|
|
- reinforced by a meaningful image
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `quote`
|
||
|
|
- `attribution`
|
||
|
|
- `imageSrc`
|
||
|
|
- `imageAlt`
|
||
|
|
- `imagePosition`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `quote`: target 20-50 characters, hard max 70
|
||
|
|
- `attribution`: target 4-18 characters, hard max 24
|
||
|
|
|
||
|
|
Rules:
|
||
|
|
|
||
|
|
- prefer one sentence
|
||
|
|
- avoid long punctuation-heavy quotes
|
||
|
|
- the quote should be memorable enough to stand alone
|
||
|
|
|
||
|
|
### 5. `ChartSingle`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- one simple directional comparison
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `title`
|
||
|
|
- `body`
|
||
|
|
- `points[]`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `title`: target 14-30 characters
|
||
|
|
- `body`: target 12-36 characters, hard max 48
|
||
|
|
- number of bars: 3-5 preferred, hard max 6
|
||
|
|
- each `label`: target 4-10 characters
|
||
|
|
|
||
|
|
Rules:
|
||
|
|
|
||
|
|
- if the story requires 2+ caveats, this is the wrong template
|
||
|
|
- if the chart needs a legend, it is probably too complex
|
||
|
|
- if the spoken narration explains the trend, the body can be extremely short
|
||
|
|
|
||
|
|
### 6. `ProcessFlow`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- show a sequence
|
||
|
|
- show a pipeline
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `title`
|
||
|
|
- `steps[]`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `title`: target 14-34 characters
|
||
|
|
- steps: 3-5 preferred, hard max 6
|
||
|
|
- each step: target 8-22 characters, hard max 30
|
||
|
|
|
||
|
|
Rules:
|
||
|
|
|
||
|
|
- each step should be a short action phrase
|
||
|
|
- do not use full sentences
|
||
|
|
- if the process is too dense, break it into two slides
|
||
|
|
|
||
|
|
Good:
|
||
|
|
|
||
|
|
- `Write the script`
|
||
|
|
- `Record the talk`
|
||
|
|
- `Align slide cues`
|
||
|
|
- `Compare variants`
|
||
|
|
|
||
|
|
### 7. `DefinitionCard`
|
||
|
|
|
||
|
|
Purpose:
|
||
|
|
|
||
|
|
- define one important term
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
- `eyebrow`
|
||
|
|
- `term`
|
||
|
|
- `definition`
|
||
|
|
- `example`
|
||
|
|
|
||
|
|
Budget:
|
||
|
|
|
||
|
|
- `term`: target 6-22 characters
|
||
|
|
- `definition`: target 20-50 characters, hard max 65
|
||
|
|
- `example`: target 16-40 characters, hard max 52
|
||
|
|
|
||
|
|
Rules:
|
||
|
|
|
||
|
|
- the definition should feel like a distilled sentence
|
||
|
|
- the example should be concrete, not another abstraction
|
||
|
|
|
||
|
|
## AI Authoring Strategy
|
||
|
|
|
||
|
|
An AI agent that knows the full script should not begin by writing slide text.
|
||
|
|
|
||
|
|
It should do this:
|
||
|
|
|
||
|
|
1. Segment the script into beats.
|
||
|
|
2. Decide whether a beat needs a slide at all.
|
||
|
|
3. For each beat, decide the job of the slide:
|
||
|
|
- emphasize
|
||
|
|
- compare
|
||
|
|
- define
|
||
|
|
- quantify
|
||
|
|
- show process
|
||
|
|
- frame transition
|
||
|
|
4. Choose the simplest template that can do that job.
|
||
|
|
5. Generate the shortest possible text that still makes the visual legible.
|
||
|
|
6. Generate or choose an image only if the image advances the concept.
|
||
|
|
7. Reject outputs that exceed the template budget.
|
||
|
|
|
||
|
|
The AI should think:
|
||
|
|
|
||
|
|
- What information is already handled by the narration?
|
||
|
|
- What should the viewer be able to grasp in under one second?
|
||
|
|
- What can be implied visually instead of written?
|
||
|
|
|
||
|
|
## AI Success Criteria
|
||
|
|
|
||
|
|
An AI agent is successful when it produces slides that:
|
||
|
|
|
||
|
|
- are shorter than a human expects
|
||
|
|
- fit the template cleanly
|
||
|
|
- create contrast with the spoken script instead of duplication
|
||
|
|
- feel intentional at a glance
|
||
|
|
- are consistent across many variants
|
||
|
|
|
||
|
|
The AI is not successful when it:
|
||
|
|
|
||
|
|
- fills every available text field
|
||
|
|
- writes explanatory paragraphs
|
||
|
|
- repeats what the speaker is already saying
|
||
|
|
- chooses verbose abstraction over concrete contrast
|
||
|
|
- generates decorative images unrelated to the spoken idea
|
||
|
|
|
||
|
|
## Content Selection Heuristics
|
||
|
|
|
||
|
|
When an AI has the full script, it should prefer:
|
||
|
|
|
||
|
|
- compression over coverage
|
||
|
|
- framing over redundancy
|
||
|
|
- contrast over completeness
|
||
|
|
- structure over explanation
|
||
|
|
|
||
|
|
Examples:
|
||
|
|
|
||
|
|
- If the script explains a formula, the slide should show the formula and one short gloss.
|
||
|
|
- If the script gives a long example, the slide should usually show only the key noun, image, or comparison.
|
||
|
|
- If the speaker is already listing steps verbally, the slide should show only the short step labels.
|
||
|
|
|
||
|
|
## Image Guidance
|
||
|
|
|
||
|
|
For templates with images:
|
||
|
|
|
||
|
|
- images should represent the concept, not merely the topic
|
||
|
|
- avoid generic “people in office” stock unless the point is collaboration itself
|
||
|
|
- prefer clear compositional silhouettes and readable subjects
|
||
|
|
- image prompts should be optimized for one strong central concept
|
||
|
|
|
||
|
|
Bad image prompt:
|
||
|
|
|
||
|
|
- `A professional office environment showing people working together in a modern setting`
|
||
|
|
|
||
|
|
Better image prompt:
|
||
|
|
|
||
|
|
- `Overhead crowd crossing a city square, motion blur, sense of pressure`
|
||
|
|
|
||
|
|
## Validation Rules
|
||
|
|
|
||
|
|
Before accepting a slide, a human or AI validator should check:
|
||
|
|
|
||
|
|
- does each field stay within budget?
|
||
|
|
- does the text visually fit the template?
|
||
|
|
- is the slide saying one thing?
|
||
|
|
- is the slide too close to the spoken line?
|
||
|
|
- does the image help?
|
||
|
|
- would removing 20% of the words improve it?
|
||
|
|
|
||
|
|
If the answer to the last question is yes, revise it.
|
||
|
|
|
||
|
|
## Recommended Future Enforcement
|
||
|
|
|
||
|
|
Later, GnommoEditor should encode these budgets in schema or validation rules.
|
||
|
|
|
||
|
|
That would let:
|
||
|
|
|
||
|
|
- human authors get inline warnings
|
||
|
|
- AI agents get explicit failure signals
|
||
|
|
- slide generation become more predictable
|
||
|
|
|
||
|
|
Recommended future shape:
|
||
|
|
|
||
|
|
- every template exposes field budgets
|
||
|
|
- editors validate them live
|
||
|
|
- AI generators receive the budgets as part of the prompt contract
|
||
|
|
- ranking systems can penalize overcrowded slides
|
||
|
|
|
||
|
|
## Bottom Line
|
||
|
|
|
||
|
|
The content budget is not an inconvenience.
|
||
|
|
|
||
|
|
It is the mechanism that forces both humans and AI to become visually intelligent.
|
||
|
|
|
||
|
|
Shorter slides are harder to write, but much easier to understand.
|