Documenting Quick (Personal -> Public System)
In Automation for Knuckle Draggers I recommend documenting to learn to code, and in my focus framework I allude that documenting is a medium-focus activity.
This article aims to show a quick example of how I document while saving time, and editorialize later if necessary.
Documentation Strategy#
I do a simple personal -> public draft system.
The personal draft is just the minimal amount of notes needed at your current skill level.
We're trying to knock out a feature in one run to catch issues ahead of time.
- Record only things you find important that aren't obvious to you.
- Screenshot only things hard to reproduce efficiently.
- Keep it in one file.
- Use TODOs for good ideas later.
Personal Draft Example:
# Install Apache Procedure & Test
pacman -S apache
sudo systemctl start httpd
sudo systemctl enable httpd
will be blank with dir on.
<TODO: SCREENSHOT>
Add to root `/srv/http/index.html`
sudo vi /srv/http/index.html
verify show up http://localhost/ - Done
# Notes
https://wiki.archlinux.org/title/Apache_HTTP_Server
---
# Configuration Procedure
...
We will do our public draft in bulk once we're ready to stop our personal draft.
Include:
- Rich media (Screenshots, images, graphs, flowcharts).
- Use case / why / problem statement.
- Expanded sections & article splitting.
- Conditionals (issues, failures, warnings).
- Prerequisites / state of installation (if necessary).
Be quick and add only what makes sense from the above, let people tell you what could help later.
Public Draft Example:
## What
We will be installing Apache2 (also known as `apache` or `httpd`) on Arch Linux.
## Prerequisites
Install `apache`
```bash
sudo pacman -Syu # If you haven't already updated your system
sudo pacman -S apache
```
We will need to enable Apache via Systemd:
```bash
sudo systemctl start httpd
sudo systemctl enable httpd
```
We should now see a webpage on our web browser: http://localhost

## Modify Root
By default, Apache on Arch will display a blank directory page.
We can add pages to Apache by modifying `/srv/http/`.
Let's add a default index.html:
```bash
sudo nvim /src/http/index.html
```
We'll use a simple Hello World HTML page:
```html title="/src/http/index.html"
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello, World!</title>
</head>
<body>
<h1>Hello World!</h1>
<p>This is my first web page.</p>
</body>
</html>
```
Let's revisit our web server, which should now be our index.html: http://localhost

You have successfully setup Apache and created a web page.
## Extra Notes
Arch Wiki: https://wiki.archlinux.org/title/Apache_HTTP_Server
Summary#
Consider the following scenarios:
- What if
/srv/http/was not the correct folder? - What if
apachewas deprecated andapache-fixedlooked different? - What if our target audience is a pro team?
- What if
nginxis what we really needed?
Doing a personal draft mitigates time loss by pushing discovery first.
When we take risks early and document when features are complete, we learn more and save a whole lot of precious time.