SlideShare a Scribd company logo
Writing
Effective Self­Help Guides
   for World Domination


www.hicktech.com
@emmajanedotnet
Abstract
Developers write documentation. Technical authors write manuals. But in a perfect world, your users read software self­help guides. 
Consumers expect documentation to reflect the sophistication of the software they are using, and will abandon an application if they cannot 
easily find the answer to their problems. If we really want world domination of free and open source software, we need to have the self­help 
guides worthy of our code. In "Self Help Guides for World Domination" we'll take a look at the strategies and tools needed for really awesome 
documentation.
Imagine a world where documentation actually helped you to find an answer, or solved one of your problems. If that sounds like a pipe 
dream, it's because you've had to struggle with too much crap documentation. Technical writing can be fun and accessible, but more 
importantly, it can be truly useful. By analysing how people use software, and where they stumble, we can drastically improve the experience 
our users have with our software documentation. Creating relevant documentation needs a little more than just a scraping of code comments 
though­­and this talk will show you how it should be done.
Open source tools for writing documentation are very sophisticated, but generally our mastery of them quite simply sucks. Whether they are 
using DocBook, Mallard or DITA, many projects have opted for very powerful markup languages for their documentation, but often use only a 
fraction of what the tools can do. Other projects have opted to go with Web­based content management systems and have failed to create a 
cohesive self­help experience for users. You will learn how to effectively use these common tools for creating and maintaining collaborative 
documentation. Real examples will be pulled from open source projects.
If you've been wanting to help make the user experience better for your project, this talk is a must­see.
I talk about the popular 
  stuff: Version Control, 
     Documentation 
Writing Open Source
●
    WOSCON 2009: the first­ever open source 
    documentation conference
●
    !wosdocs
●
    #woscon
Documentation
doesn't have to be ugly
AND
We can make
docs hurt less.
This talk:
●
    Types of documentation
●
    Intended audience
●
    Framework
●
    Case study: StatusNet
Identi.ca t­shirt slide




http://www.redbubble.com/people/karlcow/t­shirts/3128519­1­im­identica­and­im­open
lizzie_anne http://www.flickr.com/photos/24498687@N03/2337550017/
Types of 
          “Documentation”
●   Dictionaries (function references)
●   Release notes
●   UI text
●   Case studies
●   Point of need cheat sheets
●   Inline help
●   Self­help guides
●   Marketing and promotional text
●   Cookbooks and HOWTOs
Writing Effective Self-Help Guides for World Domination
Types of “Readers”
●
    Developers: people who are writing new 
    code; you six months from now
●
    Existing users: administrators, end users
●
    Marketing prospects
bobtravis    http://www.flickr.com/photos/bobtravis/4005339850/ 
Cindy47452    http://www.flickr.com/photos/cindy47452/1500174297/
Framework             Capture



             Revise

                                Organize

Review



                         Translate
         Output
Writing Effective Self-Help Guides for World Domination
About the project


  ●
      out of date
  ●
      Incomplete
  ●
      hard to maintain
  ●
      painful

Daniel Morris http://www.flickr.com/photos/danielmorris/147735447/
Wanted Documentation
●   Code base and functions
●   Community Wiki ­ http://status.net/wiki/Main_Page
●   API documentation (a combination of functions yields an 
    XML output that can be used e.g. public timeline)
●   Developer Manual
●   Administrator Manual
●   User Manual
●   Online help
●   Plugins
●   I18N
Pink sherbert photography  http://www.flickr.com/photos/pinksherbet/3372060864/
Challenges
●   Tie documentation to pain and pleasure. Make it easy to write 
    documentation by tying it in places where work is already 
    happening.
●   Make documentation useful and therefore more rewarding for 
    the documentation contributors.
●   Write only useful, task­focused documentation.
●   Single source the "canonical" source of information. 
●   Automate where possible.
http://www.flickr.com/photos/martinlabar/2832969149/ Martin LaBar
The plan
●   Centralized documentation in a machine­readable format (XML).
●   Well documented code that is scraped and pushed to the Web.
●   Translation of documentation at the machine­readable stage.
●   Push documentation to community­editable space.
●   Review and revise role that is responsible for pulling edits back into 
    the trunk and recommending UI fixes at “pain” points.
●   Write only useful documentation to accomplish specific tasks.
Who does this magic?
●
    Developers document code →
●
    Feature list in release notes →
●
    Point of need: task list ("how do I..."). FAT, 
    not FAQ
●
    Community adds to the wiki which is pulled 
    back into the code (fix UI where 
    community edits show flaws in the code­
    base)
Rollout
●
    The framework is used to describe the 
    structure for the whole documentation 
    system.
●
    Product owner defines the standards for 
    documentation. (Wasn't Evan clever to hire a 
    crazy monkey that loves docs and version 
    control and community and pirates?)
●
    The rollout involves: Capture → Organize → 
    Output
http://www.flickr.com/photos/starscream_e/220892520/ chris starscream
Framework             Capture



             Revise

                                Organize

Review



                           Translate
         Output
Capture




http://www.flickr.com/photos/therichbrooks/2600080329/ therichbrooks
Capture
●
    Brainstorm a list of all possible things that 
    people will want to do. Interview 
    developers and community.
●
    Sort the task list by roles and prerequisite 
    knowledge.
●
    Establish a culture of documenting code.
Framework             Capture



             Revise

                                Organize

Review



                          Translate
         Output
Organize




http://www.flickr.com/photos/curiousexpeditions/3394943117/
Organize
●   Put information into a single source system. Use a 
    machine readable language (XML of some flavour: 
    DocBook, DITA, Mallard).
●   Establish and apply relevant tags based on 
    audience output.
●   Always think about automation, efficiency and 
    reuse. Never write something twice.
●   At this stage translate your text and pull it back into 
    the organization system (more about this...)
Framework             Capture


             Revise

                                Organize

Review



                          Translate
         Output
Translate




http://www.flickr.com/photos/opacity/284124471/
Translate
●
    Push to translators while text is at the XML 
    level.
●
    Bring back the translated text for output 
    processing.
●
    TranslateWiki
●
    See also: GNOME/Ubuntu projects
Framework             Capture



             Revise

                                Organize

Review



                           Translate
         Output
Output
Output
●
    Push content to...
●
    PDF
●
    HTML
●
    Community wiki
●
    Etc
Framework             Capture



             Revise

                                 Organize

Review



                            Translate
         Output
Review




   Wasabi Noise  http://www.flickr.com/photos/djkubik/192688574/
Review
●
    Have a feedback mechanism in place 
    (comments, editable docs, rate+review)
●
    Review changes for UI improvements that are 
    needed, changes and additions that can be 
    rolled (as a patch) back into the source.
●   Although there are tools to import back into API 
    docs (https://code.launchpad.net/~pauli­
    virtanen/scipy/pydocweb), hand rolling is 
    probably better because you can look for things 
    that should be fixed in docs, but in the UI.
Framework             Capture


             Revise

                                Organize

Review



                           Translate
         Output
Revise




Pirate Joey http://www.flickr.com/photos/pirateyjoe/3501692359/
Revise
●
    Collate feedback for each language and 
    each vendor branch.
●
    Return changes to the source with notes on 
    the changes from the previous version.
●
    Translate and Publish the revised docs.
●
    Improve the UI where relevant.
http://www.flickr.com/photos/starscream_e/220892520/ chris starscream
Framework             Capture



             Revise

                                 Organize

Review



                            Translate
         Output
OMFG!
        That was awesome!
           Sign. Me. Up!
               Writing Open Source 2010
              www.writingopensource.com


              StatusNet ­ emma@status.net
                  @emmajanedotnet
CC BY­SA­NC

More Related Content

PDF
Open event (show&tell april 2016)
PDF
JavaScript Power Tools 2015
PPTX
Reactive declarative UI as code - DroidCon Vietnam 2019
PPTX
JavaScript All The Things
PDF
React Native for multi-platform mobile applications
PDF
Introduzione a React Native - Facebook Developer Circle Rome
PDF
Building at a glance
PDF
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
Open event (show&tell april 2016)
JavaScript Power Tools 2015
Reactive declarative UI as code - DroidCon Vietnam 2019
JavaScript All The Things
React Native for multi-platform mobile applications
Introduzione a React Native - Facebook Developer Circle Rome
Building at a glance
React-Native for multi-platform mobile applications @ Codemotion Rome 2017

Viewers also liked (12)

PDF
HICK Tech: The rural and modern technology conference
PDF
There's a Module for That, MIMA Summit 2010
PDF
You, On-line: Taking advantage of what you've already got
PDF
Subverting Proprietary Economics (FSOSS 2008)
ODP
The Themer's Toolkit
PDF
Was it something I said?
PDF
Managing a Project the Drupal Way - Drupal Open Days Ireland
PDF
Extreme Programming
PDF
Augmenting your Technical Documentation with User-Generated Content
KEY
The Accidental Writer: Great Web Copy for Everyone
PDF
Death to project documentation with eXtreme Programming
PDF
Documentation avoidance for developers
HICK Tech: The rural and modern technology conference
There's a Module for That, MIMA Summit 2010
You, On-line: Taking advantage of what you've already got
Subverting Proprietary Economics (FSOSS 2008)
The Themer's Toolkit
Was it something I said?
Managing a Project the Drupal Way - Drupal Open Days Ireland
Extreme Programming
Augmenting your Technical Documentation with User-Generated Content
The Accidental Writer: Great Web Copy for Everyone
Death to project documentation with eXtreme Programming
Documentation avoidance for developers
Ad

Similar to Writing Effective Self-Help Guides for World Domination (20)

PPT
FSOSS - Enter the 4th Dimension: Documentation
PPTX
Social web for Tech Comm, STC March 2013
PPTX
Publishing strategies for API documentation
PDF
Docs Like Code
PPTX
Open Source Project Management
PDF
Contributing to Open Source
KEY
Get ready for web3.0! Open up your app!
PDF
Collaborating on GitHub for Open Source Documentation
PPTX
Creating and Maintaining an Open Source Library
PDF
Django in the Real World
PDF
Back To Square One: Building a WordPress Starter Development Kit
PDF
Docs Like Code: Strategies and Stories
PDF
Creating and Managing Technical Content for Open Source Products
PDF
Create Your Own Starter Files
ODP
Documenting code yapceu2016
ODP
Documenting Code - Patterns and Anti-patterns - NLPW 2016
PDF
So You Just Inherited a $Legacy Application… NomadPHP July 2016
PPTX
Publishing API documentation -- Workshop
PDF
So You Just Inherited a $Legacy Application...
PPTX
Docs as Part of the Product - Open Source Summit North America 2018
FSOSS - Enter the 4th Dimension: Documentation
Social web for Tech Comm, STC March 2013
Publishing strategies for API documentation
Docs Like Code
Open Source Project Management
Contributing to Open Source
Get ready for web3.0! Open up your app!
Collaborating on GitHub for Open Source Documentation
Creating and Maintaining an Open Source Library
Django in the Real World
Back To Square One: Building a WordPress Starter Development Kit
Docs Like Code: Strategies and Stories
Creating and Managing Technical Content for Open Source Products
Create Your Own Starter Files
Documenting code yapceu2016
Documenting Code - Patterns and Anti-patterns - NLPW 2016
So You Just Inherited a $Legacy Application… NomadPHP July 2016
Publishing API documentation -- Workshop
So You Just Inherited a $Legacy Application...
Docs as Part of the Product - Open Source Summit North America 2018
Ad

More from Emma Jane Hogbin Westby (20)

PDF
PDF
Getting a CLUE at the Command Line
PDF
Lessons From an Unlikely Superhero
PDF
PSD to Theme: The SMACSS Way
PDF
Git Makes Me Angry Inside - DrupalCon Prague
PDF
Git Makes Me Angry Inside
PDF
Was It Something I Said? The Art of Giving (and getting) A Critique
PDF
Beyond the Bikeshed
PDF
Gamestorming Meets Quiet
PDF
Git Makes Me Angry Inside
PDF
Work Flow for Solo Developers and Small Teams
PDF
Evaluating Base Themes
PDF
Speaker Check-in - 3 - Munich
PDF
Drupal Flyover, CMS Expo
PDF
Responsive Web Design for Drupal, CMS Expo
PDF
Selling Hopes and Dreams - DrupalCamp Toronto
PDF
Forensic Theming - DrupalCon London
PDF
Forensic Theming for Drupal
PDF
Intro to Theming Drupal, FOSSLC Summer Camp 2010
PDF
Advanced Layout Techniques @ CMSExpo
Getting a CLUE at the Command Line
Lessons From an Unlikely Superhero
PSD to Theme: The SMACSS Way
Git Makes Me Angry Inside - DrupalCon Prague
Git Makes Me Angry Inside
Was It Something I Said? The Art of Giving (and getting) A Critique
Beyond the Bikeshed
Gamestorming Meets Quiet
Git Makes Me Angry Inside
Work Flow for Solo Developers and Small Teams
Evaluating Base Themes
Speaker Check-in - 3 - Munich
Drupal Flyover, CMS Expo
Responsive Web Design for Drupal, CMS Expo
Selling Hopes and Dreams - DrupalCamp Toronto
Forensic Theming - DrupalCon London
Forensic Theming for Drupal
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Advanced Layout Techniques @ CMSExpo

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
KodekX | Application Modernization Development
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Encapsulation theory and applications.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Cloud computing and distributed systems.
PDF
Approach and Philosophy of On baking technology
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Monthly Chronicles - July 2025
Mobile App Security Testing_ A Comprehensive Guide.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Spectral efficient network and resource selection model in 5G networks
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
KodekX | Application Modernization Development
Review of recent advances in non-invasive hemoglobin estimation
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Encapsulation_ Review paper, used for researhc scholars
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Unlocking AI with Model Context Protocol (MCP)
Encapsulation theory and applications.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Cloud computing and distributed systems.
Approach and Philosophy of On baking technology
Advanced methodologies resolving dimensionality complications for autism neur...
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Monthly Chronicles - July 2025

Writing Effective Self-Help Guides for World Domination