Giter VIP home page Giter VIP logo

presentation-applying-eng-practices-to-docs's Introduction

Applying Engineering Practices to Documentation

Technical documentation is often viewed as just a writing thing, and too often an afterthought. I’m here to show you documentation is just as much of a software project as the software it documents. All the same elements are at play: source “code”, compilation, validation, testing, publishing, versioning, and yes, even (meta) documentation. And the documentation really is part of shipping the software; you could even argue the face of it.

In this talk, I’ll present various challenges that a documentation team faces and get you thinking about how to apply engineering practices to help solve them. As an engineering team, your goal should be to help writers write, not be stuck worrying about laborious tasks that would frankly horrify you if you knew they were being done manually. It’s also a good opportunity to put the practices you’ve honed to work, such as CI, CD, infrastructure as code, build automation, and, the most universal tool of all, scripting.

You’ll walk away from this talk with a new perspective on documentation. It will no longer be just a writing thing, but rather a challenging engineering problem that you have the skills to help solve.

View slides locally

First, ensure you have the following installed:

  1. Node.js >= 4.2 [1]

  2. Yarn

    $ npm install -g yarn
  3. Gulp (command line interface only)

    $ npm install -g gulp-cli
  4. Ruby >= 2 [2]

    $ rvm use 2.4.2 --install
  5. Bundler

    $ gem install bundler

Next, install dependencies (if you ran the generator with the --skip-install switch):

$ yarn
  bundle --path=.bundle/gems

Finally, build and serve the presentation!

$ gulp serve

You can view the presentation in your browser at the URL displayed in the console.

By default, the preview server runs on port 8000. To change this default, you can assign a different number to the PORT environment variable:

$ PORT=8888 gulp serve

To build the presentation without starting the preview server, use:

$ gulp

In both cases, the files are built into the dist directory. You can view the slides outside of the local preview server by navigating to dist/index.html in your browser.

Publish to GitHub Pages

The Gulp build includes a task to publish the presentation to GitHub Pages.

First, make sure you have initialized the project as a git repository and linked it to a GitHub project. The task assumes that the git remote named origin points to the repository on GitHub.

Now you can build the presentation and publish it to GitHub Pages using:

$ gulp publish

The files in the dist directory end up in the gh-pages branch in the repository on GitHub. From there, they can be viewed in a browser from anywhere on the web.


1. You’re strongly encouraged to use nvm to manage Node.
2. You’re strongly encouraged to use RVM to manage Ruby.

presentation-applying-eng-practices-to-docs's People

Contributors

graphitefriction avatar mojavelinux avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.