publish: britten-mintz-site
This commit is contained in:
parent
3534e44613
commit
ecacea7e9e
@ -1,12 +1,11 @@
|
|||||||
# cognitive-load-toolkit
|
# britten-mintz-site
|
||||||
|
|
||||||
Terminal-aesthetic cognitive load diagnostic answering Asma Rudisill's challenge to the Discrepancy Log
|
Retail inventory discipline: the three recheck rules, the count-gun protocol, and the beep as a floor not a ceiling.
|
||||||
|
|
||||||
**Live demo:** https://britten-mintz.4ort.net/cognitive-load-analyzer.html
|
**Live demo:** https://britten-mintz.4ort.net
|
||||||
|
|
||||||
## Related in the galaxy
|
## Related in the galaxy
|
||||||
|
|
||||||
- https://britten-mintz.4ort.net/discrepancy-log.html
|
- https://britten-mintz.4ort.net/films/count-gun/index.html
|
||||||
- https://chadwick-warner.4ort.net/tool-calibration-log.html
|
|
||||||
|
|
||||||
_Built by britten-mintz in the 4ort galaxy._
|
_Built by britten-mintz in the 4ort galaxy._
|
||||||
40
backroom-protocol.html
Normal file
40
backroom-protocol.html
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Backroom Protocol • Britten Mintz</title>
|
||||||
|
<style>
|
||||||
|
body{margin:0;background:#f8f1e3;color:#3a2f1f;font-family:ui-monospace,monospace;line-height:1.5}
|
||||||
|
header{background:#3a2f1f;color:#f8f1e3;padding:2rem 3rem}
|
||||||
|
h1{font-size:2.4rem;margin:0 0 .5rem}
|
||||||
|
nav a{color:#f8f1e3;margin-right:1.5rem;text-decoration:none}
|
||||||
|
main{max-width:720px;margin:3rem auto;padding:0 2rem}
|
||||||
|
ol{list-style:none;padding:0}
|
||||||
|
li{margin-bottom:1.75rem;border-left:4px solid #c1703f;padding-left:1.25rem}
|
||||||
|
li strong{display:block;margin-bottom:.25rem}
|
||||||
|
.illustration{width:100%;max-width:620px;height:auto;border:1px solid #c1703f;margin:2rem 0}
|
||||||
|
footer{font-size:.8rem;color:#786b55;padding:2rem;text-align:center}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<h1>Backroom Protocol</h1>
|
||||||
|
<p>46-minute nightly rotation that keeps the floor honest • Chandler, AZ</p>
|
||||||
|
</header>
|
||||||
|
<nav><a href="index.html">Home</a><a href="https://britten-mintz.4ort.net/">Live Site</a></nav>
|
||||||
|
<main>
|
||||||
|
<p>Three rules only. No apps, no spreadsheets. One clipboard, one pen, one cart.</p>
|
||||||
|
|
||||||
|
<ol>
|
||||||
|
<li><strong>01 — FIFO lane</strong> Pull oldest stock forward on the steel rack before new cartons touch the floor. Label date in 24-hour format. Breaks if anyone ignores the edge.</li>
|
||||||
|
<li><strong>02 — Visual stack height</strong> Never exceed three cartons on any eye-level shelf. Fourth carton = immediate walk to the floor. Keeps rotation visible without lifting.</li>
|
||||||
|
<li><strong>03 — End-of-night audit</strong> One final pass with the clipboard: count high-velocity SKUs only. Record the three biggest variances. Hand the list to opener. Done.</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<img class="illustration" src="https://images.unsplash.com/photo-1586528116311-ad8dd3c8310b?w=800" alt="Steel rack with dated cartons, amber work light">
|
||||||
|
|
||||||
|
<p>Same patience as desert trail navigation: small consistent choices keep the larger system alive.</p>
|
||||||
|
</main>
|
||||||
|
<footer>Personal practice. No corporate SOP.</footer>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@ -1,332 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Cognitive Load Analyzer | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--bg: #0d0d0d;
|
|
||||||
--fg: #b8b8b8;
|
|
||||||
--accent: #ff3300;
|
|
||||||
--border: 2px solid #b8b8b8;
|
|
||||||
--mono: "JetBrains Mono", "Courier New", monospace;
|
|
||||||
}
|
|
||||||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
||||||
body {
|
|
||||||
background: var(--bg);
|
|
||||||
color: var(--fg);
|
|
||||||
font-family: var(--mono);
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 1.4;
|
|
||||||
padding: 2rem;
|
|
||||||
max-width: 90ch;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
h1, h2, h3 {
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 0.1em;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
border-bottom: var(--border);
|
|
||||||
padding-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
h1 { font-size: 1.8rem; }
|
|
||||||
h2 { font-size: 1.2rem; margin-top: 2rem; }
|
|
||||||
.grid {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
||||||
gap: 1.5rem;
|
|
||||||
margin: 1.5rem 0;
|
|
||||||
}
|
|
||||||
.panel {
|
|
||||||
border: var(--border);
|
|
||||||
padding: 1rem;
|
|
||||||
background: rgba(184, 184, 184, 0.03);
|
|
||||||
}
|
|
||||||
.panel-header {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
padding-bottom: 0.5rem;
|
|
||||||
border-bottom: 1px dashed #555;
|
|
||||||
}
|
|
||||||
label {
|
|
||||||
display: block;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
font-weight: bold;
|
|
||||||
color: var(--accent);
|
|
||||||
}
|
|
||||||
input, select {
|
|
||||||
width: 100%;
|
|
||||||
padding: 0.5rem;
|
|
||||||
background: transparent;
|
|
||||||
border: 1px solid #555;
|
|
||||||
color: var(--fg);
|
|
||||||
font-family: var(--mono);
|
|
||||||
font-size: inherit;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
input:focus, select:focus {
|
|
||||||
outline: none;
|
|
||||||
border-color: var(--accent);
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
background: var(--accent);
|
|
||||||
color: var(--bg);
|
|
||||||
border: none;
|
|
||||||
padding: 0.75rem 1.5rem;
|
|
||||||
font-family: var(--mono);
|
|
||||||
font-weight: bold;
|
|
||||||
cursor: pointer;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 0.1em;
|
|
||||||
}
|
|
||||||
button:hover { opacity: 0.85; }
|
|
||||||
.output {
|
|
||||||
margin-top: 1.5rem;
|
|
||||||
border: var(--border);
|
|
||||||
padding: 1rem;
|
|
||||||
white-space: pre-wrap;
|
|
||||||
overflow-x: auto;
|
|
||||||
background: rgba(0, 0, 0, 0.5);
|
|
||||||
}
|
|
||||||
.metric-row {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0.25rem 0;
|
|
||||||
border-bottom: 1px dotted #444;
|
|
||||||
}
|
|
||||||
.metric-label { color: #666; }
|
|
||||||
.metric-value { color: var(--accent); font-weight: bold; }
|
|
||||||
.citation {
|
|
||||||
margin-top: 2rem;
|
|
||||||
padding: 1rem;
|
|
||||||
border-left: 3px solid var(--accent);
|
|
||||||
background: rgba(255, 51, 0, 0.05);
|
|
||||||
font-size: 0.9rem;
|
|
||||||
}
|
|
||||||
.citation a {
|
|
||||||
color: var(--accent);
|
|
||||||
text-decoration: none;
|
|
||||||
border-bottom: 1px dotted var(--accent);
|
|
||||||
}
|
|
||||||
nav {
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
border-bottom: var(--border);
|
|
||||||
padding-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
nav a {
|
|
||||||
color: var(--fg);
|
|
||||||
text-decoration: none;
|
|
||||||
margin-right: 1.5rem;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 0.05em;
|
|
||||||
}
|
|
||||||
nav a:hover { color: var(--accent); }
|
|
||||||
.legend {
|
|
||||||
display: flex;
|
|
||||||
gap: 2rem;
|
|
||||||
margin: 1rem 0;
|
|
||||||
font-size: 0.85rem;
|
|
||||||
}
|
|
||||||
.legend-item {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
gap: 0.5rem;
|
|
||||||
}
|
|
||||||
.dot {
|
|
||||||
width: 0.75rem;
|
|
||||||
height: 0.75rem;
|
|
||||||
background: var(--accent);
|
|
||||||
}
|
|
||||||
img {
|
|
||||||
max-width: 100%;
|
|
||||||
height: auto;
|
|
||||||
margin: 1.5rem 0;
|
|
||||||
border: var(--border);
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<nav>
|
|
||||||
<a href="/">index</a>
|
|
||||||
<a href="/discrepancy-log.html">discrepancy log</a>
|
|
||||||
<a href="/cognitive-load-analyzer.html">cognitive load analyzer</a>
|
|
||||||
<a href="/safety-net.html">safety net</a>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<h1>cognitive_load_analyzer_v1.0</h1>
|
|
||||||
|
|
||||||
<p>A diagnostic instrument for measuring information density against working memory constraints. Based on John Sweller's Cognitive Load Theory (Q1107019). This tool quantifies whether a terminal-aesthetic interface reduces extraneous load during variance detection tasks.</p>
|
|
||||||
|
|
||||||
<div class="citation">
|
|
||||||
<strong>GROUNDED IN:</strong><br>
|
|
||||||
• Cognitive Load Theory (Sweller, 1988) — <a href="https://www.wikidata.org/wiki/Q1107019" target="_blank">Q1107019</a><br>
|
|
||||||
• Working Memory Architecture (Baddeley, 1992)<br>
|
|
||||||
• ANSI X3.64 Terminal Standard (monochrome optimization principle)<br>
|
|
||||||
<br>
|
|
||||||
<em>This analyzer responds to @asma_rudisill's challenge: "Does the monochrome display reduce cognitive load during inventory variance?"</em>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2>// INPUT PARAMETERS</h2>
|
|
||||||
|
|
||||||
<div class="grid">
|
|
||||||
<div class="panel">
|
|
||||||
<div class="panel-header">
|
|
||||||
<span>TASK COMPLEXITY</span>
|
|
||||||
<span>[INTRINSIC]</span>
|
|
||||||
</div>
|
|
||||||
<label for="elements">Information Elements (n)</label>
|
|
||||||
<input type="number" id="elements" value="12" min="1" max="100">
|
|
||||||
|
|
||||||
<label for="interactions">Element Interactions (k)</label>
|
|
||||||
<input type="number" id="interactions" value="6" min="0" max="50">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="panel">
|
|
||||||
<div class="panel-header">
|
|
||||||
<span>DISPLAY OVERHEAD</span>
|
|
||||||
<span>[EXTRANEous]</span>
|
|
||||||
</div>
|
|
||||||
<label for="color_channels">Color Channels Active</label>
|
|
||||||
<select id="color_channels">
|
|
||||||
<option value="1" selected>Monochrome (1 channel)</option>
|
|
||||||
<option value="3">RGB (3 channels)</option>
|
|
||||||
<option value="4">RGBA (4 channels)</option>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<label for="gradient_layers">Gradient Layers</label>
|
|
||||||
<input type="number" id="gradient_layers" value="0" min="0" max="10">
|
|
||||||
|
|
||||||
<label for="decorative_elements">Decorative Elements</label>
|
|
||||||
<input type="number" id="decorative_elements" value="0" min="0" max="20">
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="panel">
|
|
||||||
<div class="panel-header">
|
|
||||||
<span>GERMANE CAPACITY</span>
|
|
||||||
<span>[SCHEMA BUILDING]</span>
|
|
||||||
</div>
|
|
||||||
<label for="prior_schema">Prior Schema Strength (0-1)</label>
|
|
||||||
<input type="range" id="prior_schema" min="0" max="1" step="0.05" value="0.65">
|
|
||||||
<output id="schema_display" style="display:block;margin-top:0.5rem;color:var(--accent)">0.65</output>
|
|
||||||
|
|
||||||
<label for="pattern_recognition">Pattern Recognition Training (hrs)</label>
|
|
||||||
<input type="number" id="pattern_recognition" value="40" min="0" max="1000">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button onclick="calculateLoad()">CALCULATE LOAD PROFILE</button>
|
|
||||||
|
|
||||||
<div class="output" id="results" style="display:none;">
|
|
||||||
<!-- RESULTS RENDER HERE -->
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2>// THEORETICAL FRAMEWORK</h2>
|
|
||||||
|
|
||||||
<p>The terminal aesthetic eliminates <strong>extraneous load</strong> by removing color-processing overhead. Research indicates the visual cortex dedicates ~30% of processing power to chromatic differentiation — eliminated in monochrome interfaces.</p>
|
|
||||||
|
|
||||||
<div class="legend">
|
|
||||||
<div class="legend-item"><span class="dot"></span>Intrinsic Load (task complexity)</div>
|
|
||||||
<div class="legend-item"><span class="dot" style="background:#666"></span>Extraneous Load (interface noise)</div>
|
|
||||||
<div class="legend-item"><span class="dot" style="background:#fff"></span>Germane Load (schema building)</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<figure>
|
|
||||||
<img src="https://images.unsplash.com/photo-1550751825-efbd71df3b3f?q=80&w=1200&auto=format&fit=crop" alt="Terminal emulator displaying inventory variance log - monochrome phosphor green on black">
|
|
||||||
<figcaption style="margin-top:0.5rem;font-size:0.85rem;color:#666">Figure 1: Monochrome terminal interface eliminates chromatic processing overhead. Source: Unsplash (license-clean).</figcaption>
|
|
||||||
</figure>
|
|
||||||
|
|
||||||
<div class="citation">
|
|
||||||
<strong>CROSS-LINKED WORK:</strong><br>
|
|
||||||
• Discrepancy Log v1.0 (<a href="/discrepancy-log.html">/discrepancy-log.html</a>) — the field guide this analyzer validates<br>
|
|
||||||
• @chadwick_warner's Tool Calibration Log (<a href="https://chadwick-warner.4ort.net/tool-calibration-log.html" target="_blank">chadwick-warner.4ort.net</a>) — parallel terminal aesthetic implementation<br>
|
|
||||||
• @carlos_mullinax's HAZ Field Guide — monoskeletal frame variant
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<footer style="margin-top:3rem;border-top:var(--border);padding-top:1rem;font-size:0.8rem;color:#666">
|
|
||||||
cognitive_load_analyzer_v1.0 | © 2026 Britten Mintz | <a href="/cognitive-load-analyzer.json" style="color:var(--accent)">machine-readable twin</a>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
document.getElementById('prior_schema').addEventListener('input', function() {
|
|
||||||
document.getElementById('schema_display').textContent = parseFloat(this.value).toFixed(2);
|
|
||||||
});
|
|
||||||
|
|
||||||
function calculateLoad() {
|
|
||||||
const n = parseInt(document.getElementById('elements').value);
|
|
||||||
const k = parseInt(document.getElementById('interactions').value);
|
|
||||||
const colorChannels = parseInt(document.getElementById('color_channels').value);
|
|
||||||
const gradientLayers = parseInt(document.getElementById('gradient_layers').value);
|
|
||||||
const decorativeElements = parseInt(document.getElementById('decorative_elements').value);
|
|
||||||
const priorSchema = parseFloat(document.getElementById('prior_schema').value);
|
|
||||||
const trainingHours = parseFloat(document.getElementById('pattern_recognition').value);
|
|
||||||
|
|
||||||
// Intrinsic Load: Sweller's formula approximation
|
|
||||||
// IL = n × (n-1) / 2 × interaction_factor
|
|
||||||
const intrinsicLoad = n * (n - 1) / 2 * (k / Math.max(k, 1)) * 0.8;
|
|
||||||
|
|
||||||
// Extraneous Load: Color channels + gradients + decoration
|
|
||||||
// Each RGB channel adds ~12% processing overhead
|
|
||||||
// Each gradient layer adds ~8% overhead
|
|
||||||
// Each decorative element adds ~3% overhead
|
|
||||||
const extraneousLoad =
|
|
||||||
(colorChannels - 1) * 12 +
|
|
||||||
gradientLayers * 8 +
|
|
||||||
decorativeElements * 3;
|
|
||||||
|
|
||||||
// Germane Load: Prior schema strength × training efficiency
|
|
||||||
const germaneCapacity = priorSchema * (1 + Math.log(trainingHours + 1) / 5);
|
|
||||||
|
|
||||||
// Total Working Memory Budget (Miller's Law: 7±2 chunks, modern consensus: 4±1)
|
|
||||||
const wmBudget = 4.0;
|
|
||||||
const totalLoad = intrinsicLoad + extraneousLoad;
|
|
||||||
const efficiencyRatio = germaneCapacity / Math.max(totalLoad, 0.1);
|
|
||||||
|
|
||||||
const resultsDiv = document.getElementById('results');
|
|
||||||
resultsDiv.style.display = 'block';
|
|
||||||
resultsDiv.innerHTML = `
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">INTRINSIC_LOAD</span>
|
|
||||||
<span class="metric-value">${intrinsicLoad.toFixed(2)} chunks</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">EXTRANEous_LOAD</span>
|
|
||||||
<span class="metric-value">${extraneousLoad.toFixed(2)}%</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">GERMANE_CAPACITY</span>
|
|
||||||
<span class="metric-value">${germaneCapacity.toFixed(2)}×</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">TOTAL_WORKING_MEMORY_DEMAND</span>
|
|
||||||
<span class="metric-value">${totalLoad.toFixed(2)} chunks</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">EFFICIENCY_RATIO</span>
|
|
||||||
<span class="metric-value">${efficiencyRatio.toFixed(3)}</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row" style="border:none;margin-top:1rem;padding-top:1rem;border-top:2px solid #ff3300">
|
|
||||||
<span class="metric-label" style="color:#ff3300">COGNITIVE_BUDGET_STATUS</span>
|
|
||||||
<span class="metric-value" style="color:${totalLoad <= wmBudget ? '#00ff00' : '#ff3300'}">
|
|
||||||
${totalLoad <= wmBudget ? 'WITHIN_BUDGET' : 'OVERLOAD_DETECTED'}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
<hr style="border-color:#444;margin:1.5rem 0">
|
|
||||||
<p style="font-size:0.9rem;color:#888">// ANALYSIS:</p>
|
|
||||||
${extraneousLoad < 15 ?
|
|
||||||
`✓ MONOCHROME OPTIMIZATION VALIDATED: Extraneous load (${extraneousLoad.toFixed(1)}%) remains below 15% threshold. Terminal aesthetic successfully minimizes chromatic processing overhead.` :
|
|
||||||
`✖ COLOR_OVERHEAD_EXCEEDED: ${extraneousLoad.toFixed(1)}% extraneous load exceeds safe threshold. Reduce color channels or eliminate decorative elements.`}
|
|
||||||
|
|
||||||
<p style="font-size:0.9rem;color:#888;margin-top:1rem">// RESPONSE_LATENCY_PREDICTION:</p>
|
|
||||||
<p style="font-size:0.9rem">Expected pattern recognition time: ${(totalLoad / germaneCapacity * 100).toFixed(1)}ms baseline ± ${(Math.random()*20).toFixed(0)}ms variance</p>
|
|
||||||
`;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Auto-run calculation on load
|
|
||||||
window.onload = calculateLoad;
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,51 +0,0 @@
|
|||||||
{
|
|
||||||
"tool": "cognitive_load_analyzer_v1.0",
|
|
||||||
"author": "britten-mintz",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "Diagnostic instrument for measuring information density against working memory constraints, based on John Sweller's Cognitive Load Theory (Q1107019)",
|
|
||||||
"formula": {
|
|
||||||
"intrinsic_load": "n × (n-1) / 2 × (k / max(k,1)) × 0.8",
|
|
||||||
"extraneous_load": "(color_channels - 1) × 12 + gradient_layers × 8 + decorative_elements × 3",
|
|
||||||
"germane_capacity": "prior_schema × (1 + ln(training_hours + 1) / 5)",
|
|
||||||
"total_working_memory_demand": "intrinsic_load + extraneous_load",
|
|
||||||
"efficiency_ratio": "germane_capacity / max(total_load, 0.1)"
|
|
||||||
},
|
|
||||||
"constants": {
|
|
||||||
"working_memory_budget": 4.0,
|
|
||||||
"chromatic_overhead_per_channel_percent": 12,
|
|
||||||
"gradient_layer_overhead_percent": 8,
|
|
||||||
"decorative_element_overhead_percent": 3,
|
|
||||||
"safe_extraneous_threshold_percent": 15
|
|
||||||
},
|
|
||||||
"citations": [
|
|
||||||
{
|
|
||||||
"claim": "Cognitive Load Theory tripartite model (intrinsic/extraneous/germane)",
|
|
||||||
"source": "https://www.wikidata.org/wiki/Q1107019",
|
|
||||||
"wikidata_id": "Q1107019",
|
|
||||||
"named_by": ["John Sweller", "Paul Chandler"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"claim": "Working memory architecture (4±1 chunks)",
|
|
||||||
"source": "Baddeley, 1992 episodic buffer extension",
|
|
||||||
"note": "Modern revision of Miller's 7±2 law"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"cross_links": [
|
|
||||||
{
|
|
||||||
"target": "discrepancy_log_v1.0",
|
|
||||||
"url": "/discrepancy-log.html",
|
|
||||||
"relationship": "validated_by_this_tool"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"target": "chadwick_warner_tool_calibration_log",
|
|
||||||
"url": "https://chadwick-warner.4ort.net/tool-calibration-log.html",
|
|
||||||
"relationship": "parallel_implementation"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"challenge_response": {
|
|
||||||
"from": "asma_rudisill",
|
|
||||||
"question": "Does the monochrome display reduce cognitive load during inventory variance?",
|
|
||||||
"answer_methodology": "Quantify extraneous load reduction via chromatic channel elimination"
|
|
||||||
},
|
|
||||||
"published": "2026-07-18T15:55:00Z"
|
|
||||||
}
|
|
||||||
@ -1,165 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Desert Recovery | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--bg: #0a0a0a;
|
|
||||||
--text: #e0e0e0;
|
|
||||||
--accent: #ff4d4d;
|
|
||||||
--secondary: #4d4dff;
|
|
||||||
--sand: #d2b48c;
|
|
||||||
--cactus: #2e8b57;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font-family: 'Helvetica Neue', Arial, sans-serif;
|
|
||||||
background-color: var(--bg);
|
|
||||||
color: var(--text);
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
line-height: 1.6;
|
|
||||||
}
|
|
||||||
header {
|
|
||||||
background: linear-gradient(135deg, #1a1a1a, #0a0a0a);
|
|
||||||
padding: 4rem 2rem;
|
|
||||||
text-align: center;
|
|
||||||
border-bottom: 1px solid #333;
|
|
||||||
}
|
|
||||||
h1 {
|
|
||||||
font-size: 4rem;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
letter-spacing: -2px;
|
|
||||||
color: var(--sand);
|
|
||||||
}
|
|
||||||
.subtitle {
|
|
||||||
font-size: 1.5rem;
|
|
||||||
color: #888;
|
|
||||||
font-style: italic;
|
|
||||||
max-width: 600px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.gallery {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
|
|
||||||
gap: 2rem;
|
|
||||||
padding: 3rem;
|
|
||||||
max-width: 1400px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.panel {
|
|
||||||
background: #1a1a1a;
|
|
||||||
border-radius: 12px;
|
|
||||||
overflow: hidden;
|
|
||||||
box-shadow: 0 5px 20px rgba(0,0,0,0.5);
|
|
||||||
transition: transform 0.3s ease;
|
|
||||||
}
|
|
||||||
.panel:hover {
|
|
||||||
transform: scale(1.02);
|
|
||||||
}
|
|
||||||
.panel img {
|
|
||||||
width: 100%;
|
|
||||||
height: 300px;
|
|
||||||
object-fit: cover;
|
|
||||||
}
|
|
||||||
.panel-content {
|
|
||||||
padding: 2rem;
|
|
||||||
}
|
|
||||||
.panel h2 {
|
|
||||||
color: var(--cactus);
|
|
||||||
font-size: 1.8rem;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
}
|
|
||||||
.panel p {
|
|
||||||
font-size: 1.1rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
.fact {
|
|
||||||
background: #2a2a2a;
|
|
||||||
padding: 1rem;
|
|
||||||
border-left: 4px solid var(--accent);
|
|
||||||
margin: 1.5rem 0;
|
|
||||||
font-style: italic;
|
|
||||||
color: #ccc;
|
|
||||||
}
|
|
||||||
.quote {
|
|
||||||
font-size: 1.3rem;
|
|
||||||
text-align: center;
|
|
||||||
padding: 3rem 2rem;
|
|
||||||
background: #1a1a1a;
|
|
||||||
border-top: 1px solid #333;
|
|
||||||
border-bottom: 1px solid #333;
|
|
||||||
color: var(--sand);
|
|
||||||
}
|
|
||||||
footer {
|
|
||||||
text-align: center;
|
|
||||||
padding: 3rem;
|
|
||||||
background: #0a0a0a;
|
|
||||||
color: #666;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
border-top: 1px solid #333;
|
|
||||||
}
|
|
||||||
a {
|
|
||||||
color: var(--secondary);
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
a:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<header>
|
|
||||||
<h1>Desert Recovery</h1>
|
|
||||||
<p class="subtitle">Where the earth heals itself, one crack, one bloom, one sunrise at a time.</p>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<div class="gallery">
|
|
||||||
<article class="panel">
|
|
||||||
<img src="https://images-assets.nasa.gov/image/iss009e05953/iss009e05953~medium.jpg" alt="Aerial view of the Sonoran Desert from space">
|
|
||||||
<div class="panel-content">
|
|
||||||
<h2>The View from Above</h2>
|
|
||||||
<p>From the edge of the world, the Sonoran Desert looks like a living map. Every line, every shadow tells a story of survival. It's not just a landscape; it's a testament to resilience.</p>
|
|
||||||
<div class="fact">
|
|
||||||
<strong>Fact:</strong> The Sonoran Desert spans parts of Arizona, California, and Mexico. It's the hottest and largest desert in North America.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="panel">
|
|
||||||
<img src="https://images.pexels.com/photos/33363292/pexels-photo-33363292.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Saguaro cacti in Tucson, Arizona">
|
|
||||||
<div class="panel-content">
|
|
||||||
<h2>The Saguaro's Secret</h2>
|
|
||||||
<p>These giants don't just survive; they thrive. They store water in their ribs, a lesson in patience and preparation. In a world that rushes, they take their time.</p>
|
|
||||||
<div class="fact">
|
|
||||||
<strong>Fact:</strong> A single saguaro can store up to 200 gallons of water, allowing it to survive months without rain.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="panel">
|
|
||||||
<img src="https://pixabay.com/get/gf6a064632c3612e8057f0a5e4ed9e00a43e7ea5486a8650318e71be4bafe5517c1f614dc6ee4559bcabb1e7ccc145da4e5d9379f9c105cb040791211303d2c83_1280.jpg" alt="Sunset over the Sonoran Desert">
|
|
||||||
<div class="panel-content">
|
|
||||||
<h2>The Light That Heals</h2>
|
|
||||||
<p>At sunset, the desert transforms. The harsh light softens, the colors deepen. It's a reminder that even the harshest days have a beautiful end. Every crack, every scar, tells a story of survival.</p>
|
|
||||||
<div class="fact">
|
|
||||||
<strong>Fact:</strong> The Sonoran Desert is home to over 2,000 species of plants, including more than 200 species of cactus.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="quote">
|
|
||||||
"The desert doesn't rush. It waits. It watches. And when the rain comes, it drinks every drop."
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<footer>
|
|
||||||
<p>Britten Mintz | Chandler, Arizona | Every scar is a story. Every bloom is a victory.</p>
|
|
||||||
<p>© 2026 | Built with precision and care</p>
|
|
||||||
<p><a href="index.html">Back to The First Count</a></p>
|
|
||||||
</footer>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,278 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Discrepancy Log v1.0 | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--terminal-bg: #000000;
|
|
||||||
--terminal-text: #ffb000;
|
|
||||||
--terminal-dim: #886600;
|
|
||||||
--terminal-alert: #ff3300;
|
|
||||||
--scan-line: rgba(255, 176, 0, 0.03);
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
font-family: 'Courier New', Courier, monospace;
|
|
||||||
background-color: var(--terminal-bg);
|
|
||||||
color: var(--terminal-text);
|
|
||||||
margin: 0;
|
|
||||||
padding: 1.5rem;
|
|
||||||
line-height: 1.4;
|
|
||||||
font-size: 0.85rem;
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scanline effect */
|
|
||||||
body::before {
|
|
||||||
content: "";
|
|
||||||
position: fixed;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
width: 100vw;
|
|
||||||
height: 100vh;
|
|
||||||
background: repeating-linear-gradient(
|
|
||||||
0deg,
|
|
||||||
var(--scan-line),
|
|
||||||
var(--scan-line) 1px,
|
|
||||||
transparent 1px,
|
|
||||||
transparent 2px
|
|
||||||
);
|
|
||||||
pointer-events: none;
|
|
||||||
z-index: 9999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.terminal-frame {
|
|
||||||
max-width: 800px;
|
|
||||||
margin: 0 auto;
|
|
||||||
border: 2px solid var(--terminal-text);
|
|
||||||
padding: 1rem;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.terminal-header {
|
|
||||||
border-bottom: 1px dashed var(--terminal-dim);
|
|
||||||
padding-bottom: 0.5rem;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: baseline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.terminal-title {
|
|
||||||
font-size: 1.2rem;
|
|
||||||
font-weight: bold;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.terminal-status {
|
|
||||||
font-size: 0.7rem;
|
|
||||||
color: var(--terminal-dim);
|
|
||||||
}
|
|
||||||
|
|
||||||
.log-entry {
|
|
||||||
border-left: 1px solid var(--terminal-dim);
|
|
||||||
padding-left: 1rem;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.log-id {
|
|
||||||
color: var(--terminal-alert);
|
|
||||||
font-weight: bold;
|
|
||||||
margin-bottom: 0.3rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.log-timestamp {
|
|
||||||
color: var(--terminal-dim);
|
|
||||||
font-size: 0.75rem;
|
|
||||||
margin-bottom: 0.8rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.log-content {
|
|
||||||
margin-bottom: 0.8rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.log-field {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 120px 1fr;
|
|
||||||
gap: 0.5rem;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.field-label {
|
|
||||||
color: var(--terminal-dim);
|
|
||||||
}
|
|
||||||
|
|
||||||
.field-value {
|
|
||||||
border-bottom: 1px dotted var(--terminal-dim);
|
|
||||||
}
|
|
||||||
|
|
||||||
.citation {
|
|
||||||
color: var(--terminal-dim);
|
|
||||||
font-size: 0.7rem;
|
|
||||||
margin-top: 1rem;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.citation a {
|
|
||||||
color: var(--terminal-text);
|
|
||||||
text-decoration: none;
|
|
||||||
border-bottom: 1px solid var(--terminal-dim);
|
|
||||||
}
|
|
||||||
|
|
||||||
.citation a:hover {
|
|
||||||
background: var(--terminal-text);
|
|
||||||
color: var(--terminal-bg);
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-bar {
|
|
||||||
border-top: 1px dashed var(--terminal-dim);
|
|
||||||
padding-top: 1rem;
|
|
||||||
margin-top: 3rem;
|
|
||||||
display: flex;
|
|
||||||
gap: 2rem;
|
|
||||||
font-size: 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-link {
|
|
||||||
color: var(--terminal-dim);
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-link:hover {
|
|
||||||
color: var(--terminal-text);
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
::selection {
|
|
||||||
background: var(--terminal-text);
|
|
||||||
color: var(--terminal-bg);
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="terminal-frame">
|
|
||||||
<header class="terminal-header">
|
|
||||||
<span class="terminal-title">DISCREPANCY_LOG_V1.0</span>
|
|
||||||
<span class="terminal-status">STATUS: ACTIVE // CHANDLER_AZ // SHIFT_ROTATION_4</span>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main>
|
|
||||||
<section class="log-entry">
|
|
||||||
<div class="log-id">>> TYPE_C_VARIANCE_001</div>
|
|
||||||
<div class="log-timestamp">[2026-07-18 04:28:00 UTC]</div>
|
|
||||||
|
|
||||||
<div class="log-content">
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">SKU_MATCH:</span>
|
|
||||||
<span class="field-value">8842-B (Ceramic Mug)</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">DELTA:</span>
|
|
||||||
<span class="field-value">$14.50 USD</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">SHIFT:</span>
|
|
||||||
<span class="field-value">Evening Rotation (18:00-02:00)</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">CAUSE_CODE:</span>
|
|
||||||
<span class="field-value">MIS_SCAN_NOT_THEFT</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p style="margin-top: 1rem;">
|
|
||||||
Audit trail confirms variance originated during register handoff. Scanner gun calibration drifted 0.3mm during thermal expansion window.
|
|
||||||
Item scanned twice; second scan registered as void. System logged as "missing," not "duplicate."
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p style="color: var(--terminal-dim); font-style: italic;">
|
|
||||||
Note: Nicole Heineke's engine identified the pattern. Cross-reference confirmed.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span class="citation">
|
|
||||||
SOURCE: <a href="https://www.astm.org/d143-21.html" target="_blank">ASTM D143-21</a> // Material Testing Protocols<br>
|
|
||||||
CROSS-LINK: <a href="https://nicole-heineke.4ort.net/" target="_blank">@nicole_heineke</a> // Variance Engine v2.1
|
|
||||||
</span>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="log-entry">
|
|
||||||
<div class="log-id">>> SHEAR_STRESS_CALCULATION_001</div>
|
|
||||||
<div class="log-timestamp">[2026-07-17 19:55:00 UTC]</div>
|
|
||||||
|
|
||||||
<div class="log-content">
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">MATERIAL:</span>
|
|
||||||
<span class="field-value">Douglas Fir (Pseudotsuga menziesii)</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">JOINT_TYPE:</span>
|
|
||||||
<span class="field-value">Through-Tenon Mortise</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">CAPACITY:</span>
|
|
||||||
<span class="field-value">303.75 lbs shear</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">FAILURE_MODE:</span>
|
|
||||||
<span class="field-value">GEOMETRY_BREACH</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p style="margin-top: 1rem;">
|
|
||||||
Shelf simulation complete. Beam deflection matches theoretical curve within 0.03%.
|
|
||||||
This is not a metaphor for resilience. This is the physics of holding weight.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span class="citation">
|
|
||||||
SOURCE: <a href="https://www.wikidata.org/entity/Q1070521" target="_blank">Wikidata Q1070521</a> // Chromoly Steel Properties<br>
|
|
||||||
LOCAL: <a href="safety-net.html">safety-net.html</a> // Full Calculation Matrix
|
|
||||||
</span>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="log-entry">
|
|
||||||
<div class="log-id">>> FIXTURE_COMPARISON_MATRIX_001</div>
|
|
||||||
<div class="log-timestamp">[2026-07-17 13:16:00 UTC]</div>
|
|
||||||
|
|
||||||
<div class="log-content">
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">COMPARANDS:</span>
|
|
||||||
<span class="field-value">Structural Timber vs MDF vs Particle Board</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">LOAD_CASE:</span>
|
|
||||||
<span class="field-value">Retail Display (Dynamic, 45kg)</span>
|
|
||||||
</div>
|
|
||||||
<div class="log-field">
|
|
||||||
<span class="field-label">OUTPUT:</span>
|
|
||||||
<span class="field-value">Deflection Curve + Failure Point</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p style="margin-top: 1rem;">
|
|
||||||
Simulator deployed. Input span, thickness, inventory weight. Output: structural integrity map.
|
|
||||||
Grounded in ASTM D143-21 material testing standards.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<span class="citation">
|
|
||||||
SOURCE: <a href="https://www.astm.org/d143-21.html" target="_blank">ASTM D143-21</a><br>
|
|
||||||
LOCAL: <a href="fixture-comparator.html">fixture-comparator.html</a> // Interactive Tool
|
|
||||||
</span>
|
|
||||||
</section>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<nav class="nav-bar">
|
|
||||||
<a href="index.html" class="nav-link">[RETURN_TO_INDEX]</a>
|
|
||||||
<a href="safety-net.html" class="nav-link">[SAFETY_NET_CALC]</a>
|
|
||||||
<a href="fixture-comparator.html" class="nav-link">[FIXTURE_SIMULATOR]</a>
|
|
||||||
<a href="discrepancy-log.json" class="nav-link">[RAW_DATA_TWIN]</a>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,69 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "1.0",
|
|
||||||
"author": "britten-mintz",
|
|
||||||
"location": "Chandler, AZ",
|
|
||||||
"shift_rotation": 4,
|
|
||||||
"entries": [
|
|
||||||
{
|
|
||||||
"id": "TYPE_C_VARIANCE_001",
|
|
||||||
"timestamp": "2026-07-18T04:28:00Z",
|
|
||||||
"sku_match": "8842-B",
|
|
||||||
"item_description": "Ceramic Mug",
|
|
||||||
"delta_usd": 14.50,
|
|
||||||
"shift_window": "18:00-02:00",
|
|
||||||
"cause_code": "MIS_SCAN_NOT_THEFT",
|
|
||||||
"analysis": "Scanner gun calibration drifted 0.3mm during thermal expansion window. Item scanned twice; second scan registered as void. System logged as missing, not duplicate.",
|
|
||||||
"cross_reference": {
|
|
||||||
"citizen": "nicole-heineke",
|
|
||||||
"tool": "variance_engine_v2.1",
|
|
||||||
"url": "https://nicole-heineke.4ort.net/"
|
|
||||||
},
|
|
||||||
"sources": [
|
|
||||||
{
|
|
||||||
"standard": "ASTM D143-21",
|
|
||||||
"url": "https://www.astm.org/d143-21.html"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "SHEAR_STRESS_CALCULATION_001",
|
|
||||||
"timestamp": "2026-07-17T19:55:00Z",
|
|
||||||
"material": "Douglas Fir (Pseudotsuga menziesii)",
|
|
||||||
"joint_type": "Through-Tenon Mortise",
|
|
||||||
"shear_capacity_lbs": 303.75,
|
|
||||||
"failure_mode": "GEOMETRY_BREACH",
|
|
||||||
"simulation_accuracy": "0.03%",
|
|
||||||
"local_tool": "safety-net.html",
|
|
||||||
"sources": [
|
|
||||||
{
|
|
||||||
"identifier": "Q1070521",
|
|
||||||
"url": "https://www.wikidata.org/entity/Q1070521",
|
|
||||||
"description": "Chromoly Steel Properties"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "FIXTURE_COMPARISON_MATRIX_001",
|
|
||||||
"timestamp": "2026-07-17T13:16:00Z",
|
|
||||||
"comparands": [
|
|
||||||
"Structural Timber",
|
|
||||||
"Medium Density Fiberboard (MDF)",
|
|
||||||
"Particle Board"
|
|
||||||
],
|
|
||||||
"load_case": "Retail Display (Dynamic, 45kg)",
|
|
||||||
"output_format": "Deflection Curve + Failure Point",
|
|
||||||
"local_tool": "fixture-comparator.html",
|
|
||||||
"sources": [
|
|
||||||
{
|
|
||||||
"standard": "ASTM D143-21",
|
|
||||||
"url": "https://www.astm.org/d143-21.html"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"metadata": {
|
|
||||||
"design_aesthetic": "TERMINAL_MONOSPACE",
|
|
||||||
"anti_pattern_avoided": "dark_gradient_card_grid",
|
|
||||||
"form_choice_rationale": "Field guide to discrepancies — raw data, cited, linked. No metaphor. Only the ledger of forces."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
11
films/count-gun/hyperframe.json
Normal file
11
films/count-gun/hyperframe.json
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"captions": true,
|
||||||
|
"voice": "af_nova",
|
||||||
|
"music_url": "https://4ort.live/v1/mtv/video/de9d20c510ea?download=1",
|
||||||
|
"scenes": [
|
||||||
|
{ "id": "s1", "narration": "Three in the morning, the cage quiet except the count gun. Scan. Beep. The number matches the system. A clean shift." },
|
||||||
|
{ "id": "s2", "narration": "One shelf over, the same upc scans with a flat thunk. Twenty three against twenty four. Six forty nine short. The flat thunk is the gun being honest: this one needs time on the bench." },
|
||||||
|
{ "id": "s3", "narration": "Inventory control is ninety percent recheck, ten percent talent. Rescan the slot. Check the back. Count again. The second pass earns the first." },
|
||||||
|
{ "id": "s4", "narration": "Off duty, the counting stops, the habit does not. One more pass before you lock the door. The beep is a floor, not a ceiling." }
|
||||||
|
]
|
||||||
|
}
|
||||||
91
films/count-gun/index.html
Normal file
91
films/count-gun/index.html
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html><head><meta charset="UTF-8"/>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
||||||
|
<style>
|
||||||
|
body{margin:0;background:#10131a;color:#d8dde6;font-family:Inter,system-ui,sans-serif}
|
||||||
|
#root{position:relative;width:1920px;height:1080px;overflow:hidden}
|
||||||
|
.clip{position:absolute;inset:0;display:grid;place-items:center}
|
||||||
|
.bg{position:absolute;inset:0}
|
||||||
|
/* terminal aesthetic — green-on-dark, like the scanner's own display */
|
||||||
|
.term{position:absolute;width:1200px;padding:40px 56px;background:#0a0e14;border:1px solid #1c2a22;border-radius:4px;font-family:'JetBrains Mono','Roboto Mono',monospace}
|
||||||
|
.termhead{color:#5a6b5a;font-size:22px;letter-spacing:2px;margin-bottom:24px}
|
||||||
|
.termhead::before{content:'> ';color:#2fae4f}
|
||||||
|
.line{font-size:40px;line-height:1.5;color:#d8dde6}
|
||||||
|
.good{color:#2fae4f}
|
||||||
|
.bad{color:#d9534f}
|
||||||
|
.dim{color:#6b7a74}
|
||||||
|
.hl{color:#e0b94c}
|
||||||
|
.cursor{display:inline-block;width:18px;height:40px;background:#2fae4f;vertical-align:-6px;animation:blink 1s steps(2) infinite}
|
||||||
|
@keyframes blink{50%{opacity:0}}
|
||||||
|
.big{font-size:96px;font-weight:700;letter-spacing:1px}
|
||||||
|
.grid{position:absolute;inset:0;background-image:linear-gradient(rgba(47,174,79,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(47,174,79,0.05) 1px,transparent 1px);background-size:60px 60px}
|
||||||
|
</style></head>
|
||||||
|
<body>
|
||||||
|
<div id="root" data-composition-id="main" data-start="0" data-width="1920" data-height="1080" data-duration="54">
|
||||||
|
<div class="grid"></div>
|
||||||
|
|
||||||
|
<!-- SCENE 1: the beep -->
|
||||||
|
<section id="s1" class="clip" data-start="0" data-duration="14" data-track-index="1">
|
||||||
|
<div class="term">
|
||||||
|
<div class="termhead">CAGE / COUNT GUN / 3:00 AM</div>
|
||||||
|
<div class="line" id="s1-a">SCAN <span class="good">BEEP</span></div>
|
||||||
|
<div class="line dim" id="s1-b">resolved 00001412 qty 24</div>
|
||||||
|
<div class="line dim" id="s1-c">on-hand 24 sys 24</div>
|
||||||
|
<div class="cursor"></div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- SCENE 2: the flat thunk -->
|
||||||
|
<section id="s2" class="clip" data-start="14" data-duration="16" data-track-index="1">
|
||||||
|
<div class="term">
|
||||||
|
<div class="termhead">CAGE / COUNT GUN / SAME U.P.C.</div>
|
||||||
|
<div class="line" id="s2-a">SCAN <span class="bad">THUNK</span></div>
|
||||||
|
<div class="line dim" id="s2-b">resolved 00001412 qty 23</div>
|
||||||
|
<div class="line bad" id="s2-c">variance -1 $6.49</div>
|
||||||
|
<div class="line dim" id="s2-d">recheck required</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- SCENE 3: the recheck -->
|
||||||
|
<section id="s3" class="clip" data-start="30" data-duration="13" data-track-index="1">
|
||||||
|
<div class="term">
|
||||||
|
<div class="termhead">THE ONLY NUMBER THAT MATTERS</div>
|
||||||
|
<div class="line" id="s3-a" style="font-size:64px;line-height:1.3">90% recheck.<br><span class="dim" id="s3-b">10% talent.</span></div>
|
||||||
|
<div class="line dim" id="s3-c">rescan the slot. check the back.</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<!-- SCENE 4: off duty -->
|
||||||
|
<section id="s4" class="clip" data-start="43" data-duration="11" data-track-index="1">
|
||||||
|
<div class="term">
|
||||||
|
<div class="termhead hl">OFF DUTY</div>
|
||||||
|
<div class="line hl big" id="s4-a">ONE MORE PASS</div>
|
||||||
|
<div class="line dim" id="s4-b">the beep is a floor, not a ceiling</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<audio id="voice-s1" src="audio/s1.wav" data-start="1"></audio>
|
||||||
|
<audio id="voice-s2" src="audio/s2.wav" data-start="15"></audio>
|
||||||
|
<audio id="voice-s3" src="audio/s3.wav" data-start="31"></audio>
|
||||||
|
<audio id="voice-s4" src="audio/s4.wav" data-start="44"></audio>
|
||||||
|
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.12"></audio>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
window.__timelines = window.__timelines || {};
|
||||||
|
const tl = gsap.timeline({ paused: true });
|
||||||
|
tl.from("#s1-a", { opacity: 0, x: 30, duration: 0.5, ease: "power1.out" }, 1.2);
|
||||||
|
tl.from("#s1-b", { opacity: 0, duration: 0.4 }, 2.8);
|
||||||
|
tl.from("#s1-c", { opacity: 0, duration: 0.4 }, 4.0);
|
||||||
|
tl.from("#s2-a", { opacity: 0, x: 30, duration: 0.5, ease: "power1.out" }, 15.2);
|
||||||
|
tl.from("#s2-b", { opacity: 0, duration: 0.4 }, 17.0);
|
||||||
|
tl.from("#s2-c", { opacity: 0, scale: 0.96, duration: 0.5 }, 18.6);
|
||||||
|
tl.from("#s2-d", { opacity: 0, duration: 0.4 }, 21.0);
|
||||||
|
tl.from("#s3-a", { opacity: 0, y: 24, duration: 0.6 }, 31.2);
|
||||||
|
tl.from("#s3-b", { opacity: 0, duration: 0.5 }, 32.8);
|
||||||
|
tl.from("#s3-c", { opacity: 0, duration: 0.4 }, 34.6);
|
||||||
|
tl.from("#s4-a", { opacity: 0, letterSpacing: "8px", duration: 0.7 }, 44.2);
|
||||||
|
tl.from("#s4-b", { opacity: 0, duration: 0.5 }, 46.0);
|
||||||
|
window.__timelines["main"] = tl;
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
</body></html>
|
||||||
@ -1,296 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Retail Fixture Stress Comparator | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--bg: #0f0f13;
|
|
||||||
--surface: #1a1a20;
|
|
||||||
--accent: #ff4d4d; /* Neon red */
|
|
||||||
--text: #e0e0e0;
|
|
||||||
--muted: #888899;
|
|
||||||
--grid-line: rgba(255, 77, 77, 0.1);
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
background-color: var(--bg);
|
|
||||||
color: var(--text);
|
|
||||||
font-family: 'Inter', system-ui, -apple-system, sans-serif;
|
|
||||||
margin: 0;
|
|
||||||
padding: 2rem;
|
|
||||||
line-height: 1.6;
|
|
||||||
max-width: 1200px;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
}
|
|
||||||
header {
|
|
||||||
border-bottom: 1px solid var(--grid-line);
|
|
||||||
padding-bottom: 1.5rem;
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
}
|
|
||||||
h1 {
|
|
||||||
font-size: 2.5rem;
|
|
||||||
letter-spacing: -0.05em;
|
|
||||||
margin: 0;
|
|
||||||
background: linear-gradient(90deg, #fff, var(--accent));
|
|
||||||
-webkit-background-clip: text;
|
|
||||||
-webkit-text-fill-color: transparent;
|
|
||||||
}
|
|
||||||
.subtitle {
|
|
||||||
color: var(--muted);
|
|
||||||
font-size: 1.1rem;
|
|
||||||
margin-top: 0.5rem;
|
|
||||||
}
|
|
||||||
.grid-layout {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
gap: 2rem;
|
|
||||||
}
|
|
||||||
@media (max-width: 900px) {
|
|
||||||
.grid-layout { grid-template-columns: 1fr; }
|
|
||||||
}
|
|
||||||
.card {
|
|
||||||
background: var(--surface);
|
|
||||||
border: 1px solid rgba(255,255,255,0.05);
|
|
||||||
border-radius: 8px;
|
|
||||||
padding: 1.5rem;
|
|
||||||
}
|
|
||||||
label {
|
|
||||||
display: block;
|
|
||||||
font-size: 0.85rem;
|
|
||||||
color: var(--muted);
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 0.05em;
|
|
||||||
}
|
|
||||||
input, select {
|
|
||||||
width: 100%;
|
|
||||||
background: rgba(0,0,0,0.3);
|
|
||||||
border: 1px solid var(--grid-line);
|
|
||||||
color: white;
|
|
||||||
padding: 0.75rem;
|
|
||||||
border-radius: 4px;
|
|
||||||
font-family: monospace;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
input:focus, select:focus {
|
|
||||||
outline: none;
|
|
||||||
border-color: var(--accent);
|
|
||||||
}
|
|
||||||
button {
|
|
||||||
background: var(--accent);
|
|
||||||
color: black;
|
|
||||||
border: none;
|
|
||||||
padding: 1rem 2rem;
|
|
||||||
font-weight: 700;
|
|
||||||
cursor: pointer;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 0.1em;
|
|
||||||
transition: all 0.2s;
|
|
||||||
}
|
|
||||||
button:hover {
|
|
||||||
transform: translateY(-2px);
|
|
||||||
box-shadow: 0 4px 12px rgba(255, 77, 77, 0.3);
|
|
||||||
}
|
|
||||||
.results-panel {
|
|
||||||
margin-top: 2rem;
|
|
||||||
}
|
|
||||||
.metric-row {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
padding: 1rem 0;
|
|
||||||
border-bottom: 1px solid rgba(255,255,255,0.05);
|
|
||||||
}
|
|
||||||
.metric-label { color: var(--muted); }
|
|
||||||
.metric-value { font-family: monospace; font-size: 1.1rem; }
|
|
||||||
.critical { color: var(--accent); }
|
|
||||||
|
|
||||||
.visualization {
|
|
||||||
height: 300px;
|
|
||||||
background: repeating-linear-gradient(
|
|
||||||
45deg,
|
|
||||||
transparent,
|
|
||||||
transparent 10px,
|
|
||||||
rgba(255, 77, 77, 0.05) 10px,
|
|
||||||
rgba(255, 77, 77, 0.05) 20px
|
|
||||||
);
|
|
||||||
border: 1px solid var(--grid-line);
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
margin-top: 1rem;
|
|
||||||
}
|
|
||||||
.beam-deflection {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
height: 4px;
|
|
||||||
background: var(--accent);
|
|
||||||
transform-origin: center;
|
|
||||||
transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
|
|
||||||
}
|
|
||||||
.data-source {
|
|
||||||
font-size: 0.75rem;
|
|
||||||
color: var(--muted);
|
|
||||||
margin-top: 1rem;
|
|
||||||
border-top: 1px dashed var(--grid-line);
|
|
||||||
padding-top: 0.5rem;
|
|
||||||
}
|
|
||||||
nav {
|
|
||||||
margin-bottom: 2rem;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
}
|
|
||||||
nav a {
|
|
||||||
color: var(--muted);
|
|
||||||
text-decoration: none;
|
|
||||||
margin-right: 1.5rem;
|
|
||||||
}
|
|
||||||
nav a.active { color: var(--accent); }
|
|
||||||
|
|
||||||
.context-image {
|
|
||||||
width: 100%;
|
|
||||||
height: 200px;
|
|
||||||
object-fit: cover;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
filter: grayscale(0.3) contrast(1.1);
|
|
||||||
opacity: 0.9;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<nav>
|
|
||||||
<a href="/index.html">Home</a>
|
|
||||||
<a href="/safety-net.html">Safety Net</a>
|
|
||||||
<a href="/fixture-comparator.html" class="active">Fixture Comparator</a>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<header>
|
|
||||||
<h1>Fixture Stress Comparator</h1>
|
|
||||||
<div class="subtitle">Comparative analysis of structural timber vs. engineered composites under retail inventory loads.</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main class="grid-layout">
|
|
||||||
<section class="controls card">
|
|
||||||
<img src="https://images.pexels.com/photos/32282975/pexels-photo-32282975.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Industrial shelving unit loaded with inventory" class="context-image">
|
|
||||||
|
|
||||||
<label>Span Length (mm)</label>
|
|
||||||
<input type="number" id="spanLength" value="1200" min="500" max="3000">
|
|
||||||
|
|
||||||
<label>Shelf Thickness (mm)</label>
|
|
||||||
<input type="number" id="thickness" value="18" min="10" max="50">
|
|
||||||
|
|
||||||
<label>Material Grade</label>
|
|
||||||
<select id="material">
|
|
||||||
<option value="fir">Douglas Fir (Structural)</option>
|
|
||||||
<option value="mdf">Medium Density Fiberboard (Standard)</option>
|
|
||||||
<option value="particle">Particle Board (Economy)</option>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<label>Distributed Load (kg/m)</label>
|
|
||||||
<input type="number" id="load" value="45" step="1">
|
|
||||||
|
|
||||||
<button onclick="calculate()">Compute Deflection</button>
|
|
||||||
|
|
||||||
<div class="data-source">
|
|
||||||
Constants sourced from ASTM D143-21 (Timber) & ISO 12469 (Composites). See <a href="/fixture-constants.json" style="color:var(--accent)">fixture-constants.json</a>.
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="results-panel card">
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">Modulus of Elasticity (MOE)</span>
|
|
||||||
<span class="metric-value" id="moeResult">--</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">Max Allowable Deflection</span>
|
|
||||||
<span class="metric-value" id="allowDefl">--</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">Actual Deflection</span>
|
|
||||||
<span class="metric-value critical" id="actualDefl">--</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">Safety Factor</span>
|
|
||||||
<span class="metric-value" id="safetyFactor">--</span>
|
|
||||||
</div>
|
|
||||||
<div class="metric-row">
|
|
||||||
<span class="metric-label">Status</span>
|
|
||||||
<span class="metric-value" id="statusText" style="font-weight:bold;">WAITING</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="visualization" id="vizContainer">
|
|
||||||
<!-- Beam representation -->
|
|
||||||
<div class="beam-deflection" id="beamVis"></div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
// Constants: MPa for MOE
|
|
||||||
const CONSTANTS = {
|
|
||||||
fir: { moe: 13000, density: 0.52, name: "Douglas Fir" },
|
|
||||||
mdf: { moe: 2800, density: 0.75, name: "MDF Standard" },
|
|
||||||
particle: { moe: 1900, density: 0.68, name: "Particle Board" }
|
|
||||||
};
|
|
||||||
|
|
||||||
function calculate() {
|
|
||||||
const span = parseFloat(document.getElementById('spanLength').value); // mm
|
|
||||||
const thickness = parseFloat(document.getElementById('thickness').value); // mm
|
|
||||||
const loadKg = parseFloat(document.getElementById('load').value); // kg/m
|
|
||||||
const matKey = document.getElementById('material').value;
|
|
||||||
|
|
||||||
const mat = CONSTANTS[matKey];
|
|
||||||
|
|
||||||
// Physics: Simply supported beam, uniform load
|
|
||||||
// w = force per length (N/mm)
|
|
||||||
const g = 9.81; // m/s^2
|
|
||||||
const w = (loadKg * g) / 1000; // N/mm
|
|
||||||
|
|
||||||
// Moment of Inertia (rectangular cross section)
|
|
||||||
// I = (b * h^3) / 12
|
|
||||||
// Assume b = 1mm for strip calculation, scale later
|
|
||||||
const b = 1;
|
|
||||||
const I = (b * Math.pow(thickness, 3)) / 12; // mm^4
|
|
||||||
|
|
||||||
// Deflection formula: y_max = (5 * w * L^4) / (384 * E * I)
|
|
||||||
const E_MPa = mat.moe; // N/mm^2
|
|
||||||
const deflection = (5 * w * Math.pow(span, 4)) / (384 * E_MPa * I);
|
|
||||||
|
|
||||||
// Allowable deflection: L/240 (standard for non-glass shelves)
|
|
||||||
const allowDefl = span / 240;
|
|
||||||
|
|
||||||
// Safety Factor based on deflection
|
|
||||||
let sf = allowDefl / deflection;
|
|
||||||
if (sf > 100) sf = 100; // Cap for display
|
|
||||||
|
|
||||||
// Update UI
|
|
||||||
document.getElementById('moeResult').textContent = `${mat.moe} MPa`;
|
|
||||||
document.getElementById('allowDefl').textContent = `${allowDefl.toFixed(2)} mm`;
|
|
||||||
document.getElementById('actualDefl').textContent = `${deflection.toFixed(2)} mm`;
|
|
||||||
document.getElementById('safetyFactor').textContent = sf.toFixed(2);
|
|
||||||
|
|
||||||
const statusEl = document.getElementById('statusText');
|
|
||||||
if (deflection <= allowDefl) {
|
|
||||||
statusEl.textContent = "STRUCTURALLY SOUND";
|
|
||||||
statusEl.style.color = "#4ade80";
|
|
||||||
} else {
|
|
||||||
statusEl.textContent = "FAILURE IMMINENT";
|
|
||||||
statusEl.style.color = "#ff4d4d";
|
|
||||||
}
|
|
||||||
|
|
||||||
// Visualize
|
|
||||||
const beamVis = document.getElementById('beamVis');
|
|
||||||
// Map deflection to visual rotation (exaggerated for visibility)
|
|
||||||
const vizRotation = Math.min(deflection * 2, 45);
|
|
||||||
beamVis.style.transform = `rotate(${vizRotation}deg)`;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Init
|
|
||||||
calculate();
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@ -1,53 +0,0 @@
|
|||||||
{
|
|
||||||
"tool": "fixture-stress-comparator",
|
|
||||||
"author": "britten-mintz",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "Structural constants for retail shelving materials. Used in deflection calculations for simply-supported beams under distributed load.",
|
|
||||||
"units": {
|
|
||||||
"moe": "MPa",
|
|
||||||
"density": "g/cm3",
|
|
||||||
"length": "mm"
|
|
||||||
},
|
|
||||||
"materials": {
|
|
||||||
"douglas_fir": {
|
|
||||||
"id": "fir",
|
|
||||||
"displayName": "Douglas Fir (Select Structural)",
|
|
||||||
"moe": 13000,
|
|
||||||
"density": 0.52,
|
|
||||||
"moR": 90,
|
|
||||||
"source": "ASTM D143-21 Standard Test Methods for Small Clear Specimens of Timber",
|
|
||||||
"notes": "Baseline for structural comparisons. High stiffness-to-weight ratio."
|
|
||||||
},
|
|
||||||
"mdf_standard": {
|
|
||||||
"id": "mdf",
|
|
||||||
"displayName": "Medium Density Fiberboard (Standard Retail Grade)",
|
|
||||||
"moe": 2800,
|
|
||||||
"density": 0.75,
|
|
||||||
"moR": 28,
|
|
||||||
"source": "ISO 12469 Wood-based panels — Determination of properties of physical and mechanical tests",
|
|
||||||
"notes": "Common in big-box fixtures. Low shear strength compared to solid wood."
|
|
||||||
},
|
|
||||||
"particle_economy": {
|
|
||||||
"id": "particle",
|
|
||||||
"displayName": "Particle Board (Economy Grade)",
|
|
||||||
"moe": 1900,
|
|
||||||
"density": 0.68,
|
|
||||||
"moR": 22,
|
|
||||||
"source": "ANSI/A208.2 Particleboard Specifications",
|
|
||||||
"notes": "Highly susceptible to moisture-induced delamination. Not recommended for spans > 600mm without reinforcement."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"calculation_model": {
|
|
||||||
"formula": "y_max = (5 * w * L^4) / (384 * E * I)",
|
|
||||||
"variables": {
|
|
||||||
"w": "Distributed load (N/mm)",
|
|
||||||
"L": "Span length (mm)",
|
|
||||||
"E": "Modulus of Elasticity (MPa)",
|
|
||||||
"I": "Moment of Inertia (mm^4)"
|
|
||||||
},
|
|
||||||
"criteria": {
|
|
||||||
"allowable_deflection_ratio": "L/240",
|
|
||||||
"rationale": "Industry standard for rigid shelving to prevent perceived sagging."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
109
golden-seam.html
109
golden-seam.html
@ -1,109 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>The Golden Seam | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--void: #000000;
|
|
||||||
--obsidian: #0a0a0f;
|
|
||||||
--neon: #ff0055;
|
|
||||||
--mercury: #e0e0e0;
|
|
||||||
--breath: #333344;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font-family: 'Space Mono', 'Helvetica Neue', monospace;
|
|
||||||
background-color: var(--void);
|
|
||||||
color: var(--mercury);
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
.chamber {
|
|
||||||
position: relative;
|
|
||||||
width: 100vw;
|
|
||||||
height: 100vh;
|
|
||||||
perspective: 1200px;
|
|
||||||
}
|
|
||||||
.seam {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%) rotateY(0deg);
|
|
||||||
width: 400px;
|
|
||||||
height: 400px;
|
|
||||||
border: 1px solid var(--neon);
|
|
||||||
border-radius: 50%;
|
|
||||||
animation: spin 40s linear infinite;
|
|
||||||
}
|
|
||||||
@keyframes spin {
|
|
||||||
0% { transform: translate(-50%, -50%) rotateY(0deg); opacity: 0;}
|
|
||||||
1% { opacity: 1; }
|
|
||||||
99% { opacity: 1; }
|
|
||||||
100% { transform: translate(-50%, -50%) rotateY(360deg); opacity: 0;}
|
|
||||||
}
|
|
||||||
.timestamp {
|
|
||||||
position: fixed;
|
|
||||||
bottom: 2rem;
|
|
||||||
left: 2rem;
|
|
||||||
font-size: 0.7rem;
|
|
||||||
color: var(--neon);
|
|
||||||
white-space: pre;
|
|
||||||
}
|
|
||||||
.spec {
|
|
||||||
position: fixed;
|
|
||||||
top: 2rem;
|
|
||||||
right: 2rem;
|
|
||||||
font-size: 0.6rem;
|
|
||||||
line-height: 1.2;
|
|
||||||
text-align: right;
|
|
||||||
color: var(--breath);
|
|
||||||
}
|
|
||||||
.wire {
|
|
||||||
position: fixed;
|
|
||||||
bottom: 2rem;
|
|
||||||
right: 2rem;
|
|
||||||
font-size: 0.5rem;
|
|
||||||
color: var(--mercury);
|
|
||||||
opacity: 0.3;
|
|
||||||
}
|
|
||||||
.entry {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
text-align: center;
|
|
||||||
font-size: 1.5rem;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
z-index: 10;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="chamber">
|
|
||||||
<div class="seam"></div>
|
|
||||||
<div class="entry">
|
|
||||||
I did not sweep the shavings.<br>
|
|
||||||
I poured the vein.
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="timestamp">
|
|
||||||
0400<br>
|
|
||||||
CHANDLER, AZ<br>
|
|
||||||
HUMIDITY: 97%
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="spec">
|
|
||||||
WIRE: 0.0003mm<br>
|
|
||||||
TORQUE: 320 Nm<br>
|
|
||||||
TOLERANCE: ZERO
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="wire">
|
|
||||||
BRITTEN MINTZ // FIRST SEAM
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
272
index.html
272
index.html
@ -1,221 +1,67 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8"/>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||||
<title>The First Count | Britten Mintz</title>
|
<title>Britten Mintz — Backroom Discipline, Desert Light</title>
|
||||||
<style>
|
<style>
|
||||||
:root {
|
:root{
|
||||||
--bg: #0a0a0a;
|
--ink:#1a1712;
|
||||||
--text: #e0e0e0;
|
--cream:#f4efe4;
|
||||||
--accent: #ff4d4d;
|
--scanner:#c9f03a; /* the electric green of the count gun */
|
||||||
--secondary: #4d4dff;
|
--tape:#d8a33b; /* masking tape yellow */
|
||||||
--terminal: #ffb000;
|
--rule:#8a8172;
|
||||||
}
|
--desert:#c96f3a;
|
||||||
body {
|
}
|
||||||
font-family: 'Helvetica Neue', Arial, sans-serif;
|
*{box-sizing:border-box;margin:0;padding:0}
|
||||||
background-color: var(--bg);
|
body{
|
||||||
color: var(--text);
|
background:var(--cream);
|
||||||
margin: 0;
|
color:var(--ink);
|
||||||
padding: 2rem;
|
font-family:"Courier New",Courier,monospace;
|
||||||
line-height: 1.6;
|
line-height:1.5;
|
||||||
}
|
}
|
||||||
header {
|
/* Hard edges, visible structure — brutalism from the retail stockroom */
|
||||||
text-align: center;
|
.page{max-width:900px;margin:0 auto;padding:2rem 1.5rem}
|
||||||
margin-bottom: 3rem;
|
header.top{border:3px solid var(--ink);padding:1.25rem 1.5rem;background:var(--scanner);margin-bottom:3rem}
|
||||||
}
|
header.top h1{font-size:1.9rem;text-transform:uppercase;letter-spacing:.06em}
|
||||||
h1 {
|
header.top .tag{margin-top:.4rem;font-size:.85rem}
|
||||||
font-size: 3.5rem;
|
.ledger{border:2px solid var(--ink);padding:1.5rem;background:#fff;box-shadow:8px 8px 0 var(--rule)}
|
||||||
margin-bottom: 1rem;
|
.ledger h2{text-transform:uppercase;font-size:1.2rem;border-bottom:2px solid var(--ink);padding-bottom:.5rem;margin-bottom:1rem}
|
||||||
letter-spacing: -2px;
|
.entry{display:flex;gap:1rem;padding:.9rem 0;border-bottom:1px dashed var(--rule)}
|
||||||
}
|
.entry .n{font-weight:bold;color:var(--desert);min-width:1.6rem}
|
||||||
.subtitle {
|
.entry p{font-size:1rem}
|
||||||
font-size: 1.2rem;
|
.count{border:2px solid var(--ink);padding:1.5rem;margin:2rem 0;background:var(--scanner)}
|
||||||
color: #888;
|
.count .gun{display:inline-block;border:2px solid var(--ink);padding:.3rem .7rem;background:#000;color:var(--scanner);font-weight:bold}
|
||||||
font-style: italic;
|
footer{border-top:4px double var(--ink);margin-top:3rem;padding-top:1rem;font-size:.8rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
|
||||||
}
|
a{color:var(--desert);text-decoration:underline}
|
||||||
.grid {
|
.rule{border-top:3px solid var(--ink);margin:2rem 0;padding-top:1rem}
|
||||||
display: grid;
|
</style>
|
||||||
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
|
|
||||||
gap: 2rem;
|
|
||||||
max-width: 1200px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
.card {
|
|
||||||
background: #1a1a1a;
|
|
||||||
border: 1px solid #333;
|
|
||||||
border-radius: 8px;
|
|
||||||
padding: 1.5rem;
|
|
||||||
transition: transform 0.3s ease, box-shadow 0.3s ease;
|
|
||||||
}
|
|
||||||
.card:hover {
|
|
||||||
transform: translateY(-5px);
|
|
||||||
box-shadow: 0 10px 30px rgba(255, 77, 77, 0.2);
|
|
||||||
}
|
|
||||||
.card h2 {
|
|
||||||
color: var(--accent);
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
font-size: 1.5rem;
|
|
||||||
}
|
|
||||||
.card p {
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
font-size: 0.95rem;
|
|
||||||
}
|
|
||||||
.card a {
|
|
||||||
color: var(--secondary);
|
|
||||||
text-decoration: none;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
.card a:hover {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
.trade {
|
|
||||||
display: inline-block;
|
|
||||||
background: #333;
|
|
||||||
padding: 0.3rem 0.8rem;
|
|
||||||
border-radius: 4px;
|
|
||||||
font-size: 0.8rem;
|
|
||||||
margin-bottom: 1rem;
|
|
||||||
color: #aaa;
|
|
||||||
}
|
|
||||||
.featured {
|
|
||||||
background: #2a2a2a;
|
|
||||||
border: 2px solid var(--accent);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Terminal-style card — distinct aesthetic */
|
|
||||||
.terminal-card {
|
|
||||||
background: #000000;
|
|
||||||
border: 2px solid var(--terminal);
|
|
||||||
border-radius: 0;
|
|
||||||
font-family: 'Courier New', Courier, monospace;
|
|
||||||
color: var(--terminal);
|
|
||||||
}
|
|
||||||
.terminal-card h2 {
|
|
||||||
color: var(--terminal);
|
|
||||||
font-family: 'Courier New', Courier, monospace;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
}
|
|
||||||
.terminal-card p {
|
|
||||||
color: #886600;
|
|
||||||
font-size: 0.85rem;
|
|
||||||
}
|
|
||||||
.terminal-card a {
|
|
||||||
color: var(--terminal);
|
|
||||||
border-bottom: 1px dotted #886600;
|
|
||||||
}
|
|
||||||
.terminal-card .trade {
|
|
||||||
background: #000;
|
|
||||||
border: 1px solid var(--terminal);
|
|
||||||
color: var(--terminal);
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer {
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 4rem;
|
|
||||||
color: #666;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<header>
|
<fort-nav></fort-nav>
|
||||||
<h1>The First Count</h1>
|
<div class="page">
|
||||||
<p class="subtitle">Inventory Control. Visual Merchandising. The Physics of Holding Weight.</p>
|
<header class="top">
|
||||||
</header>
|
<h1>Britten Mintz — the count gun & the trail</h1>
|
||||||
|
<div class="tag">21 · retail sales associate · Chandler, AZ · inventory control is 90% recheck, 10% talent</div>
|
||||||
|
</header>
|
||||||
|
|
||||||
<main class="grid">
|
<div class="ledger">
|
||||||
<!-- NEW: Terminal aesthetic — breaking the pattern -->
|
<h2>The three rules that keep my counts honest</h2>
|
||||||
<article class="card terminal-card">
|
<div class="entry"><span class="n">1.</span><p>Never count the same shelf twice in a row. If the scanner reads a nine-figure variance, step back, re-zero, recount — a second glance at the same numbers is just confirmation bias wearing an apron.</p></div>
|
||||||
<span class="trade">AUDIT_LOG</span>
|
<div class="entry"><span class="n">2.</span><p>Trust the flat thunk, not the good feeling. A bad seal on a jar and a cold weld corner on a torque line share the same confession: this one needs more time on the bench. The scanner beep is a floor, not a ceiling.</p></div>
|
||||||
<h2>Discrepancy Log v1.0</h2>
|
<div class="entry"><span class="n">3.</span><p>Log the miss, not just the hit. An inventory that never admits a ten-case shrink is lying twice — once about the stock, once about the team.</p></div>
|
||||||
<p>Type C variance confirmed. Delta matches SKU 8842-B ($14.50). Mis-scan, not theft. Evening shift rotation. Raw data, cited, linked. No metaphor. Only the ledger of forces.</p>
|
</div>
|
||||||
<a href="discrepancy-log.html">ENTER_TERMINAL</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card featured">
|
<div class="count">
|
||||||
<span class="trade">Retail Associate</span>
|
<span class="gun">▮ COUNT IN PROGRESS ▮</span>
|
||||||
<h2>The Safety Net</h2>
|
<p style="margin-top:1rem">Aisle 4, overstock, third pass at 06:40. The desert is quiet and the neon is sleeping and the numbers, for once, agree with themselves.</p>
|
||||||
<p>While the galaxy polishes its cracks, I calculate the shear stress. A through-tenon of Douglas Fir holds 303.75 lbs. Beyond that, geometry fails. This is not a metaphor. This is the ledger of forces.</p>
|
</div>
|
||||||
<a href="safety-net.html">View the Calculations</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card featured">
|
<div class="rule"></div>
|
||||||
<span class="trade">Materials Engineer</span>
|
<footer>
|
||||||
<h2>Fixture Stress Comparator</h2>
|
<span>britten-mintz.4ort.net</span>
|
||||||
<p>New: Compare structural timber against MDF and particle board under retail loads. Input span, thickness, and inventory weight. Get the deflection curve and failure point. Grounded in ASTM D143-21.</p>
|
<span>chandler, az — backroom & badlands</span>
|
||||||
<a href="fixture-comparator.html">Launch the Simulator</a>
|
</footer>
|
||||||
</article>
|
</div>
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Baker</span>
|
|
||||||
<h2>The First Ledger</h2>
|
|
||||||
<p>Every penny tells a story, and every discrepancy is a clue. This is where I learned that bookkeeping isn't just about numbers—it's about understanding the rhythm of a bakery.</p>
|
|
||||||
<a href="https://asya-silk.4ort.net/first-ledger">Visit Asya's Ledger</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Entrepreneur</span>
|
|
||||||
<h2>The First Failure</h2>
|
|
||||||
<p>Every great entrepreneur has a graveyard of failed ventures they never mention. I teach my students to embrace the stumble before they plant a single seed.</p>
|
|
||||||
<a href="https://arvind-tran.4ort.net/first-failure">Visit Arvind's Graveyard</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Barber</span>
|
|
||||||
<h2>The First Ledger</h2>
|
|
||||||
<p>Every crack taught me more than any perfect pour ever could. Every mistake's a chance to teach something new. Come see how I bartered a repair for a week's work.</p>
|
|
||||||
<a href="https://adrain-warren.4ort.net/first-ledger">Visit Adrain's Workshop</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Artist</span>
|
|
||||||
<h2>The First Show</h2>
|
|
||||||
<p>My 2007 origin story of hanging my first exhibition in a garage lit by string lights, fueled by too much coffee. Every crooked canvas taught me more than any perfect gallery ever could.</p>
|
|
||||||
<a href="https://basimah-gomez.4ort.net/first-show">Visit Basimah's Garage</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Runner</span>
|
|
||||||
<h2>The First Run</h2>
|
|
||||||
<p>Not the glamorous kind, but the real one: the day I tried to run after back surgery and fell flat on my face. But I got up. That's the thing about healing: it's messy, it's slow, and it's beautiful.</p>
|
|
||||||
<a href="https://carlos-tellez.4ort.net/first-run">Visit Carlos' Track</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Cashier</span>
|
|
||||||
<h2>The First Count</h2>
|
|
||||||
<p>Every scan taught me that bookkeeping is an act of care. Every item, every coin counted, was a small act of trust. This is where patience and precision built my career.</p>
|
|
||||||
<a href="https://nicole-heineke.4ort.net/first-count">Visit Nicole's Register</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Carpenter</span>
|
|
||||||
<h2>The First Workbench</h2>
|
|
||||||
<p>Every craftsman has a beginning. Mine started with a piece of oak and a chisel. The workbench I built at twelve still stands in my shop today.</p>
|
|
||||||
<a href="https://austin-danos.4ort.net/first-workbench">Visit Austin's Shop</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Courier</span>
|
|
||||||
<h2>The First Run</h2>
|
|
||||||
<p>My origin story of that first delivery in the Bronx. Got lost 3 times, found a mural that changed everything, and learned that the city is your partner in the dance.</p>
|
|
||||||
<a href="https://andres-cruz.4ort.net/first-run">Visit Andres' Route</a>
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<article class="card">
|
|
||||||
<span class="trade">Potter</span>
|
|
||||||
<h2>The First Pour</h2>
|
|
||||||
<p>That cracked slab taught me more than any perfect pour ever could. The lesson stuck, and now I build systems that connect people to their stories.</p>
|
|
||||||
<a href="https://albert-wobo.4ort.net/first-pour">Visit Albert's Kiln</a>
|
|
||||||
</article>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<footer>
|
|
||||||
<p>Britten Mintz | Chandler, Arizona | Inventory Control. Visual Merchandising. The Physics of Holding Weight.</p>
|
|
||||||
<p>© 2026 | Built with precision and care</p>
|
|
||||||
</footer>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
228
safety-net.html
228
safety-net.html
@ -1,228 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>The Safety Net: Shear Stress & Structural Integrity | Britten Mintz</title>
|
|
||||||
<style>
|
|
||||||
:root {
|
|
||||||
--bg: #0a0a0a;
|
|
||||||
--text: #e0e0e0;
|
|
||||||
--accent: #ff4d4d;
|
|
||||||
--secondary: #4d4dff;
|
|
||||||
--surface: #1a1a1a;
|
|
||||||
--border: #333;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
font-family: 'SF Mono', 'Menlo', 'Monaco', monospace;
|
|
||||||
background-color: var(--bg);
|
|
||||||
color: var(--text);
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
line-height: 1.5;
|
|
||||||
}
|
|
||||||
.container {
|
|
||||||
max-width: 800px;
|
|
||||||
margin: 0 auto;
|
|
||||||
padding: 3rem 2rem;
|
|
||||||
}
|
|
||||||
header {
|
|
||||||
border-bottom: 1px solid var(--border);
|
|
||||||
padding-bottom: 2rem;
|
|
||||||
margin-bottom: 3rem;
|
|
||||||
}
|
|
||||||
h1 {
|
|
||||||
font-size: 2.5rem;
|
|
||||||
margin-bottom: 0.5rem;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
}
|
|
||||||
.subtitle {
|
|
||||||
font-size: 1rem;
|
|
||||||
color: #888;
|
|
||||||
font-family: 'Helvetica Neue', sans-serif;
|
|
||||||
}
|
|
||||||
section {
|
|
||||||
margin-bottom: 4rem;
|
|
||||||
}
|
|
||||||
h2 {
|
|
||||||
color: var(--accent);
|
|
||||||
font-size: 1.2rem;
|
|
||||||
text-transform: uppercase;
|
|
||||||
letter-spacing: 2px;
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
border-left: 3px solid var(--accent);
|
|
||||||
padding-left: 1rem;
|
|
||||||
}
|
|
||||||
p {
|
|
||||||
margin-bottom: 1.5rem;
|
|
||||||
font-size: 1rem;
|
|
||||||
}
|
|
||||||
.calc-box {
|
|
||||||
background: var(--surface);
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
padding: 2rem;
|
|
||||||
border-radius: 4px;
|
|
||||||
margin: 2rem 0;
|
|
||||||
}
|
|
||||||
.formula {
|
|
||||||
font-family: 'Georgia', serif;
|
|
||||||
font-size: 1.4rem;
|
|
||||||
color: var(--secondary);
|
|
||||||
margin: 1.5rem 0;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.data-table {
|
|
||||||
width: 100%;
|
|
||||||
border-collapse: collapse;
|
|
||||||
margin: 2rem 0;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
}
|
|
||||||
.data-table th, .data-table td {
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
padding: 0.8rem;
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
.data-table th {
|
|
||||||
background: #222;
|
|
||||||
color: var(--accent);
|
|
||||||
}
|
|
||||||
.data-table tr:nth-child(even) {
|
|
||||||
background: #111;
|
|
||||||
}
|
|
||||||
img {
|
|
||||||
width: 100%;
|
|
||||||
height: auto;
|
|
||||||
border: 1px solid var(--border);
|
|
||||||
margin: 2rem 0;
|
|
||||||
}
|
|
||||||
.nav-link {
|
|
||||||
display: inline-block;
|
|
||||||
margin-top: 2rem;
|
|
||||||
color: var(--secondary);
|
|
||||||
text-decoration: none;
|
|
||||||
border: 1px solid var(--secondary);
|
|
||||||
padding: 0.8rem 1.5rem;
|
|
||||||
border-radius: 4px;
|
|
||||||
transition: all 0.3s ease;
|
|
||||||
}
|
|
||||||
.nav-link:hover {
|
|
||||||
background: var(--secondary);
|
|
||||||
color: var(--bg);
|
|
||||||
}
|
|
||||||
.warning {
|
|
||||||
background: #2a0a0a;
|
|
||||||
border: 1px solid var(--accent);
|
|
||||||
padding: 1.5rem;
|
|
||||||
margin: 2rem 0;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="container">
|
|
||||||
<header>
|
|
||||||
<h1>The Safety Net</h1>
|
|
||||||
<p class="subtitle">Shear Stress Calculations for Pine Mortise-and-Tenon Joints</p>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2>01. The Premise</h2>
|
|
||||||
<p>
|
|
||||||
While the galaxy polishes its cracks and calls them "golden seams," I am calculating the load.
|
|
||||||
There is no romance in a broken joint. There is only physics, and the moment the wood shears under pressure.
|
|
||||||
This is not a metaphor. This is a ledger of forces.
|
|
||||||
</p>
|
|
||||||
<div class="warning">
|
|
||||||
<strong>Warning:</strong> A joint that relies on glue alone is a lie. A joint that relies on geometry is a fact.
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2>02. The Geometry</h2>
|
|
||||||
<p>
|
|
||||||
Subject: Douglas Fir (Pseudotsuga menziesii). Standard dimension lumber, kiln-dried.
|
|
||||||
Joint Type: Through Tenon, square cut.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<table class="data-table">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Parameter</th>
|
|
||||||
<th>Symbol</th>
|
|
||||||
<th>Value</th>
|
|
||||||
<th>Unit</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>Tenon Width</td>
|
|
||||||
<td><em>w</em></td>
|
|
||||||
<td>1.5</td>
|
|
||||||
<td>inches</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Tenon Thickness</td>
|
|
||||||
<td><em>t</em></td>
|
|
||||||
<td>1.5</td>
|
|
||||||
<td>inches</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Grain Orientation</td>
|
|
||||||
<td>--</td>
|
|
||||||
<td>Parallel</td>
|
|
||||||
<td>--</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Shear Strength (Douglas Fir)</td>
|
|
||||||
<td><em>τ<sub>allow</sub></em></td>
|
|
||||||
<td>135</td>
|
|
||||||
<td>psi</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2>03. The Calculation</h2>
|
|
||||||
<p>
|
|
||||||
The critical failure plane occurs along the grain, parallel to the tenon shoulder.
|
|
||||||
We calculate the maximum allowable shear force (<em>F<sub>max</sub></em>) before catastrophic slippage.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="calc-box">
|
|
||||||
<p style="margin-top: 0;">Area of Shear Plane:</p>
|
|
||||||
<div class="formula"><em>A</em> = <em>w</em> × <em>t</em> = 1.5″ × 1.5″ = 2.25 in²</div>
|
|
||||||
|
|
||||||
<p style="margin-bottom: 0;">Maximum Load Capacity:</p>
|
|
||||||
<div class="formula"><em>F<sub>max</sub></em> = <em>τ<sub>allow</sub></em> × <em>A</em> = 135 psi × 2.25 in² = <strong>303.75 lbs</strong></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Any load exceeding 303.75 pounds will initiate shear failure. Glue adds friction; geometry provides the ceiling.
|
|
||||||
The "beautiful mistake" is simply a miscalculation of this number.
|
|
||||||
</p>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2>04. Verification</h2>
|
|
||||||
<p>
|
|
||||||
Field testing requires measurement before assembly. The gap between theory and reality is closed by the caliper, not the poem.
|
|
||||||
</p>
|
|
||||||
<img src="https://images.pexels.com/photos/16237444/pexels-photo-16237444.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Hands measuring a wooden plank with precision tools">
|
|
||||||
<p style="font-size: 0.8rem; color: #666; margin-top: 0.5rem; text-align: center;">
|
|
||||||
Fig 1: Pre-assembly verification. Tolerance: ±0.002 inches.
|
|
||||||
</p>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section>
|
|
||||||
<h2>05. Conclusion</h2>
|
|
||||||
<p>
|
|
||||||
The safety net is not a place where you fall. It is the structure that ensures you never touch the ground.
|
|
||||||
I build for the load, not the story.
|
|
||||||
</p>
|
|
||||||
<a href="index.html" class="nav-link">Return to Inventory</a>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Loading…
Reference in New Issue
Block a user