Skip to content

Instantly share code, notes, and snippets.

View briandominick's full-sized avatar
💭
Available for DocOps contracts

Brian Dominick briandominick

💭
Available for DocOps contracts
  • Catskill Mountains, NY
View GitHub Profile
@briandominick
briandominick / api-docs-matrix.adoc
Last active February 27, 2025 22:27
API Documentation Decision Matrix

API Documentation Decision Matrix

The following flow diagram is intended to help you quickly decide how to document a REST API.

There is a Glossary and other primer information following the graphic.

166a295b 5dac 41d3 94ef 8aa97bee1aa8

Glossary

Software Documentation Tooling Decision Guide

The following are my suggestions regarding what else to consider for each of Daryl White’s excellent questions about choosing a toolset for documenting a software product or project.

I have appended a brief guide to the main/broad categories of documentation toolsets and some of the platforms/components that are popular in each.

Finally, this resource ends with a table of possible solutions for various scenarios you might find yourself in.

Before we start with the existing list of questions, I want to highlight one that I think is most important of all, but which is often assumed by people who create these kinds of guides, as they tend to come from one or another world already.

Why Use AsciiDoc for Software Documentation

I have now spent a decade convincing engineers and technical writers to use AsciiDoc markup for as much of their product documentation as is humanly possible. Few if any of them have regretted adding AsciiDoc to their skillset or switching to it entirely, so now I hope to make the case for a general audience.

This article collects the arguments I have long used to help writers and software developers see that AsciiDoc is far and away the optimal solution to nearly all documentation matters beyond API docs (where more structured approaches are called for).

For anyone using docs-as-code workflows and free, open-source software, the main competitor for AsciiDoc is Markdown, which many developers love and swear by. For this reason, I will compare/contrast AsciiDoc and the collective flavors of Markdown.

@briandominick
briandominick / README.adoc
Last active November 1, 2024 22:24
OpenPathY: A YAML-sourced schema for modeling, validating, and documenting filesystem/codebase paths

Imagine a schema for defining expected directory/file structures for your applications.

Define it all in YAML, then use a proper library to:

  • validate an existing path structure against your schema

  • generate model folder/file trees in arbitrary or logical order

  • document your expected path structure based on properties of each dir/file key

Take a look at the following example schema.

{
"Pet": {
"type": "object",
"required": [
"name",
"photoUrls"
],
"properties": {
"id": {
"type": "integer",
@briandominick
briandominick / bibisco-install-ubuntu.adoc
Created October 6, 2019 23:49
Install Bibisco on Ubuntu 19.04

Setting up Bibisco on Ubuntu 19.04

(tested on PopOS 19.04)

  1. Download linux archive from Bibisco.

  2. Move files to better path.

    sudo mv ~/Downloads/bibisco-blah-blah/ ~/opt/bibisco
@briandominick
briandominick / fusuma-config.yml
Created August 26, 2019 04:31
Configuration file for fusuma touchpad gestures
# Fusuma makes Linux touchpads better
# See https://github.com/iberianpig/fusuma
swipe:
3:
left:
command: 'xdotool key alt+Right'
right:
command: 'xdotool key alt+Left'
up:
command: 'xdotool key super'
@briandominick
briandominick / Jekyll Build Scripts
Last active February 8, 2020 01:10
An environment- and version-aware command-line wrapper for Jekyll builds
# See README.adoc
@briandominick
briandominick / Jekyll Version Switcher
Last active March 3, 2022 05:29
Versioning system for Jekyll
See README.adoc
@briandominick
briandominick / doc-ops-consulting-agreement.adoc
Last active July 19, 2022 17:29
Sample DocOps Consulting Agreement (Prime Source)

Documentation Engineering Consulting Agreement