Same three builds. Same centaur and cyborg patterns. Different execution layer. When the tenant is locked, we still ship working tools by Monday using static HTML and free public hosting that reaches MCEN.
Class Links · share-in-chat URLs for this deck →
Student Handout · one-page fill-in for live use →
OpenWelcome the room. Confirm everyone has a laptop, a text editor, a signed-in browser at github.com, and a working genai.mil session. Today is the longest session in the program: four hours, three live builds, two artifacts.
Tone: this is the working session under realistic constraints. Builder Orientation was the on-ramp. Course 3 was the Power Platform path. Today is the path that does not need a tenant we have not been granted.
Opening lineRead the line from the course page out loud: "Today we design the tools our units need, build everything we can right here, and clearly mark where we hit the wall. That wall map becomes the case for changing what we have access to."
LogisticsTell the room how to follow along, where the bathroom is, and that they can press N on a presenter laptop to pull up speaker notes if co-presenting.
RecapTwo weeks ago you learned the management skills. Last week you turned them into a build. Today you do it three times in a row, on a stack you can actually deploy from your duty workstation.
Ask quickly: "Show of hands: who has a GitHub account already?" If most hands are up, great. If few, signal that the first fifteen minutes covers GitHub Pages setup and we will move together.
Pivot"Everything we do today is the same skill set, applied to a different execution layer. Centaur, cyborg, frontier recognition: we exercise all of it. The difference is we deploy to a URL Marines can actually open, on a host MCEN can actually reach."
StakesMake it concrete. By the time we wrap, every Marine in this room has a public URL for each build and a Capability Gap Map row that names a specific tenant constraint with beneficiary count and time savings.
Reinforce the through-line: Build #1 forces structure. Build #2 forces fluidity. Build #3 forces you to choose. Both artifacts force you to name what works and what blocks the work.
Watch the roomIf anyone looks anxious about the pace or the unfamiliar stack, name it: "You don't need to be a web developer. You need to be able to copy a single file and click two buttons in GitHub. We'll do both together in the first fifteen minutes."
PaceWalk the timeline once, top to bottom. Don't dwell. The point is that they see the rhythm: setup, build, debrief, break, build, debrief, break, build, debrief, map.
Call out the wrap explicitly: "The last twenty minutes are not slack. We produce two artifacts in that block. The Frontier Map is for us. The Capability Gap Map is for HQMC."
BufferThe course budget is 3h50m of instruction inside the 4-hour block. Don't say "we have buffer." Say "we'll move." Use the buffer privately if a build runs over.
genai.mil. Think, design, prompt, decompose.
Always available.
Single-file static HTML. Deployed to a free public host MCEN can reach.
Always available.
Power Apps, Dataverse, Power Automate, real connectors, identity.
Often blocked. The wishlist layer.
FrameRead the three columns left to right. Land the thesis: "We work every layer we can reach. We document the wall where the work stops. The wall map becomes the case for changing what we have access to."
AnchorEvery build today produces two things. A working tool on the Prototype layer, and a row on the Capability Gap Map that names the Production layer wish and the specific permission that blocks it. Both are the product.
Common confusionIf anyone asks "why not just teach the Power Platform path?", answer plainly: many of us cannot get Power Platform access in our current tenant, and the courses that pretend otherwise burn class time on tools nobody can deploy. This course works whether the tenant is locked or open. Skills carry both ways.
SectionBrief stop. The goal of this module is single-purpose: confirm everybody has genai.mil, a text editor, a GitHub account, and can reach github.io from this network. If we discover a hosting problem during Build #1, we lose twenty minutes recovering. We discover it now.
Run the checkHave everyone open the reference build URL right now from their duty workstation. If it loads, they're good on hosting. If it doesn't, capture which URL pattern blocked and move them to local-file mode for the rest of the session.
Triage in this order: (1) genai.mil sign-in failure → IT support, (2) no GitHub account → walk through sign-up at github.com in 90 seconds, (3) github.io blocked → fallback to local file:// and add a Capability Gap Map row.
Time checkSpend at most 10 minutes here. Anyone fully blocked gets paired with a working partner for Build #1 and works the access issue in the background.
github.com. Name it after your tool. Public..html file onto the empty repo. GitHub commits it.main branch, root. Save.https://<user>.github.io/<repo>/<file>.html.See the Static Hosting Cheat Sheet for the full host menu with MCEN-reachability tiers.
Walk itDemo on screen. Create a placeholder repo with a one-line hello.html. Show every click. Show the Settings → Pages dialog. Watch the URL go live in real time.
The whole point: this is not a developer workflow. It is a copy-and-click workflow. Anyone in the room who can attach a file to an email can deploy.
If hosting is blockedSome networks block github.io. Have students try the alternate Tier 1 hosts from the cheat sheet (GitLab Pages, Cloudflare Pages, Azure Static Web Apps). At least one will load. Whatever loads becomes today's host. The pattern is identical across hosts.
Land the strategic note"You're learning the pattern, not the host. The skill is portable. The host name changes by base or network. The skill stays."
Clear phases. Human designs and verifies. AI executes between checkpoints.
Continuous back-and-forth. Boundary between human and AI work stays fluid.
RefreshOne-minute review. We're not relearning this. We're calibrating the room before we apply it twice.
Ask two or three students: "Last week's assignment: what mode did you use, and did it fit the problem?" Use one short answer to land that mode-choice is itself a 201 skill.
AnchorToday: Build #1 forces centaur. Build #2 forces cyborg. Build #3 you choose. By the end you'll have lived in both.
AnchorOne tool today: genai.mil. The Course 3 path mentioned multiple tools but the consolidation simplified it. We use one. We get good at it.
Reinforce the public-URL gotcha. CUI-level unit context is OK in your genai.mil prompts. But the prototype you push to github.io is world-readable. Build with fictional names and dates. Production layer is where the real data lives, and the real data needs the real connectors.
TipIf a prompt response is wrong on the first pass, paste your current file or its broken section back to genai.mil and describe what is failing. Specificity beats re-prompting.
SectionHard pivot into the first build. Energy up. From here until 1:20, we're heads-down on a real tool that section leaders will use tomorrow.
Frame the centaur pattern out loud one more time: "You design. AI builds. You verify. AI refines. You accept. At every boundary, you check before you cross."
Section leader's recurring Tuesday-afternoon problem. Excel and an email chain today. MOL doesn't solve it. Rotation through the available roster, skip anyone on leave, fairness check, prints clean, copies clean into Outlook. Single HTML file. Deployed to a public URL by the end of the block.
FrameRead all three boxes aloud. The point of this slide is that everyone in the room can repeat back: what we're building, why centaur fits, and what done looks like.
If a student can't repeat those three things, they're not ready to start. Pause and re-frame.
Anti-pattern to call out"Don't open your editor yet. We design first. The single biggest failure mode in centaur is starting to type HTML before the rules are written down."
Reference buildPoint them to builds/watch-bill.html. It is the destination. Use it to check your work, not to copy-paste from.
Define every input, every rule, every output, every edge case. On paper or a whiteboard. The quality of your design decides the quality of the final tool.
LV / TAD / APPT, fairness checkCueStop clicking. Pick up a marker. Have students whiteboard or paper-write the five sections above for fifteen minutes, alone or in pairs. No AI, no editor. Just rules.
Walk the room. Look for two failure modes: (1) someone has skipped straight to typing HTML, and (2) someone has written "rotate the Marines" and called it a rule. Push back: "What about a Marine on leave? What if everyone is on leave? What does fair mean when the period doesn't divide evenly?"
Sample answersIf someone is stuck, share the canonical answers from the course page: rotate available roster in order, skip suffix - LV/TAD/APPT/MED/PCS, fairness spread of 0 or 1 across the period, empty roster errors, all-unavailable errors. But make them write it themselves.
Bridge"Once your rules are on the board, you're ready to feed them to AI. Next slide is your switch cue."
We leave the deck for the next ~40 minutes. I'll walk the canonical prompt sequence on the projector. Hand off the AI's full HTML response, save as watch-bill.html, test, refine, deploy.
SwitchStop advancing slides. Switch your screen-share to a side-by-side of genai.mil and your editor. From here you teach live. Walk through the four phases with the room building alongside you.
Order of operations on screen:
1. Paste your Phase 1 plan into genai.mil as one prompt. Demand a single file, inline CSS, inline JS, no external dependencies. 2. Save the AI's full response as watch-bill.html. Open in browser. 3. Run the six edge cases out loud: empty roster, all on leave, days=0, days=400, single available Marine over 14 days, copy-to-Outlook test. 4. Targeted fix prompt for whatever broke. Paste only the changed lines back. 5. Deploy to github.io.
Mid-build check at Phase 3Pause and ask: "Which edge case did the AI's first pass forget?" Take two or three answers. Don't move on without one.
Time disciplineIf a student is past 50 minutes into this build, skip Phase 5 deployment and have them work from file:// for the rest of the session. They deploy as homework.
When it worksHave students share their github.io URL with the Marine next to them. The partner opens it on their phone. Watch their face. Note any friction.
DebriefThree short questions, one minute each. Take quick verbal answers. No slides, no prompts, no "let me think."
1. "Which edge case did your AI's first pass forget?"
2. "What did the whiteboard catch that the AI didn't?"
3. "Where would your tool be right now if you'd skipped Phase 1?"
Land the point"This is what centaur buys you. Slow at the front, sturdy at the back. Now we go to break, and during the break we share what AI got wrong."
SetupFrame this carefully before the break. "This is one of the most important ten minutes in the program. We're going to share what AI got wrong in Build #1, and how we caught it. No grades. No judgment. Every failure case you share saves someone else an hour of confusion."
Lead by sharing your own AI failure first. Be specific: a missing edge case, a print layout that promised to be clean but wasn't, a copy-to-clipboard that worked in Chrome but not Edge. Set the tone that experienced builders fail too.
Move to the quiet layout next slide. Encourage people to grab coffee, then come back to share.
Share one specific failure case. Skip the framing · we already know the build. Tell us what you saw and how you fixed it.
Run the discussionStand back. Let the room talk. Aim for at least three people sharing. Start with anyone who's already volunteered, then specifically invite a quieter participant.
Capture failure cases on a whiteboard or shared doc as people share. Group them by type: "AI missed an edge case", "AI's print CSS didn't actually print clean", "AI's clipboard fallback was Chrome-only". The grouping is the start of the unit's frontier map. We come back to this list in Module 6.
Psychological safetyIf the room is quiet, don't fill the silence. Re-prompt with: "What's the dumbest thing AI did to you in the last hour? Bonus points for embarrassing." A laugh usually opens it up.
EndAt the 8-minute mark, name two patterns you heard, then move to the break splash.
BreakTwo minutes of true downtime after failure sharing. Project the time on the wall clock. Reset your own screen-share to a fresh genai.mil conversation. Build #2 starts fast and runs hot.
SectionEnergy back up. We're shifting modes deliberately. Where Build #1 made you wait at every checkpoint, Build #2 wants you in continuous conversation. You'll feel the difference in the first ten minutes.
The TEEP lives in a Word doc, an Excel sheet, and a whiteboard. None of them talk. Build a TEEP tool in the browser that persists, color-codes status, and produces a current S-3 brief paragraph on demand. You'll restructure something at least once during the build. That is the lesson.
FrameRead all three boxes. Emphasize that the restructure is intentional. Whatever the AI hands back first will not be the shape you ship. You'll discover that, throw it out, and rebuild. That's cyborg at full speed.
Calibration"In Build #1 you weren't allowed to touch the editor until the rules were written. In Build #2 you start typing prompts in 90 seconds. Notice how different that feels."
Reference buildPoint them to builds/teep.html. The reference is the destination. The path to it is messy on purpose.
No whiteboard. No outline. Tell the AI the rough need, evaluate what comes back, and redirect. The boundary stays fluid for the next ~50 minutes.
SwitchStop advancing slides. Switch your screen-share to your editor. Live-walk the five iterations from the course page:
1. Get something visible: bare CRUD with localStorage. 2. Realize you can't brief from it; ask for summary cards and T-X days. 3. Ask for color coding (THIS IS THE TRAP). 4. Fix the styling with CSS classes after students hit the wall. 5. Generate S-3 brief paragraph.
Deliberate failure at Iteration 3The AI's first conditional-styling answer will be wrong. Common modes: inline style.background that loses to CSS specificity, deprecated bgColor attributes, fake :contains() selectors, or loose-equality string compares that fall into wrong branches. Do not correct it. Let students fail. When hands go up, ask: "What did the AI tell you to do? What result did you get? What would you ask it to clarify?" This is frontier recognition in real time.
Mid-build check at Iteration 3Pause and ask: "How is this different from Build #1? What feels different about working with the AI?"
Time disciplineIf you're past 50 minutes, stop adding features. The core cyborg pattern is demonstrated by Iteration 4. Iteration 5 is enhancement.
DebriefThree quick questions:
1. "At what point did you realize the first styling approach wouldn't work?"
2. "How did Build #2 feel different from Build #1?"
3. "What's the one thing you'd do differently if you redid Build #2?"
Land the point"Cyborg is faster, but it's not safer. It works because you're paying attention every second. The minute you stop watching, it goes off the rails."
Hand off to the second break.
BreakReal break. Reset clocks, refill water, and quietly check in with anyone who fell behind during Build #2. Pair them with a working partner for Build #3 if needed.
Use this time to look around the room. Anyone visibly struggling? Anyone visibly bored? Calibrate Build #3 difficulty in your head before you start.
SectionTone shift. The first two builds were yours to run, but the rules were mine. This one is yours all the way down. Real problem. Real users. Your call on the mode.
Reinforce the data-handling reminder: real unit context is OK on genai.mil. PII gets anonymized. Public-URL files contain no CUI, no PII.
Before you open your editor, say what you're building, which mode you're using and why, and where you expect AI to struggle. If you can't name two specific frontier risks, you're not ready. Revise.
Run declarationsGo around the room. Each person gets 30 seconds. You assess in under a minute: is the scope realistic for 50 minutes, is the mode choice defensible, are the frontier risks specific?
Push back hard on vagueness. "Something to help with training" → revise. "AI might struggle" with no specifics → revise. The declaration is itself a 201 skill. The act of stating it sharpens the build.
Cue success criteriaFor each person: "What does done look like at 3:30?" If they can't say it, they don't have it.
I'll circulate. When you hit a block, ask me what you'd tell the AI · not how to fix it. Teaching you to debug with AI is more valuable than fixing it for you.
SwitchStop advancing slides. Switch to your editor and circulate the room. No live build on screen this time. The room is heads-down on their own work.
How to coachWhen a student hits a wall, resist the urge to give the answer. Instead ask: "What would you tell the AI about what's going wrong?" Then pause. Let them rephrase the prompt. The skill is the rephrasing.
Watch forStudents who haven't typed in 5 minutes (stuck, go help). Students who haven't paused to test in 20 minutes (going too fast, make them verify). Students who declared centaur but jumped straight to building (call it out).
Time disciplineAt 3:20, give a 10-minute warning. At 3:25, return everyone to the deck for debrief.
DebriefTwo-question rotation around the room. Each person answers one question from the left and one from the right. Keep it tight, 30 seconds per answer. We need to be at the wrap module by 3:30.
CaptureAs people speak, jot down failure cases on the same whiteboard you started during failure sharing. We're folding them into both maps next.
SectionFinal stretch. This block produces both artifacts that survive past today. Three tools end up on the floor when you leave. The maps go back to your section and up to HQMC.
@media print rules, hiding nav chromeWalk the mapRead the four columns out loud once, then walk the four pre-filled rows. Tell the room: "This is what an EDD frontier map looks like for the static-HTML stack. Four columns, one row per task type. The last row is what you're about to add."
Keep this slide up while students start drafting their own row on the next slide.
Walk the mapRead the columns. Walk the two example rows. Land the point: "This is the artifact that turns a single Marine asking for a connector into a policy case. Forty Marines naming the same blocked permission with beneficiary counts is what moves HQMC."
Open the live template on screen: resources/capability-gap-map.html. Show the full six-column version and the "What makes a strong row" comparison table.
ToneFrame the artifact as evidence, not complaint. Specific, named, defensible. Beneficiary counts. Time savings. The blocked permission named explicitly.
One row in your Frontier Map about a task type where AI surprised you today. One row in your Capability Gap Map naming the specific tenant permission that would 10x one of your builds.
WorktimeSet a literal ten-minute timer. Project the two reference slides on a side screen if you can. Students need to see the column headings while they write.
Walk the room. The most common failure mode is generic entries. "AI sometimes makes mistakes" is not a Frontier row. "Power Apps not allowed" is not a Capability Gap row. Push for specifics: which task type, which failure mode, which named permission.
At the end, ask three volunteers to read one row each, mixed across both maps. Capture the rest in the shared docs. Tell them: "The instructor consolidates and forwards through the AI POC to HQMC quarterly. Your row helps everyone."
Land the wrapRead the list once, slowly. Then say: "This is what you couldn't do at 0900. You can do it now."
Don't oversell. The room knows what they shipped. Acknowledge that the third build was harder than the first two and that some people are still mid-flight on it. That's expected.
AssignmentThis is the entry ticket to Week 4. Advanced Workshop assumes you've shipped at least one tool and have failure cases and gap rows to bring. Without those, the Week 4 exercises don't land.
LogisticsTell them where to log failure cases (the shared frontier-map and gap-map docs on the EDD site) and who to contact if they get blocked finishing Build #3 between sessions.
Four hours for experienced builders. You bring a deployed tool and the failure cases you collected this week. We map the frontier for your domain and build verification protocols you can hand to someone else.
PreviewSet the tone. Week 4 is a different beast: less guided build, more peer review and verification design. You want them excited but realistic about the prerequisite.
Confirm the date, time, and location of Week 4 if you have them. Note that anyone who can't finish Build #3 by then should reach out. There's a path to catch up.
CloseRead the line. Pause. Open for questions. Don't rush the room out. The questions you get in the last five minutes are often the ones that matter most for what they actually build between now and Week 4.
Instructor housekeeping after classCapture the consolidated Frontier Map and Capability Gap Map entries from today. Push both to the shared docs. Ping any Marine who didn't ship a working Build #3 to schedule a 1:1 catch-up before Week 4. Note any hosting issues that came up in Module 1 and add them to the gap map as their own row.