I’m a technical writer for a large software company (Salesforce, if it matters; my words here are my own). We currently author our documentation in an XML format called DITA. (If you’ve never heard of it, you’re not alone; I had never heard of it when I interviewed for the job.)
We’re evaluating a switch to use Markdown for our documentation, with goals along the same lines as e.g. Microsoft, with their public-facing docs available on GitHub. (For example, see: https://github.com/microsoft/vscode-docs)
The top challenge I want to see solved is the collaboration part. Frederico’s and the MacStories authoring workflow, while impressive, has a number of issues. From experience, relying on diffs and comments on a Pull Request (PR) are nowhere near sufficient to support a rigorous editorial process for use across a large team.
It’s not impossible to do great work—MacStories proves it is possible. But it’s a small team, and while MacStories is a great site, it’s a series of chronologically ordered, occasionally linked, mostly stand-alone articles, not a structured documentation site. And MacStories gets to put a little more … personality into their prose than, say, a public corporation can put into their docs. (I have stories…)
For a large team of technical writers, collaboration requires a couple things:
-
Change tracking, as you find in Word or Google Docs (when you use Suggestions mode).
It’s absolutely critical to show the exact words that were changed. Diff’ing is not change tracking. Diffs have gotten a lot better at this, but diff’ing algorithms at least originated to look at line-by-line changes in code, not letter/word/sentence changes in prose. And I need to be able to see three views: old (before changes), in-progress (that is, change tracking visible), and final (that is, with deletion and addition suggestions resolved).
-
Discussion, as you find in comments in Google Docs (and, I assume, Word, though it’s been years since I last used it).
My editor needs to be able to make suggestions, or ask questions. Technical reviewers need to be able to answer questions I’ve left in comments. And so on. And you have to be able to link the comment/question to specific text, sometimes as small as a word. A comment on a PR is not specific enough.
It seems to me that CriticMarkup provides enough of these elements to (mostly?) solve these use cases. But, the markup format is only half the story. Less than half, by the evidence. It needs to be supported in tools, similarly to how change tracking and comments are handled in e.g. GDocs.
From what I can tell, only MultiMarkdown Composer supports CriticMarkup sufficiently to be usable as a professional tool by people where the writing is the important thing, rather than proficiency with an esoteric extension to Markdown.
- The markup for suggested changes needs to happen automatically, in response to revisions, when you have change tracking enabled. In other words, I should never write any CriticMarkup myself; I should be able to just write/edit the actual words.
- Change suggestions need to be resolvable (accept, reject).
- Preview needs to support display of all three modes for change tracking.
- Comments need to be visible, and interactive (answering / asking, etc.).
Does anyone know if any of the other various Markdown authoring or previewing tools has plans to support CriticMarkup, at a similar level as MultiMarkdown Composer?
Note: There’s obviously more to collaboration than these two things, and CriticMarkup doesn’t solve it all. I’m setting aside other aspects, because we’ve been using version control for our docs for ~20 years, and that handles most of the rest. That’s probably not sufficient for every team. (Good luck getting clients, let alone opposing counsel, to work with you on GitHub today, right @MacSparky?)
But CriticMarkup solves a lot of the challenges I’ve seen in our tests with GitHub-based writing workflows. We need it, or something like it, for a switch to Markdown to succeed.
From other posts here, it seems like these specific challenges are not unique to Salesforce, or technical writing. I think CriticMarkup, or something like it, represents a significant step forward for using Markdown in more structured, less solitary writing processes and contexts.