3 ms·
I think this comment illustrates why there's always a debate between markdown vs asciidoc vs xyz. Markdown is "good enough" for a large amount of people who ca
by gouggoug 7y ago
I think this comment illustrates why there's always a debate between markdown vs asciidoc vs xyz.
Markdown is "good enough" for a large amount of people who care less about what seasoned technical writers care about.
> I just reference other functions by name.
(granted a "function name" isn't the best example): when your documentation becomes large enough, your function name will appear in so many places throughout the documentation that you'll want to change it once in one place, and it to appear everywhere else. Having a dynamic variable inside your documentation to take care of this is immensely useful.
This is the kind of feature that other documentation markups offer that (1) you do not need to use but, (2) have at your disposition when you need to.
Now, just to illustrate this with a better example: I wrote user documentation about "how to create a concourse-ci cluster in Google Cloud". This documentation contains a lot of things specific to my organization ("acme"), for example, the VPC network name that needs to be used is fairly variable and depends on the GCE project name but also the region of the project and other things. Depending on who reads the documentation and their project, a few things need to be changed. For this purpose, the top of my documentation contains a few variables that are then used throughout the document in place of hardcoded values.
The variables:
:concourse-ci-host: ci.acme.io
:concourse-ci-url: https://{concourse-ci-host}
:gke-cluster-name: concourse-ci
:gke-cluster-region: us-central1
:service-account-concourse-ci: {gke-cluster-name}
:service-account-concourse-ci-docker-registry: {gke-cluster-name}-docker-registry
:gcloud-vpc-network-name: {gke-cluster-name}
:gcloud-static-ip-name: {gke-cluster-name}
:gcloud-cloud-router-name: {gcloud-vpc-network-name}
:gcloud-cloud-nat-gateway-name: {gcloud-vpc-network-name}
An example of a section of the documentation about create the firewall rules:
# Create the network
gcloud compute networks create {gcloud-vpc-network-name}
# Configure the firewall to allow all internal traffic and internet traffic to SSH, RDP and ICMP
gcloud compute firewall-rules create {gcloud-vpc-network-name}-allow-internal --network {gcloud-vpc-network-name} --allow tcp,udp,icmp --source-ranges 10.128.0.0/9
gcloud compute firewall-rules create {gcloud-vpc-network-name}-allow-ssh --network {gcloud-vpc-network-name} --allow tcp:22
gcloud compute firewall-rules create {gcloud-vpc-network-name}-allow-rdp --network {gcloud-vpc-network-name} --allow tcp:3389
gcloud compute firewall-rules create {gcloud-vpc-network-name}-allow-icmp --network {gcloud-vpc-network-name} --allow icmp
Which automatically renders:
# Create the network
gcloud compute networks create concourse-ci
# Configure the firewall to allow all internal traffic and internet traffic to SSH, RDP and ICMP
gcloud compute firewall-rules create concourse-ci-allow-internal --network concourse-ci --allow tcp,udp,icmp --source-ranges 10.128.0.0/9
gcloud compute firewall-rules create concourse-ci-allow-ssh --network concourse-ci --allow tcp:22
gcloud compute firewall-rules create concourse-ci-allow-rdp --network concourse-ci --allow tcp:3389
gcloud compute firewall-rules create concourse-ci-allow-icmp --network concourse-ci --allow icmp
> That’s usually enough.
Until it's not (example above). And it only becomes not enough when your documentation increases in terms of size, complexity of the subject being documented and number of technical writers writing it.
> My coworkers and my future self are adults and can use ‘find’
But your users don't want to use find. They're already too busy learning and understanding your product and the documentation shouldn't get in their way.
Markdown is fine for quick short documentation.
Asciidoc is needed for extensive large documentation.
- stared 7y agoIf AsciiDoc hits the sweet spot for your project, great. For some really serious technical writing, you may need LaTeX. :) My point is not to dissuade anyone from using AsciiDoc. My point is that I suggest using the simplest tool for solving a gvien problem (documentation writing or a particular project, not for any project).
- gouggoug 7y agoMakes sense. I looked at LaTeX, but indeed it was a little bit too much! Asciidoc does hit the sweet spot for my particular needs.
- ogre_codes 7y ago> Markdown is "good enough" for a large amount of people who care less about what seasoned technical writers care about. Ahh, I suspect here is the fundamental disconnect. I suspect few people reading this are technical writers and don't need the tools which a technical writer would use. When they talk about documentation, my expectation is this is code documentation written by developers to be consumed by other developers, not technical manuals or user documentation.