{
  "$schema": "https://ndcodex.com/schemas/object/v1.json",
  "id": "codex://object/i-wasn-t-trying-to-build-a-design-system",
  "archive_id": "i-wasn-t-trying-to-build-a-design-system",
  "slug": "i-wasn-t-trying-to-build-a-design-system",
  "url": "https://ndcodex.com/codex/i-wasn-t-trying-to-build-a-design-system/",
  "type": "codex",
  "object_form": "coordinate",
  "title": "I Thought I Was Drawing a HUD",
  "summary": "I was drawing interface fragments. Target brackets. Tiny typography. Floating markers. Signal colors. Telemetry. The familiar visual language we've inherited from aircraft, radar scopes, engineering manuals, and decades",
  "content_text": "I wasn't trying to build a design system.\n\nI was drawing interface fragments.\n\nTarget brackets.\n\nTiny typography.\n\nFloating markers.\n\nSignal colors.\n\nTelemetry.\n\nThe familiar visual language we've inherited from aircraft, radar scopes, engineering manuals, and decades of science fiction.\n\nAt first it was simply an aesthetic exploration.\n\nThen something unexpected happened.\n\nThe interesting part wasn't any individual graphic.\n\nIt was the grammar forming underneath them.\n\nCertain elements always carried identity.\n\nOthers implied measurement.\n\nSome communicated certainty.\n\nOthers suggested possibility.\n\nEven the negative space stopped feeling empty.\n\nIt had become part of the instrument.\n\nThat realization quietly changed the project.\n\nI stopped asking,\n\nWhat should this HUD look like?\n\nand started asking,\n\nHow do humans build instruments to understand the world?\n\nThat single question widened everything.\n\n---\n\nFollowing the thread\n\nCuriosity has a habit of refusing to stay in its lane.\n\nRadar led to AWACS.\n\nAWACS led to civilian maritime systems.\n\nMaritime systems led to vessel identity.\n\nIdentity led to provenance.\n\nProvenance led to confidence.\n\nConfidence led to epidemiology.\n\nEach stop added another way of thinking about information, not another way of decorating a screen.\n\nSoon I wasn't collecting interface references.\n\nI was studying how different disciplines represent evidence.\n\nPilots.\n\nControllers.\n\nMeteorologists.\n\nMariners.\n\nPower-grid operators.\n\nTransit coordinators.\n\nPublic health researchers.\n\nDifferent domains.\n\nRemarkably similar questions.\n\n---\n\nResearch should change the primitives\n\nOne lesson kept repeating itself.\n\nResearch shouldn't decorate a design system.\n\nIt should change the primitives the system is built from.\n\nIf the vocabulary underneath the interface never evolves, you've probably gathered references instead of learning something.\n\nThe library slowly reorganized itself around ideas instead of graphics.\n\nNot \"yellow bracket.\"\n\nIdentity.\n\nNot \"cyan line.\"\n\nMeasurement.\n\nNot \"red label.\"\n\nAuthority.\n\nNot \"warning card.\"\n\nEvidence.\n\nThe system eventually settled into a handful of semantic foundations.\n\nIdentity\n\nEvidence\n\nState\n\nAuthority\n\nIntegrity\n\nMeasurement\n\nNavigation\n\nEnvironment\n\nCoordination\n\nThose ideas travel surprisingly well.\n\nAn identity field doesn't care whether it's describing a vessel, an aircraft, a laboratory sample, a transit vehicle, or a transformer on a power grid.\n\nThe rendering changes.\n\nThe responsibility stays the same.\n\n---\n\nInstruments reveal how much they know\n\nOne discovery surprised me more than any other.\n\nReal operational systems rarely present information as absolute truth.\n\nThey expose how the information came into existence.\n\nObserved.\n\nReported.\n\nCorrelated.\n\nInferred.\n\nThose aren't stylistic differences.\n\nThey're fundamentally different relationships with reality.\n\nThe same became true for integrity.\n\nValid.\n\nDegraded.\n\nLost.\n\nAnd authority.\n\nRecommended.\n\nInstructed.\n\nAcknowledged.\n\nExecuting.\n\nOnce those distinctions became part of the system, the HUD stopped behaving like a visual theme.\n\nIt became a language for reasoning about operational information.\n\n---\n\nDesigning for imperfect conditions\n\nBeautiful interfaces are easy.\n\nReadable instruments are much harder.\n\nThe system eventually grew explicit operating modes.\n\nNormal\n\nLow Light\n\nHigh Glare\n\nDegraded\n\nThese weren't alternate color palettes.\n\nThey changed contrast.\n\nDensity.\n\nStroke weight.\n\nSignal hierarchy.\n\nLegibility.\n\nEverything that determines whether an operator can still make good decisions when the environment refuses to cooperate.\n\nThat naturally expanded into physical-display research.\n\nViewing angles.\n\nVisual angle.\n\nContrast thresholds.\n\nFrame rates.\n\nMoving-edge blur.\n\nAmbient lighting.\n\nPixel density.\n\nNone of it feels glamorous.\n\nAll of it matters.\n\nA beautiful instrument that cannot be read under pressure is simply decoration.\n\n---\n\nThe moment that mattered\n\nThe biggest lesson arrived after I thought the work was finished.\n\nI created a completely empty Figma file.\n\nNothing copied.\n\nNothing rebuilt.\n\nNothing recreated.\n\nIf the system was real, another document should be able to consume it.\n\nAt first...\n\nit couldn't.\n\nThat failure became the most valuable part of the project.\n\nPublishing.\n\nLibrary context.\n\nRemote components.\n\nVariables.\n\nMode collections.\n\nStable keys.\n\nAll of the invisible infrastructure suddenly mattered.\n\nEventually the pieces clicked into place.\n\nA clean downstream file discovered the published library.\n\nRemote components imported successfully.\n\nOperating-condition variables resolved correctly.\n\nFour independent operating modes rendered exactly as intended.\n\nNothing had been rebuilt.\n\nNothing duplicated.\n\nEverything remained connected to the original source.\n\nThe proof wasn't that the library existed.\n\nThe proof was that it could leave home.\n\n---\n\nA different definition of \"done\"\n\nI used to think a design system was finished when the source file felt complete.\n\nI don't believe that anymore.\n\nA design system isn't finished when it's organized.\n\nIt isn't finished when it's documented.\n\nIt isn't finished when it looks beautiful.\n\nIt's finished when another file can consume it without rebuilding it.\n\nThat's a much higher bar.\n\nIt's also the only one that matters.\n\n---\n\nWhat stayed with me\n\nLooking back, this project was never really about HUDs.\n\nIt became a study of attention.\n\nEvery instrument, regardless of discipline, quietly asks the same questions.\n\nWhat am I looking at?\n\nWhere did this information come from?\n\nHow old is it?\n\nHow certain is it?\n\nWhat changed?\n\nWhat deserves my attention now?\n\nWhether you're flying an aircraft, monitoring a weather system, tracking a vessel, coordinating transit, balancing a power grid, or interpreting public health data...\n\nthe graphics change.\n\nThe questions don't.\n\nThat's the part I wasn't expecting.\n\nI thought I was designing a HUD.\n\nWhat emerged instead was something closer to an atlas of perception.\n\nA language for making evidence visible.\n\nAnd I suspect that's a much more interesting place to keep exploring.",
  "content_markdown": "# I wasn't trying to build a design system.\n\nI was drawing interface fragments.\n\nTarget brackets.\n\nTiny typography.\n\nFloating markers.\n\nSignal colors.\n\nTelemetry.\n\nThe familiar visual language we've inherited from aircraft, radar scopes, engineering manuals, and decades of science fiction.\n\nAt first it was simply an aesthetic exploration.\n\nThen something unexpected happened.\n\nThe interesting part wasn't any individual graphic.\n\nIt was the grammar forming underneath them.\n\nCertain elements always carried identity.\n\nOthers implied measurement.\n\nSome communicated certainty.\n\nOthers suggested possibility.\n\nEven the negative space stopped feeling empty.\n\nIt had become part of the instrument.\n\nThat realization quietly changed the project.\n\nI stopped asking,\n\n> *What should this HUD look like?*\n\nand started asking,\n\n> *How do humans build instruments to understand the world?*\n\nThat single question widened everything.\n\n---\n\n## Following the thread\n\nCuriosity has a habit of refusing to stay in its lane.\n\nRadar led to AWACS.\n\nAWACS led to civilian maritime systems.\n\nMaritime systems led to vessel identity.\n\nIdentity led to provenance.\n\nProvenance led to confidence.\n\nConfidence led to epidemiology.\n\nEach stop added another way of thinking about information, not another way of decorating a screen.\n\nSoon I wasn't collecting interface references.\n\nI was studying how different disciplines represent evidence.\n\nPilots.\n\nControllers.\n\nMeteorologists.\n\nMariners.\n\nPower-grid operators.\n\nTransit coordinators.\n\nPublic health researchers.\n\nDifferent domains.\n\nRemarkably similar questions.\n\n---\n\n## Research should change the primitives\n\nOne lesson kept repeating itself.\n\nResearch shouldn't decorate a design system.\n\nIt should change the primitives the system is built from.\n\nIf the vocabulary underneath the interface never evolves, you've probably gathered references instead of learning something.\n\nThe library slowly reorganized itself around ideas instead of graphics.\n\nNot \"yellow bracket.\"\n\nIdentity.\n\nNot \"cyan line.\"\n\nMeasurement.\n\nNot \"red label.\"\n\nAuthority.\n\nNot \"warning card.\"\n\nEvidence.\n\nThe system eventually settled into a handful of semantic foundations.\n\n- Identity\n- Evidence\n- State\n- Authority\n- Integrity\n- Measurement\n- Navigation\n- Environment\n- Coordination\n\nThose ideas travel surprisingly well.\n\nAn identity field doesn't care whether it's describing a vessel, an aircraft, a laboratory sample, a transit vehicle, or a transformer on a power grid.\n\nThe rendering changes.\n\nThe responsibility stays the same.\n\n---\n\n## Instruments reveal how much they know\n\nOne discovery surprised me more than any other.\n\nReal operational systems rarely present information as absolute truth.\n\nThey expose how the information came into existence.\n\nObserved.\n\nReported.\n\nCorrelated.\n\nInferred.\n\nThose aren't stylistic differences.\n\nThey're fundamentally different relationships with reality.\n\nThe same became true for integrity.\n\nValid.\n\nDegraded.\n\nLost.\n\nAnd authority.\n\nRecommended.\n\nInstructed.\n\nAcknowledged.\n\nExecuting.\n\nOnce those distinctions became part of the system, the HUD stopped behaving like a visual theme.\n\nIt became a language for reasoning about operational information.\n\n---\n\n## Designing for imperfect conditions\n\nBeautiful interfaces are easy.\n\nReadable instruments are much harder.\n\nThe system eventually grew explicit operating modes.\n\n- Normal\n- Low Light\n- High Glare\n- Degraded\n\nThese weren't alternate color palettes.\n\nThey changed contrast.\n\nDensity.\n\nStroke weight.\n\nSignal hierarchy.\n\nLegibility.\n\nEverything that determines whether an operator can still make good decisions when the environment refuses to cooperate.\n\nThat naturally expanded into physical-display research.\n\nViewing angles.\n\nVisual angle.\n\nContrast thresholds.\n\nFrame rates.\n\nMoving-edge blur.\n\nAmbient lighting.\n\nPixel density.\n\nNone of it feels glamorous.\n\nAll of it matters.\n\nA beautiful instrument that cannot be read under pressure is simply decoration.\n\n---\n\n## The moment that mattered\n\nThe biggest lesson arrived after I thought the work was finished.\n\nI created a completely empty Figma file.\n\nNothing copied.\n\nNothing rebuilt.\n\nNothing recreated.\n\nIf the system was real, another document should be able to consume it.\n\nAt first...\n\nit couldn't.\n\nThat failure became the most valuable part of the project.\n\nPublishing.\n\nLibrary context.\n\nRemote components.\n\nVariables.\n\nMode collections.\n\nStable keys.\n\nAll of the invisible infrastructure suddenly mattered.\n\nEventually the pieces clicked into place.\n\nA clean downstream file discovered the published library.\n\nRemote components imported successfully.\n\nOperating-condition variables resolved correctly.\n\nFour independent operating modes rendered exactly as intended.\n\nNothing had been rebuilt.\n\nNothing duplicated.\n\nEverything remained connected to the original source.\n\nThe proof wasn't that the library existed.\n\nThe proof was that it could leave home.\n\n---\n\n## A different definition of \"done\"\n\nI used to think a design system was finished when the source file felt complete.\n\nI don't believe that anymore.\n\nA design system isn't finished when it's organized.\n\nIt isn't finished when it's documented.\n\nIt isn't finished when it looks beautiful.\n\nIt's finished when another file can consume it without rebuilding it.\n\nThat's a much higher bar.\n\nIt's also the only one that matters.\n\n---\n\n## What stayed with me\n\nLooking back, this project was never really about HUDs.\n\nIt became a study of attention.\n\nEvery instrument, regardless of discipline, quietly asks the same questions.\n\nWhat am I looking at?\n\nWhere did this information come from?\n\nHow old is it?\n\nHow certain is it?\n\nWhat changed?\n\nWhat deserves my attention now?\n\nWhether you're flying an aircraft, monitoring a weather system, tracking a vessel, coordinating transit, balancing a power grid, or interpreting public health data...\n\nthe graphics change.\n\nThe questions don't.\n\nThat's the part I wasn't expecting.\n\nI thought I was designing a HUD.\n\nWhat emerged instead was something closer to an atlas of perception.\n\nA language for making evidence visible.\n\nAnd I suspect that's a much more interesting place to keep exploring.",
  "author": {
    "name": "Nathan Davis",
    "designation": "Archive Operator",
    "role": "Archive Operator",
    "avatar": "/media/people/nathan-davis.jpg"
  },
  "contributors": [
    {
      "name": "Nathan Davis",
      "designation": "Archive Operator",
      "role": "Archive Operator",
      "avatar": "/media/people/nathan-davis.jpg"
    }
  ],
  "date_published": "2026-07-21T01:44:20.009Z",
  "date_modified": "2026-07-21T01:44:20.009Z",
  "status": "published",
  "visibility": "public",
  "language": "en-US",
  "axes": {
    "scale": "micro",
    "depth": "structural",
    "focus": "system",
    "function": "diagnostic"
  },
  "themes": [],
  "constellations": [],
  "tags": [
    "instrumentation",
    "design systems",
    "figma",
    "interface design",
    "research",
    "ndcodex"
  ],
  "keywords": [
    "Codex",
    "instrumentation",
    "design systems",
    "figma",
    "interface design",
    "research",
    "ndcodex"
  ],
  "relations": [],
  "media": [
    {
      "kind": "image",
      "src": "/media/pigeon/codex/i-wasn-t-trying-to-build-a-design-system-01.png",
      "role": "hero",
      "alt": "r",
      "capture": {
        "width": 1536,
        "height": 1024,
        "shape": "wide",
        "format": "png",
        "originalFilename": "r.png",
        "uploadedAt": "2026-07-21T01:44:19.805Z"
      }
    }
  ],
  "capture": {
    "protocol_version": "pigeon-1.1",
    "capture_mode": "default",
    "object_form": "coordinate",
    "object_form_source": "suggestion",
    "object_form_suggestion": "coordinate",
    "object_form_lock": null,
    "type_resolution": "staging",
    "orientation": {
      "prompt_set": "coordinate",
      "optional": true,
      "supportive": true
    },
    "trace": null,
    "media_intent": [
      {
        "original_filename": "r.png",
        "role": "hero",
        "source": true,
        "potential_coordinate": false,
        "isolate_later": false,
        "index": 1,
        "src": "/media/pigeon/codex/i-wasn-t-trying-to-build-a-design-system-01.png"
      }
    ],
    "staging": null
  }
}