SlideShare a Scribd company logo
2015
Collaborating on GitHub

FOR OPEN SOURCE DOCUMENTATION

Anne	
  Gentle,	
  Principal	
  Engineer	
  
January	
  13,	
  2016
#writethedocs
#atx
Questions at the end…
…but	
  you	
  can	
  always	
  
ask	
  me	
  anything:
2
documenting 20 cloud services
across 130 GitHub repositories
With 800 docs contributors in 4 years
@annegentle, #writethedocs
anne.gentle@rackspace.com
www.justwriteclick.com
Git and GitHub
▪ 2005	
  born	
  after	
  spectacular	
  Linux	
  tooling	
  failure	
  
▪ Social	
  web,	
  leads	
  to	
  social	
  coding	
  
▪ Git	
  is	
  for	
  command	
  line,	
  GitHub	
  is	
  the	
  web	
  interface	
  
▪ Cross-­‐platform	
  tooling	
  -­‐	
  Windows,	
  Mac,	
  Linux	
  
▪ Merge	
  files	
  rather	
  than	
  a	
  “lock	
  and	
  checkout”	
  model	
  
▪ Non-­‐linear	
  branching	
  model
3
GitHub Vocabulary
4
BRANCH
Indicator	
  of	
  
divergence	
  
from	
  base	
  
COMMIT
Point	
  in	
  time	
  
snapshot	
  of	
  
repository	
  with	
  
changes
FORK
Copy	
  
repository,	
  
copy	
  of	
  
repository
PUSH
Move	
  changes	
  
branch	
  to	
  
branch	
  
ORGANIZATION
Collection	
  of	
  
repositories	
  
PULL	
  REQUEST
Comparison	
  of	
  
edits	
  to	
  see	
  if	
  
team	
  wants	
  to	
  
accept	
  changes	
  
RESPOSITORY
Collection	
  of	
  
stored	
  code	
  or	
  
documentation	
  
ISSUE
Defects,	
  tasks,	
  
or	
  feature	
  
requests	
  	
  
Github
5
WRITING	
  IN	
  
ISOLATION
Flickr:mtischendorf
Collaborate Where Users Are
▪ Curate	
  the	
  
audience	
  
▪ Write	
  with	
  and	
  for	
  
the	
  audience	
  
▪ Reward	
  the	
  
audience
6
7
Motivations	
  
Ensure	
  that	
  contributors	
  are	
  	
  
valued	
  and	
  rewarded!	
  
▪ Sense	
  of	
  belonging	
  
▪ Pay	
  it	
  forward	
  (reciprocity)	
  
▪ Effective,	
  time-­‐saving,	
  user	
  support	
  
▪ Reputation,	
  recruiting
Flickr:elkaypics
MOTIVATIONS
8
Ensure	
  that	
  contributors	
  are	
  	
  
valued	
  and	
  rewarded!	
  
▪ Sense	
  of	
  belonging	
  
▪ Pay	
  it	
  forward	
  (reciprocity)	
  
▪ Effective,	
  time-­‐saving,	
  user	
  support	
  
▪ Reputation,	
  recruiting
LET’S	
  CURATE
Authors
Processes
Tools
Mindsets
Attitudes
Jobs	
  
	
   Flickr:roswellsgirl
MOTIVATIONS
9
Ensure	
  that	
  contributors	
  are	
  	
  
valued	
  and	
  rewarded!	
  
▪ Sense	
  of	
  belonging	
  
▪ Pay	
  it	
  forward	
  (reciprocity)	
  
▪ Effective,	
  time-­‐saving,	
  user	
  support	
  
▪ Reputation,	
  recruiting
TREAT	
  DOCS
LIKE	
  CODE
Flickr:roswellsgirl
Long Tail Contributions
▪ Rise	
  of	
  the	
  niche	
  
▪ Finding	
  like-­‐minded	
  
people	
  interested	
  in	
  
your	
  content	
  
▪ Dark	
  corners	
  of	
  
knowledge	
  gap	
  are	
  
filled	
  with	
  docs
10
The Docs Suck
▪ In	
  what	
  way?	
  
▪ Which	
  page?	
  
▪ How	
  can	
  I	
  get	
  it	
  not	
  
to	
  suck?
11
Doc Issues Tracking
▪ Tasks,	
  outright	
  errors	
  
and	
  feature	
  requests	
  
▪ I’ll	
  triage	
  the	
  issue	
  and	
  
guide	
  you	
  in	
  fixing	
  it,	
  
issue	
  reporter	
  
▪ http://guides.github.com/
features/issues/
12
Writers Never Get Reviews
Documentation	
  system	
  
so	
  separate	
  from	
  code	
  
system	
  that	
  technical	
  
reviews	
  are	
  through	
  
email	
  
Or	
  
*gasp*	
  
Frozen-­‐in-­‐time	
  PDF	
  files
13
Flickr:elkaypics
Reviewers Fix Docs
“This	
  is	
  wrong,	
  here’s	
  how	
  to	
  fix	
  it”	
  
▪ Working	
  in	
  the	
  same	
  
collaboration	
  tools	
  as	
  technical	
  
people	
  gives	
  better	
  reviews	
  
▪ We	
  can	
  merge	
  as	
  many	
  as	
  50	
  
patches	
  per	
  day;	
  running	
  four	
  
automated	
  tests	
  per	
  patch	
  and	
  
requiring	
  two	
  humans	
  to	
  check	
  
the	
  patch	
  and	
  click	
  in	
  order	
  to	
  
publish
14
UNFAIR

TREATMENT

Docs	
  	
  ghetto
15
Flickr:mtischendorf
Value Proposition
Writer	
  contributions,	
  
when	
  treated	
  like	
  code,	
  
are	
  valued	
  equally	
  with	
  
developer	
  code
16
White Coat Tools
Closely	
  guarded	
  secrets	
  of	
  
proprietary	
  tool	
  chains	
  
with	
  expensive	
  per-­‐seat	
  
licenses	
  
Or	
  
Secret	
  developer	
  
workflows	
  are	
  mysterious	
  
to	
  writers
17
Flickr:darthnick
Beautiful Docs
▪ Widely	
  accepted	
  tooling	
  
built	
  in	
  the	
  open	
  so	
  we	
  
can	
  make	
  it	
  work	
  for	
  us	
  
and	
  for	
  devs	
  
(readthedocs.org)	
  
▪ Simple	
  markup	
  
▪ Flat	
  file	
  builds	
  
▪ We	
  can	
  patch	
  and	
  log	
  
issues	
  against	
  the	
  
tooling
18
19
ONLY	
  DEV	
  
TEAMS	
  GET	
  CI/CD

Deploying	
  containers	
  and	
  micro	
  
	
  services	
  oh	
  my.

Docs,	
  use	
  some	
  horrifyingly	
  slow	
  
proprietary	
  tool,	
  kthnxbai.	
  
Flickr:photohome_uk
20
CI/CD	
  FOR	
  ALL	
  
▪ Docs	
  can	
  be	
  published	
  automatically	
  after	
  
reviewers	
  merge	
  the	
  change	
  
▪ Docs	
  can	
  have	
  simple	
  tests	
  to	
  ensure	
  quality	
  and	
  
that	
  you	
  “don’t	
  break	
  the	
  build.”	
  
▪ Scrape	
  the	
  code	
  to	
  build	
  more	
  helpful	
  docs	
  
(especially	
  reference)	
  
▪ https://opensource.com/business/15/7/
continuous-integration-and-continuous-
delivery-documentation	
  
Flickr:pedrovenzini
What Pairs Well with GitHub?
▪ Simple	
  markup:	
  Markdown,	
  RST	
  
▪ GitHub	
  Pages:	
  http://pages.github.com	
  
▪ Static	
  site	
  generators:	
  https://
staticsitegenerators.net/	
  
▪ Well-­‐documented	
  style	
  guide	
  and	
  contributor	
  
guide	
  
▪ Open	
  licensing:	
  Creative	
  Commons	
  
▪ Borrowing	
  development	
  techniques
21
========================================
Discover the version number for a client
========================================
Run the following command to discover the version number for a client:
.. code-block:: console
$ PROJECT --version
For example, to see the version number for the ``nova`` client, run the
following command:
.. code-block:: console
$ nova --version
2.31.0
Source | Output
22
Who Uses Git and GitHub?
▪ O’Reilly	
  Media	
  for	
  book	
  publishing	
  
▪ GitHub	
  uses	
  GitHub	
  to	
  document	
  GitHub	
  
▪ OpenStack	
  uses	
  open	
  source	
  Git	
  
▪ Rackspace	
  Cloud	
  documentation	
  uses	
  GitHub	
  
▪ Many,	
  many	
  more	
  organizations
23
Flickr:lamont_cranston
What Are Some

Difficulties?
▪ Scope	
  of	
  reviews	
  
▪ Scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Naming
24
Flickr:pedrovenzini
What Are Some

Difficulties?
▪ Scope	
  and	
  scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Identity	
  
▪ Naming
25
Flickr:davebloggs007
QUALITY	
  GATE	
  
You	
  shall	
  not	
  pass…	
  
▪ Test	
  for	
  unwanted

white	
  space	
  
▪ Test	
  docs	
  syntax	
  
▪ Test	
  docs	
  build
Flickr:pedrovenzini
What Are Some

Difficulties?
▪ Scope	
  and	
  scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Identity	
  
▪ Naming
26
Flickr:hddod
END	
  THE	
  TEDIUM	
  
ENABLE	
  THE	
  ROBOTS	
  
▪ Build	
  the	
  docs	
  and	
  publish	
  them	
  
to	
  drafts	
  or	
  staging	
  area	
  
▪ Docs	
  are	
  always	
  available	
  for	
  
reviews
Flickr:pedrovenzini
Coach Better Writing
▪ Become	
  the	
  experts	
  and	
  
consultations	
  while	
  enabling	
  
others	
  to	
  improve	
  their	
  
writing	
  
▪ The	
  people	
  with	
  the	
  
knowledge	
  can	
  become	
  
better	
  writers	
  and	
  learn	
  
more	
  empathy	
  by	
  writing	
  for	
  
the	
  users
27
Flickr:philgaldys
Flickr:pedrovenzini
What Are Some

Difficulties?
▪ Scope	
  and	
  scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Identity	
  
▪ Naming
28
Flickr:mortimer
CREATE	
  TEAMS	
  
▪ We	
  now	
  divide	
  the	
  work	
  by	
  
deliverable:	
  user	
  guides,	
  install	
  
guides,	
  configuration	
  guides	
  
▪ We	
  scrape	
  the	
  code	
  as	
  often	
  as	
  
we	
  can	
  to	
  deliver	
  continuously
Flickr:pedrovenzini
What Are Some

Difficulties?
▪ Scope	
  and	
  scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Identity	
  
▪ Naming
29
Flickr:turbojoe
BUILD	
  A	
  REPUTATION	
  
▪ Measure	
  quality	
  and	
  quantity	
  
▪ Count	
  contributions	
  and	
  
improvements	
  
▪ Compare	
  over	
  time;	
  benchmark	
  
and	
  reward
“We’re	
  crazy,	
  but	
  
we’re	
  writing	
  a	
  book	
  in	
  
five	
  days.”	
  
Anne	
  Gentle	
  
https://youtube.com/watch?v-­‐
IYfHEy6E2n0
30
Flickr:pedrovenzini
What Are Some

Difficulties?
▪ Scope	
  and	
  scale	
  questions	
  
▪ Official-­‐ness	
  
▪ Identity	
  
▪ Naming
31
Flickr:candelabrumdanse
Ask me. Challenge me. Find out.
MOTIVATIONS
32
Ensure	
  that	
  contributors	
  are	
  	
  
valued	
  and	
  rewarded!	
  
▪ Sense	
  of	
  belonging	
  
▪ Pay	
  it	
  forward	
  (reciprocity)	
  
▪ Effective,	
  time-­‐saving,	
  user	
  support	
  
▪ Reputation,	
  recruiting

More Related Content

What's hot (20)

PDF
CI/CD with Github Actions
Md. Minhazul Haque
 
PPTX
React Faceoff at Philly.NET
Christopher Gomez
 
PDF
DockerCon Recap - Online Meetup by Ben Firshman
Docker, Inc.
 
PDF
Intro to Git, GitHub, and Devpost
Andrew Kerr
 
PDF
Introduction to GitHub Actions
Knoldus Inc.
 
PDF
Contribute 101: Engine/Swarm/ContainerD by Phil Estes
Docker, Inc.
 
PPT
Introduction to Git for developers
Dmitry Guyvoronsky
 
PPTX
Github PowerPoint Final
Elizabeth Walden
 
ZIP
Introduction to Git
Randal Schwartz
 
PDF
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
Gaetano Giunta
 
PPTX
Up GitLab Presentation 2015
Kumaran Balachandran
 
PDF
Why Your Site is Slow: Performance Answers for Your Clients
Pantheon
 
PDF
Intro to Git and GitHub
Panagiotis Papadopoulos
 
PPTX
Github
MeetPatel710
 
PPTX
Why is Open Source so Good: Thirty Years of Lessons Learned
Mark Atwood
 
PDF
Containers for grownups migrating traditional & existing applications[1...
DevOps.com
 
PDF
It Takes a Village to Make WordPress
DrewAPicture
 
PPTX
Practical Git - Philly.NET Code Camp
Christopher Gomez
 
PPTX
Integrating Git, Gerrit and Jenkins/Hudson with Mylyn
Sascha Scholz
 
PDF
Continuous Integration Is for Teams: Moving past buzzword driven development
Pantheon
 
CI/CD with Github Actions
Md. Minhazul Haque
 
React Faceoff at Philly.NET
Christopher Gomez
 
DockerCon Recap - Online Meetup by Ben Firshman
Docker, Inc.
 
Intro to Git, GitHub, and Devpost
Andrew Kerr
 
Introduction to GitHub Actions
Knoldus Inc.
 
Contribute 101: Engine/Swarm/ContainerD by Phil Estes
Docker, Inc.
 
Introduction to Git for developers
Dmitry Guyvoronsky
 
Github PowerPoint Final
Elizabeth Walden
 
Introduction to Git
Randal Schwartz
 
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
Gaetano Giunta
 
Up GitLab Presentation 2015
Kumaran Balachandran
 
Why Your Site is Slow: Performance Answers for Your Clients
Pantheon
 
Intro to Git and GitHub
Panagiotis Papadopoulos
 
Github
MeetPatel710
 
Why is Open Source so Good: Thirty Years of Lessons Learned
Mark Atwood
 
Containers for grownups migrating traditional & existing applications[1...
DevOps.com
 
It Takes a Village to Make WordPress
DrewAPicture
 
Practical Git - Philly.NET Code Camp
Christopher Gomez
 
Integrating Git, Gerrit and Jenkins/Hudson with Mylyn
Sascha Scholz
 
Continuous Integration Is for Teams: Moving past buzzword driven development
Pantheon
 

Viewers also liked (16)

PDF
PC_tablets_in_Solano_County
Ricardo M Serrano
 
PPTX
U2 drive2 equipo2
ahumadaer
 
PPTX
P01092015 b
Editorial Océano Ecuador
 
DOC
Joe_Catania_Resume
Joe Catania
 
PDF
Carta de Dilma a evangélicos
Paulo Souza
 
PPTX
Quicksight
Kimberly Wu
 
PDF
Liputan6 cyber news6
Abdul Rahman Sutara
 
PDF
Pen logo
Randibeth Gallant
 
DOCX
El vicio
elrincondelpalique
 
PPT
LAS TIC CLAVES EN LA EDUCACION
Gusman Arias Ricaldi
 
ODT
Calendario hermanamiento
cofradeonubense
 
PDF
Fluhe 39
Maamar HAMDANI
 
PPTX
Demak-XRPLA-3
Herdiana
 
PDF
Básica blog
rodrigoateneu
 
PPTX
Sejarah kerajaan bali
Meliana Siboro
 
PDF
Expo capacitacion final
CECY50
 
PC_tablets_in_Solano_County
Ricardo M Serrano
 
U2 drive2 equipo2
ahumadaer
 
Joe_Catania_Resume
Joe Catania
 
Carta de Dilma a evangélicos
Paulo Souza
 
Quicksight
Kimberly Wu
 
Liputan6 cyber news6
Abdul Rahman Sutara
 
LAS TIC CLAVES EN LA EDUCACION
Gusman Arias Ricaldi
 
Calendario hermanamiento
cofradeonubense
 
Fluhe 39
Maamar HAMDANI
 
Demak-XRPLA-3
Herdiana
 
Básica blog
rodrigoateneu
 
Sejarah kerajaan bali
Meliana Siboro
 
Expo capacitacion final
CECY50
 
Ad

Similar to Collaborating on GitHub for Open Source Documentation (20)

PDF
Git and GitHub for Documentation
Anne Gentle
 
PDF
O'Leary - Using GitHub for Enterprise and Open Source Documentation
LavaCon
 
PDF
Docs Like Code
Anne Gentle
 
PDF
Docs Like Code: Strategies and Stories
Anne Gentle
 
PPTX
Docs as Part of the Product - Open Source Summit North America 2018
Den Delimarsky
 
PPTX
Social web for Tech Comm, STC March 2013
Anne Gentle
 
PDF
Open source 101 for students
Sage Sharp
 
PDF
Code the docs-yu liu
StreamNative
 
PDF
Creating and Managing Technical Content for Open Source Products
WSO2
 
PPTX
Growing Developer Community One Pull Request At a Time
Alex Bulankou
 
PPTX
Creating and Maintaining an Open Source Library
Nicholas Schweitzer
 
PPTX
Stc tc open_documentation
Janet Swisher
 
PDF
Let's talk FOSS!
AditiSaxena72
 
PPT
Docs as-code-missing.-manual
Margaret Eker
 
PDF
Contributing to Open Source
Daniel Stenberg
 
PDF
Leaping Forward: Finding The Future of Your API Docs
Pronovix
 
PDF
OSS SW Basics Lecture 03: Fundamental parts of open-source projects
Jeongkyu Shin
 
PPTX
Open source and then some: An Introduction
Akash Tandon
 
PDF
GitHub Workflows for Technical Communication
STC-Philadelphia Metro Chapter
 
PPTX
concordia hacktoberfest.pptx
AnkurVerma95745
 
Git and GitHub for Documentation
Anne Gentle
 
O'Leary - Using GitHub for Enterprise and Open Source Documentation
LavaCon
 
Docs Like Code
Anne Gentle
 
Docs Like Code: Strategies and Stories
Anne Gentle
 
Docs as Part of the Product - Open Source Summit North America 2018
Den Delimarsky
 
Social web for Tech Comm, STC March 2013
Anne Gentle
 
Open source 101 for students
Sage Sharp
 
Code the docs-yu liu
StreamNative
 
Creating and Managing Technical Content for Open Source Products
WSO2
 
Growing Developer Community One Pull Request At a Time
Alex Bulankou
 
Creating and Maintaining an Open Source Library
Nicholas Schweitzer
 
Stc tc open_documentation
Janet Swisher
 
Let's talk FOSS!
AditiSaxena72
 
Docs as-code-missing.-manual
Margaret Eker
 
Contributing to Open Source
Daniel Stenberg
 
Leaping Forward: Finding The Future of Your API Docs
Pronovix
 
OSS SW Basics Lecture 03: Fundamental parts of open-source projects
Jeongkyu Shin
 
Open source and then some: An Introduction
Akash Tandon
 
GitHub Workflows for Technical Communication
STC-Philadelphia Metro Chapter
 
concordia hacktoberfest.pptx
AnkurVerma95745
 
Ad

More from Anne Gentle (20)

PDF
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Anne Gentle
 
PPTX
Docs as Code: Publishing Processes for API Experiences
Anne Gentle
 
PDF
Make an Instant Website with Webhooks
Anne Gentle
 
PPTX
Journey into Continuous Glucose Monitoring Technology as a Parent
Anne Gentle
 
PPTX
Writing a Technical Talk Proposal
Anne Gentle
 
PDF
Women in tech: Be that light
Anne Gentle
 
PDF
You'll Never Look at Developer Support the Same Way Again
Anne Gentle
 
PDF
So You Want to be an OpenStack Contributor
Anne Gentle
 
PPTX
OpenStack Doc Overview for Boot Camp
Anne Gentle
 
PPTX
Social Media, Social Networking, and Social Relevance in Tech Comm
Anne Gentle
 
PPT
OpenStack How To - PyLadies ATX
Anne Gentle
 
PPT
Women of OpenStack breakfast welcome
Anne Gentle
 
PDF
OpenStack documentation & translation management 2012_summit
Anne Gentle
 
PPTX
OpenStack Documentation in the Open
Anne Gentle
 
PPTX
OpenStack Documentation Projects and Processes
Anne Gentle
 
PDF
TryStack: A Sandbox for OpenStack Users and Admins
Anne Gentle
 
PPTX
Sprints and Stacks
Anne Gentle
 
PPT
OpenStack Overview for Austin Cloud User Group
Anne Gentle
 
PPTX
OpenStack Content Stackers
Anne Gentle
 
PPTX
STC 2010 Strategies for the Social Web for Documentation
Anne Gentle
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Anne Gentle
 
Docs as Code: Publishing Processes for API Experiences
Anne Gentle
 
Make an Instant Website with Webhooks
Anne Gentle
 
Journey into Continuous Glucose Monitoring Technology as a Parent
Anne Gentle
 
Writing a Technical Talk Proposal
Anne Gentle
 
Women in tech: Be that light
Anne Gentle
 
You'll Never Look at Developer Support the Same Way Again
Anne Gentle
 
So You Want to be an OpenStack Contributor
Anne Gentle
 
OpenStack Doc Overview for Boot Camp
Anne Gentle
 
Social Media, Social Networking, and Social Relevance in Tech Comm
Anne Gentle
 
OpenStack How To - PyLadies ATX
Anne Gentle
 
Women of OpenStack breakfast welcome
Anne Gentle
 
OpenStack documentation & translation management 2012_summit
Anne Gentle
 
OpenStack Documentation in the Open
Anne Gentle
 
OpenStack Documentation Projects and Processes
Anne Gentle
 
TryStack: A Sandbox for OpenStack Users and Admins
Anne Gentle
 
Sprints and Stacks
Anne Gentle
 
OpenStack Overview for Austin Cloud User Group
Anne Gentle
 
OpenStack Content Stackers
Anne Gentle
 
STC 2010 Strategies for the Social Web for Documentation
Anne Gentle
 

Recently uploaded (20)

PDF
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
PPSX
Usergroup - OutSystems Architecture.ppsx
Kurt Vandevelde
 
PDF
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
PDF
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
PDF
UiPath Agentic AI ile Akıllı Otomasyonun Yeni Çağı
UiPathCommunity
 
PDF
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
PPTX
Practical Applications of AI in Local Government
OnBoard
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
PDF
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
PDF
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PDF
Why aren't you using FME Flow's CPU Time?
Safe Software
 
PPTX
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
PPTX
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
PDF
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
Usergroup - OutSystems Architecture.ppsx
Kurt Vandevelde
 
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
UiPath Agentic AI ile Akıllı Otomasyonun Yeni Çağı
UiPathCommunity
 
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
Practical Applications of AI in Local Government
OnBoard
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
Kubernetes - Architecture & Components.pdf
geethak285
 
Why aren't you using FME Flow's CPU Time?
Safe Software
 
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 

Collaborating on GitHub for Open Source Documentation

  • 1. 2015 Collaborating on GitHub
 FOR OPEN SOURCE DOCUMENTATION
 Anne  Gentle,  Principal  Engineer   January  13,  2016 #writethedocs #atx
  • 2. Questions at the end… …but  you  can  always   ask  me  anything: 2 documenting 20 cloud services across 130 GitHub repositories With 800 docs contributors in 4 years @annegentle, #writethedocs [email protected] www.justwriteclick.com
  • 3. Git and GitHub ▪ 2005  born  after  spectacular  Linux  tooling  failure   ▪ Social  web,  leads  to  social  coding   ▪ Git  is  for  command  line,  GitHub  is  the  web  interface   ▪ Cross-­‐platform  tooling  -­‐  Windows,  Mac,  Linux   ▪ Merge  files  rather  than  a  “lock  and  checkout”  model   ▪ Non-­‐linear  branching  model 3
  • 4. GitHub Vocabulary 4 BRANCH Indicator  of   divergence   from  base   COMMIT Point  in  time   snapshot  of   repository  with   changes FORK Copy   repository,   copy  of   repository PUSH Move  changes   branch  to   branch   ORGANIZATION Collection  of   repositories   PULL  REQUEST Comparison  of   edits  to  see  if   team  wants  to   accept  changes   RESPOSITORY Collection  of   stored  code  or   documentation   ISSUE Defects,  tasks,   or  feature   requests    
  • 6. Collaborate Where Users Are ▪ Curate  the   audience   ▪ Write  with  and  for   the  audience   ▪ Reward  the   audience 6
  • 7. 7 Motivations   Ensure  that  contributors  are     valued  and  rewarded!   ▪ Sense  of  belonging   ▪ Pay  it  forward  (reciprocity)   ▪ Effective,  time-­‐saving,  user  support   ▪ Reputation,  recruiting Flickr:elkaypics
  • 8. MOTIVATIONS 8 Ensure  that  contributors  are     valued  and  rewarded!   ▪ Sense  of  belonging   ▪ Pay  it  forward  (reciprocity)   ▪ Effective,  time-­‐saving,  user  support   ▪ Reputation,  recruiting LET’S  CURATE Authors Processes Tools Mindsets Attitudes Jobs     Flickr:roswellsgirl
  • 9. MOTIVATIONS 9 Ensure  that  contributors  are     valued  and  rewarded!   ▪ Sense  of  belonging   ▪ Pay  it  forward  (reciprocity)   ▪ Effective,  time-­‐saving,  user  support   ▪ Reputation,  recruiting TREAT  DOCS LIKE  CODE Flickr:roswellsgirl
  • 10. Long Tail Contributions ▪ Rise  of  the  niche   ▪ Finding  like-­‐minded   people  interested  in   your  content   ▪ Dark  corners  of   knowledge  gap  are   filled  with  docs 10
  • 11. The Docs Suck ▪ In  what  way?   ▪ Which  page?   ▪ How  can  I  get  it  not   to  suck? 11
  • 12. Doc Issues Tracking ▪ Tasks,  outright  errors   and  feature  requests   ▪ I’ll  triage  the  issue  and   guide  you  in  fixing  it,   issue  reporter   ▪ http://guides.github.com/ features/issues/ 12
  • 13. Writers Never Get Reviews Documentation  system   so  separate  from  code   system  that  technical   reviews  are  through   email   Or   *gasp*   Frozen-­‐in-­‐time  PDF  files 13 Flickr:elkaypics
  • 14. Reviewers Fix Docs “This  is  wrong,  here’s  how  to  fix  it”   ▪ Working  in  the  same   collaboration  tools  as  technical   people  gives  better  reviews   ▪ We  can  merge  as  many  as  50   patches  per  day;  running  four   automated  tests  per  patch  and   requiring  two  humans  to  check   the  patch  and  click  in  order  to   publish 14
  • 16. Value Proposition Writer  contributions,   when  treated  like  code,   are  valued  equally  with   developer  code 16
  • 17. White Coat Tools Closely  guarded  secrets  of   proprietary  tool  chains   with  expensive  per-­‐seat   licenses   Or   Secret  developer   workflows  are  mysterious   to  writers 17 Flickr:darthnick
  • 18. Beautiful Docs ▪ Widely  accepted  tooling   built  in  the  open  so  we   can  make  it  work  for  us   and  for  devs   (readthedocs.org)   ▪ Simple  markup   ▪ Flat  file  builds   ▪ We  can  patch  and  log   issues  against  the   tooling 18
  • 19. 19 ONLY  DEV   TEAMS  GET  CI/CD
 Deploying  containers  and  micro    services  oh  my.
 Docs,  use  some  horrifyingly  slow   proprietary  tool,  kthnxbai.   Flickr:photohome_uk
  • 20. 20 CI/CD  FOR  ALL   ▪ Docs  can  be  published  automatically  after   reviewers  merge  the  change   ▪ Docs  can  have  simple  tests  to  ensure  quality  and   that  you  “don’t  break  the  build.”   ▪ Scrape  the  code  to  build  more  helpful  docs   (especially  reference)   ▪ https://opensource.com/business/15/7/ continuous-integration-and-continuous- delivery-documentation   Flickr:pedrovenzini
  • 21. What Pairs Well with GitHub? ▪ Simple  markup:  Markdown,  RST   ▪ GitHub  Pages:  http://pages.github.com   ▪ Static  site  generators:  https:// staticsitegenerators.net/   ▪ Well-­‐documented  style  guide  and  contributor   guide   ▪ Open  licensing:  Creative  Commons   ▪ Borrowing  development  techniques 21
  • 22. ======================================== Discover the version number for a client ======================================== Run the following command to discover the version number for a client: .. code-block:: console $ PROJECT --version For example, to see the version number for the ``nova`` client, run the following command: .. code-block:: console $ nova --version 2.31.0 Source | Output 22
  • 23. Who Uses Git and GitHub? ▪ O’Reilly  Media  for  book  publishing   ▪ GitHub  uses  GitHub  to  document  GitHub   ▪ OpenStack  uses  open  source  Git   ▪ Rackspace  Cloud  documentation  uses  GitHub   ▪ Many,  many  more  organizations 23
  • 24. Flickr:lamont_cranston What Are Some
 Difficulties? ▪ Scope  of  reviews   ▪ Scale  questions   ▪ Official-­‐ness   ▪ Naming 24
  • 25. Flickr:pedrovenzini What Are Some
 Difficulties? ▪ Scope  and  scale  questions   ▪ Official-­‐ness   ▪ Identity   ▪ Naming 25 Flickr:davebloggs007 QUALITY  GATE   You  shall  not  pass…   ▪ Test  for  unwanted
 white  space   ▪ Test  docs  syntax   ▪ Test  docs  build
  • 26. Flickr:pedrovenzini What Are Some
 Difficulties? ▪ Scope  and  scale  questions   ▪ Official-­‐ness   ▪ Identity   ▪ Naming 26 Flickr:hddod END  THE  TEDIUM   ENABLE  THE  ROBOTS   ▪ Build  the  docs  and  publish  them   to  drafts  or  staging  area   ▪ Docs  are  always  available  for   reviews
  • 27. Flickr:pedrovenzini Coach Better Writing ▪ Become  the  experts  and   consultations  while  enabling   others  to  improve  their   writing   ▪ The  people  with  the   knowledge  can  become   better  writers  and  learn   more  empathy  by  writing  for   the  users 27 Flickr:philgaldys
  • 28. Flickr:pedrovenzini What Are Some
 Difficulties? ▪ Scope  and  scale  questions   ▪ Official-­‐ness   ▪ Identity   ▪ Naming 28 Flickr:mortimer CREATE  TEAMS   ▪ We  now  divide  the  work  by   deliverable:  user  guides,  install   guides,  configuration  guides   ▪ We  scrape  the  code  as  often  as   we  can  to  deliver  continuously
  • 29. Flickr:pedrovenzini What Are Some
 Difficulties? ▪ Scope  and  scale  questions   ▪ Official-­‐ness   ▪ Identity   ▪ Naming 29 Flickr:turbojoe BUILD  A  REPUTATION   ▪ Measure  quality  and  quantity   ▪ Count  contributions  and   improvements   ▪ Compare  over  time;  benchmark   and  reward
  • 30. “We’re  crazy,  but   we’re  writing  a  book  in   five  days.”   Anne  Gentle   https://youtube.com/watch?v-­‐ IYfHEy6E2n0 30
  • 31. Flickr:pedrovenzini What Are Some
 Difficulties? ▪ Scope  and  scale  questions   ▪ Official-­‐ness   ▪ Identity   ▪ Naming 31 Flickr:candelabrumdanse Ask me. Challenge me. Find out.
  • 32. MOTIVATIONS 32 Ensure  that  contributors  are     valued  and  rewarded!   ▪ Sense  of  belonging   ▪ Pay  it  forward  (reciprocity)   ▪ Effective,  time-­‐saving,  user  support   ▪ Reputation,  recruiting