Setting up your writing infrastructure
Writers prefer to focus on the content we create, rather than the nuts and bolts of our authoring environment. A good writing infrastructure is seldom noticed, comprised of intuitive tools and automated processes that enable you to write—without worrying about production operations. Key components of a good writing infrastructure are:
- A version control system that backs up all content and stores writing revisions.
- A content management system (CMS) or help authoring tool (HAT) that enables you to create and format content, reuse it where appropriate, and generate all required output formats.
- An automated build system that publishes regular builds of updated content and notifies authors of any production problems caused by their changes.
In this tutorial, we'll look at how to set up each of these components using the following tools:
- Git for version control: An open-source version control system, Git is a freely available, widely-used tool for managing source files. Git makes it easy to maintain and restore multiple revisions of your work.
- MadCap Flare for authoring: A powerful, feature-rich authoring tool, Flare supports advanced authoring features such as conditional text, content reuse, and a wide array of highly customizable output formats, including responsive HTML5, PDF, Word, and EPUB.
Note Unlike the other tools listed (which are open-source), Flare is a paid application that is only supported on the Windows operating system. If you are using a different authoring tool, you can still apply the version control and build automation processes discussed here to your environment; however, you will need to modify them based on the build commands and output log formats supported by your tool.
- Jenkins for build automation: An open-source build management system, Jenkins allows you to schedule builds to run at set times each day, or trigger builds whenever you make content changes. We'll also look at how to validate your builds, and provide authors with notifications when they check-in content that results in build errors or warnings.
Let's get started by looking at why version control is as indispensable for writers as it is for software developers.