diff --git a/.replit b/.replit new file mode 100644 index 0000000..056af0b --- /dev/null +++ b/.replit @@ -0,0 +1,40 @@ +modules = ["python-3.11", "nodejs-20", "go-1.25"] +[agent] +expertMode = true +stack = "BEST_EFFORT_FALLBACK" +integrations = ["github:1.0.0"] + +[nix] +channel = "stable-25_05" + +[workflows] +runButton = "Project" + +[[workflows.workflow]] +name = "Project" +mode = "parallel" +author = "agent" + +[[workflows.workflow.tasks]] +task = "workflow.run" +args = "Start application" + +[[workflows.workflow]] +name = "Start application" +author = "agent" + +[[workflows.workflow.tasks]] +task = "shell.exec" +args = "python3 serve.py" +waitForPort = 5000 + +[workflows.workflow.metadata] +outputType = "webview" + +[[ports]] +localPort = 5000 +externalPort = 80 + +[deployment] +deploymentTarget = "static" +publicDir = "docs" diff --git a/TRAINING_CURRICULA.pdf b/TRAINING_CURRICULA.pdf deleted file mode 100644 index 3305738..0000000 Binary files a/TRAINING_CURRICULA.pdf and /dev/null differ diff --git a/TRAINING_CURRICULA_v5.md b/TRAINING_CURRICULA_v5.md index 253163f..4236d95 100644 --- a/TRAINING_CURRICULA_v5.md +++ b/TRAINING_CURRICULA_v5.md @@ -1,11 +1,13 @@ -# Expert-Driven Development — Training Curricula v5.0 -## Revised February 2026 +# Expert-Driven Development — Training Curricula v5.1 +## Revised February 2026 · Course 6 Bonus capstone added April 2026 ### What Changed From v4.0 The v4.0 curriculum restructured training around six 201-level skills. That was the right move. But it crammed two different audiences into the same opening course: people who need to *use* AI effectively and people who want to *build* tools with AI. Those are different training objectives for different populations. -This revision adds a fifth course — AI Fluency Fundamentals — as a standalone 2-hour universal requirement. Every Marine, sailor, and civilian at MCCES takes this course. It teaches the six 201-level skills, the jagged frontier, centaur/cyborg work patterns, and quality judgment. No tool-building required. No Power Platform. Just the applied judgment skills that research shows actually predict sustained AI adoption. +The v5.0 revision added a fifth course — AI Fluency Fundamentals — as a standalone 2-hour universal requirement. Every Marine, sailor, and civilian at MCCES takes this course. It teaches the six 201-level skills, the jagged frontier, centaur/cyborg work patterns, and quality judgment. No tool-building required. No Power Platform. Just the applied judgment skills that research shows actually predict sustained AI adoption. + +The v5.1 revision adds a sixth course — **Full-Stack AI-Assisted Development** — as a Bonus capstone for builders whose problems exceed the Power Platform envelope. It is elective, runs after Advanced Workshop, and teaches Marines to direct AI to write a complete Go + React + Docker application. The full per-module instructor script lives on the EDD site (`docs/courses/fullstack.html`); only the headline summary is reproduced in the table below. The builder courses (Trainings 1–3) now assume students arrive with the 201 framework already internalized. They spend zero time on theory and 100% of time building. @@ -115,15 +117,18 @@ This means Frontier Recognition can't be learned once and memorized. It has to b ## Training Overview -### Five Courses, One Goal +### Six Courses, One Goal + +Five core courses plus one Bonus capstone. The first five form the standard EDD program; Course 6 is an elective for builders whose problems exceed the Power Platform envelope. | Course | Duration | Audience | Prerequisite | Outcome | |--------|----------|----------|--------------|---------| -| **AI Fluency Fundamentals** | 2 hours | All personnel | None | Understand the six 201 skills, recognize the jagged frontier, know when to trust AI output, map AI into your workflow | -| **Builder Orientation** | 2 hours | Aspiring builders | AI Fluency Fundamentals | Build a working prototype, apply task decomposition and iterative refinement in practice | -| **Platform Training** | 4 hours | Builders | Builder Orientation | Build 3 complete tools on Power Platform using centaur and cyborg work patterns | -| **Advanced Workshop** | 4 hours | Experienced builders | At least one deployed tool | Map the frontier for your domain, build verification protocols, teach others | -| **Supervisor Orientation** | 30 minutes | Leadership | None | Evaluate proposals, create permission culture, understand the apprentice problem | +| **1. AI Fluency Fundamentals** | 2 hours | All personnel | None | Understand the six 201 skills, recognize the jagged frontier, know when to trust AI output, map AI into your workflow | +| **2. Builder Orientation** | 2 hours | Aspiring builders | AI Fluency Fundamentals | Build a working prototype, apply task decomposition and iterative refinement in practice | +| **3. Platform Training** | 4 hours | Builders | Builder Orientation | Build 3 complete tools on Power Platform using centaur and cyborg work patterns | +| **4. Advanced Workshop** | 4 hours | Experienced builders | At least one deployed tool | Map the frontier for your domain, build verification protocols, teach others | +| **5. Supervisor Orientation** | 30 minutes | Leadership | None | Evaluate proposals, create permission culture, understand the apprentice problem | +| **6. Full-Stack AI-Assisted Development** *(Bonus, elective)* | 8 hours | Advanced builders | Advanced Workshop + at least one deployed tool | Direct AI to build and deploy a complete Go + React + Docker application; apply the Cyborg pattern at full-stack scale | ### Prerequisites @@ -658,7 +663,7 @@ Mollick's research is explicit: workers are already using AI and hiding it. They | Time | Module | Focus | |------|--------|-------| | 0:00–0:05 | Why This Matters Now | The 80% problem, DoW AI Strategy, rapid adoption mandate | -| 0:05–0:12 | What EDD Is | Five courses, six 201 skills, research foundation (headline level) | +| 0:05–0:12 | What EDD Is | Six courses (five core plus one Bonus capstone), six 201 skills, research foundation (headline level) | | 0:12–0:20 | Your Role: Creating Permission | What "yes" looks like, what kills adoption, guard rails | | 0:20–0:27 | Evaluating Proposals and Output | Four questions to ask, what quality looks like | | 0:27–0:30 | The Apprentice Problem | Preserving junior development while gaining efficiency | @@ -676,7 +681,7 @@ Mollick's research is explicit: workers are already using AI and hiding it. They **The four-layer framework:** 1. SOP — Governance: How tools are proposed, reviewed, approved, and maintained -2. Training — Education: Five courses from universal fluency to advanced building +2. Training — Education: Six courses (five core plus one Bonus capstone) from universal fluency to advanced building 3. QA — Quality: Peer review, security assessment, and user verification 4. Community — Sustainability: Shared frontier maps, workflow playbooks, cross-unit mentoring @@ -828,6 +833,7 @@ Mollick's research is explicit: workers are already using AI and hiding it. They | v3.0 | Jan 2026 | Restructured around EDD SOP, added QA framework | | v4.0 | Feb 2026 | Restructured around 201-level skills, jagged frontier, centaur/cyborg patterns, quality judgment exercises, frontier mapping | | v5.0 | Feb 2026 | Added AI Fluency Fundamentals as universal 5th course; expanded research foundation with GDPval, Mollick delegation equation, Brynjolfsson skill-leveling, UK Government study; added delegation equation module; strengthened apprentice problem protocols; added junior development field to workflow playbooks; full research source appendix | +| v5.1 | Apr 2026 | Added Course 6 (Full-Stack AI-Assisted Development) as a Bonus elective capstone; updated headline counts from "five courses" to "six courses (five core plus one Bonus capstone)"; per-module instructor script for Course 6 lives on the EDD site rather than in the master MD | --- diff --git a/docs/courses/advanced.html b/docs/courses/advanced.html index 54cd92c..e0bee88 100644 --- a/docs/courses/advanced.html +++ b/docs/courses/advanced.html @@ -70,7 +70,13 @@

Course 4: Advanced Workshop

Experienced Builders

Prerequisite: At least one deployed tool

-

View the Student Version

+
+ Open the Slide Deck + Open the Facilitator Hand-Outs + Open the Facilitator Pack + Open the Student Handout +
+

View the Student Version

@@ -84,15 +90,16 @@

Course 4: Advanced Workshop

@@ -100,16 +107,6 @@

On This Page

- -
-
-

Instructor Qualification Note

-

- This course requires an instructor who has personally built and deployed at least 3 tools using AI assistance. The complex build in Module 2 requires real-time troubleshooting ability. You cannot effectively teach this course from a script alone. Students will encounter unexpected errors, frontier limitations, and integration failures. The instructor must be able to diagnose problems on the fly, guide students through iterative refinement, and recognize when a problem is a frontier issue versus a context/prompting issue. -

-
-
-

Timing Breakdown

@@ -167,7 +164,7 @@

Timing Breakdown

- Total: 230 minutes (3 hours 50 minutes). The 10-minute buffer accounts for technical issues, extended Q&A, or students who need additional troubleshooting time during the complex build. + Total: 4 hours (230 min content + 10-min break + 20-min buffer). The buffer accounts for technical issues, extended Q&A, or students who need additional troubleshooting time during the complex build.

@@ -227,9 +224,6 @@

Agenda

-

- Total: 4 hours (includes 10-minute break and 10-minute buffer built into timing) -

@@ -534,7 +528,8 @@

Final Verification

-

Debrief Questions (10 minutes)

+

Debrief (10 minutes)

+

Debrief Questions

-

Solution Approach: Set the submit button's DisplayMode to: If(TextInput_Phone.Valid, DisplayMode.Edit, DisplayMode.Disabled). This checks the Valid property of the input field, which reflects the validation formula result. The validation formula itself should be: IsMatch(TextInput_Phone.Text, "^\d{3}-\d{3}-\d{4}$")

-

Frontier Classification: This is a context issue. AI generated a validation formula, but the student didn't specify that the button's DisplayMode must respect the validation state. This is a common prompting gap: students ask for "validation" but don't specify all the integration points where validation must be enforced.

+

Solution Approach: Standalone Power Apps text input controls do not expose a .Valid property (that property only exists on data card controls inside a Form). Apply the validation pattern directly to the submit button's DisplayMode using regex pattern matching on the text: If(IsMatch(TextInput_Phone.Text, "^\d{3}-\d{3}-\d{4}$"), DisplayMode.Edit, DisplayMode.Disabled). This evaluates the regex on each keystroke and disables the submit button until the phone number matches the required XXX-XXX-XXXX format.

+

Frontier Classification: This is a context issue. AI generated a validation pattern but referenced a .Valid property that does not exist on standalone text inputs. The student didn't specify that the button's DisplayMode must enforce the validation directly. This is a common prompting gap: students ask for "validation" but don't specify all the integration points where validation must be enforced, and AI fills in plausible-but-wrong property references.

@@ -902,7 +897,12 @@

Group Debrief (5 minutes)

  • Who in your unit could benefit from learning these concepts?
  • -

    Module 6: Workflow Playbook (20 minutes)

    + + + +
    +

    Module 6: Workflow Playbook 30 min

    +

    Duration: 30 minutes

    Each participant produces a one-page playbook for one AI-integrated workflow from their actual job. This is the final deliverable of the Advanced Workshop. @@ -1029,6 +1029,11 @@

    Completion Criteria: What a Finished Playbook Looks L A completed playbook entry should have: a clear task name, realistic frequency, the correct mode (Centaur or Cyborg), 4-8 concrete steps with Human/AI labels, a verification checklist with 3-5 items, at least one known frontier issue, and a specific time savings estimate. If your playbook has fewer than 4 steps or no verification checklist, it is not detailed enough.

    + +

    Wrap-Up

    +

    + Close the workshop by reviewing the deliverables: each participant should leave with (1) a domain-specific frontier map, (2) a completed Unit Readiness Dashboard or equivalent multi-component build, (3) a 60-second teach-back rehearsed in front of peers, and (4) a one-page workflow playbook. Confirm that participants know how to submit their playbooks and frontier maps to the EDD GitHub Discussions for the broader community to learn from. Reinforce that they are now equipped to teach Platform Training and to mentor junior personnel using the protocols from Module 5. +

    @@ -1112,6 +1117,19 @@

    Certification Recommendation

    + +
    +

    Next Steps

    +
    +

    After This Course

    + +
    +
    + @@ -1124,7 +1142,7 @@

    Certification Recommendation

    diff --git a/docs/courses/ai-fluency.html b/docs/courses/ai-fluency.html index 6f9a5e9..da69305 100644 --- a/docs/courses/ai-fluency.html +++ b/docs/courses/ai-fluency.html @@ -71,7 +71,12 @@

    Course 1: AI Fluency Fundamentals

    All Personnel Instructor Guide -

    View the Student Version

    +
    + Open the Slide Deck + Open the Facilitator Pack + Open the Student Handout +
    +

    View the Student Version

    @@ -172,48 +177,6 @@

    Tool Selection Note

    -

    Timing Breakdown

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ModuleDuration
    Module 1: Why AI Fluency Matters10 min
    Module 2: The Six 201-Level Skills30 min
    Module 3: The Jagged Frontier15 min
    Module 4: Hands-On — Red Pen Review25 min
    Module 5: Workflow Mapping20 min
    Module 6: The Delegation Equation & Wrap-Up15 min
    Buffer5 min
    -
    -

    Contingency: If AI Tools Are Unavailable

    @@ -772,6 +735,13 @@

    Key Teaching Point

    doesn’t replace expertise — it rewards it.

    + +
    +

    Facilitation Tip

    +

    + Pick one example from the table and ask the room what verdict they’d give before revealing yours. Watch for: students defaulting to “AI Could Help” for everything — push back, force a real verdict. +

    +
    @@ -779,6 +749,13 @@

    Key Teaching Point

    Module 4: The Trust Problem — Quality Judgment

    Duration: 25 minutes

    +
    +

    Time-Saver: Minimum Set

    +

    + If running short on time, use the minimum set: Documents 1 and 3 only. Skip Document 2 (the SOP excerpt). +

    +
    +

    The Red Pen Review Exercise

    This is the highest-value activity in the entire course. You will review three @@ -1102,6 +1079,9 @@

    Facilitation Tip

    5-7), skipping the “verification needed” column, being unrealistic about AI capabilities.

    +

    + Failure mode: students will label everything “AI Could Help” to feel inclusive. Force them to pick one: which step would benefit MOST? Where would AI HURT? +

    @@ -1211,6 +1191,17 @@

    Assessment Protocol

    +

    + For self-paced students, the equivalent assessment is the Knowledge Check on the student page. Both cover the same six skills. +

    + +
    +

    Closing the Session

    +

    + Round-the-room close: 30 seconds per person on what they’ll attempt before next session. Drives accountability and seeds Module 1 of the next course. +

    +
    +

    Closing

    You are now equipped with the same judgment framework that separates sustained AI @@ -1233,7 +1224,7 @@

    Closing

    diff --git a/docs/courses/certificate.html b/docs/courses/certificate.html index 53ca0af..c1d4f00 100644 --- a/docs/courses/certificate.html +++ b/docs/courses/certificate.html @@ -432,7 +432,8 @@ { id: 'orientation-student', name: 'Builder Orientation' }, { id: 'platform-student', name: 'Platform Training' }, { id: 'advanced-student', name: 'Advanced Workshop' }, - { id: 'supervisor', name: 'Supervisor Orientation' } + { id: 'supervisor', name: 'Supervisor Orientation' }, + { id: 'fullstack-student', name: 'Full-Stack AI-Assisted Development' } ]; var formSection = document.getElementById('cert-form-section'); diff --git a/docs/courses/fullstack.html b/docs/courses/fullstack.html index 304c8c4..54615a7 100644 --- a/docs/courses/fullstack.html +++ b/docs/courses/fullstack.html @@ -73,7 +73,12 @@

    Course 6: Full-Stack AI-Assisted Development

    Prerequisite: Advanced Workshop (Course 4), at least 1 deployed tool, computer with admin rights

    -

    View the Student Version

    +
    + Open the Slide Deck + Open the Facilitator Pack + Open the Student Handout +
    +

    View the Student Version

    @@ -114,6 +119,11 @@

    On This Page

    Course Overview

    +
    +

    Recommended delivery: 2 days, not 1

    +

    This course is budgeted at 8 hours, but the realistic target audience (one deployed tool, no full-stack background) needs two sittings. Default delivery: Day 1 — Modules 1-5 (frontier shift, env, backend, data, frontend; ends at “I can fetch JSON from my own server”). Day 2 — Modules 6-10 (pages, AI chat, auth, integration, deploy). The 1-day variant is an intensive offering for experienced builders only — most students will not complete in one sitting.

    +
    +

    Courses 1–5 taught you to build tools on Power Platform — low-code applications within the Microsoft ecosystem. That’s powerful, and most Marines will never need more. @@ -316,6 +326,9 @@

    Pacing Note

  • Students who fall behind can clone the checkpoint and continue from there
  • Prioritize: if time is short, skip Module 9 (External Integrations) — it’s the most independent module
  • +

    + Modules 7 and 9 are the heaviest — for time-pressed deliveries, demo Module 7 live and have students complete the prompts as homework; Module 9 (External Integrations) is the most independent and can be skipped without breaking the rest of the course. +

    @@ -352,7 +365,7 @@

    Key Reveal

    “This application has 8,400 lines of Go backend code, 4,400 lines of React frontend code, 35 API endpoints, 5 database backends, Microsoft Graph integration, CAC authentication, and FIPS 140-3 compliance. It was built in days, not months, by one person - working with AI. No team of contractors. No six-month timeline. No $2M budget.” + working with AI. Comparable contractor estimates run multi-month timelines and six-figure budgets. The point is not the savings claim — it’s that the work is now possible at a different scale of person-hours.”

    @@ -869,6 +882,15 @@

    Instructor Checkpoint: Data Layer Working

    +
    +

    Common Issues

    +
      +
    1. SQLite file permission errors on Windows — run as admin or specify an absolute path.
    2. +
    3. Connection-pool errors — close DB handles in defer db.Close().
    4. +
    5. ORM “foreign key constraint” errors — check that referenced tables exist before dependent tables.
    6. +
    +
    +

    Module 4 Complete When

    +
    +

    Common Issues

    +
      +
    1. CORS errors — frontend running on :3000, backend on :8080. Add cors.AllowAll() middleware in dev only.
    2. +
    3. 404 on refresh of SPA routes — frontend dev server needs historyApiFallback: true.
    4. +
    5. State lost between routes — verify React Router is wrapping the app, not nested.
    6. +
    +
    +

    Module 6 Complete When

    +
    +

    Common Issues

    +
      +
    1. Cookies not sending on cross-origin requests — set credentials: 'include' on fetch AND Access-Control-Allow-Credentials: true on backend.
    2. +
    3. Role middleware fires on /login itself — exclude the login endpoint.
    4. +
    5. JWT expires immediately — check exp field is in seconds, not milliseconds.
    6. +
    +
    +

    Module 8 Complete When

    + +

    + After Path B implementation, the calendar endpoint should return JSON like { "events": [...] } for the test tenant. Common failure mode: tenant-not-authorized 401 from the Graph API — the Marine’s account does not have calendar.read consent yet. Have a TA pre-grant consent on the test tenant before class, or skip the live test and review the prompt only. +

    @@ -1382,6 +1431,15 @@

    Instructor Checkpoint: Integration Working

    Path B: Calendar and mail endpoints return real data from Outlook.

    +
    +

    Common Issues

    +
      +
    1. API rate limits hit during testing — back off with exponential retry, don’t hammer.
    2. +
    3. Secrets accidentally committed — gitignore .env BEFORE first commit, not after.
    4. +
    5. Webhook receiver not reachable — use ngrok or similar for local dev; webhooks need a public URL.
    6. +
    +
    +

    Module 9 Complete When

    @@ -1612,7 +1670,7 @@

    Course 6 Complete

    diff --git a/docs/courses/index.html b/docs/courses/index.html index 29d44e4..59eca93 100644 --- a/docs/courses/index.html +++ b/docs/courses/index.html @@ -116,6 +116,7 @@

    @@ -150,6 +151,7 @@

    @@ -184,6 +186,7 @@

    @@ -218,6 +221,7 @@

    @@ -251,6 +255,7 @@

    @@ -285,6 +290,7 @@

    diff --git a/docs/courses/orientation.html b/docs/courses/orientation.html index f2d643d..2ad6b2c 100644 --- a/docs/courses/orientation.html +++ b/docs/courses/orientation.html @@ -70,8 +70,13 @@

    Course 2: Builder Orientation

    2 Hours Aspiring Builders -

    Prerequisite: AI Fluency Fundamentals (Course 1)

    -

    View the Student Version

    +

    Prerequisite: AI Fluency Fundamentals (Course 1)

    +
    + Open the Slide Deck + Open the Facilitator Pack + Open the Student Handout +
    +

    View the Student Version

    @@ -106,67 +111,6 @@

    Course Overview

    - -

    Session Timing Breakdown

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ModuleActivityDuration
    Module 1Introduction & Context: From User to Builder15 min
    Module 2Live Build Demo: Equipment Tracker25 min
    Module 3Student Build + Peer Review: When Something Breaks40 min
    Module 4Decomposition Framework: Your Problem20 min
    Module 5Wrap-Up & Assignment10 min
    Buffer Time10 min
    Total120 min
    -
    - - -
    -

    Contingency: Technical Failures

    -

    If Power Platform, AI chat, or internet access is unavailable:

    - -
    -

    Agenda

    @@ -215,6 +159,18 @@

    Agenda

    + +
    +

    Contingency: Technical Failures

    +

    If Power Platform, AI chat, or internet access is unavailable:

    + +
    +

    Module 1: From User to Builder

    @@ -242,6 +198,11 @@

    Instructor Note

    refresher.

    + +
    +

    Opening Check-In & Builder Mindset Framing

    +

    Open with a 2-minute check-in: “Who tried something with AI between Course 1 and today? What worked, what surprised you?” This surfaces real student usage and seeds the Builder Mindset framing. Common misconception: students think “builder” means “coder” — push back. Builder = anyone who turns recurring work into a tool, regardless of code complexity.

    +
    @@ -311,6 +272,8 @@

    Step 2: Build with AI (20 min)

    Narrate each prompt before typing it. Follow this sequence:

    +

    Click each prompt step to expand. Open them in order during live build.

    +

    When AI Output Doesn't Match

    @@ -324,7 +287,7 @@

    When AI Output Doesn't Match

    If those three are right, the output is usable even if it doesn't match word-for-word. If the AI produces JavaScript syntax (forEach, =>), re-prompt: "Use Power Fx only, not JavaScript."

    -
    +
    Prompt 1: Define the Problem (2 min)
    @@ -342,7 +305,7 @@

    When AI Output Doesn't Match

    -
    +
    Prompt 2: Create the Data Structure (3 min)
    @@ -394,7 +357,7 @@

    When AI Output Doesn't Match

    This is your starting point. From here, use AI to refine the auto-generated app to match your needs. The remaining prompts show how.

    -
    +
    Prompt 3: Refine the Interface (5 min)
    @@ -425,7 +388,7 @@

    When AI Output Doesn't Match

    -
    +
    Prompt 4: Iterate (3 min)
    @@ -465,7 +428,7 @@

    When AI Output Doesn't Match

    -
    +
    Prompt 5: Debug an Error (4 min)
    @@ -491,7 +454,7 @@

    When AI Output Doesn't Match

    -
    +
    Prompt 6: Final Polish (3 min)
    @@ -753,48 +716,31 @@

    Individual Decomposition Exercise (10 min)

    Decomposition Worksheet

    1. Problem Statement (one sentence):

    -

    +
    Problem: ___________________________________

    2. Core Requirements (what must this do?):

    -
      -
    • -
    +
    - ___________________________________
    +- ___________________________________
    +- ___________________________________

    3. Decompose into 4-6 subtasks:

    -
    - - - - - - - - - - - - - - - - - - - - - - - -
    SubtaskHuman RoleAI RolePattern
    Example: Define data structureSpecify fields neededSuggest field typesCentaur
    -
    +
    Subtask 1: ___________________________________
    +  Pattern: [Centaur / Cyborg / Neither]
    +  Frontier risk: ___________________________________
    +
    +Subtask 2: ___________________________________
    +  Pattern: [Centaur / Cyborg / Neither]
    +  Frontier risk: ___________________________________
    +
    +(repeat for as many subtasks as the project requires)

    4. Potential Frontier Issues (what might AI struggle with?):

    -
      -
    • Example: Integration with existing CAC-authenticated system
    • -
    +
    - ___________________________________
    +- ___________________________________
    +(Example: Integration with existing CAC-authenticated system)

    5. Simplest Useful Version (what is the MVP?):

    -

    +
    MVP: ___________________________________
    @@ -943,6 +889,11 @@

    Closing the Session

    Logistics reminder: Confirm date/time of Platform Training. Remind students to bring their prototype (on laptop, thumb drive, or screenshots if system access is limited).

    + +
    +

    Round-the-Room Close

    +

    Round-the-room close: 30 seconds per person on one specific thing they'll attempt before next session. Two-week deadline mentioned in the Assignment box. This drives accountability and surfaces planning gaps before students leave the room.

    +
    @@ -957,7 +908,7 @@

    Closing the Session

    diff --git a/docs/courses/platform.html b/docs/courses/platform.html index c0a1d46..369e274 100644 --- a/docs/courses/platform.html +++ b/docs/courses/platform.html @@ -73,7 +73,12 @@

    Course 3: Platform Training

    Prerequisite: Builder Orientation, M365 account access

    -

    View the Student Version

    + +

    View the Student Version

    @@ -158,67 +163,6 @@

    Agenda

    -

    Detailed Timing Breakdown

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ModuleDurationKey Activities
    Module 1: Review & Setup15 minM365 access verification, centaur/cyborg review, failure story sharing
    Module 2: Whiteboard Exercise20 minLeave router business rules, data flow, edge cases — human design phase
    Module 3: Build #1 — Leave Router45 minAI build, human verify, AI refine, human accept — full centaur cycle
    Break / Failure Sharing10 minDocument what AI got wrong, how students caught it, frontier map start
    Module 4: Build #2 — Training Tracker45 minCyborg mode: continuous iteration, discover requirements as you build
    Module 5: Build #3 — Your Problem35 minStudent chooses mode, applies to real problem, independent work
    Module 6: Frontier Map & Wrap-Up20 minCompile failures into frontier map, assignment briefing
    Buffer10 minAbsorb overruns, handle access issues, extra questions
    Total Course Time3 hours 20 minutes (200 min instruction + 10 min buffer). Schedule a 4-hour block to absorb overruns.
    -
    -

    Contingency Plan: If Power Platform Is Unavailable

    @@ -239,7 +183,7 @@

    Contingency Plan: If Power Platform Is Unavailable

    Module 1: Setup and Review

    -

    Duration: 15 minutes

    +

    Duration: 15 minutes  ·  Open this section in the deck →

    Pre-Flight Access Check

    @@ -317,7 +261,7 @@

    If Your GenAI.mil Session Resets

    Module 2: Build #1 — Structured Workflow, Centaur Mode

    -

    Duration: 60 minutes

    +

    Duration: 60 minutes  ·  Open this section in the deck →

    Problem: A request routing workflow — submit request, goes to the @@ -413,7 +357,9 @@

    When AI Output Doesn't Match

    If those three are right, the output is usable even if it doesn't match word-for-word. If the AI produces JavaScript syntax (forEach, =>) or non-existent functions, re-prompt: "Use Power Fx only, not JavaScript."

    -
    +

    Click each step to expand. Open in sequence during live build.

    + +
    Step 1: SharePoint List Setup
    @@ -502,7 +448,7 @@

    Instructor Checkpoint: Verify Column Types

    This is your starting point. From here, use AI to customize the auto-generated app. The prompt below shows how.

    -
    +
    Step 2: Customize the Auto-Generated App
    @@ -590,7 +536,7 @@

    Instructor Checkpoint: Test Form Submission

    -
    +
    Step 3: Routing Logic (Power Automate Flow Setup)
    @@ -679,7 +625,7 @@

    Instructor Checkpoint: Test Routing Logic

    -
    +
    Step 4: Approval Workflow (Approver Actions)
    @@ -763,7 +709,7 @@

    Instructor Checkpoint: Test Approval Actions

    Steps 5-6 are extensions. The core build (Steps 1-4) is complete. Complete Steps 5-6 if time permits in class, or assign as post-class practice.

    -
    +
    Step 5 (Extension): Requester Notification
    @@ -847,7 +793,7 @@

    Instructor Checkpoint: Test End-to-End Flow

    -
    +
    Step 6 (Extension): Error Handling
    @@ -984,26 +930,11 @@

    Build #1 Success Indicators

    -

    Phase 3 — Human Verifies

    - Test every path. Is the right person notified? What about edge cases? Submit - test requests through every branch of your approval chain and verify the - results against your whiteboard design. -

    - -

    Phase 4 — AI Refines

    -

    - Back in GenAI.mil, paste your test results: “The flow works for the first - approver but skips the second. Here’s the flow logic: [paste]. The business - rule is [explain]. Fix the routing logic.” Describe exactly what failed, - what you expected, and what happened instead. Copy the corrected code back into - Power Platform. -

    - -

    Phase 5 — Human Accepts

    -

    - Final review. Walk through the complete workflow one more time. Does it match - the original design? Is it ready for users? + Phases 3-5 of the Centaur pattern (Verify, Refine, Approve) are embedded in + the instructor checkpoints above — Test Form Submission and Test Routing + exercise verification; the iteration prompts exercise refinement; the final + "Test End-to-End Flow" is the approval gate.

    @@ -1018,8 +949,8 @@

    Key Teaching Point

    -

    Module 3: Failure Sharing

    -

    Duration: 15 minutes (during break)

    +

    Break Activity: Failure Sharing

    +

    Duration: 15 minutes (during break)  ·  Open this section in the deck →

    This is NOT optional. This is one of the most important 15 minutes @@ -1052,7 +983,7 @@

    Instructor Note

    Module 4: Build #2 — Iterative Application, Cyborg Mode

    -

    Duration: 60 minutes

    +

    Duration: 60 minutes  ·  Open this section in the deck →

    Problem: A training tracker that pulls from multiple sources and @@ -1692,7 +1623,7 @@

    Key Teaching Point

    Module 5: Build #3 — Your Problem, Choose Your Mode

    -

    Duration: 60 minutes

    +

    Duration: 35 minutes  ·  Open this section in the deck →

    Each participant builds the solution they identified during Builder Orientation. @@ -1886,7 +1817,7 @@

    Grading Guidance

    Module 6: Frontier Map Update and Wrap

    -

    Duration: 15 minutes

    +

    Duration: 15 minutes  ·  Open this section in the deck →

    Compile all failure cases from the session into a shared frontier map. @@ -1945,10 +1876,12 @@

    Module 6: Frontier Map Update and Wrap

    -
    -

    Completing Your Frontier Map

    +
    +

    Facilitator Framing

    - The table above is a starter example. Each student should add at least 2-3 rows specific to the task types they encountered during today's builds. A useful frontier map row names a specific task type (not a generic category), gives concrete examples of what AI produced correctly in the "Handles Well" column, describes a specific failure with enough detail to recognize it next time in the "Handles Poorly" column, and states a testable verification action (not just "check it"). If your rows read like the example above, make them more specific to your actual experience. + Use the table to drive group debrief — capture 2-3 unit-specific rows on + the whiteboard during this module. Students add their own rows on the student + page after class.

    @@ -1959,6 +1892,22 @@

    Assignment Before Advanced Workshop

  • Document three failure cases with specifics: what failed, how you caught it, how you fixed it
  • Identify one area where AI capability surprised you — something it did better than you expected
  • + +
    +

    Facilitator Scaffolding

    +

    + Frontier-map debrief (10 min): each student adds 2-3 + unit-specific rows to the table. Whiteboard the most-novel rows. Watch for: + students conflating "AI struggled" with "AI cannot do this" — those are + different. Many tasks just need better decomposition. +

    +

    + Assignment briefing (5 min): explicitly call out the deadline + and what the deliverable looks like. Common pushback: "I won't get to deploy + because I lack tenant access" — answer: "Build it in the simulator, + document the deployment plan, and submit both." +

    +

    @@ -1973,7 +1922,7 @@

    Assignment Before Advanced Workshop

    diff --git a/docs/courses/progress.html b/docs/courses/progress.html index 850d760..0e0e804 100644 --- a/docs/courses/progress.html +++ b/docs/courses/progress.html @@ -318,6 +318,13 @@

    Credential Pathway

    Supervisor Orientation +
    + +
    + + Full-Stack (Bonus) +
    +
    @@ -398,7 +405,8 @@ { id: 'orientation-student', name: 'Builder Orientation', number: 2 }, { id: 'platform-student', name: 'Platform Training', number: 3 }, { id: 'advanced-student', name: 'Advanced Workshop', number: 4 }, - { id: 'supervisor', name: 'Supervisor Orientation', number: 5 } + { id: 'supervisor', name: 'Supervisor Orientation', number: 5 }, + { id: 'fullstack-student', name: 'Full-Stack AI-Assisted Development', number: 6 } ]; /** diff --git a/docs/courses/student/advanced.html b/docs/courses/student/advanced.html index 90e6631..92ef2af 100644 --- a/docs/courses/student/advanced.html +++ b/docs/courses/student/advanced.html @@ -72,6 +72,9 @@

    Advanced Workshop

    Experienced Builders

    Prerequisite: At least one deployed tool

    +

    Instructor Guide

    @@ -89,9 +92,10 @@

    On This Page

  • Overview & Learning Objectives
  • Module 1: Frontier Mapping for Your Domain
  • Module 2: Complex Build — Multi-Component System
  • -
  • Module 3: Verification Protocols and QA
  • -
  • Module 4: Debugging Practice
  • +
  • Module 3: Group Debugging — Real Problems
  • +
  • Module 4: Verification Protocols and QA
  • Module 5: Teaching Others — The 201 Multiplier
  • +
  • Module 6: Workflow Playbook
  • @@ -127,7 +131,7 @@

    Before You Start

    -
    +
    Prerequisite Check: Are you ready for this course?

    This course assumes you have:

    @@ -361,10 +365,10 @@

    Phase 1: Data Backend (Centaur Mode)

    Self-Check: Phase 1

    - Before moving to the next phase, verify: Does the output match your design? - Are the data types correct? Do the relationships make sense? If you proceed - with a flawed schema, you will have to redo the input interface and dashboard - as well. + If your data backend is a single “sessions” table without separate + Students or Tutors tables, what reporting query would you find slow or + impossible? (Hint: “Total hours per tutor across all students” would + require denormalizing every session row.)

    @@ -451,9 +455,176 @@

    Phase 3: Automated Reporting Dashboard (Centaur Mode)

    - + +
    +

    Module 3: Group Debugging — Real Problems

    +

    Duration: 40 minutes

    + +

    + Debugging is a core skill for anyone building with AI. In this module you will + work through three scenarios individually, diagnosing root causes and identifying + fixes. Each scenario represents a common failure pattern in AI-assisted builds. + These are the same scenarios used in the live debrief — review your + diagnosis against the answer key before you present. +

    + + +

    Scenario 1: Power Automate Flow Triggers But Sends Wrong Data

    +

    + Situation: A Power Automate flow is supposed to trigger when a + SharePoint list item is updated, then send an email notification to the item + creator with the updated information. The flow triggers correctly, but the email + always contains the OLD data, not the updated data. +

    +

    + What you have already tried: “I rebuilt the email body + three times. I checked the SharePoint permissions. I re-authenticated the + connection. Nothing works.” +

    + +
    + Show diagnosis: Root Cause & Solution +

    + Root cause: This is a classic Power Automate timing issue. The + trigger “When an item is created or modified” fires immediately when + the update is detected, but it captures the item data at the moment of detection, + which may be before all fields have finished saving. This is especially common + with calculated columns or cascading updates. +

    +

    Diagnosis questions to ask yourself:

    +
      +
    • Does the email contain the old data or blank data? (Old data suggests timing issue; blank suggests permissions issue.)
    • +
    • Are any of the fields calculated or lookup columns? (Calculated columns update asynchronously.)
    • +
    • Does the flow work correctly if you manually trigger it 30 seconds after updating? (Confirms timing issue.)
    • +
    +

    + Solution: Add a “Delay” action of 5–10 seconds + immediately after the trigger, then use “Get item” to retrieve the + updated data explicitly rather than relying on the trigger output. The corrected + flow structure: Trigger → Delay (5 seconds) → Get item (by ID) → + Send email (using Get item output). +

    +

    + Frontier classification: This is NOT a frontier issue. This is a + platform limitation (Power Automate's trigger timing) that requires domain + knowledge to diagnose. AI can generate the flow, but it won't know about this + timing quirk unless you tell it. +

    +
    + + +

    Scenario 2: Power App Form Saves But Doesn’t Validate

    +

    + Situation: A Power Apps form is supposed to validate that a phone + number is in the format XXX-XXX-XXXX before saving to a SharePoint list. The form + has a text input field with a validation formula, and the submit button should be + disabled if the phone number is invalid. The form saves successfully, but it + accepts phone numbers in any format, even completely invalid entries like + “abc123”. +

    +

    + What you have already tried: “I asked the AI to write a + validation formula three times. I tested different regex patterns. The formula + shows no errors in Power Apps, but it doesn't actually prevent invalid data from + being submitted.” +

    + +
    + Show diagnosis: Root Cause & Solution +

    + Root cause: The submit button's DisplayMode property isn't + checking the validation state correctly. A common AI-generated mistake is to + reference a .Valid property on a standalone text input, which does + not exist (only data card controls inside a Form expose .Valid). + The form allows submission because the button logic doesn't actually evaluate + the validation pattern. +

    +

    Diagnosis questions to ask yourself:

    +
      +
    • What is the exact formula in the text input's validation? Is it referencing a property the control actually has?
    • +
    • What is the DisplayMode property of the submit button? (This is where the actual problem usually is.)
    • +
    • Does the text input show a red error indicator when you type an invalid number? (If yes, validation works but button logic is wrong; if no, validation formula is wrong.)
    • +
    +

    + Solution: Apply the regex check directly on the button's + DisplayMode using IsMatch() against the input's text: + If(IsMatch(TextInput_Phone.Text, "^\d{3}-\d{3}-\d{4}$"), DisplayMode.Edit, DisplayMode.Disabled). + This evaluates on each keystroke and disables the submit button until the phone + number matches the required XXX-XXX-XXXX format. +

    +

    + Frontier classification: This is a context issue. AI generated + a validation pattern but referenced a property that doesn't exist on the + control. The student didn't specify all the integration points where validation + must be enforced, and AI filled in plausible-but-wrong property references. +

    +
    + + +

    Scenario 3: Dashboard Shows Stale Data

    +

    + Situation: A Power BI dashboard pulls from an Excel file stored in + SharePoint. When the Excel file is updated, the dashboard doesn't show the new + data until you manually click “Refresh” in Power BI Desktop and + republish the report. You want the dashboard to automatically update when the + source file changes. +

    +

    + What you have already tried: “I set up a scheduled refresh + in the Power BI service. I checked the data source credentials. I even rebuilt + the data connection. The refresh runs successfully according to the logs, but + the dashboard still shows old data unless I manually republish from Power BI + Desktop.” +

    + +
    + Show diagnosis: Root Cause & Solution +

    + Root cause: This is a data connection configuration issue. + When the Power BI report was created, the data source was set to the local file + path (e.g., C:\Users\...\file.xlsx) instead of the SharePoint URL. + The scheduled refresh in Power BI Service is trying to refresh from the local + path, which doesn't exist in the cloud. The refresh “succeeds” but + retrieves no new data because it's looking in the wrong place. +

    +

    Diagnosis questions to ask yourself:

    +
      +
    • When you created the data connection, did you use “Get Data → SharePoint Folder” or did you download the Excel file and use “Get Data → Excel”? (If the latter, this is the problem.)
    • +
    • In Power BI Desktop, go to Transform Data → Data source settings. What does the file path show? (If it shows a C:\ path instead of a SharePoint URL, this confirms the diagnosis.)
    • +
    • In the Power BI Service refresh history, does it show any warnings or errors, or does it show “Completed successfully”? (This scenario usually shows “Completed successfully” with zero rows refreshed.)
    • +
    +

    + Solution: Rebuild the data connection using the SharePoint + connector. In Power BI Desktop: Get Data → SharePoint Folder → Enter + the SharePoint site URL → Navigate to the folder containing the Excel file + → Filter to your specific file → Load. Then configure scheduled + refresh in Power BI Service using the SharePoint Online credentials. This + establishes a cloud-to-cloud connection that can refresh automatically. +

    +

    + Frontier classification: This is a domain knowledge issue, not + a frontier issue. AI can generate the dashboard, but it can't know whether you + connected to a local file or a SharePoint URL unless you explicitly describe + your connection method. The AI assumes the “standard” approach but + doesn't know the nuances of your environment. +

    +
    + +
    +

    Key Insight

    +

    + Every debugging session teaches you something about the frontier. When you find + a bug, ask: “Is this a frontier issue (AI cannot do this reliably) or a + context issue (I did not give AI enough information)?” Document the answer. + Over time, your frontier map becomes more precise and your prompts become more + effective. +

    +
    +
    + +
    -

    Module 3: Verification Protocols and QA

    +

    Module 4: Verification Protocols and QA

    Duration: 45 minutes

    @@ -599,179 +770,6 @@

    What This Exercise Teaches

    - -
    -

    Module 4: Debugging Practice

    -

    Duration: 45 minutes

    - -

    - Debugging is a core skill for anyone building with AI. In this module you will - work through three scenarios individually, diagnosing root causes and identifying - fixes. Each scenario represents a common failure pattern in AI-assisted builds. -

    - - -

    Scenario 1: Approval Flow Sends to the Wrong Person

    -

    - A Power Automate flow is supposed to route purchase requests based on dollar - amount. Requests under $2,500 go to the Department Head for approval. Requests - $2,500 and above go to the Commanding Officer. -

    - -
    -

    Symptom

    -
    Request for $1,500 office supplies submitted by Cpl Torres.
    -Expected: Routed to Department Head (Maj Williams).
    -Actual: Routed to CO (Col Richardson).
    -
    -Request for $2,500 equipment purchase submitted by SSgt Park.
    -Expected: Routed to CO (Col Richardson).
    -Actual: Routed to CO (Col Richardson). [Correct]
    -
    -All requests at $2,500 exactly are handled correctly. Only requests BELOW
    -$2,500 are being sent to the wrong approver.
    -
    - -
    - Try to diagnose this yourself first -

    Think about what could cause this symptom. What would you check? Write down your hypothesis before reading the diagnosis guide below.

    -
    - -

    Diagnosis guide:

    -
      -
    1. What is the condition that controls routing?
    2. -
    3. If requests at exactly $2,500 go to the CO correctly, but requests below $2,500 also go to the CO, what comparison operator would cause this?
    4. -
    5. What should the condition be instead?
    6. -
    - -
    - Self-Check: Root Cause and Fix -

    - Root cause: The condition logic uses > (greater than) - instead of >= (greater than or equal to) for the CO threshold, or - equivalently, the Department Head condition uses < instead of - <=. Because the threshold check for “send to Department Head” - is amount < 2500 but was written as amount > 2500 routing - to CO, every amount that is not > 2500 falls through — except the - logic is inverted: the condition likely reads “if amount >= 0, send to CO” - as a catch-all because the < 2500 branch was written as - > 2500. -

    -

    - Fix: Change the condition to: “If amount is greater than or equal - to 2500, route to CO. Otherwise, route to Department Head.” Verify by testing with - values at $2,499, $2,500, and $2,501. -

    -
    - - -

    Scenario 2: Gallery View Shows All Items Instead of Filtered

    -

    - A Power App has a gallery that should display only overdue items — - items whose due date has passed and whose status is not “Complete.” -

    - -
    -

    Symptom

    -
    The "Overdue Items" gallery shows ALL items from the task list,
    -including items that are marked "Complete" and items whose due date
    -is in the future.
    -
    -Total items in list: 47
    -Items actually overdue: 12
    -Items displayed in gallery: 47
    -
    - -
    - Try to diagnose this yourself first -

    Think about what could cause this symptom. What would you check? Write down your hypothesis before reading the diagnosis guide below.

    -
    - -

    Diagnosis guide:

    -
      -
    1. What filter formula is the gallery using? Check the Items property of the gallery.
    2. -
    3. Is the filter comparing dates correctly? (Common issue: comparing a date value to a text string.)
    4. -
    5. Is the status check using the correct column name and value? (Common issue: column display name vs. internal name.)
    6. -
    - -
    - Self-Check: Root Cause and Fix -

    - Root cause: The filter formula is likely malformed or not applied at all. - Common causes include: (1) the gallery Items property points to the raw data - source without a Filter() function, (2) the date comparison uses a text - string like "Today" instead of the Today() function, or (3) the - status column is referenced by its display name (e.g., “Status”) when Power - Apps requires the internal name (e.g., “OData_Status”). -

    -

    - Fix: Set the gallery Items property to: - Filter(TaskList, DueDate < Today() && Status.Value <> "Complete"). - Verify by checking the displayed count against a manual count of overdue, incomplete items. -

    -
    - - -

    Scenario 3: Dashboard Numbers Don’t Match Source Data

    -

    - A Power BI dashboard reports completion percentage for a training tracker. - Leadership questions the numbers because they do not match a manual count. -

    - -
    -

    Symptom

    -
    Dashboard shows: 85% training completion rate.
    -Manual count shows: 67% training completion rate.
    -
    -Source data: 47 Marines, 12 training events each = 564 total slots.
    -Dashboard appears to be counting something differently than
    -"completed slots / total slots."
    -
    - -
    - Try to diagnose this yourself first -

    Think about what could cause this symptom. What would you check? Write down your hypothesis before reading the diagnosis guide below.

    -
    - -

    Diagnosis guide:

    -
      -
    1. How is the dashboard calculating “completion rate”? Is it counting rows vs. distinct values?
    2. -
    3. If a Marine completed 10 of 12 events, does the dashboard count that Marine as “85% complete” or as “1 complete Marine”?
    4. -
    5. Are there duplicate rows in the source data inflating the count?
    6. -
    - -
    - Self-Check: Root Cause and Fix -

    - Root cause: The counting methodology differs between the dashboard and - the manual count. The most likely cause is that the dashboard is counting - rows (each training completion record) rather than - distinct values (unique Marine-event combinations). If some Marines have - duplicate completion records (e.g., re-certifications, data entry errors), the row count - is inflated. Alternatively, the dashboard may be calculating the average completion rate - per Marine (averaging individual percentages) rather than the overall rate (total completed - slots divided by total slots), which produces a different number. -

    -

    - Fix: Align the calculation method. Use - DISTINCTCOUNT instead of COUNT to avoid duplicates. Ensure the - formula is: total completed distinct slots / total expected slots. Verify by manually - calculating the rate for a small subset (e.g., one platoon) and comparing. -

    -
    - -
    -

    Key Insight

    -

    - Every debugging session teaches you something about the frontier. When you find - a bug, ask: “Is this a frontier issue (AI cannot do this reliably) or a - context issue (I did not give AI enough information)?” Document the answer. - Over time, your frontier map becomes more precise and your prompts become more - effective. -

    -
    -
    -

    Module 5: Teaching Others — The 201 Multiplier

    @@ -883,7 +881,12 @@

    60-Second Teach Template

    -

    Deliverable: Workflow Playbook

    +
    + + +
    +

    Module 6: Workflow Playbook 30 min

    +

    Duration: 30 minutes

    Your final deliverable is a one-page playbook for one AI-integrated workflow from your actual job. Study the completed example below, then create your own @@ -894,7 +897,7 @@

    Deliverable: Workflow Playbook

    Start simple. Your first playbook does not need to be this detailed. Begin with: Task, Mode, 3–5 steps with Human/AI labels, and one known frontier issue. Add detail as you use the playbook over time and discover what matters.

    -

    Completed Example: Weekly Training Schedule Publication

    +

    Completed Example: Weekly Training Schedule Publication

    @@ -970,7 +973,7 @@

    Workflow Playbook Completion Criteria

    -

    Blank Workflow Playbook Template

    +

    Blank Workflow Playbook Template

    Your Workflow Playbook

    @@ -1034,22 +1037,32 @@

    Assignment

    Capstone Deliverable

    -

    Documentation Package

    +

    Submission

    - Complete the full documentation package (User Guide, Replication Guide, - Adaptation Guide, Maintenance Guide) for your tool. The package must be - thorough enough that another developer could rebuild your tool from the - Replication Guide alone. + Submit your completed Workflow Playbook (Module 6 deliverable) along with at + least one frontier-map row that captures a real lesson from your build. Post + both to EDD Discussions.

    + +
    +
    +

    What's next: Course 6 — Full-Stack AI-Assisted Development

    +

    You've moved from individual builder to teaching others. Full-Stack AI-Assisted Development is the capstone — build and deploy a complete web app from scratch using AI as your development partner.

    +
    +
    +

    Knowledge Check

    Knowledge Check

    +
    + Module 1: Frontier Mapping — Questions +

    The BCG-Harvard study found that workers who applied AI beyond the frontier without knowing it performed how much worse than those without AI?

    @@ -1128,6 +1141,11 @@

    Knowledge Check

    + + +
    + Module 2: Complex Build — Questions +

    In the Tutoring Management System example, the data backend uses centaur mode while the input interface uses cyborg mode. What principle drives this mode selection?

    @@ -1206,162 +1224,177 @@

    Knowledge Check

    + + +
    + Module 3: Group Debugging — Questions +
    -

    The QA checklist lists "Source verification" as item #1. According to the timed QA exercise, why is this the most important step?

    +

    In Scenario 1 (Power Automate Flow Triggers But Sends Wrong Data), the flow fires on item creation but the email body sometimes contains stale or empty fields. What is the root cause?

    -
    -

    In the timed QA exercise, the AI-generated SOP contains steps that are out of logical order (receiving an S-1 orientation brief before in-processing at S-1). What type of QA check catches this error?

    +
    +

    In Scenario 2 (Power App Form Saves But Doesn't Validate), the AI suggested If(TextInput_Phone.Valid, DisplayMode.Edit, DisplayMode.Disabled). Why won't this work?

    -
    -

    The timed QA exercise demonstrates that AI can generate a draft SOP in seconds, but finding the five errors takes several minutes of careful review. What does this teach about the value proposition of AI-assisted work?

    +
    +

    After resolving a debugging scenario, the course suggests asking: "Is this a frontier issue or a context issue?" What is the practical difference between the two?

    +
    + +
    + Module 4: Verification & QA — Questions + -
    -

    In Debugging Scenario 1, a $1,500 request routes to the CO instead of the Department Head. The key diagnostic question is: "If requests at exactly $2,500 go to the CO correctly, but requests below $2,500 also go to the CO, what comparison operator would cause this?" What is the root cause?

    +
    +

    The QA checklist lists "Source verification" as item #1. According to the timed QA exercise, why is this the most important step?

    -
    -

    In Debugging Scenario 2, a gallery view that should show only overdue items displays all 47 items instead of the expected 12. Which of the following is the most systematic first step in diagnosing this issue?

    +
    +

    In the timed QA exercise, the AI-generated SOP contains steps that are out of logical order (receiving an S-1 orientation brief before in-processing at S-1). What type of QA check catches this error?

    -
    -

    After resolving a debugging scenario, the course suggests asking: "Is this a frontier issue or a context issue?" What is the practical difference between the two?

    +
    +

    The timed QA exercise demonstrates that AI can generate a draft SOP in seconds, but finding the five errors takes several minutes of careful review. What does this teach about the value proposition of AI-assisted work?

    +
    + +
    + Module 5: Teaching Others — Questions +

    Mollick's research shows workers are already using AI but hiding it. According to the course, what is the organizational fix for this "shadow AI culture"?

    @@ -1440,6 +1473,8 @@

    Knowledge Check

    + + @@ -1469,20 +1504,26 @@

    Course Completion Checklist

  • +
  • +
  • +
  • @@ -1519,7 +1560,7 @@

    Course Complete!

    diff --git a/docs/courses/student/ai-fluency.html b/docs/courses/student/ai-fluency.html index d8a37b5..c956318 100644 --- a/docs/courses/student/ai-fluency.html +++ b/docs/courses/student/ai-fluency.html @@ -439,16 +439,18 @@

    Pass 1 — Fix Tone and Add Weather

    “make it better” but exact instructions on what to fix.

    -

    Pass 2 — Add POC, Liberty Radius, Remove Redundancy

    -
    - Refinement Prompt -
    Add the duty officer contact info: Capt Rodriguez, (831) 555-0147.
    +                        
    + See Pass 2 (intermediate iteration) +

    Pass 2 — Add POC, Liberty Radius, Remove Redundancy

    +
    + Refinement Prompt +
    Add the duty officer contact info: Capt Rodriguez, (831) 555-0147.
     Add the liberty radius: 250 miles. Remove the third paragraph, it
     repeats the first.
    -
    -
    - AI Output — Pass 2 -
    Weekend Safety Brief
    +                            
    +
    + AI Output — Pass 2 +
    Weekend Safety Brief
     
     Listen up. We made it through another week. Before I cut you
     loose, here's what you need to know.
    @@ -473,12 +475,13 @@ 

    Pass 2 — Add POC, Liberty Radius, Remove Redundancy

    now. We can deal with almost anything if we know about it early. Enjoy the weekend. Come back ready to work.
    -
    +
    -

    - Getting close. Two passes in, the brief has the right tone, real weather, POC info, - and a liberty boundary. One more pass to tighten it and add local hazards. -

    +

    + Getting close. Two passes in, the brief has the right tone, real weather, POC info, + and a liberty boundary. One more pass to tighten it and add local hazards. +

    +

    Pass 3 — Tighten and Add Local Hazards

    @@ -1008,6 +1011,7 @@

    Exercise: Workflow Mapping

  • Identify the pattern. Is this a centaur workflow (clear handoffs) or a cyborg workflow (continuous collaboration)?
  • Estimate time savings per iteration if you used AI for the marked subtasks.
  • +
  • Identify one frontier risk for your task — what could go wrong if you delegate this to AI?
  • Use this template to map your workflow:

    @@ -1123,7 +1127,12 @@

    Your Personal Frontier Map

    Your Assignment

    -

    This Week: Try It

    +

    Optional: Try It This Week

    +

    + Recommended next step before the capstone — a low-stakes warm-up to surface real + friction before you build the formal frontier map. The capstone (below) is the explicit + deliverable for this course. +

    1. Pick one recurring task from your workflow map (Module 5)
    2. Try using AI on it this week
    3. @@ -1145,6 +1154,11 @@

      For Those Continuing to Builder Orientation

      201 skills — there you will put them to work building actual tools.

      +
      +

      What's next: Course 2 — Builder Orientation

      +

      You've finished AI Fluency Fundamentals. The next step on the Builder Path is Builder Orientation, where you'll build your first tool from start to finish.

      +
      +

      What You Now Know

      You are now equipped with the same judgment framework that separates sustained AI @@ -1190,8 +1204,10 @@

      Personal Frontier Map

      Knowledge Check

      +

      Click each module to expand its questions. Your answers save automatically.

      -
      +
      + Module 1 Questions (3 questions)

      Module 1: Why 80% Quit

      @@ -1268,9 +1284,10 @@

      Module 1: Why 80% Quit

      The management framing says you should treat AI the same way you would manage a capable but inexperienced team member. You break work into pieces, provide context, explain standards, review output, and give specific feedback. The same leadership skills that make you effective with people make you effective with AI.

      -
      + -
      +
      + Module 2 Questions (3 questions)

      Module 2: The Six 201-Level Skills

      @@ -1347,9 +1364,10 @@

      Module 2: The Six 201-Level Skills

      Workflow Integration means AI becomes part of a recurring process, not a one-time experiment. For example, "Every Friday, the duty NCO uses AI to draft the weekend safety brief." Microsoft research shows it takes up to 11 weeks to build the AI habit, and the time savings only compound when AI is integrated into standing workflows.

      -
    + -
    +
    + Module 3 Questions (3 questions)

    Module 3: The Delegation Equation

    @@ -1426,58 +1444,59 @@

    Module 3: The Delegation Equation

    Domain expertise improves all three variables in the Delegation Equation: you estimate human baseline time more accurately, you judge AI success probability more accurately, and you review AI output faster because you know what right looks like. AI does not replace expertise; it rewards it.

    - + -
    +
    + Module 4 Questions (3 questions)

    Module 4: Red Pen Review

    -
    -

    In the naval message review exercise, the AI-generated DTG read "R 06 FEB 2026 1430Z." What category of error does this represent?

    +
    +

    In the award narrative document, the AI claimed the Marine "increased mission readiness by 47%." What error category does this represent?

    -
    -

    The Red Pen Review exercise describes fabricated references (like fake MARADMIN numbers) as the "single most dangerous category of AI error." Why are fabricated references more dangerous than other errors?

    +
    +

    What category of error is "MARADMIN 045/26" when the document references it as a citation?

    @@ -1505,9 +1524,10 @@

    Module 4: Red Pen Review

    AI fabricates precise-sounding statistics to make claims more authoritative. "47%" and "156 man-hours" sound specific and credible, but there is no audit, no baseline measurement, and no methodology behind them. If the CO asks "where did you get 47%?" there is no answer. Strong award narratives use verifiable accomplishments, not AI-generated numbers.

    -
    + -
    +
    + Module 5 Questions (3 questions)

    Module 5: Centaur and Cyborg Modes

    @@ -1584,9 +1604,10 @@

    Module 5: Centaur and Cyborg Modes

    The workflow map example breaks the task into five specific subtasks, labels each one, and identifies where AI contributes. The time savings estimate comes from subtracting the time AI handles (routine formatting, initial drafting) while keeping human-only tasks at their original duration. A subtask-level breakdown makes the estimate testable rather than aspirational.

    - + -
    +
    + Module 6 Questions (3 questions)

    Module 6: Frontier Mapping

    @@ -1663,7 +1684,7 @@

    Module 6: Frontier Mapping

    Classifying tasks requires Frontier Recognition (understanding what AI can and cannot handle in your domain) combined with Task Decomposition (breaking your work into pieces small enough to evaluate individually). You cannot classify a task like "do admin work" because it is too broad. You must decompose it into specific subtasks and then map each one against the frontier.

    - + @@ -1749,7 +1770,7 @@

    Course Complete!

    diff --git a/docs/courses/student/fullstack.html b/docs/courses/student/fullstack.html index 11e1d5f..43484ce 100644 --- a/docs/courses/student/fullstack.html +++ b/docs/courses/student/fullstack.html @@ -74,6 +74,9 @@

    Full-Stack AI-Assisted Development

    Prerequisite: Advanced Workshop (Course 4), at least 1 deployed tool, computer with admin rights

    +

    Instructor Guide

    @@ -103,6 +106,8 @@

    On This Page

  • Module 9: External Integrations
  • Module 10: Docker & Deployment
  • Assessment & Wrap-Up
  • +
  • Knowledge Check
  • +
  • Completion Checklist
  • @@ -117,6 +122,11 @@

    On This Page

    Course Overview

    +
    +

    Recommended delivery: 2 days, not 1

    +

    This course is budgeted at 8 hours, but the realistic target audience (one deployed tool, no full-stack background) needs two sittings. Default delivery: Day 1 — Modules 1-5 (frontier shift, env, backend, data, frontend; ends at “I can fetch JSON from my own server”). Day 2 — Modules 6-10 (pages, AI chat, auth, integration, deploy). The 1-day variant is an intensive offering for experienced builders only — most students will not complete in one sitting.

    +
    +

    Courses 1–5 taught you to build tools on Power Platform — low-code applications within the Microsoft ecosystem. That’s powerful, and most Marines will never need more. @@ -185,15 +195,6 @@

    Six Principles of AI-Assisted Full-Stack Development

    Don’t say “it doesn’t work” — say “I get this error when I run go build.” - -
    -

    Module 1 Complete When

    -
      -
    • Students can articulate the four layers of a web application
    • -
    • Students understand they won’t “learn to code” — they’ll learn to direct AI to code for them
    • -
    • Students have seen the live Heywood demo and understand the target
    • -
    -
    @@ -301,14 +302,8 @@

    Agenda & Timing

    Pacing Note

    - This is an aggressive pace. Some students will fall behind, especially in Modules 3–4 (backend) - and Module 7 (AI chat). That’s expected. The instructor should: + This is an aggressive pace. If you fall behind in Modules 3–4 (backend) or Module 7 (AI chat), that’s normal. If you’re tight on time, skip Module 9 (External Integrations) — it’s the most independent and can be done later. Plan two sittings minimum.

    -
      -
    • Have a pre-built “checkpoint” version of the app at each module boundary
    • -
    • Students who fall behind can clone the checkpoint and continue from there
    • -
    • Prioritize: if time is short, skip Module 9 (External Integrations) — it’s the most independent module
    • -
    @@ -343,7 +338,7 @@

    Key Reveal

    “This application has 8,400 lines of Go backend code, 4,400 lines of React frontend code, 35 API endpoints, 5 database backends, Microsoft Graph integration, CAC authentication, and FIPS 140-3 compliance. It was built in days, not months, by one person - working with AI. No team of contractors. No six-month timeline. No $2M budget.” + working with AI. Comparable contractor estimates run multi-month timelines and six-figure budgets. The point is not the savings claim — it’s that the work is now possible at a different scale of person-hours.”

    @@ -476,9 +471,7 @@

    Module 2: Environment Setup

    Pre-Class Preparation

    - Ideally, send setup instructions to students before class so they arrive - with tools installed. In practice, expect 30–50% to need help during this module. - Have the instructor and any TAs circulate during this time. + Install the tools in Section 2.1 before starting Module 3. Plan for 30–60 minutes if this is your first time installing developer tools. Expect at least one tool to need a system restart or PATH fix — that is normal. Have the EDD Discussions tab open in another window if you get stuck.

    @@ -1003,12 +996,16 @@

    Module 7: AI Chat Integration

    and can query the application’s own data through tool use.

    +
    +

    DoD network note

    +

    This module’s example uses api.openai.com for simplicity. For DoD networks, use Azure OpenAI Government or GenAI.mil endpoints, not the commercial OpenAI API. The code pattern is identical — only the base URL and auth header change. When you’re ready to deploy on a DoD network, ask the AI: “Convert this OpenAI client to Azure OpenAI Government with API key auth. Base URL is https://[your-resource].openai.azure.us/openai/deployments/[deployment-name].” Per MARADMIN 018/26, GenAI.mil is the default platform for AI tools handling DoD data.

    +
    +

    API Key Required

    You need an OpenAI API key (OPENAI_API_KEY) or Azure OpenAI credentials - for this module. If keys aren’t available, the instructor should demo this module live - and you can add it later. Alternatively, have one shared API key for the class. + for this module. If you don’t have an OpenAI key, skip the live calls in this module — read the prompts, examine the expected code, and complete this module against a mock response. Wire in real keys later when access is approved. The Module 7 lessons (chat backend, tool use, system-prompt design) work without live calls.

    @@ -1475,6 +1472,271 @@

    Course 6 Complete

    + + + + +
    +

    Knowledge Check

    +

    + Six questions covering the Six Principles, the 3-Minute Rule, and the Cyborg pattern at + full-stack scale. Score 80% or higher to pass. There is a 2-minute minimum reading time + before you can submit. +

    + +

    Click each module to expand its questions. Your answers save automatically.

    + +
    +
    + Principles 1–3 (Conversation, Scaffold, 3-Minute Rule) +

    Foundations: How AI-Assisted Full-Stack Work Differs

    + +
    +

    In Principle 1 (“The Conversation is the IDE”), what role does your code editor play during a full-stack build?

    +
    + + + + +
    + +
    + +
    +

    You are following Principle 2 (Scaffold → Flesh Out → Integrate). The AI just produced 600 lines that wire up the backend, the database, and three frontend pages in one shot. What should you do?

    +
    + + + + +
    + +
    + +
    +

    You hit a runtime error. You spend three minutes reading the stack trace and trying small tweaks in the editor. The 3-Minute Rule says: what next?

    +
    + + + + +
    + +
    +
    + +
    + Principles 4–5 (Incremental Deployment, Interface-First) +

    Build & Deploy Habits

    + +
    +

    Principle 4 says “Incremental Deployment — deploy after every major feature.” Why is waiting until the end to deploy actually slower?

    +
    + + + + +
    + +
    + +
    +

    Principle 5 (Interface-First Design) tells you to specify what a component does before how. Which prompt below best follows that principle?

    +
    + + + + +
    + +
    +
    + +
    + Synthesis: Cyborg Pattern at Full-Stack Scale +

    Tying It Together

    + +
    +

    Course 3 introduced the Cyborg pattern (fluid, continuous human/AI integration). Course 6 applies it at full-stack scale. Which sentence best describes the difference at this scale?

    +
    + + + + +
    + +
    +
    + + + +
    +
    + + + + + +
    +
    +

    Course Completion Checklist

    +
    +
    +
    + 0% Complete +
      +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    • + +
    • +
    + +
    + +
    +

    Where to next?

    +

    You’ve shipped a complete full-stack application. Three suggested next moves:

    +
      +
    1. Rebuild from scratch. Repeat the course without the prompts. The fastest path to fluency is doing it twice.
    2. +
    3. Post your repo to EDD Discussions. Get feedback from other builders. Inspire someone in their first week.
    4. +
    5. Start a real project for your unit. Use the Course 3 Problem Definition Worksheet to scope it. Apply the Course 4 Workflow Playbook to plan it. Ship something.
    6. +
    +
    +
    + @@ -1487,7 +1749,7 @@

    Course 6 Complete

    diff --git a/docs/courses/student/index.html b/docs/courses/student/index.html index 659988d..482fc4d 100644 --- a/docs/courses/student/index.html +++ b/docs/courses/student/index.html @@ -83,6 +83,7 @@

    How to Use These Courses

    Recommended Path

    Start here: AI Fluency Fundamentals (required for everyone). After completing it, continue with Builder Orientation if you want to build tools, or stop here if you only need daily AI skills.

    Builder Path: AI Fluency Fundamentals → Builder Orientation → Platform Training → Advanced Workshop → Full-Stack AI-Assisted Development (bonus)

    +

    Note: Course 5 (Supervisor Orientation) is a 30-minute leadership briefing for those who supervise builders. It is not self-paced material — see the instructor catalog if you supervise builders.

    @@ -91,7 +92,7 @@

    Recommended Path

    +
    +
    Outcome
    +
    Understand the six 201 skills, recognize the jagged frontier, know when to trust AI output
    +
    @@ -117,7 +123,7 @@

    @@ -147,7 +158,7 @@

    @@ -177,7 +193,7 @@

    @@ -207,7 +228,7 @@

    @@ -244,10 +270,7 @@

    - + @@ -221,6 +226,11 @@

    Common Mistake

    Module 2: Guided Build — Equipment Tracker

    Estimated time: 45 min hands-on

    +
    +

    A note on platform choice

    +

    Live class uses Microsoft Power Apps + SharePoint as the platform (the production target for DoD M365 environments). This self-paced version uses vanilla HTML/CSS/JavaScript instead, so you can run it on any laptop without a tenant. Both teach the same builder skills — task decomposition, iterative refinement, debugging. Once you have access to a Power Apps environment, ask the AI to convert your tracker as a follow-on exercise.

    +
    +

    In this module you will build a working equipment checkout tracker for 1st Bn, 99th Marines from scratch, using AI. Follow each step in order. By the end you will have a functional @@ -297,13 +307,14 @@

    Step 2: Write Your First Prompt

    What to Expect

    -

    - Your output should include a SharePoint list structure with columns for: - Equipment Name (text), Serial Number (text), Status (choice: Available/Checked - Out/Maintenance), Assigned To (text), Date Checked Out (date), and Expected - Return (date). If your output is missing columns or has different data types, - that is normal — use the refinement prompts in the next step to fix it. -

    +

    Your AI should respond with a single self-contained HTML file (or a small set: index.html + style.css + script.js). Expect:

    +
      +
    • A <form> with labeled <input> fields for: Equipment Name, Serial Number, Status (Available / Checked Out / Maintenance), Assigned To, Date Out, Notes.
    • +
    • A button that adds the entry to a list rendered below the form.
    • +
    • JavaScript that stores the list in the browser (localStorage) so it survives a page reload.
    • +
    • Basic styling — no external CSS framework needed.
    • +
    +

    If your AI returns Power Apps formulas or asks about SharePoint connections, your prompt didn't specify the platform clearly enough. Re-prompt with: “Use only vanilla HTML, CSS, and JavaScript — no frameworks, no external services.”

    @@ -446,8 +457,12 @@

    Module 3: When Something Breaks

    failures instead of quitting.

    +

    + These are common error patterns to recognize. Read the symptom, examine the prompt template, and trace the diagnosis — you're learning to read errors before you encounter them in your own builds. +

    + -

    Failure Case 1: The Crash

    +

    Worked Example: Failure Case 1 — The Crash

    Imagine you click the “Check Out” button on your equipment tracker and nothing happens. You open your browser’s developer console (F12 → Console tab) @@ -519,7 +534,7 @@

    Key Lesson

    -

    Failure Case 2: The Logic Error

    +

    Worked Example: Failure Case 2 — The Logic Error

    Not all failures produce error messages. Sometimes the code runs fine but produces the wrong result. This is harder to catch and more important to practice. @@ -665,9 +680,7 @@

    Peer Review (if in a live session)

    Self-Check: Review your decomposition

    - Look at each subtask. Could any one of them be broken down further? A subtask is too big if it would take more than 3 AI prompts to complete, or if you cannot describe the expected output in one sentence. If a subtask - feels like it would take more than two or three prompts to complete, it is too big. - Split it. Also check: did you identify at least one frontier risk? Every problem + Look at each subtask. Could any one of them be broken down further? A subtask is too big if it would take more than 3 AI prompts to complete, or if you cannot describe the expected output in one sentence. Split it. Also check: did you identify at least one frontier risk? Every problem has at least one area where AI’s training data will not perfectly match your real-world context.

    @@ -679,6 +692,11 @@

    Peer Review (if in a live session)

    Module 5: Assignment & Path Forward

    Estimated time: 10 min read

    +
    +

    What's next: Course 3 — Platform Training

    +

    You've built your first tool. Platform Training takes you through three complete builds on Power Platform with deeper centaur/cyborg practice.

    +
    +

    Your Assignment

    @@ -742,12 +760,9 @@

    Path Forward

    Capstone Deliverable

    -

    Problem Definition Document

    +

    Decomposition Template

    - Using the Problem Definition Worksheet template, write a complete problem - definition for a real workflow problem in your unit. Include: problem statement, - target users, at least 3 success criteria, required functions with priorities, - and data considerations. + Submit your completed Decomposition Template from Module 4. Include all subtasks, pattern classifications (Centaur/Cyborg/Neither), and at least one frontier risk per subtask.

    @@ -756,6 +771,8 @@

    Problem Definition Document

    Knowledge Check

    +
    + Module 1 Questions (3 questions)

    Module 1: From User to Builder

    @@ -834,7 +851,10 @@

    Module 1: From User to Builder

    +
    +
    + Module 2 Questions (3 questions)

    Module 2: Equipment Tracker Guided Build

    @@ -913,7 +933,10 @@

    Module 2: Equipment Tracker Guided Build

    +
    +
    + Module 3 Questions (3 questions)

    Module 3: When Something Breaks

    @@ -992,7 +1015,10 @@

    Module 3: When Something Breaks

    +
    +
    + Module 4 Questions (3 questions)

    Module 4: Decomposition Framework

    @@ -1071,7 +1097,10 @@

    Module 4: Decomposition Framework

    +
    +
    + Module 5 Questions (3 questions)

    Module 5: Assignment and Path Forward

    @@ -1150,6 +1179,7 @@

    Module 5: Assignment and Path Forward

    +
    @@ -1204,7 +1234,7 @@

    Course Completion Checklist

  • @@ -1229,7 +1259,7 @@

    Course Complete!

    diff --git a/docs/courses/student/platform.html b/docs/courses/student/platform.html index 56bab1a..187ce27 100644 --- a/docs/courses/student/platform.html +++ b/docs/courses/student/platform.html @@ -74,6 +74,9 @@

    Platform Training

    Prerequisite: Builder Orientation, M365 account access

    +

    + Open the Week 3 Slide Deck +

    Instructor Guide

    @@ -133,24 +136,25 @@

    Before You Begin

    Module 1: Setup and Review

    -

    Duration: 15 minutes

    +

    Duration: 15 minutes  ·  Open this section in the deck →

    Step 1: Verify Your Access

    - Before building anything, confirm you can reach all three platforms you will + Before building anything, confirm you can reach all four platforms you will use today. Open each link and verify you can log in:

      -
    1. SharePoint: Navigate to your unit SharePoint site and confirm you can create a new list
    2. -
    3. Power Apps: Go to make.powerapps.com and verify you see the Home screen
    4. -
    5. Power Automate: Go to make.powerautomate.com and verify you can create a new flow
    6. +
    7. SharePoint: Navigate to your unit SharePoint site (*.sharepoint.us) and confirm you can create a new list
    8. +
    9. Power Apps: Go to make.gov.powerapps.us and verify you see the Home screen
    10. +
    11. Power Automate: Go to high.flow.microsoft.us and verify you can create a new flow
    12. +
    13. GenAI.mil: Confirm you can open Agent Designer or start a conversation

    Access Problems?

    If you cannot log in to any of these platforms, contact your IT support - before proceeding. You will need all three for every build in this course. + before proceeding. You will need all four for every build in this course. Do not skip this step — resolving access issues during a build wastes significant time.

    @@ -210,7 +214,7 @@

    Step 2: Centaur vs. Cyborg Review

    Module 2: Build #1 — Structured Workflow (Centaur Mode)

    -

    Duration: 60 minutes

    +

    Duration: 60 minutes  ·  Open this section in the deck →

    Problem: 1st Bn, 99th Marines needs a request routing workflow. @@ -377,14 +381,12 @@

    Key Teaching Point

    Module 3: Reflection — What Went Wrong

    -

    Duration: 15 minutes

    +

    Duration: 15 minutes  ·  Open this section in the deck →

    Before moving on to your next build, take 15 minutes to reflect on what happened during Build #1. Every builder encounters AI failures — the - skill is in recognizing them quickly and knowing how to recover. This - structured reflection replaces what would be a group failure-sharing session - during live instruction. + skill is in recognizing them quickly and knowing how to recover.

    @@ -392,27 +394,17 @@

    Module 3: Reflection — What Went Wrong

    -

    Build #1 Reflection Template

    - -
    What did the AI get wrong during Build #1?
    -

    (Be specific. Which component? What was the exact error?)

    -

    _______________________________________________________________

    -

    _______________________________________________________________

    - -
    How did you catch it?
    -

    (During which phase? What test or review revealed the problem?)

    -

    _______________________________________________________________

    -

    _______________________________________________________________

    - -
    How did you fix it?
    -

    (What did you tell the AI? Did it fix the issue on the first try?)

    -

    _______________________________________________________________

    -

    _______________________________________________________________

    - -
    What would you check for next time?
    -

    (What will you add to your personal verification checklist?)

    -

    _______________________________________________________________

    -

    _______________________________________________________________

    +

    Build #1 Reflection Prompts

    +

    Work through each prompt in writing before moving on. Honest, specific answers will pay back later when you build your frontier map.

    +
      +
    • What surprised you about Build #1 — where did the AI deliver more (or less) than you expected?
    • +
    • What did the AI get wrong? Be specific: which component, what was the exact error?
    • +
    • How did you catch it? During which phase? What test or review revealed the problem?
    • +
    • How did you fix it? What did you tell the AI? Did it work on the first try, or did you have to iterate?
    • +
    • What pattern (centaur or cyborg) did you use most? Why did that fit this build?
    • +
    • What would you do differently if you started Build #1 over right now?
    • +
    • What will you add to your personal verification checklist before Build #2?
    • +

    @@ -440,7 +432,7 @@

    What would you check for next time?

    Module 4: Build #2 — Training Tracker (Cyborg Mode)

    -

    Duration: 60 minutes

    +

    Duration: 60 minutes  ·  Open this section in the deck →

    Problem: 1st Bn, 99th Marines needs a training tracker that shows @@ -560,31 +552,101 @@

    Guided Cyborg Build

    Notice the difference: Unlike Build #1, you are not planning everything up front. You are discovering requirements as you iterate. This is deliberate — cyborg mode trades planning time for iteration speed. Stay engaged with every output.

    +

    Iteration 1 — Get Something Visible

    Prompt 1 — Initial Structure
    -I need a training tracker for my Marine Corps section in 1st Bn, 99th Marines. -It should track 6 Marines across 5 required training events. I need to see at -a glance who is current, who is overdue, and who has events scheduled. Build -this as a SharePoint list with a Power App gallery view.
    +I need a training tracker for 1st Battalion, 99th Marines. We need to track +which Marines have completed which training events. Start with a SharePoint +list that can store: Marine name, training event name, completion date, and +status (Complete, Overdue, Scheduled). Give me the SharePoint list structure +and a CSV I can import. + +
    + Expected output (one row per training event per Marine): +
    +Training Tracker — Structure:
    +
    +| Display Name    | Type              | Notes                       |
    +|-----------------|-------------------|-----------------------------|
    +| Marine Name     | Person            | Add manually after import   |
    +| Training Event  | Choice            | Annual Rifle Qual, CBRN,    |
    +|                 |                   | Cyber, PFT/CFT, SAPR        |
    +| Completion Date | Date              | Date only                   |
    +| Status          | Choice            | Complete, Overdue, Scheduled|
    +| Due Date        | Date              | Date only                   |
    +| Days Until Due  | Calculated        | =[Due Date]-TODAY()         |
    +                            
    +

    - Review the output. Does the data model make sense? Are the right columns - included? Adjust and continue: + Build this list. Notice you have not pre-planned the dashboard yet — + in cyborg mode, you build something visible first, then evaluate. +

    + +

    Iteration 2 — The Data-Model Pivot

    +

    + After you create the list, look at it. With 6 Marines and 5 events, this + structure produces 30 rows — one per Marine per event. That is fine + for storage but bad for a dashboard where leadership wants one row per + Marine. Time to pivot.

    -
    Prompt 2 — Visual Formatting
    +
    Prompt 2 — Pivot the Data Model
    +Wait, this structure will create a new row for every training event for every +Marine. That's going to be a very long list. I need a dashboard where I can +see all five training events for each Marine in one row. How should I +restructure this?
    + +
    + Expected output (one row per Marine, columns per event): +
    +| Display Name           | Type    | Notes                                |
    +|------------------------|---------|--------------------------------------|
    +| Marine Name            | Person  | Add manually after import            |
    +| Rank                   | Choice  | PFC, LCpl, Cpl, Sgt, SSgt           |
    +| Annual Rifle Qual      | Choice  | Complete/Overdue/Scheduled/Not Started |
    +| Annual Rifle Qual Date | Date    |                                      |
    +| CBRN Awareness         | Choice  | Same values                          |
    +| CBRN Awareness Date    | Date    |                                      |
    +| Cyber Awareness        | Choice  | Same values                          |
    +| Cyber Awareness Date   | Date    |                                      |
    +| PFT/CFT                | Choice  | Same values                          |
    +| PFT/CFT Date           | Date    |                                      |
    +| SAPR Training          | Choice  | Same values                          |
    +| SAPR Training Date     | Date    |                                      |
    +
    +Trade-off: less flexible if you add new training events later (you'd add two
    +new columns each time). Wins: dashboard reads cleanly, one row per Marine.
    +                            
    +
    + +

    + Delete the first list and create the new structure. This rework is + the lesson. In centaur mode you would have planned this in advance. + In cyborg mode you discover the right shape by building, evaluating, and + pivoting. The cost is rework; the benefit is requirements you would not have + seen on a whiteboard. +

    + +

    Iteration 3 — Visual Formatting

    +
    +
    Prompt 3 — Conditional Formatting
    Add conditional formatting: green for Complete, red for Overdue, yellow for Scheduled. Add a summary bar at the top showing percentages for each status across all Marines and all events.

    - Check the formatting. Does it match the target dashboard above? Now add - the reporting layer: + Check the formatting. Does it match the target dashboard above? + Common gotcha: AI may write rules that check for an exact string match + (Status = "Scheduled") when your data contains "Scheduled 15 Mar". Test + with real values; if it falls through to default color, switch the + condition to "starts with" or "contains."

    +

    Iteration 4 — Report Generation

    -
    Prompt 3 — Report Generation
    +
    Prompt 4 — S-3 Brief Format
    Generate a report view that summarizes the data in paragraph form suitable for an S-3 brief. Include: overall percentage current, critical overdue items with names and how many days overdue, and upcoming scheduled events in the next 30 @@ -620,6 +682,12 @@

    Key Teaching Point

  • Can you generate the S-3 brief format report?
  • If any are missing, revisit the prompts in this module and iterate.

    +

    Common failure modes:

    +
      +
    1. Statuses are not color-coded — apply conditional formatting per Iteration 3 (use "starts with" or "contains" if exact-match fails on values like "Scheduled 15 Mar").
    2. +
    3. Form does not validate empty Serial Number — add an IsBlank check on submit.
    4. +
    5. List filter does not refresh on edit — call Refresh(Equipment) in OnSelect.
    6. +
    @@ -627,7 +695,7 @@

    Key Teaching Point

    Module 5: Build #3 — Your Problem

    -

    Duration: 60 minutes

    +

    Duration: 35 minutes  ·  Open this section in the deck →

    Now build a solution to a real problem you face in your unit. This is the @@ -645,40 +713,33 @@

    Before You Start

    Build #3 Decomposition Template

    +

    Work through these in order before writing your first prompt. If you cannot fill an item, that is the item you need to think harder about, not skip.

    + +
    Data: What are you tracking? What columns does the list need?
    + +
    Users: Who creates the data? Who reads it? Who updates it? Who approves it?
    -
    Problem Statement
    -

    (One sentence: who has the problem, what is the problem, what does a solution look like?)

    -

    _______________________________________________________________

    +
    Workflow: What happens when a new item is created? Does it need routing or approval?
    -
    Mode Selection
    -

    (Centaur or Cyborg? Why?)

    -

    _______________________________________________________________

    +
    Output: What does leadership need to see? Dashboard, report, email summary?
    -
    Components to Build
    -

    (Break your solution into 3-5 pieces. What platform tools will you use for each?)

    +
    Tech stack: SharePoint list → Power App (Integrate) → Power Automate flow? Or simpler?
    + +
    Decompose into subtasks (write 3-6, in order)
      -
    1. _______________________________________________________________
    2. -
    3. _______________________________________________________________
    4. -
    5. _______________________________________________________________
    6. -
    7. _______________________________________________________________
    8. -
    9. _______________________________________________________________
    10. +
    11. Identify the smallest standalone subtask. Write it in one sentence.
    12. +
    13. Decide pattern: Centaur (you drive, AI assists) or Cyborg (AI proposes, you verify).
    14. +
    15. Note the platform tool you will use for this subtask (SharePoint, Power Apps, Power Automate, GenAI.mil).
    16. +
    17. State one concrete verification check you will run after the AI produces output.
    18. +
    19. Repeat for each subtask — keep adding rows until your full solution is covered.
    20. +
    21. Flag any subtask where you expect AI to struggle (frontier risk) so you can plan extra verification time.
    -
    Expected Frontier Issues
    -

    (Where will AI likely struggle? What will you need to verify most carefully?)

    -
      -
    • _______________________________________________________________
    • -
    • _______________________________________________________________
    • -
    • _______________________________________________________________
    • -
    +
    Expected Frontier Issues (list at least 2)
    +

    Where will AI likely struggle? What will you need to verify most carefully?

    Verification Plan
    -

    (How will you know it works? What tests will you run?)

    -
      -
    • _______________________________________________________________
    • -
    • _______________________________________________________________
    • -
    • _______________________________________________________________
    • -
    +

    How will you know it works? What three tests will you run before declaring the build complete?

    @@ -710,7 +771,7 @@

    Getting Stuck?

    Module 6: Frontier Map Update

    -

    Duration: 15 minutes

    +

    Duration: 15 minutes  ·  Open this section in the deck →

    A frontier map records what AI can and cannot do for your specific use cases. @@ -719,6 +780,15 @@

    Module 6: Frontier Map Update

    build.

    +

    The columns below capture five things for each task type:

    +
      +
    • Task Type — the specific kind of work you tried with AI.
    • +
    • AI Handles Well — concrete examples of what AI produced correctly.
    • +
    • AI Handles Poorly — specific failures, detailed enough to recognize next time.
    • +
    • Verification Needed — the testable check you ran (not just "review it").
    • +
    • Moving Frontier — whether this is weak today but improving (revisit later) or stable.
    • +
    +
    When Something Breaks 25 min hands-onIterative Refinement, Quality Judgment, Failure RecoveryIterative Refinement, Quality Judgment, Workflow Integration
    Your Problem — Decomposition Exercise
    @@ -727,6 +797,7 @@

    Module 6: Frontier Map Update

    + @@ -735,36 +806,42 @@

    Module 6: Frontier Map Update

    + + + + + +
    AI Handles Well AI Handles Poorly Verification NeededMoving Frontier
    Column types, relationships, basic validation rules Complex calculated columns with nested IF logic Always verify column data types match actual dataStable — schema syntax rarely shifts
    Power App form layout Basic screens, navigation, standard input controls Conditional visibility with 3+ dependencies Test every show/hide rule with real dataImproving — revisit in 6 months
    Power Automate flows Simple approval flows, email notifications, basic conditions Error handling for nested conditions, retry logic Test all error paths, not just the happy pathImproving — agent tooling is moving fast
    Data validation formulas Required fields, format checks, simple lookups Cross-table validation, date range conflicts Check edge cases: empty fields, special charactersStable — verify on every build
    Dashboard/reporting Basic charts, card layouts, simple filters Complex DAX measures, row-level security Verify numbers against source data manuallyImproving — DAX coverage is widening
    User interface text/labels Button labels, headers, help text Context-sensitive error messages, domain-specific jargon Have an actual user read every messageStable — domain jargon still needs human review
    @@ -780,8 +857,13 @@

    Frontier Map Completion Criteria

    Your frontier map should have at least 5 task types relevant to your role. Each cell should contain a specific example, not just “yes” or “no.” For example, instead of writing “handles well” - under AI Handles Well, write “Generates draft SOPs from bullet points - with correct formatting.” + under AI Handles Well, write “Generates draft SOPs from + bullet points with correct formatting.” +

    +

    + Use the Moving Frontier column to mark tasks that are weak today + but improving (revisit in 3-6 months) versus tasks that are stable + (verification approach is unlikely to change soon).

    @@ -807,16 +889,11 @@

    Before Advanced Workshop

    - -
    -

    Capstone Deliverable

    -
    -

    Working Tool Prototype

    -

    - Build one functional Power Platform tool that solves a real problem identified - in your Problem Definition. Document the build process in your Development - Journal with at least 3 session entries. -

    + +
    +
    +

    What's next: Course 4 — Advanced Workshop

    +

    You've built three tools across two patterns. Advanced Workshop takes you from individual builder to organizational capability — frontier mapping for your domain, complex multi-component builds, group debugging, and teaching others.

    @@ -826,6 +903,9 @@

    Knowledge Check

    Knowledge Check

    +
    + Module 1: Setup and Review (3 questions) +

    You need to build a leave tracking system that involves specific regulations, approval chains, and date calculations. Which work pattern is most appropriate and why?

    @@ -904,6 +984,11 @@

    Knowledge Check

    +
    + +
    + Module 2: Build #1 — Centaur (3 questions) +

    In the centaur pattern for Build #1, why is it critical that the human completes the whiteboard planning phase before involving AI?

    @@ -982,6 +1067,11 @@

    Knowledge Check

    +
    + +
    + Module 3: Reflection (3 questions) +

    What is the most common type of error AI makes when building Power Automate flows?

    @@ -1060,6 +1150,11 @@

    Knowledge Check

    +
    + +
    + Module 4: Build #2 — Cyborg (3 questions) +

    Build #2 (Training Tracker) uses cyborg mode instead of centaur mode. What is the fundamental difference in how you discover requirements?

    @@ -1138,6 +1233,11 @@

    Knowledge Check

    +
    + +
    + Module 5: Build #3 — Your Problem (3 questions) +

    Before starting Build #3, the course requires you to answer three specific questions. What is the purpose of answering "Where do you expect frontier issues?" before writing any prompts?

    @@ -1216,6 +1316,11 @@

    Knowledge Check

    +
    + +
    + Module 6: Frontier Map (3 questions) +

    A frontier map documents what AI can and cannot do for your use cases. Why is specificity important when filling in the "AI Handles Poorly" column?

    @@ -1294,6 +1399,8 @@

    Knowledge Check

    +
    + @@ -1379,7 +1486,7 @@

    Course Complete!

    diff --git a/docs/courses/supervisor.html b/docs/courses/supervisor.html index 43b09f4..a0129d2 100644 --- a/docs/courses/supervisor.html +++ b/docs/courses/supervisor.html @@ -70,6 +70,15 @@

    Course 5: Supervisor Orientation

    30 Minutes Leadership + +

    + Teams-ready — supports both the 30-minute supervisor briefing and the extended joint session with builders. +

    @@ -170,6 +179,16 @@

    Module 1: Why This Matters Now 5 min

    AI is a SITREP item. Not optional anymore.

    + +
    +

    Facilitator Note

    +

    + Timing: this is the credibility-building module. If you can't speak to MARADMIN + 018/26 directly, defer to Approved Tools and frame it as + “official guidance, not your opinion.” Watch for: pushback on + “why us first?” — answer is operational tempo, not just policy. +

    +
    @@ -303,14 +322,18 @@

    Supervisors Must Ensure AI Augments, Not Replaces, Development

    Your role is to ensure the former, prevent the latter.

    -

    Three Supervision Checks

    +

    Three Supervision Checks + One Hard Floor

    +

    + The first three checks are evaluative — they help you assess whether a Marine + is being augmented or replaced. The hard floor below is non-negotiable. +

    • Can the Marine explain the output without referencing AI? If they can't walk you through the logic, they didn't learn — they copied.
    • Require periodic tasks to be completed without AI. Preserve baseline competency. If the tool disappears, can they still operate?
    • Use AI output as a teaching tool. “Is this correct? How would you verify it? What would happen if this number was wrong?”
    -

    Developmental Assignments Are Non-Negotiable

    +

    The Hard Floor: Developmental Assignments Are Non-Negotiable

    Certain tasks exist to build judgment, not just complete work. Writing after-action reviews, analyzing lessons learned, drafting initial counseling statements — these @@ -321,11 +344,22 @@

    Developmental Assignments Are Non-Negotiable

    Goal: AI-augmented Marines, not AI-dependent ones.

    + +
    +

    Facilitator Note

    +

    + Timing: 4-5 min. Failure mode: leaders treat “permission culture” as + “lower the bar.” Push back: permission culture means giving Marines + the same tool access their civilian peers have, with the same accountability. + Discussion prompt: “Has any Marine in your section asked permission to use + AI? What did you say?” +

    +
    - +
    -

    Supervisor Quick Reference 5 min

    +

    Module 5: Quick Reference & Wrap-Up 5 min

    This is a reference card supervisors can screenshot, print, or save. Use it as a @@ -335,11 +369,12 @@

    Supervisor Quick Reference 5 min

    Supervisor Quick Reference: AI-Assisted Work

    -

    3 Questions to Ask Before Approving AI-Assisted Work

    +

    4 Questions to Ask Before Approving AI-Assisted Work

      -
    1. Can you demonstrate it working? Live demo with real inputs.
    2. -
    3. How did you verify accuracy? Specific checks, not general trust.
    4. -
    5. Who reviewed this? Peer review, SME review, security review per SOP.
    6. +
    7. Does it work? (Run it / read it / use it.)
    8. +
    9. Is it accurate? (Spot-check facts, citations, numbers.)
    10. +
    11. Does it follow SOP? (Format, voice, references.)
    12. +
    13. Does it save time? (If not, ask the Marine to show their workflow.)

    3 Signs of Healthy AI Use

    @@ -362,19 +397,11 @@

    3 Warning Signs of Unhealthy AI Use

    Tools Your Marines Will Use

    - GenAI.mil is the Marine Corps enterprise AI platform per - MARADMIN 018/26. It is IL5-authorized for CUI and should be the default - tool for all AI-assisted work on DoD networks. CamoGPT - (Army-managed) provides supplementary capabilities including API access - and IL6/SIPR support. Commercial tools (ChatGPT, Gemini via their websites) are approved for unclassified work only. ChatGPT, Gemini, and Grok are also available on GenAI.mil. - PII must be anonymized on all AI platforms unless a PIA authorizes it. See the - Approved Tools page for the full list. + Default platform is GenAI.mil (IL5/CUI). See + Approved Tools for the full list and constraints.

    -
    - -

    Closing

    @@ -383,6 +410,17 @@

    Closing

    and measurable productivity gains is your permission. Give it.

    + +
    +

    Facilitator Note

    +

    + Timing: 5 min hard stop. End with the close paragraph (verbatim): + “The only thing between your section and measurable productivity gains is + your permission. Give it.” Don't dilute. If supervisors push back on closing + tone, redirect: “You don't have to do this — but if you don't, your + peer command across the bay will, and they'll be 30% faster within a quarter.” +

    +
    @@ -587,15 +625,15 @@

    Knowledge Check

    -
    -

    According to the supervisor quick reference, what are the three questions to ask before approving AI-assisted work?

    +
    +

    When approving AI-assisted work, which of these is NOT one of the four evaluation questions a supervisor should ask?

    - - - - + + + +
    - +
    @@ -668,7 +706,7 @@

    Course Complete!

    diff --git a/docs/css/style.css b/docs/css/style.css index 6d32552..d0c7231 100644 --- a/docs/css/style.css +++ b/docs/css/style.css @@ -773,6 +773,9 @@ kbd { } .card__footer { + display: flex; + flex-wrap: wrap; + gap: var(--space-sm); margin-top: var(--space-lg); padding-top: var(--space-md); border-top: 1px solid var(--color-border-light); @@ -1863,6 +1866,12 @@ legend { max-width: 65ch; } +.page-header__actions { + display: flex; + flex-wrap: wrap; + gap: var(--space-sm); +} + /* Breadcrumb navigation */ .breadcrumb { display: flex; diff --git a/docs/curriculum-audit.md b/docs/curriculum-audit.md new file mode 100644 index 0000000..ac8ed01 --- /dev/null +++ b/docs/curriculum-audit.md @@ -0,0 +1,211 @@ +# EDD Curriculum Quality Audit + +**Date:** 29 April 2026 +**Scope:** `TRAINING_CURRICULA_v5.md` (master), six instructor course pages in `docs/courses/`, five student companion pages in `docs/courses/student/`, plus the supporting plumbing (`certificate.html`, `progress.html`, `sop/index.html`, `js/`, `templates/`). +**Method:** Structured walkthrough of every page; rubric scoring against eight dimensions; cross-link / progress-tracking / JS-integration check; reconciliation of doctrine drift between the master markdown and the live site. + +Severity legend: **[BLOCKER]** ships-stopper, **[MAJOR]** must-fix before deck production, **[MINOR]** quality issue worth fixing this pass, **[NIT]** stylistic / future polish. + +--- + +## Ship List (top of doc) + +These are the items that were applied in this audit pass before the six downstream deck tasks proceed: + +1. **[BLOCKER] Broken prerequisite link.** `docs/courses/orientation.html:73` linked to a non-existent `fundamentals.html`. Course 1's actual file is `ai-fluency.html`. Any user clicking the prerequisite link from the Builder Orientation page received a 404. **Fixed.** +2. **[BLOCKER] Course 6 missing from progress + certificate machinery.** `progress.html` and `certificate.html` both hard-coded a five-course `COURSES` array. Students who completed `student/fullstack.html` had no way to see their progress or generate a certificate. The credential pathway diagram on `progress.html` also stopped at Course 4. **Fixed** (Course 6 added to both arrays; the pathway now extends through Full-Stack as a Bonus capstone). +3. **[BLOCKER] Student Full-Stack page had no completion checklist.** Every other student companion (`ai-fluency`, `orientation`, `platform`, `advanced`) carried both a `course-checklist` and a `knowledge-check` block. `student/fullstack.html` shipped only the JS includes — there was nothing for the checklist or quiz engines to bind to, so the course could never be marked complete and never produced a certificate. **Fixed** (added a 10-item completion checklist mirrored to the course's modules + a 6-question end-of-course knowledge check covering the Six Principles and the Cyborg pattern). +4. **[MAJOR] v5 master doc says "Five Courses"; site has six.** `TRAINING_CURRICULA_v5.md` and `docs/sop/index.html` both describe the program as five courses, but the live site adds Course 6: Full-Stack AI-Assisted Development as a Bonus capstone. **Reconciled** — see *Reconciliation* section below; the master MD now carries a v5.1 history entry that explicitly records Course 6 as a Bonus addition, headline counts updated, and the SOP page section 8 updated to "six courses (five core plus one Bonus capstone)." +5. **[MAJOR] SOP section 8 referenced a now-stale course count.** `docs/sop/index.html:1078` said *"five courses organized by audience and prerequisite chain."* **Fixed** to reflect the six-course structure with Course 6 as a Bonus capstone. + +Items deferred (out of scope for this task / queued for follow-up): + +- Regenerating the LaTeX/PDF artifacts in `docs/pdf/` to match the markdown change (`TRAINING_CURRICULA_v5.tex`, `SOP_Expert_Driven_Development_v5.tex`, `EDD_Executive_Brief.tex`, `EDD_RAI_Compliance_Brief.tex`). These are downstream artifacts and the source-of-truth `.md` is now correct. +- Building a Supervisor student companion (`student/supervisor.html`). Today the supervisor course exists only as a 30-minute instructor brief and is taken live; the audit treats this as an intentional design decision and not a defect, but flags it for future consideration. +- Adding instructor-side knowledge checks to `ai-fluency.html`, `orientation.html`, `platform.html`, `advanced.html`, and `fullstack.html`. The instructor pages currently rely on Exit Tickets (paper) and live build checkpoints; only `supervisor.html` has live KCs. This is a coherent design choice (instructor pages are scripts; student pages carry the auto-graded checks) and not a defect. + +--- + +## Reconciliation: "Five Courses" (v5 markdown) vs. Six Courses (site) + +The v5 master markdown describes the program as five courses (lines 6, 8, 118, 122, 661, 679, etc.). It was published February 2026. The live site adds a sixth course — Full-Stack AI-Assisted Development — as a Bonus capstone behind the four-course Builder Path. Course 6 is not a replacement for Course 4; it is an elective beyond it for builders whose problems exceed the Power Platform envelope. + +**Decision (this audit):** rather than remove Course 6 from the site or freeze the master MD, the master doc is updated to acknowledge Course 6 as a v5.1 Bonus addition. Specifically: + +- The "Five Courses, One Goal" section becomes "Six Courses, One Goal" with a brief Bonus row added to the table. +- Body copy that introduces the program is updated from "five courses" to "six courses" (or "five core courses plus one Bonus capstone" where the distinction matters). +- A new v5.1 row is appended to the Document History table explaining the Bonus addition. +- The full Course 6 syllabus remains on the site (`docs/courses/fullstack.html` and `docs/courses/student/fullstack.html`) — it is not duplicated into the master MD because the per-module instructor script is large and lives more naturally on the web. The MD's table-level summary is sufficient. +- The PDFs in `docs/pdf/` are out of scope for this task and remain at v5.0; they are downstream artifacts and will be regenerated separately. + +This keeps the master MD authoritative on framework and counts, while letting the site carry the expanded capstone material. + +--- + +## Cross-cutting findings + +| # | Severity | Finding | Disposition | +|---|----------|---------|-------------| +| C1 | BLOCKER | `orientation.html:73` → `fundamentals.html` (404) | Fixed → `ai-fluency.html` | +| C2 | BLOCKER | `progress.html` `COURSES` array missing `fullstack-student` | Fixed (added entry, pathway extended) | +| C3 | BLOCKER | `certificate.html` `COURSES` array missing `fullstack-student` | Fixed (added entry) | +| C4 | BLOCKER | `student/fullstack.html` had no checklist or KC despite loading the JS | Fixed (added both) | +| C5 | MAJOR | Master MD says "Five Courses" throughout | Fixed (count updated, history entry added) | +| C6 | MAJOR | SOP page section 8 says "five courses" | Fixed | +| C7 | MINOR | Bonus PDFs (`docs/pdf/*.tex`) still say "five courses" | Deferred — regenerable artifact, out of scope | +| C8 | MINOR | No `student/supervisor.html` companion exists | Intentional — supervisor course is a 30-min live brief; flagged for future | +| C9 | MINOR | `templates/` directory exists but the prior explore mistakenly reported it empty — five MD templates are in fact present (`development-journal`, `documentation-package-outline`, `problem-definition`, `qa-checklist`, `tool-registry-entry`). They are referenced from course bodies but not surfaced by `resources/templates.html`. | No change this pass; the templates exist and are correct. Surfacing is a separate UX item. | +| C10 | NIT | `data-correct` attributes are scrubbed at runtime by `knowledge-check.js`, but the source is still readable to anyone who opens View Source. The JS file documents this as an accepted limitation and the 80% pass threshold + 2-minute submission gate + cooldown raise the bar above casual cheating. No action. | Documented | +| C11 | NIT | `student/orientation.html:717` and `:722` link to `platform.html` and `advanced.html` from inside the `student/` directory — these are correct relative paths to the student companions, but a reader scanning the source might misread the target. Adding `student/` prefixes would make intent explicit. No action this pass. | Documented | + +--- + +## Per-course rubric + +Each course is scored on eight dimensions. Pass = meets bar for the audience and stage of the EDD program. Issues are tagged with severity. + +### Course 1 — AI Fluency Fundamentals (`ai-fluency.html` + `student/ai-fluency.html`) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | Six 201 skills, jagged frontier, centaur/cyborg, quality judgment — clearly stated up front, audience explicit ("all personnel"), no tool-building scope creep. | +| Structure & timing | Pass | 2 hours, six modules, agenda table on instructor page mirrors the v5 master. Module timings sum correctly. | +| Pedagogy | Pass | Red Pen Review (Module 4) is the keystone exercise and is preserved on both instructor and student pages. Mollick delegation equation introduced in Module 3. Centaur/cyborg in Module 5. | +| Accuracy | Pass | Research citations (Microsoft 80%, Dell'Acqua/BCG, Stanford/MIT, GDPval, UK Government, Mollick) match Appendix E of v5 master. DoW context (MARADMIN 018/26-style framing, January 2026 AI Strategy) consistent with master. | +| Audience fit | Pass | Instructor page has Say:/Ask:/Instructor note: blocks; student companion paraphrases without those scaffolds. Tone is plain-language, no jargon dropped without definition. | +| Assessments | Pass | Instructor: paper Exit Ticket (3 questions). Student: 18-question knowledge check across all six modules + 80% pass threshold. | +| Accessibility | Pass | Skip-link present, ARIA labels on nav, semantic headings, table captions where needed, contrast meets the site's overall design tokens. | +| Continuity | Pass | Closes with explicit handoff to Builder Orientation; references the same six-skill vocabulary used downstream. | + +No blocker/major findings for Course 1. + +### Course 2 — Builder Orientation (`orientation.html` + `student/orientation.html`) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | "Move from user to builder" — clear, narrow, aligned with v5 master. | +| Structure & timing | Pass | 2 hours, five modules, buffer included, totals 120 min. Mirrors master. | +| Pedagogy | Pass | Live Equipment Tracker build (Module 2) + student build with peer review (Module 3) + decomposition framework (Module 4). The decomposition module is correctly identified as the make-or-break moment. | +| Accuracy | Pass | Build steps and prompt examples match what the platform actually produces; no fabricated capabilities. | +| Audience fit | Pass | Instructor page is heavy on "circulate, do not solve" guidance. Student companion is rewritten for self-paced reading. | +| Assessments | Pass on student side (15-question KC across five modules); instructor side relies on the live build itself as assessment. | +| Accessibility | Pass | Same baseline as Course 1. | +| Continuity | **[BLOCKER → Fixed]** | The Prerequisite link at line 73 pointed to `fundamentals.html`, which does not exist. Now points to `ai-fluency.html`. | + +### Course 3 — Platform Training (`platform.html` + `student/platform.html`) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | Hands-on Power Platform: SharePoint list, Power App, Power Automate flow. Three guided builds. | +| Structure & timing | Pass | The agenda is large (2,028 lines on the instructor page) but each module has explicit duration and the timings are consistent. | +| Pedagogy | Pass | Build #1 walked, Build #2 paired, Build #3 independent — classic I/We/You progression. The frontier-map update at the end is real deliverable, not busywork. | +| Accuracy | Pass | Step-by-step Power Platform UI references match current Microsoft naming as of the doc date. The validation logic example for the Leave Request form (boundary condition at exactly $500 / exactly the policy threshold) is a genuinely useful real-world bug class. | +| Audience fit | Pass | Instructor page contains screenshots and Say:/Ask: blocks; student page is self-paced. Both clearly assume Course 1 and 2 are complete. | +| Assessments | Pass | Student page carries an 18-question KC plus a completion checklist; instructor page uses build checkpoints. | +| Accessibility | Pass | Tables have headers, code blocks have copy buttons, images have alt text. | +| Continuity | Pass | Hands off cleanly to Advanced Workshop; references the same six 201 skills. | + +### Course 4 — Advanced Workshop (`advanced.html` + `student/advanced.html`) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | Move from individual to organizational capability. Frontier maps + workflow playbooks as deliverables (matches v5 master Appendix D template). | +| Structure & timing | Pass | 4 hours, six modules, break in the middle. Timings consistent. | +| Pedagogy | Pass | Timed QA review with five planted errors (fabricated reference, inconsistent timeline, bad numbers, etc.) is a strong calibration exercise. The 60-Second Teach exercise correctly used to identify future instructors. | +| Accuracy | Pass | Apprentice Problem statistics (entry-level postings down 35%, ages 22–25 down 13%) match the v5 master's Appendix E. | +| Audience fit | Pass | Explicitly requires at least one deployed tool; assumes section-leader-grade audience. | +| Assessments | Pass | Student page carries a 15-question KC + capstone (workflow playbook deliverable). | +| Accessibility | Pass | Same baseline. | +| Continuity | Pass | Sets up Course 6 as the optional next step for builders whose problems exceed Power Platform. | + +### Course 5 — Supervisor Orientation (`supervisor.html`, no student companion) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | Permission culture, evaluation framework, apprentice problem. The "highest-leverage 30 minutes" framing is preserved. | +| Structure & timing | Pass | Five modules totalling 30 minutes. | +| Pedagogy | Pass | Each module has a knowledge check (3 questions × 5 modules = 15 KC questions), unique among the instructor pages. The four evaluation questions are stated cleanly and are usable in the field. | +| Accuracy | Pass | Mollick "permission gap," DoW AI Strategy framing, Microsoft 80%, UK 25-min/day all consistent with master. | +| Audience fit | Pass | Tone is direct, supervisor-grade, no scaffolding. The "default answer should be yes, with appropriate review" line is the operative takeaway. | +| Assessments | Pass | Inline KCs replace a separate companion. | +| Accessibility | Pass | Same baseline. | +| Continuity | **[MINOR — flagged]** | No `student/supervisor.html` companion. Treated as intentional (the course is a 30-minute live brief) but worth a future consideration if supervisors ask for a self-paced version. | + +### Course 6 — Full-Stack AI-Assisted Development (`fullstack.html` + `student/fullstack.html`) + +| Dimension | Score | Notes | +|---|---|---| +| Objectives | Pass | "Direct AI to write code for you, verify, iterate." Six Principles enumerated (Conversation is the IDE, Scaffold→Flesh Out→Integrate, 3-Minute Rule, Incremental Deployment, Interface-First, plus the sixth in body). | +| Structure & timing | Pass | 8 hours, ten modules + assessment. Heavy course but the agenda is segmented and each module is self-contained. | +| Pedagogy | Pass | Builds an actual deployable Go + React + Docker app (Heywood TBS exemplar). The 3-Minute Rule is a useful guardrail against premature manual debugging of AI code. | +| Accuracy | Pass | Code examples are realistic; no claims about AI capability that exceed what current frontier models can do; the cloud-deployment path (Azure Container Apps) is tractable. | +| Audience fit | Pass | Explicitly Bonus / Elective; prerequisites include Advanced Workshop and at least one deployed tool. Reader is assumed to be already builder-fluent. | +| Assessments | **[BLOCKER → Fixed]** | The student page loaded `knowledge-check.js` and `course-progress.js` but had no checklist and no quiz block to bind to. Course was un-completable. **Fixed:** added a 10-item completion checklist (one item per module + capstone) and a 6-question Knowledge Check covering the Six Principles, the 3-Minute Rule, the Cyborg pattern at full-stack scale, and the deployment philosophy. | +| Accessibility | Pass | Same baseline; new KC and checklist follow the same pattern as the other student pages and inherit the same ARIA semantics. | +| Continuity | **[BLOCKER → Fixed]** | Course was structurally absent from `progress.html` and `certificate.html`. **Fixed:** Course 6 added to both `COURSES` arrays and to the credential pathway diagram. | + +--- + +## Plumbing audit (cross-page) + +### Knowledge-check JS (`docs/js/knowledge-check.js`) + +- 80% pass threshold, 2-minute minimum-time gate, 30-second cooldown after a failed attempt, attempt history persisted under `edd_kc_attempts_{courseId}`. +- Anti-cheat: correct-answer indices are read from the DOM at init then `removeAttribute('data-correct')` is called; feedback HTML is captured and blanked until submission. Documented limitation: View Source still exposes answers. +- Dispatches a `edd-kc-pass` `CustomEvent` on success — used by `course-progress.js` to auto-tick the "Knowledge Check" checklist row. +- **No issues.** + +### Course-progress JS (`docs/js/course-progress.js`) + +- Reads `.course-checklist[data-course="..."]` blocks; persists state to `edd_checklist_{courseId}` as `{moduleId: bool}`. +- Auto-checks modules via `IntersectionObserver` as the user scrolls past — useful but not authoritative; final state always requires user action on the checkbox. +- Renders a progress bar and reveals the "Course Complete" callout when all items are checked. +- **No issues.** + +### Certificate page (`docs/courses/certificate.html`) + +- Hard-coded `COURSES` array. **[BLOCKER → Fixed]** Added `fullstack-student`. +- Generates a deterministic certificate ID (DJB2 hash of name + course + date), prints landscape letter, includes MCD-Monterey footer. +- **No remaining issues.** + +### Progress dashboard (`docs/courses/progress.html`) + +- Hard-coded `COURSES` array. **[BLOCKER → Fixed]** Added `fullstack-student` as Course 6. +- Pathway diagram. **[BLOCKER → Fixed]** Extended to include Course 6 as a Bonus branch off Advanced Workshop. +- Aggregates best KC score per course; exports a plain-text training record. +- **No remaining issues.** + +### Templates (`docs/templates/`) + +Five MD templates, all referenced from course bodies: + +- `development-journal.md` — running notes for builds. +- `documentation-package-outline.md` — what a final tool documentation package looks like. +- `problem-definition.md` — pre-build problem framing. +- `qa-checklist.md` — used in Advanced Workshop Module 3. +- `tool-registry-entry.md` — for publishing tools to the registry. + +Templates are content-correct and cited from the courses; no defects this pass. + +### User identity JS (`docs/js/user-identity.js`) + +- Stores `edd_user` in localStorage; offers a clear-profile control that nukes `edd_user`, all `edd_checklist_*`, and all `edd_kc_*` keys with explicit confirmation. +- **No issues.** + +### Enhancements JS (`docs/js/enhancements.js`) + +- Back-to-top, reading progress bar, copy buttons on code/prompt blocks. **No issues.** + +--- + +## Verification (post-fix) + +After applying the blocker/major fixes: + +- All inter-course links resolve (no remaining references to a nonexistent `fundamentals.html`). +- `progress.html` and `certificate.html` recognize all six courses. +- `student/fullstack.html` is now structurally complete (checklist + KC), so a student can finish Course 6 and pull a certificate. +- The master MD and SOP page agree with the site on the course count. +- The site continues to serve cleanly via the Replit workflow on port 5000; no regressions observed in `knowledge-check.js`, `course-progress.js`, or `certificate.html` JS. + +The six downstream deck tasks can proceed. diff --git a/docs/decks/DESIGN.md b/docs/decks/DESIGN.md new file mode 100644 index 0000000..b5ce320 --- /dev/null +++ b/docs/decks/DESIGN.md @@ -0,0 +1,380 @@ +# EDD Weekly Deck — Design System + +This note documents the shared visual identity for the six instructor-led +weekly decks (Course 1 through Course 6). Week 1 (`week-1-ai-fluency.html`) +establishes the system; Weeks 2–6 inherit it by linking the same +`css/deck.css` and `js/deck.js` and reusing the layouts described below. + +The system was deliberately built to match the Expert-Driven Development +site (`docs/css/style.css`) so the decks feel native to the program. + +--- + +## Use case — what the decks have to survive + +- **Microsoft Teams screen-share at 1080p.** The presenter shares the + browser window in full-screen. Slides must be legible to viewers + watching on a 13" laptop with mediocre Teams compression. +- **Live click-through, presenter narrates.** The slides carry visuals + and structure; the presenter carries the narration. Speaker notes are + in `