Skip to content

Primers: one merged set of 62 primers in 8 areas (the old Tech 101s) - #4

Merged
markbac merged 1 commit into
mainfrom
claude/section-primers-b1c556
Oct 17, 2026
Merged

markbac merged 1 commit into
mainfrom
claude/section-primers-b1c556

Conversation

@markbac

@markbac markbac commented Oct 17, 2026

Copy link
Copy Markdown
Owner

Moves the Primers section (the old Tech 101s) into content/primers/ (document primers). It merges three sources into one set: 62 primers in 8 areas, an area page for each, and the section overview.

The two main sources were almost the same LLM-written text. technical-documentation's primers are the 101s plus captions, links and five new pages. So each primer is a rewrite rather than an edit. I kept the structure and the unique material (tables, fault-injection scenarios, reading paths) and dropped the "comprehensive guide for strategic leaders" boilerplate. I also fixed factual errors (listed below). I added 24 new primers from the archive's generated topic notes where the topic was foundational and missing.

Layout

  • Flat files, because py-doc flattens subfolders on the site anyway (content/primers/cloud/x.md becomes primers/x/).
  • Grouping: py-doc.yml lists each area page (architecture.md, cloud.md and so on) with page_break: true, followed by its primers with heading_offset: 1. In Word and PDF each area is a chapter and each primer a section within it (checked in the PDF's contents). On the site, the offset is ignored and every primer is its own page.
  • Each primer is about 500 to 900 words. Each ends with a "Where next" list that links to the Guides, Handbook, Glossary, Standards, Guidelines, Templates or Tech Radar section by its index page, without assuming page paths, and to one or two external references.

Checks

  • py-doc lint content/primers --strict: 71 files, 0 warnings or errors (Vale 3.x, en-GB). 932 info notes remain, mostly passive voice and acronyms defined in the Glossary.
  • py-doc build primers: build/primers.docx and build/primers.pdf (127 pages). All 43 diagrams draw (41 Mermaid, 2 PlantUML).
  • py-doc site build: succeeds for both targets. site/build/primers/ and site/build-tarf/primers/ each have 71 pages, and the cross-section links resolve to ../../guides/ and so on.

Provenance

TD = technical-documentation docs/primers/, 101 = site-web-content-src 101s/src/, AR = technical-documentation archive/documentation/topics/output/.

New file From
index.md TD index.md (reading paths kept and updated), 101 index.md
architecture.md New area page (replaces TD architecture/index.md and 101 Software_Development_&_Architecture.md)
architecture-decision-records.md TD architecture/architecture-decision-records.md, 101 ADRs_101.md, AR architecture/documentation/adrs_primer.md
c4-model.md TD architecture/c4-model.md, 101 C4_Model_101.md, AR architecture/documentation/c4_model_primer.md
design-principles.md New, from AR software_engineering/principles/solid_principles_primer.md, dry_kiss_yagni_primer.md
design-patterns.md TD architecture/design-patterns.md, 101 Design_Patterns_in_Software_Development_101.md, AR software_engineering/patterns/design_patterns_gof_primer.md and design_patterns/*
anti-patterns.md New, from AR software_engineering/anti_patterns/* (12 notes merged)
hexagonal-architecture.md New, from AR architecture/styles/hexagonal_architecture.md, software_engineering/architecture_principles/clean_architecture_overview.md
domain-driven-design.md TD architecture/domain-driven-design.md, 101 Domain-Driven_Design_(DDD)_101.md, AR software_engineering/architecture_principles/ddd_overview.md
event-driven-architecture.md TD architecture/event-driven-architecture.md, 101 Event-Driven_Architecture_101.md, AR architecture/styles/event_driven_architecture.md
modular-monolith-vs-microservices.md TD architecture/modular-monolith-vs-microservices.md, 101 Modular_Monolith_vs_Microservices_101.md, AR architecture/styles/microservice_architecture.md
digital-twins-and-device-shadows.md TD architecture/digital-twins-and-shadow-state.md
distributed-systems.md New area page
cap-and-pacelc.md New, from AR distributed_systems/fundamentals/cap_theorem.md, pacelc_theorem.md
consistency-models.md New, from AR distributed_systems/consistency/eventual_consistency.md, crdts_primer.md
idempotency.md New, from AR distributed_systems/fundamentals/idempotency_primer.md
saga-pattern.md New, from AR distributed_systems/fundamentals/saga_pattern.md
apis-and-data.md New area page
rest-apis.md New, from AR api_data/api_styles/rest_primer.md
openapi-and-asyncapi.md New, from AR api_data/api_specs/openapi_overview.md, asyncapi_overview.md
data-formats.md New, from AR api_data/data_formats/json_yaml_primer.md, protobuf_primer.md
cbor.md TD iot-embedded/cbor-and-binary-serialization.md
cloud.md TD cloud/index.md, 101 Cloud_Technologies.md (service-model table kept)
cicd-pipelines.md TD cloud/cicd-pipelines.md, 101 CICD_Pipelines_in_Cloud_101.md, AR software_engineering/practices/ci_fundamentals.md
infrastructure-as-code.md TD cloud/infrastructure-as-code.md, 101 Infrastructure_as_Code_(IaC)_101.md
serverless-computing.md TD cloud/serverless-computing.md, 101 Serverless_Computing_101.md
kafka-event-streaming.md TD cloud/kafka-event-streaming.md, 101 Event_Streaming_with_Kafka_101.md
iot-on-google-cloud.md TD cloud/gcp-for-iot.md, 101 Google_Cloud_Platform_(GCP)_for_IoT_101.md, rewritten because Cloud IoT Core was retired in 2023
iot-and-embedded.md TD iot-embedded/index.md, 101 IoT_&_Embedded_Systems.md
embedded-systems-design.md TD iot-embedded/embedded-systems-design.md, 101 Embedded_Systems_Design_101.md, AR embedded_systems/architecture/layered_embedded_architecture*.md, hal_bsp_concepts_primer.md, embedded_power_management.md, optimisation/memory_constrained_design_primer.md
rtos-and-freertos.md TD iot-embedded/freertos-basics.md, 101 FreeRTOS_Basics_101.md, AR embedded_systems/rtos/*, design_principles/bare_metal_vs_rtos_overview.md
finite-state-machines.md New, from AR embedded_systems/design_principles/finite_state_machines_primer.md, fsm/fsm_overview.md
interrupts-and-dma.md New, from AR embedded_systems/design_principles/interrupt_driven_design_primer.md, realtime/interrupt_driven_design.md, realtime/dma_primer.md
watchdog-timers.md New, from AR embedded_systems/safety/watchdog_timer_patterns_primer.md
bootloaders.md New, from AR embedded_systems/bootloaders/embedded_bootloaders_primer.md
mqtt.md TD iot-embedded/mqtt-protocol.md, 101 MQTT_Protocol_101.md, AR iot/protocols/mqtt_primer.md
coap.md New, from AR iot/protocols/coap_primer.md
lwm2m.md New, from AR iot/protocols/lwm2m_primer.md
cellular-lpwan.md TD iot-embedded/cellular-lpwan-nb-iot-and-lte-m.md, AR iot/connectivity/nbiot_primer.md
firmware-over-the-air.md New, from AR iot/lifecycle/fota_overview.md
edge-computing-for-iot.md TD architecture/edge-architectures-for-iot.md and iot-embedded/iot-edge-computing.md, 101 Edge_Architectures_for_IoT_101.md and IoT_Edge_Computing_101.md (two overlapping primers merged)
hardware-in-the-loop-testing.md TD methodologies/hardware-in-the-loop-testing.md (fault-injection table kept)
security.md TD security-standards/index.md, 101 Security_&_Standards.md
cryptography-basics.md New, from AR security_crypto/foundations/* (symmetric, asymmetric, hash, MAC, KDF, RNG, lightweight) and crypto_algorithms/*
pki-and-certificates.md New, from AR security_crypto/pki/*, iot/security/iot_pki_architectures.md
tls-and-dtls.md New, from AR security_crypto/protocols/tls13_primer.md, dtls_primer.md
post-quantum-cryptography.md New, from AR security_crypto/foundations/post_quantum_crypto_primer.md
secure-coding-practices.md TD security-standards/secure-coding-practices.md, 101 Secure_Coding_Practices_101.md, AR swebok/construction/defensive_programming_primer.md
owasp-top-10.md TD security-standards/owasp-top-10.md, 101 OWASP_Top_10_101.md
oauth-and-oidc.md TD security-standards/oauth-and-oidc.md, 101 OAuth_2.0_&_OpenID_Connect_101.md
zero-trust-architecture.md TD security-standards/zero-trust-architecture.md, 101 Zero_Trust_Architecture_101.md
etsi-en-303-645.md TD iot-embedded/etsi-en-303-645.md, 101 ETSI_EN_303_645_101.md (moved to Security)
iso-30141.md TD security-standards/iso-30141.md, 101 ISO_30141_101.md
methods-and-delivery.md TD methodologies/index.md, 101 Team_Practices_&_Methodologies.md
sdlc-models.md New, from AR software_delivery/sdlc_models/*, systems_engineering/fundamentals/v_model_overview.md, swebok/process/software_development_life_cycles.md
agile-development.md TD methodologies/agile-development.md, 101 Agile_Development_101.md, AR software_delivery/agile_frameworks/agile_overview.md, lean_principles.md, safe_overview.md
scrum-vs-kanban.md TD methodologies/scrum-vs-kanban.md, 101 Scrum_vs_Kanban_101.md, AR software_delivery/agile_frameworks/scrum_framework.md, kanban_method.md
event-storming.md TD methodologies/event-storming.md, 101 Event_Storming_101.md
lightweight-architecture-evaluations.md TD methodologies/lightweight-architecture-evaluations.md, 101 Lightweight_Architecture_Evaluations_101.md, AR architecture/evaluation_methods/atam_overview.md, quality_attributes/asr_overview.md
testing-strategies.md New, from AR software_engineering/practices/testing_strategies_overview.md
code-review.md New, from AR software_engineering/practices/code_review_primer.md
technical-debt.md New, from AR swebok/maintenance/technical_debt_management_primer.md
docs-as-code.md TD methodologies/docs-as-code.md, 101 Docs_as_Code_101.md, AR docs_as_code/practices/docs_as_code_overview.md
root-cause-analysis.md TD methodologies/root-cause-analysis.md, 101 RCA_(Root_Cause_Analysis)_101.md and RCA_for_Technical_Teams_101.md (two duplicates merged, IoT outage example rewritten)
programming-and-tools.md TD programming-tools/index.md, 101 Programming_&_Tools.md
git-best-practices.md TD programming-tools/git-best-practices.md, 101 Git_Best_Practices_101.md, AR swebok/configuration_management/branching_models_and_strategies.md
static-code-analysis.md TD programming-tools/static-code-analysis.md, 101 Static_Code_Analysis_101.md, AR swebok/construction/static_analysis_fundamentals.md
plantuml-and-mermaid.md TD programming-tools/plantuml-and-mermaid.md, 101 PlantUML_&_Mermaid_101.md, AR docs_as_code/diagrams/*
python-for-automation.md TD programming-tools/python-for-automation.md, 101 Python_for_Automation_101.md
rust-for-systems.md TD programming-tools/rust-for-systems.md, 101 Rust_for_Systems_Programming_101.md
terminal-modernisation.md TD programming-tools/terminal-modernisation.md, 101 Oh_My_Zsh_Oh My_Posh_101.md

Corrections made while rewriting

  • GCP for IoT described Cloud IoT Core, which Google retired on 16 August 2023. The page is now about building the same platform from Pub/Sub, Dataflow and a self-run or partner MQTT broker.
  • MQTT: "ISO/IEC PRF 20922" is now ISO/IEC 20922. I removed the meaningless ER diagram. The example used the dead mqtt.eclipse.org broker and the Paho 1.x callback API, which Paho 2.0 rejects. The example now uses CallbackAPIVersion.VERSION2 with TLS.
  • OWASP Top 10: kept the 2021 table and added a paragraph on the 2025 edition.
  • Terminal: Powerlevel10k now gets only limited maintenance, so Starship is suggested as an alternative.
  • Cellular LPWAN: I toned down figures that were stated too precisely (peak rates, coverage loss, FOTA size limits), added eSIM SGP.32, and noted the UK's 2G and 3G switch-off.
  • CBOR: I recalculated the byte-count example.

Dropped, and why

  • Boilerplate: the "comprehensive guide for engineers, architects and leaders" openings, the "Conclusion: as a strategic leader…" endings, and the auto-captions such as "mermaid diagram/snippet".
  • The category overview pages' content (TD */index.md, 101 */<Category>.md): generic summaries with filler diagrams (an SDLC flowchart, a class diagram of "Service1/Service2"). They're replaced by short area pages.
  • Broken internal links in TD's "Governing Organisation Standards" boxes (../../guidelines/GU-020-…, ../../guides/architecture-handbook/…). They're replaced by links to section index pages, because the other sections' page paths aren't settled.
  • Archive topics not used. These are raw generated notes, and each topic is either too specialist for a primer or belongs in another section:
    • Architecture: arc42 (in Templates), TOGAF, governance, architectural refactoring, views, quality attributes.
    • Concurrency: actor model, memory models, lock-free algorithms.
    • Performance: profiling, performance anti-patterns.
    • Docs: engineering RFCs, Markdown, MkDocs.
    • Embedded: broker and client-server patterns, POSIX basics, POSIX threads, task scheduling models.
    • SWEBOK: requirements, estimation, metrics, planning, risk, process improvement, ethics, legal, quality, reliability, maintenance and evolution, coding standards, error handling, SCM and versioning, use cases, traceability.
    • Delivery: backlog, dependency management, DoR/DoD (in Templates), estimation, requirements elicitation.
    • Systems engineering: MBSE and SysML.
    • Smart energy: Zigbee, Zigbee Smart Energy, DLMS/COSEM, SMETS2/GBCS. These are utility-specific, and the brief keeps the IoT primers generic.
  • The prompt scripts (topics.yaml, generate_prompts.py, run.sh): tooling, not content.

Redirects

Paths relative to the site root. Every page under /101s/ on tarf.co.uk and under /technical-documentation/primers/ on markbac.github.io should redirect to the new page. The new pages are at /primers/<name>/ on both sites.

tarf.co.uk /101s/…

Old path New page
/101s/ /primers/
/101s/Additional_Topics/Additional_Topics/ /primers/
/101s/Additional_Topics/Grouped/Design_Patterns_in_Software_Development_101/ /primers/design-patterns/
/101s/Additional_Topics/Grouped/Edge_Architectures_for_IoT_101/ /primers/edge-computing-for-iot/
/101s/Additional_Topics/Grouped/Event_Storming_101/ /primers/event-storming/
/101s/Additional_Topics/Grouped/RCA_for_Technical_Teams_101/ /primers/root-cause-analysis/
/101s/Cloud_Technologies/Cloud_Technologies/ /primers/cloud/
/101s/Cloud_Technologies/Grouped/CICD_Pipelines_in_Cloud_101/ /primers/cicd-pipelines/
/101s/Cloud_Technologies/Grouped/Event_Streaming_with_Kafka_101/ /primers/kafka-event-streaming/
/101s/Cloud_Technologies/Grouped/Google_Cloud_Platform_(GCP)_for_IoT_101/ /primers/iot-on-google-cloud/
/101s/Cloud_Technologies/Grouped/Infrastructure_as_Code_(IaC)_101/ /primers/infrastructure-as-code/
/101s/Cloud_Technologies/Grouped/Serverless_Computing_101/ /primers/serverless-computing/
/101s/IoT_&_Embedded_Systems/IoT_&_Embedded_Systems/ /primers/iot-and-embedded/
/101s/IoT_&_Embedded_Systems/Grouped/ETSI_EN_303_645_101/ /primers/etsi-en-303-645/
/101s/IoT_&_Embedded_Systems/Grouped/Embedded_Systems_Design_101/ /primers/embedded-systems-design/
/101s/IoT_&_Embedded_Systems/Grouped/FreeRTOS_Basics_101/ /primers/rtos-and-freertos/
/101s/IoT_&_Embedded_Systems/Grouped/IoT_Edge_Computing_101/ /primers/edge-computing-for-iot/
/101s/IoT_&_Embedded_Systems/Grouped/MQTT_Protocol_101/ /primers/mqtt/
/101s/Oh_My_Zsh_Oh My_Posh_101/ (space in the path) /primers/terminal-modernisation/
/101s/Programming_&_Tools/Programming_&_Tools/ /primers/programming-and-tools/
/101s/Programming_&_Tools/Grouped/Git_Best_Practices_101/ /primers/git-best-practices/
/101s/Programming_&_Tools/Grouped/PlantUML_&_Mermaid_101/ /primers/plantuml-and-mermaid/
/101s/Programming_&_Tools/Grouped/Python_for_Automation_101/ /primers/python-for-automation/
/101s/Programming_&_Tools/Grouped/Rust_for_Systems_Programming_101/ /primers/rust-for-systems/
/101s/Programming_&_Tools/Grouped/Static_Code_Analysis_101/ /primers/static-code-analysis/
/101s/Security_&_Standards/Security_&_Standards/ /primers/security/
/101s/Security_&_Standards/Grouped/ISO_30141_101/ /primers/iso-30141/
/101s/Security_&_Standards/Grouped/OAuth_2.0_&_OpenID_Connect_101/ /primers/oauth-and-oidc/
/101s/Security_&_Standards/Grouped/OWASP_Top_10_101/ /primers/owasp-top-10/
/101s/Security_&_Standards/Grouped/Secure_Coding_Practices_101/ /primers/secure-coding-practices/
/101s/Security_&_Standards/Grouped/Zero_Trust_Architecture_101/ /primers/zero-trust-architecture/
/101s/Software_Development_&_Architecture/Software_Development_&_Architecture/ /primers/architecture/
/101s/Software_Development_&_Architecture/Grouped/ADRs_101/ /primers/architecture-decision-records/
/101s/Software_Development_&_Architecture/Grouped/C4_Model_101/ /primers/c4-model/
/101s/Software_Development_&_Architecture/Grouped/Domain-Driven_Design_(DDD)_101/ /primers/domain-driven-design/
/101s/Software_Development_&_Architecture/Grouped/Event-Driven_Architecture_101/ /primers/event-driven-architecture/
/101s/Software_Development_&_Architecture/Grouped/Modular_Monolith_vs_Microservices_101/ /primers/modular-monolith-vs-microservices/
/101s/Team_Practices_&_Methodologies/Team_Practices_&_Methodologies/ /primers/methods-and-delivery/
/101s/Team_Practices_&_Methodologies/Grouped/Agile_Development_101/ /primers/agile-development/
/101s/Team_Practices_&_Methodologies/Grouped/Docs_as_Code_101/ /primers/docs-as-code/
/101s/Team_Practices_&_Methodologies/Grouped/Lightweight_Architecture_Evaluations_101/ /primers/lightweight-architecture-evaluations/
/101s/Team_Practices_&_Methodologies/Grouped/RCA_(Root_Cause_Analysis)_101/ /primers/root-cause-analysis/
/101s/Team_Practices_&_Methodologies/Grouped/Scrum_vs_Kanban_101/ /primers/scrum-vs-kanban/

markbac.github.io /technical-documentation/primers/…

Old path New page
/technical-documentation/primers/ /primers/
…/architecture/ /primers/architecture/
…/architecture/architecture-decision-records/ /primers/architecture-decision-records/
…/architecture/c4-model/ /primers/c4-model/
…/architecture/design-patterns/ /primers/design-patterns/
…/architecture/digital-twins-and-shadow-state/ /primers/digital-twins-and-device-shadows/
…/architecture/domain-driven-design/ /primers/domain-driven-design/
…/architecture/edge-architectures-for-iot/ /primers/edge-computing-for-iot/
…/architecture/event-driven-architecture/ /primers/event-driven-architecture/
…/architecture/modular-monolith-vs-microservices/ /primers/modular-monolith-vs-microservices/
…/cloud/ /primers/cloud/
…/cloud/cicd-pipelines/ /primers/cicd-pipelines/
…/cloud/gcp-for-iot/ /primers/iot-on-google-cloud/
…/cloud/infrastructure-as-code/ /primers/infrastructure-as-code/
…/cloud/kafka-event-streaming/ /primers/kafka-event-streaming/
…/cloud/serverless-computing/ /primers/serverless-computing/
…/iot-embedded/ /primers/iot-and-embedded/
…/iot-embedded/cbor-and-binary-serialization/ /primers/cbor/
…/iot-embedded/cellular-lpwan-nb-iot-and-lte-m/ /primers/cellular-lpwan/
…/iot-embedded/embedded-systems-design/ /primers/embedded-systems-design/
…/iot-embedded/etsi-en-303-645/ /primers/etsi-en-303-645/
…/iot-embedded/freertos-basics/ /primers/rtos-and-freertos/
…/iot-embedded/iot-edge-computing/ /primers/edge-computing-for-iot/
…/iot-embedded/mqtt-protocol/ /primers/mqtt/
…/methodologies/ /primers/methods-and-delivery/
…/methodologies/agile-development/ /primers/agile-development/
…/methodologies/docs-as-code/ /primers/docs-as-code/
…/methodologies/event-storming/ /primers/event-storming/
…/methodologies/hardware-in-the-loop-testing/ /primers/hardware-in-the-loop-testing/
…/methodologies/lightweight-architecture-evaluations/ /primers/lightweight-architecture-evaluations/
…/methodologies/root-cause-analysis/ /primers/root-cause-analysis/
…/methodologies/scrum-vs-kanban/ /primers/scrum-vs-kanban/
…/programming-tools/ /primers/programming-and-tools/
…/programming-tools/git-best-practices/ /primers/git-best-practices/
…/programming-tools/plantuml-and-mermaid/ /primers/plantuml-and-mermaid/
…/programming-tools/python-for-automation/ /primers/python-for-automation/
…/programming-tools/rust-for-systems/ /primers/rust-for-systems/
…/programming-tools/static-code-analysis/ /primers/static-code-analysis/
…/programming-tools/terminal-modernisation/ /primers/terminal-modernisation/
…/security-standards/ /primers/security/
…/security-standards/iso-30141/ /primers/iso-30141/
…/security-standards/oauth-and-oidc/ /primers/oauth-and-oidc/
…/security-standards/owasp-top-10/ /primers/owasp-top-10/
…/security-standards/secure-coding-practices/ /primers/secure-coding-practices/
…/security-standards/zero-trust-architecture/ /primers/zero-trust-architecture/

Needed outside this section

  • Redirects: the tables above, for whoever adds the redirect plugin or rules to site/mkdocs.yml.
  • Acronyms: nothing is required for --strict, because undefined acronyms are only info notes. If you want fewer info notes, these are used across many primers and could go in lint.acronyms.allowed: TLS, DTLS, HTTP, JSON, YAML, CI, CD, RTOS, OTA, PKI, CoAP, UDP, TCP.
  • Templates links: several primers link to ../templates/index.md. As PR Templates & Checklists: merged checklists and templates #2 explains, the Templates section won't build until site/mkdocs.yml gets the exclude_docs: !/templates/ line, and until then those links 404 on the sites.
  • Flat sidebar: py-doc writes a flat nav, so the site's sidebar lists all 71 primer pages under "Primers" in file order. The grouping shows in the overview, on the area pages and in Word and PDF, but not in the sidebar. Nested navigation from a document's sources would be a py-doc feature.

Questions for Mark

  1. More primers from the archive? I left out concurrency, performance engineering, SWEBOK areas, MBSE/SysML and generic wireless (Zigbee, Bluetooth LE). Any you want as primers?
  2. Smart energy notes (DLMS/COSEM, SMETS2/GBCS, Zigbee SE): drop them, or move them to Reference?
  3. Date-sensitive statements to check: the OWASP 2025 summary, the NCSC post-quantum timeline (migration done by 2035), the EU RED/EN 18031 date (August 2025) and the CRA date (December 2027), and Powerlevel10k's maintenance status.
  4. Names: I kept terminal-modernisation and git-best-practices as the old slugs, so the redirects stay simple. The page titles are "A modern terminal" and "Git practices". Fine, or rename the slugs?

🤖 Generated with Claude Code

… the archive topic notes

One set of 62 short primers in 8 areas (architecture, distributed systems, APIs and data,
cloud, IoT and embedded, security, methods and delivery, programming and tools), each area
with its own page. The old primers are rewritten rather than copied, duplicates merged (edge
computing, RCA), out-of-date material fixed (Cloud IoT Core, the Paho 2 API, OWASP 2025), and
24 new primers drawn from the archive's topic notes.

documents.primers lists the area pages with a page break and their primers one heading level
down, so Word and PDF nest the primers under their area.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@markbac
markbac merged commit fac2f9d into main Oct 17, 2026
3 checks passed
markbac added a commit that referenced this pull request Oct 19, 2026
* Publish the primers section on both sites

PR #4 moved the primers in but did not add them to site.documents, so neither site showed them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Templates: add 16 templates from docs-WoW and the NFR scenario from EngineeringProcess

New: project vision, architecture vision and principles, crosscutting concerns, software design
specification, traceability matrix, test plan, decision log, meeting minutes, lessons learned,
release plan, risk register, SBOM, systems engineering management plan, team working agreement,
technical debt register, NFR scenario. Each follows the section's pattern: an introduction, then
the template in a fence. The other ten docs-WoW templates were already covered (ADR, RFC, the
canvases, postmortem, experiment record, interface specification, architecture document,
requirements). The index groups the templates by project stage.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Guidelines: move in EngineeringProcess's 26 guidelines and supporting pages, and publish the section

- EG-001 to EG-026, core rules, combined checklists, agent rules, organisation adoption,
  personal projects, the business principles overview and the principles catalogue.
- File names drop the eg-NNN- prefix; each page gets an H1 with its ID. Links to
  templates-reference now point to the Templates section.
- EG-014 gains VCS-15 (imperative subject under 72 characters, a body that says why), the
  one rule GU-014 had that EG-014 did not. GU-015's PR format was already covered by
  EG-015 and the pull request template.
- EngineeringProcess's AGENTS.md becomes a template, since the guidelines tell readers to copy it.
- Seven sentences over 30 words split to clear the lint warnings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Standards: move in technical-documentation's specialised GU documents, and publish the section

C coding standard, MISRA C, Python for supporting tools, software architecture principles,
API design, unique identifiers, LwM2M objects, IoT device architecture principles, battery
budgeting, constrained binary payloads, offline storage, and serialisation and factory test.

- Word-based file names and shorter sentence-case titles; the old GU numbers are dropped.
- GU-009 is technical-documentation's single-file C standard. wip's 11-part split is not
  published: it draws on an employer's internal standards.
- en-GB spelling in prose (not in code), long sentences split, heading levels fixed so each
  standard is one chapter in Word and PDF.
- Mermaid labels with brackets quoted, and semicolons removed from sequence messages, so the
  diagrams render. \text in maths becomes \mathrm, because py-doc's PDF template has no amsmath.
- Six links point at guides that the guides commit adds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Guides: move in technical-documentation's guides, the how-to GU documents and the docs-WoW team guides, and publish the section

- Six guides from technical-documentation, each in its own folder with numbered chapters:
  C4 modelling, cyber security, IoT endpoint and gateway architecture, IoT fleet operations,
  HIL and automated testing, scaling architecture. The architecture handbook moves separately.
- Single-page guides from the how-to GUs: ADRs and RFCs (GU-005 and GU-006 together, their
  templates now pointing to the Templates section), software design specification, high-level
  design, architecture review board, agile requirements, defects and debugging, and code review
  (GU-011 plus docs-WoW's roles section; its PR template points to the Templates section).
- Git: GU-013 with docs-WoW's branching strategies and version control chapters. docs-WoW's
  other Git guide (git.md) covered the same ground as GU-013 and is not moved.
- Ways of working: docs-WoW's eight team guides as one guide.
- Clean-ups: emoji out of headings, :::mermaid blocks fenced, heading colons and skipped levels
  fixed, en-GB spelling in prose, 70 long sentences split, Mermaid labels quoted, C4-PlantUML
  from PlantUML's standard library, the C4 tooling section now uses py-doc c4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Handbook: move in technical-documentation's architecture handbook, and publish the section

- The eight chapters keep their numbers; titles in sentence case.
- Chapter 3 gains a section on message queues and publish-subscribe, the one topic in
  site-web-content-src's older handbook that this one did not cover. The rest of that handbook
  is the earlier version of the same eight chapters and is not moved.
- C4-PlantUML includes use PlantUML's standard library; long sentences split; en-GB spelling.

Also across the sections moved so far:
- Links and mentions that still named a GU number now use the title of the page that replaced
  it, and links to the Git guide point at its folder.
- Mermaid cylinder shapes ([( )]) that an earlier clean-up had turned into boxes are restored.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Tech Radar: move in technical-documentation's radar, and publish the section and the interactive chart

- The section: the methodology (from overview.md) as the section page, the four quadrant pages
  and the directory of all 77 entries. It builds as Word and PDF like the other sections.
- The interactive SVG chart (ADR-003: vanilla JavaScript, no outside dependencies) is HTML and
  script, so it is a site page of its own, site/docs/radar-chart/, listed under site.pages.
- The chart's links went to technical-documentation's layout (GU files, primers by area, the
  old guide folders). Each now points at the page that replaced it, as a site URL; all 47 resolve.
- site-web-content-src's TechRadar app (Next.js) is the older radar and is not moved.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Firmitas: move in Firmitas 2 from docs-WoW, with the first edition's appendices, and publish the section

- The book as written: preface, acknowledgements, introduction, and Parts One to Three with
  their 29 chapters, each part in its own folder and each chapter numbered.
- Firmitas 2's Appendix was empty, so it takes the first edition's Appendices A to G, and the
  first edition's Sections V (practice across disciplines) and VI (quality, regulation and
  assurance) as Appendices H and I. The second edition has no chapters on those subjects yet.
- Left behind: the rest of the first edition (rewritten as Firmitas 2), Firmitas_Framework.md
  (the first edition in one file), cornerstone*.md (the framework's earlier name), the draft
  essays (the second becomes a blog post) and plan.md (a work plan, not for publication).
- Mechanical fixes only, since this is the author's own prose: the manuscript header in Chapter 2,
  heading levels, four spellings, and the cone of uncertainty image, which had not been copied.
  The style warnings stay: 779 sentences over 30 words, three 'in order to', one heading ending
  in '!' (a book title).
- The front page carries the CC BY-NC-ND 4.0 licence notice and the cover.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Blog: move in blog-tech's unpublished posts and docs-WoW's leadership essay, as written

- Networking and home lab series: the 30 posts from wip/, dated 25 April 2025 in the order
  wip/list.md planned, each marked with its part number, plus a series page listing them (two
  planned posts were never written and are listed as such).
- Home lab: the four tech_blog posts, 11 March 2025. The real internal addresses and domain are
  replaced with documentation values (192.0.2.x, home.example).
- Architecture flashcards and the embedded architecture process mind map, 18 February 2025.
- An Approach to Engineering Leadership and Delivery, 28 December 2025, leading into Firmitas.
- The software design specification post takes the longer version of its text (SDS-wip.md),
  under the same date and slug.
- Mechanical fixes only: titles as H1, heading levels, the excerpt marker, a post that was wrapped
  in a code fence, five spellings, a shorter slug. Style warnings stay (32 long sentences).
- Not moved: planning notes (the docs-as-code series outline, the blog idea lists).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Guides: add wip's eleven explainers as Deep dives

CBOR, CoAP, LwM2M, NB-IoT and cellular, certificates and keys, RTOS internals, SysVars, MISRA C,
static analysis, Git internals, and docs, diagrams and architecture as code. Moved as written:
mechanical fixes only (one hardware reference removed from the NB-IoT page, heading levels,
spelling), so their 264 long sentences remain as warnings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Glossary: one page per letter, then Numbers and Symbols

The six letter-group pages (a-c to s-z) become 26 letter pages, numbers.md (5G, 802.11 and
the other terms that start with a digit) and symbols.md (.NET). Each term is now a ## heading
on its letter's page, with the same anchor as before.

- Every link between terms follows its term: 1,336 cross-page and 691 same-page links checked,
  none unresolved.
- redirects.tsv: the 1,135 rows that pointed at a group page now point at the term's letter page;
  six new rows send the old group pages to the glossary index.
- The index lists the pages with their term counts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Glossary: restore the original images

The glossary move (#3) left out its 237 images. They are back: 241 references in 205 terms,
235 image files in content/glossary/images/, from technical-documentation's glossary. Each sits
after its term's definition, with the term as alt text and a caption. Terms that were renamed or
merged get their images through the redirect map.

Not restored: the NBAP entry's hotlinked everythingrf.com picture (external, not a file in the
repository), and the images of L2S and MPS, terms the glossary dropped.

Most of these images are third-party (Wikimedia, BT and Openreach, vendor and lecture slides),
restored on the owner's instruction.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Mark Bacon <streakyb@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@markbac
markbac deleted the claude/section-primers-b1c556 branch October 19, 2026 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant