Commit Graph

11 Commits

Author SHA1 Message Date
claude 5c745e9748 Inline terminal screenshots for the M4 blog post (#118)
CI / check (push) Successful in 8s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-07-02 14:43:53 -04:00
claude 1be4e5b56c Inline terminal screenshots for the M3 blog post (#117)
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-07-01 10:42:53 -04:00
claude 11b1995d77 Crop inline M2 screenshots to terminal-only (#116)
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 11s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-07-01 10:37:30 -04:00
claude c4479e1041 Inline terminal screenshots for the M2 blog post (#115)
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-07-01 10:31:00 -04:00
claude dec55e4c9f GitHub social-preview image (1280x640) (#114)
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-06-24 23:25:34 -04:00
claude 75d9e2b419 Featured images for the 17 blog posts + square hero (#113)
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-06-24 22:54:22 -04:00
claude 95e5911957 Use python3 as the canonical command name course-wide (#104) (#105)
CI / check (push) Successful in 7s
Sync course wiki / sync-wiki (push) Successful in 4s
2026-06-23 20:25:05 -04:00
justin 0f8e7497a4 Module 6: reframe Part C around the AI silently auto-resolving conflicts (#97)
A current frontier editor-agent told to "merge X into Y" resolves the
conflict and completes the merge in one turn, so the learner never sees a
marker. The old Part C assumed Git would stop and ask. Rework the lab into
a three-beat sequence: witness the conflict once (agent stop-on-conflict
idiom, as in Module 26), undo it with `git merge --abort`, then let the AI
merge for real and auto-resolve while the learner does the one job still
theirs: verify with `git diff` after every merge.

Updates the matching surfaces so they tell one story: learning objective
#4, the Merge-conflicts key concept, the AI-angle bullet, the
Where-it-breaks bullet, Check-for-understanding, the blog mirror, and the
make-conflict.sh on-screen guidance (read the markers yourself first).

Closes #97

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KCv6VTpBG6Zo4xR4AvUQpj
2026-06-23 09:03:40 -04:00
claude 863435915c De-slop the syllabus and the blog (em-dashes + banned words) (#96)
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-06-23 07:28:55 -04:00
claude 3671541d6b Fill blog course-link placeholders with the course URL (#76)
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-06-22 19:15:32 -04:00
claude f47ccee96d docs(blog): add 17-post jpaul.me blog series for the course
A standalone blog/ folder (not course content) with drafts for jpaul.me:
an announcement, a getting-started piece, then a hybrid weekly series —
one post per module for Units 1-2 (posts 03-13) and one per unit for the
back half (14-16) plus a capstone finale (17). Each post carries WordPress
metadata, a [COURSE LINK] placeholder, and [insert screenshot] blocks for
Justin to fill before publishing. README.md holds the manifest + checklist.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015EghAChc9UbcF78t55mfdf
2026-06-22 17:49:00 -04:00