MAC Landing Page - v0 Build Spec
Greenlit by founder 2026-05-05 16:29 ET in iMessage. Coming-soon page for the MAC info-product, with email collection + Resend-Automations drip campaign. First load-bearing equity-bearing product per the Naval framework execution plan filed earlier today at ../positioning/2026-05-05-rdco-vs-naval-get-rich-framework (action #1: Ship MAC v0).
Positioning
Core hook (already drafted, working as opener):
“TDD changed how we write code. Evals changed how we benchmark LLMs. MAC is how we prove our data models work.”
Founder’s new directives layered on:
- Lean heavily on the TDD-for-data-engineering angle (TDD is famously hard to apply to data work; MAC is the discipline that makes it tractable)
- “Heavyweight framework, tedious without agentic aid” - proves Jevons paradox: agentic tooling expands the economically-viable test surface, work doesn’t disappear, it moves into newly-viable territory
- “Solve everything” framing - MAC is a targeting system for data work (every cell in the Scope x Basis matrix is a targeting decision)
Sub-themes (already in the anchor article):
- The “tests in one cell” problem (most dbt projects test ~10% of the matrix and call it done)
- Scope x Basis (3 scopes x 6 bases = 18 cells)
- System of Record prerequisite
- Stop / Pause / Go severity tiers, layer-aware
- “The agent multiplier” section (Jevons-paradox-friendly framing already drafted)
Confidentiality scrub (MANDATORY before publication)
The existing anchor article at ../data-quality-framework/content/2026-04-15-mac-anchor-article-draft-v1 references “gold_opp_pipeline at the Mammoth Growth / Progress engagement” with specific test counts (14 -> 95) and a UAT bug count (3,227 rows). Per the MG 2022 confidentiality clause (see ../../06-reference/internal-review-mg-harness-cc-wrapped-2026-04-13):
- Replace specific client + model names with abstract framing (“an enterprise SaaS engagement,” “a gold-layer pipeline model”)
- Keep the 14 -> 95 test-count delta and the kind-of-bug-found framing (these are illustrative, not client-specific)
- Strip table names (“silver_fct_ips_opportunity,” “silver_fct_combined_transaction”) in favor of abstract names (“the upstream fact table,” “the transaction reconciliation table”)
- Remove the exact “3,227 rows” bug count - replace with “thousands of rows in production reporting”
This must happen BEFORE the page goes live on the public domain. The prototype on the .raydata.co subdomain is technically still live but lower-stakes; safest path is scrub during the build.
Tech stack (locked, RDCO standards)
| Layer | Choice | Rationale |
|---|---|---|
| Framework | Astro | Already running SC v9.7.4 + squarely-web on Astro |
| Hosting | Cloudflare Pages | Already running both above on CF Pages |
| DNS | Cloudflare DNS | raydata.co zone already on CF |
| Email transactional | Resend | Already wired for SC welcome emails |
| Email drip | Resend Automations | Native drip product (founder confirmed 2026-05-05). Event triggers, conditional branching, delays, audience management. NO Loops, NO ConvertKit, NO roll-our-own. |
| Form submission | CF Pages Function | Server-side endpoint that adds to Resend Audience + triggers Automation |
| Bot protection | Cloudflare Turnstile | Already wired for SC subscribe form |
| Analytics | Fathom | Already paid for, drop-in script |
| Repo | RayDataCo/mac-landing (NEW) | PR-only workflow per memory rule |
| Domain (prototype) | mac.raydata.co | CF DNS record, no purchase needed |
| Domain (production) | modelacceptancecriteria.io (founder buying) | Plus modelacceptancecriteria.com redirect |
Design spec
Founder’s explicit directives:
- Black-and-white primary palette
- Blocky / graffiti lettering for hero typography
- Personality-forward, NOT flat / Bauhaus / modern-minimal
Design references named:
- https://justinjackson.ca - high-personality minimal, bold typography, tight content density
- https://wesbos.com - bold colorful (NOT for color but for personality), strong typography, texture
Existing memory alignment: ../../../.claude/projects/-Users-ray/memory/feedback_design_taste_high_personality - “founder leans hand-drawn / engraving / glitch / Memphis over flat / Bauhaus / modern-minimal. Texture and character beat restraint.”
Translation to MAC page:
- Primary palette: black background OR white background with black-only typography accents
- Hero headline: ~60-80px blocky display typeface with graffiti energy. Candidates: Big Shoulders Display (Google Fonts), Anton, Bungee Inline, Black Ops One, Knewave, custom hand-drawn SVG
- Body: clean, readable, high-contrast (16-18px sans, generous line-height)
- Accents: hand-drawn marker arrows, scribbled underlines, sticker-style “MAC” badges
- One memorable visual: the Scope x Basis matrix rendered as a 3x6 graffiti-style grid where the “X” cell is filled and the others are tagged with colored splats
Page structure (initial v0)
- Hero: blocky/graffiti headline + 1-line dek + email-capture form
- The hook section: TDD-evolved-for-data positioning (“TDD changed code. Evals changed LLMs. MAC for data.”)
- The problem: “Your tests are in one cell” with the matrix visual
- The framework: Scope x Basis 3x6 matrix shown visually
- The agent multiplier: Jevons-paradox-friendly framing (95 tests workable when agents handle the triage)
- What you’ll get: 7-email drip course teaser
- Email-capture CTA (repeat)
- Author bio: 1-paragraph credibility (de-identified MG accomplishments + RDCO context)
- Footer: minimal, link to Sanity Check + raydata.co
Drip campaign sequence (proposed v0, 7 emails over 14 days)
Day 1 already drafted at ../data-quality-framework/content/2026-04-15-mac-drip-day1-draft-v1 - “Your tests are in one cell.”
Proposed sequence (subject to founder review):
- Day 1: Your tests are in one cell. The matrix problem.
- Day 3: Walking the Scope axis. Column / Row / Aggregate.
- Day 5: Walking the Basis axis. Absolute / Source / Production / Recon / Temporal / Human.
- Day 7: System of Record. The prerequisite question nobody answers.
- Day 9: Severity tiers. Stop / Pause / Go, layer-aware.
- Day 12: The agent multiplier. Why MAC works now and didn’t five years ago.
- Day 14: What to do Monday. The one-page diagnostic + handoff to next steps (waitlist for the full course / book / consulting).
Each email: 250-500 words. Reusable infrastructure pattern that can serve future products too.
Form submission flow
User fills email + Turnstile + clicks subscribe
-> POST /api/subscribe (CF Pages Function)
-> Verify Turnstile token
-> Add contact to Resend Audience "MAC Waitlist"
-> Resend Automation trigger "user.subscribed.mac" fires
-> Day 1 email sent immediately
-> Day 3 email scheduled
-> ...
-> Set sc_subscribed_mac=true cookie (1 year, similar to SC pattern)
-> Return 200 { ok: true, status: "subscribed" } OR { ok: true, status: "already_subscribed" }
-> Client swaps form for "you're in" panel before paint
Mirror the SC v9.5 pattern (same dedupe logic, same cookie-based recognition, same Turnstile invisible-mode).
Open questions
- Drip cadence approval: 7 emails over 14 days as proposed, or different cadence?
- Author bio content: how much MG-era credibility to include after de-identification scrub?
- Footer link strategy: hard-link to Sanity Check newsletter signup as cross-promo, or stay focused on MAC?
- First-CTA destination after drip ends (day 14): waitlist for paid course? Book pre-order? Consulting inquiry? Need a “what’s next” gate.
These can be resolved after the initial preview ships.
Acceptance criteria for v0 ship
- Page deployed to mac.raydata.co (CF Pages)
- Subscribe form working end-to-end (Turnstile + Resend Audience add + Automation trigger)
- At least Day 1 drip email firing on subscribe
- B&W blocky/graffiti aesthetic, not flat/minimal
- All MG client specifics scrubbed
- Founder reviews + approves before .io domain swap
- Em-dash audit clean (rule R001)
- No MG-confidential content (rule audited via grep for “Mammoth”, “Progress”, “gold_opp_pipeline”, “silver_fct_*”, “Nutrafol”, etc.)
Related
- ../data-quality-framework/content/2026-04-15-mac-anchor-article-draft-v1 - source content (needs scrub)
- ../data-quality-framework/content/2026-04-15-mac-drip-day1-draft-v1 - drip day-1 draft
- ../data-quality-framework/testing-matrix-template - the actual matrix template
- ../positioning/2026-05-05-rdco-vs-naval-get-rich-framework - why this is action #1
- ../../06-reference/internal-review-mg-harness-cc-wrapped-2026-04-13 - MG confidentiality scope
- ../../06-reference/2026-05-05-jorgenson-almanack-of-naval-ravikant - “code and media as permissionless leverage” - this page is the media leverage piece