-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjourney.html
More file actions
278 lines (234 loc) · 18.1 KB
/
Copy pathjourney.html
File metadata and controls
278 lines (234 loc) · 18.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Part 5 · The Build Itself as Case Study — Vibe Rounds Cognitive Analytics Series</title>
<style>
:root {
--primary: #0e7490;
--secondary: #0891B2;
--accent-promo: #27ae60;
--accent-provo: #e74c3c;
--bg-light: #f8fafc;
--card-bg: #ffffff;
--text-main: #2d3748;
--text-muted: #718096;
--border-color: #e2e8f0;
}
* { box-sizing: border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
line-height: 1.7;
color: var(--text-main);
background-color: var(--bg-light);
margin: 0;
padding: 15px 10px;
}
.article-container {
max-width: 900px;
margin: 0 auto;
background: var(--card-bg);
padding: 24px 16px;
border-radius: 12px;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
}
header { border-bottom: 3px solid var(--primary); padding-bottom: 20px; margin-bottom: 30px; }
h1 { color: var(--primary); font-size: 1.8em; line-height: 1.2; margin: 0 0 12px 0; }
.subtitle { font-size: 1.05em; color: var(--secondary); font-weight: 600; margin: 0 0 20px 0; }
.cta-header-btn {
display: inline-block; background-color: var(--secondary); color: white; font-weight: bold;
padding: 10px 20px; border-radius: 6px; text-decoration: none; font-size: 0.95em;
transition: background-color 0.2s, transform 0.1s;
}
.cta-header-btn:hover { background-color: var(--primary); color: white; }
.cta-header-btn:active { transform: scale(0.98); }
/* Series navigation */
.series-nav { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; padding-top:18px; border-top:1px dashed var(--border-color); }
.series-nav a {
font-size:0.78em; font-weight:600; padding:6px 13px; border-radius:20px;
background:#e2e8f0; color:var(--text-main); text-decoration:none; white-space:nowrap;
transition: background-color .2s, color .2s;
}
.series-nav a.active { background:var(--primary); color:#fff; }
.series-nav a:hover { background:var(--secondary); color:#fff; }
h2 { color: var(--primary); font-size: 1.4em; margin-top: 35px; margin-bottom: 15px; border-bottom: 1px solid var(--border-color); padding-bottom: 10px; }
h3 { color: var(--secondary); font-size: 1.15em; margin-top: 25px; margin-bottom: 10px; }
p { margin-bottom: 20px; font-size: 1em; }
.disclaimer { background: #fffbe6; color: #8a6d3b; padding: 15px 16px; border-radius: 8px; font-size: 0.9em; margin-bottom: 30px; border-left: 5px solid #ffe79a; }
.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; background: #000; border-radius: 8px; margin: 25px 0; }
.video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.table-responsive { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 25px 0; }
table { width: 100%; border-collapse: collapse; font-size: 0.9em; min-width: 550px; }
th, td { padding: 12px 14px; text-align: left; border-bottom: 1px solid var(--border-color); }
th { background-color: var(--primary); color: white; font-weight: 600; }
tr:nth-child(even) { background-color: #f8fafc; }
.concept-card { border-left: 5px solid; padding: 16px 18px; margin: 20px 0; background: #f8fafc; border-radius: 0 8px 8px 0; }
.promo-card { border-color: var(--accent-promo); }
.promo-card h3, .promo-card h4 { color: var(--accent-promo); }
.provo-card { border-color: var(--accent-provo); }
.provo-card h3, .provo-card h4 { color: var(--accent-provo); }
.case-card { border-color: var(--primary); }
.info-card { border-color: var(--secondary); }
.info-card h3, .info-card h4 { color: var(--secondary); }
.risk-card { border-color: var(--accent-provo); background:#fdf1ef; }
.risk-card h3, .risk-card h4 { color: #b0392b; }
.module-tag { display: inline-block; background: #e2e8f0; color: #4a5568; padding: 4px 8px; border-radius: 4px; font-size: 0.8em; margin-right: 4px; margin-bottom: 6px; font-weight: 600; }
.case-walker { background: #f1f5f9; padding: 18px 14px; border-radius: 10px; border: 1px solid var(--border-color); margin: 30px 0; }
.step { display: none; animation: fadeIn 0.4s ease-in-out; }
.step.active { display: block; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(8px);} to { opacity: 1; transform: translateY(0);} }
.btn { display: block; width: 100%; box-sizing: border-box; text-align: center; padding: 12px 20px; margin-top: 20px; border: none; border-radius: 6px; cursor: pointer; color: white; font-weight: bold; font-size: 0.95em; transition: opacity 0.2s, transform 0.1s; }
.btn:hover { opacity: 0.9; }
.btn:active { transform: scale(0.98); }
.btn-start { background-color: var(--primary); }
.btn-promo { background-color: var(--accent-promo); }
.btn-provo { background-color: var(--accent-provo); }
ul, ol { padding-left: 18px; }
li { margin-bottom: 8px; }
.case-link a { color: var(--secondary); font-weight: bold; text-decoration: none; word-break: break-all; }
.case-link a:hover { text-decoration: underline; }
blockquote { font-style: italic; border-left: 3px solid var(--text-main); margin: 20px 0; padding: 6px 20px; color: var(--text-muted); }
code { font-family: "SFMono-Regular", Consolas, monospace; background: var(--border-color); padding: 0.1rem 0.3rem; border-radius: 3px; font-size: 0.88em; }
.badge-row { display:flex; flex-wrap:wrap; gap:10px; margin: 18px 0 24px; }
.badge { background: var(--card-bg); border:1px solid var(--border-color); border-radius:6px; padding:8px 12px; min-width:110px; }
.badge .k { font-size:0.65rem; text-transform:uppercase; letter-spacing:0.08em; color:var(--text-muted); display:block; }
.badge .v { font-weight:700; font-size:0.92rem; color:var(--text-main); }
.badge.urgent .v { color: var(--accent-provo); }
.grid3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:18px 0 6px; }
.grid2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:18px 0 6px; }
@media (max-width:680px){ .grid3{grid-template-columns:1fr;} .grid2{grid-template-columns:1fr;} }
.grid-card { background: var(--card-bg); border:1px solid var(--border-color); border-radius:8px; padding:16px; }
.grid-card .tag { font-size:0.68rem; color:var(--secondary); text-transform:uppercase; letter-spacing:0.08em; display:block; margin-bottom:6px; font-weight:700; }
.grid-card h4 { margin:0 0 6px; font-size:0.95rem; color:var(--text-main); }
.grid-card p { font-size:0.85rem; color:var(--text-muted); margin:0; }
.grid-card.pro { border-top:3px solid var(--accent-promo); }
.grid-card.con { border-top:3px solid var(--accent-provo); }
.thesis { font-size: 1.15em; line-height: 1.5; color: var(--primary); border-top: 2px solid var(--secondary); border-bottom: 2px solid var(--secondary); padding: 18px 0; margin: 24px 0; text-align:center; font-style:italic; }
.chain { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:14px 0 20px; font-size:0.85rem; }
.chain .cstep { background:#eef4f3; border:1px solid #cfe3e1; color:var(--primary); padding:6px 10px; border-radius:5px; white-space:nowrap; font-weight:600; }
.chain .arrow { color:var(--text-muted); }
.compare2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:18px 0; }
@media (max-width:600px){ .compare2{grid-template-columns:1fr;} }
.compare2 .col { background: var(--card-bg); border:1px solid var(--border-color); border-radius:8px; padding:16px 18px; }
.compare2 .col.was { border-top:3px solid var(--accent-provo); }
.compare2 .col.now { border-top:3px solid var(--accent-promo); }
.compare2 .col h5 { margin:0 0 8px; font-size:0.78rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--text-muted); }
.checklist { background: var(--card-bg); border:1px solid var(--border-color); border-radius:8px; padding:18px 20px; margin:16px 0; }
.checklist h4 { margin:0 0 10px; font-size:0.95rem; color:var(--secondary); }
.checklist ul { margin-bottom:0; }
.checklist li { list-style:none; position:relative; padding-left:26px; }
.checklist li::before { content:"\2610"; position:absolute; left:0; color:var(--secondary); font-size:1.05em; }
.arc-box { font-size:0.85rem; color:var(--text-muted); background:#f8fafc; border:1px solid var(--border-color); border-radius:8px; padding:18px 20px; line-height:1.9; }
footer { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--border-color); font-size: 0.85em; color: var(--text-muted); display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
footer a { color: var(--secondary); font-weight: 600; text-decoration: none; }
footer a:hover { text-decoration: underline; }
footer .footer-links { display:flex; flex-wrap:wrap; gap:6px 14px; }
@media (min-width: 768px) {
body { padding: 30px 15px; }
.article-container { padding: 50px; }
.case-walker { padding: 30px; }
h1 { font-size: 2.4em; }
h2 { font-size: 1.75em; }
.btn { display: inline-block; width: auto; }
footer { flex-direction: row; justify-content: space-between; align-items: center; }
}
</style>
</head>
<body>
<div class="article-container">
<header>
<h1>The Build Itself as Case Study</h1>
<p class="subtitle">Vibe Rounds Cognitive Analytics Series · Part 5</p>
<p>Author - Dr. Avinash Kumar Gupta</p>
<a href="https://avi33tbtt.github.io/#quick-tutorial" target="_blank" rel="noopener noreferrer" class="cta-header-btn">Get started →</a>
<nav class="series-nav">
<a href="article.html">Index</a>
<a href="modern_clinical_reasoning.html">Part 1 · Modern Clinical Reasoning</a>
<a href="ground_truth_layers.html">Part 2 · Ground-Truth Layers</a>
<a href="Case_Complexity.html">Part 3 · Case Complexity</a>
<a href="using_the_stack.html">Part 4 · Using the Stack</a>
<a href="journey.html" class="active">Part 5 · The Build Itself</a>
</nav>
</header>
<div class="disclaimer">
<strong>A note on genre:</strong> Parts 1–4 are conceptual argument, building toward a framework and then deliberately shrinking it back to something usable. This part is not another layer of that framework. It's a reflective account of how the system underneath Parts 1–4 — and the wider Vibe Rounds tool set — actually got built, told in the order it happened, including the parts that were cut.
</div>
<section>
<h2>1. The Seed</h2>
<p>It started as a single Socratic prompt written for clinical clerkship students — an attempt to make an AI ask questions rather than hand over answers, so a learner's own reasoning wasn't short-circuited before it started.</p>
</section>
<section>
<h2>2. Making the Prompt Efficient</h2>
<p>A single prompt isn't a system. What followed was less about ideas and more about plumbing: tracking how the prompt changed across iterations, and adjusting difficulty based on how a learner actually performed, instead of shipping one fixed script and hoping it fit everyone.</p>
</section>
<section>
<h2>3. A Pedagogical Layer, Not a Module</h2>
<p>The next change was conceptual rather than technical. Rather than add another standalone tool, the existing modules were woven together under one shared instructional layer, built from four meta-skills:</p>
<div class="concept-card info-card">
<p><strong>Humanistic persona</strong> — specific affirmation of the reasoning move made, before any challenge, because challenge without affirmation triggers defensive thinking rather than open ones.</p>
<p><strong>Fink's taxonomy</strong> — six non-hierarchical learning dimensions applied at closure, so a session produces durable insight, not just a correct answer.</p>
<p><strong>Bloom's revised taxonomy</strong> — six cognitive levels mapped onto clinical reasoning tasks, used to calibrate difficulty between sessions.</p>
<p style="margin-bottom:0;"><strong>Critical awareness</strong> — a standing closing prompt naming the biases the framework itself is prone to: automation bias, anchoring, hallucination risk, rare-diagnosis overweighting. The protocol auditing itself, by design.</p>
</div>
</section>
<section>
<h2>4. Proving It in One Module</h2>
<p>With the layer defined, it needed a working instance. Module 01 — Socratic Clinical Reasoning — was built with explicit initiation, execution, and closure steps, and became the template every later module would follow.</p>
</section>
<section>
<h2>5. Scaling the Pattern</h2>
<p>Once the pattern held, it repeated: patient advocate documentation, ward-round preparation, and a widening set of distinct clinical cognition skills, each following the same shape rather than reinventing structure each time.</p>
</section>
<section>
<h2>6. From Modules to a System</h2>
<p>At some point the modules stopped being a loose collection of prompts and became components of an actual builder — what would later be called the Clinical Cognition Operating System (CCOS).</p>
</section>
<section>
<h2>7. The Detour That Didn't Land</h2>
<p>The next experiment applied a knowledge-graph concept: a structured knowledgebase of clinical concepts with explicit interrelations. It produced a working tutor tool and a few related demos. They were functional — but not especially useful or accurate in practice. That result is worth stating plainly rather than quietly dropping: it was a real attempt, it did not clearly outperform the simpler approach already working, and that was itself the signal to redirect effort rather than keep layering complexity onto a structure that wasn't earning its cost. The same judgment call underlies <a href="Case_Complexity.html">Part 3's</a> argument that added structure has to justify its own verification burden — this is where that lesson was first learned in practice, not in the abstract.</p>
</section>
<section>
<h2>8. Consolidating What Worked</h2>
<p>Redirected effort converged the modules and the CCOS architecture into one consolidated tool set — the "OS" home most of the current tools now launch from.</p>
</section>
<section>
<h2>9. Writing About It — and Rewriting</h2>
<p>The system was eventually written up as a design-rationale paper describing the CCOS architecture: step-numbered micro-modules, structural protocol lifecycles, and the cross-cutting pedagogical layers described above. Getting there wasn't a straight line. Several earlier AI-generated write-ups of the same work were produced first, then deleted — for being inaccurate, or overloaded with jargon that obscured more than it explained — before the writing was tightened into something worth keeping. That editing process is not a footnote; it's the same critical-appraisal habit this whole series argues for, applied to the AI's own account of itself rather than to a patient case.</p>
</section>
<section>
<h2>10. Closing the Loop</h2>
<p>The last piece kept from this stretch of work is deliberately minimal: a tool built specifically to collect data, meant to turn the system from something built into something that can be studied. That is where this series and the underlying system currently stand — <a href="Case_Complexity.html">Part 3</a> named the proposed empirical study; this is the infrastructure waiting to run it.</p>
</section>
<section>
<h2>The Arc, in One Line</h2>
<div class="arc-box">
one Socratic prompt<br>
→ a page to make it efficient<br>
→ a pedagogical layer (not a module)<br>
→ a working template<br>
→ a widening skill library<br>
→ a builder (CCOS)<br>
→ a detour that didn't land<br>
→ a consolidated tool set<br>
→ a written account, rewritten until it was honest<br>
→ a minimal tool to validate it
</div>
</section>
<section>
<h2>Why This Belongs Here</h2>
<p><a href="using_the_stack.html">Part 4</a> argued for restraint — the smallest usable version of the stack. This part is the evidence for why that restraint was earned rather than assumed: it came from watching a more elaborate approach (the knowledge-graph layer) fail to justify itself, and from discarding write-ups of the work that didn't survive their own scrutiny. The framework in Parts 1–4 is easier to trust once it's clear it was built by cutting things, not just adding them.</p>
</section>
<footer>
<span>Vibe Rounds CCOS Framework · Cognitive Analytics Series · For Educational and Clinical Reasoning Practice Only — not a clinical decision tool.</span>
<div class="footer-links">
<a href="article.html">Index</a>
<a href="modern_clinical_reasoning.html">Part 1</a>
<a href="ground_truth_layers.html">Part 2</a>
<a href="Case_Complexity.html">Part 3</a>
<a href="using_the_stack.html">Part 4</a>
</div>
</footer>
</div>
</body>
</html>