Skip to course outline Skip to lessons

datacouch training

a survival guide for typed JavaScript — Troop 1904 trail-tested

TypeScript Survival Guide

Model each outdoor skill in types, narrow what arrives from outside, and let the compiler prove every branch.

5 days · 15 decks

Course outline — Day 1–5

Get the lab starter kit

One command downloads the lab kit (package.json plus the two lab files), installs the test runner, and proves red before you touch anything. First run downloads the runner (about a minute on fast wifi, up to four on slow); if the room wifi stalls, follow along on the presenter's screen. macOS and Linux:

curl -fsSL https://d3c82cl9fpj2fy.cloudfront.net/labs/season-guard/setup.sh | bash

Windows PowerShell:

irm https://d3c82cl9fpj2fy.cloudfront.net/labs/season-guard/setup.ps1 | iex

Troop 1904 · Atlanta Trailblazers

Meet your trail guides

Three scouts walk the course with you — same patrol, same story. Inline deck headers (woven by the course doc) show the scout working the use case for that deck.

Meet your trail guides — 3 scouts (collapsed by default)
Aaliyah

Aaliyah — patrol leader

Voice & crisis comms · Day 1 primer, safety briefings

Why here: runs the safety-brief check on every Day 1 slide — if the guard fails, she calls the halt.

Maya

Maya — mechanic & tinkerer

Labs, tooling & capstone build · repairs gear from scraps

Why here: patches the build — tightens tsconfig, lints, and ships the capstone from camp scraps.

Navya

Navya — comms & GIS

External data, async & maps · tablet + GPS wristwatch

Why here: maps the async fetch — tablets, wrist GPS, and live tracking across the trail.

Full roster · 40 scouts — compact avatars (collapsed by default)

Illustrated portraits for the whole troop — 40px reserved avatars, not giant cards. Grid verifies /img/troop parity without disrupting the outline.

Aaliyah

Aaliyah

seed 1020

Aarna

Aarna

seed 1021

Ajei

Ajei

seed 1022

Alasie

Alasie

seed 1023

Amara

Amara

seed 1024

Amka

Amka

seed 1025

Anaya

Anaya

seed 1026

Anjij

Anjij

seed 1027

Aria

Aria

seed 1028

Avani

Avani

seed 1029

Dezba

Dezba

seed 1030

Diya

Diya

seed 1031

Doli

Doli

seed 1032

Halona

Halona

seed 1033

Haseya

Haseya

seed 1034

Imani

Imani

seed 1035

Kai

Kai

seed 1036

Kailani

Kailani

seed 1037

Kallik

Kallik

seed 1038

Kavya

Kavya

seed 1039

Kehlani

Kehlani

seed 1040

Malia

Malia

seed 1041

Malina

Malina

seed 1042

Maya

Maya

seed 1043

Navya

Navya

seed 1044

Nia

Nia

seed 1045

Nizhoni

Nizhoni

seed 1046

Panik

Panik

seed 1047

Saanvi

Saanvi

seed 1048

Sade

Sade

seed 1049

Sesi

Sesi

seed 1050

Shandiin

Shandiin

seed 1051

Siku

Siku

seed 1052

Siya

Siya

seed 1053

Tapeesa

Tapeesa

seed 1054

Tsintah

Tsintah

seed 1055

Yazhi

Yazhi

seed 1056

Yuka

Yuka

seed 1057

Zola

Zola

seed 1058

Zuri

Zuri

seed 1059

Chapter art · 23 illustrations — outdoor skills as TypeScript (collapsed)

Baseline (seed 1001–1015) + themed waves (2101–2108). Thumbs are 40px reserved; click-through reserved for future detail view — small here so the outline stays primary.

01 Primer baseline

01 Primer

seed 1001

02 Core types

02 Core types

seed 1002

03 Objects

03 Objects

seed 1003

04 Functions

04 Functions

seed 1004

05 Classes

05 Classes

seed 1005

06 Generics

06 Generics

seed 1006

07 Utilities

07 Utilities

seed 1007

08 Guards

08 Guards

seed 1008

09 External

09 External

seed 1009

10 Async

10 Async

seed 1010

11 Architecture

11 Arch

seed 1011

12 Tooling

12 Tooling

seed 1012

13 Testing

13 Testing

seed 1013

14 Practices

14 Practices

seed 1014

15 Capstone

15 Capstone

seed 1015

Themed manners

Manners

2101

Themed weather

Weather

2102

Themed knots

Knots

2103

Themed knives

Knives

2104

Themed fire ring

Fire ring

2105

Themed cooking

Cooking

2106

Themed tents

Tents

2107

Themed first aid

First aid

2108