DDD Melbourne
· 2 min read
Overview
I had the pleasure of presenting my thoughts about documentation as code, this time at DDD Melbourne.
The main point of this talk is to focus your documentation on filling the gaps between the obvious, how can you make your codebases easily discoverable and enable new team members to join your project and quickly get up to speed and provide valuable contributions in the shortest possible time.
Below is a quick visual outline of my presentation.
- Overview - README.MD Markdown files to help developers understand what they're looking at.
- Get Started - README.MD Markdown file with more information to help developers get started, install dependencies, etc.
- Old Decisions - Architecture Decision Records to understand what decisions have been made in the past, and why.
- New Decisions - Architecture Principles to help guide future decisions.
- Architecture - Diagrams to help developers understand the architecture of the system.
- Sharing - Use mkdocs to to share documentation with the team.
- Scaling - Ways to share and scale documentation as the team grows beyond a few repositories.
Slides
If you attended my DDD Melbourne talk, you can find the slides here.
Links
Markdown README
Architecture Decision Records
- https://adr.github.io/
- https://docs.aws.amazon.com/prescriptive-guidance/latest/architectural-decision-records/adr-process.html
- https://github.com/joelparkerhenderson/architecture-decision-record
Architecture Principles
- https://www.linkedin.com/pulse/understanding-architecture-principles-part-1-dr-michelle-supper/
- https://pubs.opengroup.org/architecture/togaf8-doc/arch/chap29.html
Excalidraw
- https://excalidraw.com/
- https://github.com/excalidraw/excalidraw
- https://marketplace.visualstudio.com/items?itemName=pomdtr.excalidraw-editor
PlantUML
- https://plantuml.com/
- https://crashedmind.github.io/PlantUMLHitchhikersGuide/
- https://github.com/plantuml/plantuml-stdlib
C4 Model
- https://c4model.com/
- https://c4model.tools/
- https://c4model.com/review/
- https://github.com/plantuml-stdlib/C4-PlantUML
Sharing Documentation
- https://mkdocs.org/
- https://squidfunk.github.io/mkdocs-material/
- https://docusaurus.io/
- https://vuepress.vuejs.org/