Skip to content

Commit 7e7a64c

Browse files
committed
Refine Statsbomb case study content and portfolio copy
Portfolio page: - Remove unnecessary <span> wrapper from Portfolio heading - Shorten case study title: "Statsbomb Real Time Data Collection System" → "Statsbomb Collection" for better scannability Statsbomb case study: - Reframe hero with honest tension: "Architecture as data enabled 10x scale, but building team ownership two years late meant racing geo-political constraints before completing the vision" - Add XState/Electron implementation details to Live-Collection-App section (state machines, keyboard shortcuts, contextual UI, video loop mode, CV assistance, real-time collaboration) - Expand technical depth: 30+ keyboard shortcuts with Mousetrap context scoping, foreignObject-based field collection, GraphQL subscriptions for Google Docs-style collaboration - Restructure architecture section: DSL → Live-Collection-App → Backend Evolution → Metadata Management (chronological flow) - Tighten copy: remove redundant phrases, reduce spacing, improve rhythm variation per Gary Provost principle - Add missing technical context: week one paper prototyping, Dartfish limitations, decision-based vs team-based splitting Why: Original version lacked implementation detail and honest reflection on geo-political constraints that prevented full vision completion. New version balances technical depth with production reality.
1 parent bb1aef9 commit 7e7a64c

File tree

2 files changed

+244
-236
lines changed

2 files changed

+244
-236
lines changed

src/pages/portfolio.astro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ import Body from '../components/typography/Body.astro';
99

1010
<Layout title="Portfolio - Saad Shahd">
1111
<Container width="default">
12-
<Heading level={1} as="h1" class="mb-2"><span>Portfolio</span></Heading>
12+
<Heading level={1} as="h1" class="mb-2">Portfolio</Heading>
1313
<Body size="lg" as="p" class="text-neutral mb-8">Selected case studies showcasing technical depth and impact</Body>
1414

1515
<div class="grid gap-8 md:gap-16">
1616
<!-- Statsbomb Case Study -->
1717
<Card variant="case-study" href="/portfolio/statsbomb">
1818
<div class="p-8">
19-
<Heading level={3} as="h2" class="mb-4"><span>Statsbomb Real Time Data Collection System</span></Heading>
19+
<Heading level={3} as="h2" class="mb-4">Statsbomb Collection</Heading>
2020
<Body size="base" as="p" class="text-neutral mb-6 leading-relaxed">
2121
How do you collect 90-minute matches without choosing between velocity and correctness?
2222
We reduced collection from 16 man-hours to 4 concurrent collectors by building a DSL that let PMs define sports rules without engineering involvement.

0 commit comments

Comments
 (0)