Emacs and Org Mode
Emacs is the centre of my technical writing and development environment. Org mode provides a common source format for notes, documentation, executable examples, project material, and this website.
Why plain text
Plain text is durable, searchable, diffable, scriptable, and independent of a particular online service. Git can record meaningful changes, standard Unix tools can inspect the files, and migration does not depend on a vendor export feature.
Org mode adds structure without giving up those properties. Headings, links, tables, metadata, code blocks, citations, and export instructions remain readable in the source file.
Editing environment
My Emacs configuration favours a graphical but restrained interface, fast startup, readable typography, and explicit keyboard-driven commands. It uses standard Emacs facilities where possible, with packages added for concrete needs such as Git integration, language support, diagnostics, and visual feedback.
For Python development, Emacs combines project navigation, Eglot, static analysis, tests, and version control. External modifications are reflected in buffers rather than forcing all tools to run inside Emacs.
Org as a technical source
Org documents can mix explanation, data tables, formulas, references, and code. Org Babel is useful for reproducible examples and calculations when execution is explicit and results are not mistaken for immutable source data.
Export supports several publication paths from one maintainable source:
- HTML for the website;
- LaTeX and PDF for typeset documents;
- structured plain text for long-term preservation;
- code extraction through tangling where literate configuration is useful.
Limits
Org syntax is an Emacs-centred format rather than a universal document standard. Complex layouts may require backend-specific export settings, and collaboration with users of office suites often requires conversion.
For these reasons, I use Org as an authoritative working source when it fits, not as a claim that every document in every organisation should be written in it.
Static publishing
This site demonstrates the approach: Org files are version-controlled and exported to static HTML. The source remains directly readable, while the public result requires no client-side framework or content-management database.