SlideShare a Scribd company logo
Readme Driven
 Development
(and how to be a better writer)



                  Mark Rickerby
Readme Driven Development
UPPERCASE
Traditionally used to denote
human readable files
README    FAQ
INSTALL   LICENSE
AUTHORS   CHANGELOG
NEWS      TODO
Read me!
 A call to action
Traditional view:

 Roadmap of a project
Traditional view:

 Explain file structure
Traditional view:

Write at the last minute
Readme Driven Development
Readme Driven Development
Modern view:

Statement of intent
Modern view:

Design document
Modern view:

Write your Readme first
“It rewards you for keeping
 libraries small and
 modularized” – Tom Preston Werner
Mise en place




          www.antoniotahan.com
Introduction

One paragraph summary
Introduction

[W] is an [X] that does [Y]
        through [Z]
Getting Started

Explain the steps to install
 and link to further info
Getting Started

Show usage examples
Explore your API

  Write from a user
    perspective
### POST Method

Call the `post()` method to make an
HTTP post request:

```
$http = new Net_Http();

$http->post($uri, $data);

if ($http->getStatus() == 201)
    $body = $http->getBody();
```
### POST Method

Call the `post()` method to make an
HTTP post request:

```
$http = new Net_Http();

$response = $http->post($uri, $data);

if ($response->getStatus() == 201)
    $body = $response->getBody();
```
Good style
 matters
Use Markdown

Or one of many alternatives
Sections as a guide
    Introduction • Summary
 Installation • Downloads • FAQ
   Getting Started • Examples
           Contributors
Structure

Limit headings to
  H2 & H3 only
Formatting

 Use code to highlight
keywords and examples
Punctuation

Use real quotation marks:
   “double” or ‘single’
Punctuation
Use en dash correctly:
     April–May
 Sydney–Melbourne
   Bose–Einstein
Punctuation
   Use em dash correctly:
To break a thought—in a stronger way
than using parentheses—an em dash
           should be used.
Writing well
Information that is necessary for
   successful communication

       Information that
           is helpful
            but not
             crucial

             Nice to
             know
Maintain coherent
      state
Don’t assume knowledge
 that doesn’t exist yet
Understand tone

Use the right language for
      the audience
https://github.com/play/play




“It’s true. It’s in a README.”
https://github.com/chrisboulton/php-resque




                          Lies! Lies!
Eliminate
     repetition
Avoid using the same word
 or phrase over and over
Vary sentence
  structure
Helps reading flow
Avoid the passive
“The chicken crossed the road.”
              vs
 “The road was crossed by the
          chicken.”
“Never use a long
word when a short
  one will do”
          – George Orwell
Driving
projects with
   writing
Readme Driven Development
Crowdfunding
Readme Driven Development
A model for
  successful
collaboration?
Readme Driven Development
Readme Driven Development
Readme Driven Development
https://github.com/xenph/ignition
Thank you.

More Related Content

PDF
Why PHP is (so much) more better than Ruby?
PDF
Foot Notes
PPT
From VB Script to PowerShell
PPTX
Learning at the Speed of JavaScript
PDF
Put a little Backbone in your WordPress vs. 3
PDF
Day4 online-adapt(1)
PPTX
How to make multilingual plugins and themes
PPT
Prersentation
Why PHP is (so much) more better than Ruby?
Foot Notes
From VB Script to PowerShell
Learning at the Speed of JavaScript
Put a little Backbone in your WordPress vs. 3
Day4 online-adapt(1)
How to make multilingual plugins and themes
Prersentation

Similar to Readme Driven Development (20)

PPTX
Before you build a website 2015
ODP
Give a Great Tech Talk
PPTX
10 Steps to Writing a Research Paper
KEY
Optimizing Your Web Site for Discovery: A Workshop
PDF
Ultimate Professional Content Writing Guidelines
PPT
Technical Writing For Consultants
PDF
Javascript Html Css A Stepbystep Guide Student Student
PPT
Unit 2 (html)
PPTX
10 steps to writing a research a paper
PPTX
Writing for the Web
PPTX
Week 4 css recap and js
KEY
php app development 1
PPT
In Text Citation How To
DOCX
Basic php 5
PPTX
XML for Humans: Non-geek Discussion of a Geek-chic Topic
PPTX
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
PPTX
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
PPT
Web Design.ppt
PDF
Solving Localization Challenges with Design Pattern Automation
Before you build a website 2015
Give a Great Tech Talk
10 Steps to Writing a Research Paper
Optimizing Your Web Site for Discovery: A Workshop
Ultimate Professional Content Writing Guidelines
Technical Writing For Consultants
Javascript Html Css A Stepbystep Guide Student Student
Unit 2 (html)
10 steps to writing a research a paper
Writing for the Web
Week 4 css recap and js
php app development 1
In Text Citation How To
Basic php 5
XML for Humans: Non-geek Discussion of a Geek-chic Topic
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Web Design.ppt
Solving Localization Challenges with Design Pattern Automation
Ad

More from Mark Rickerby (10)

PDF
The D3 Toolbox
PDF
Behaviour Driven Development
PPT
Relentless Refactoring
PDF
Evolving Software Patterns
PDF
NetArt History
PDF
Understanding Uncertainty
ODP
Getting to Grips with SilverStripe Testing
PDF
Historiographica
PDF
The Relativity of Rates
PDF
Adaptive Design & Rapid Prototyping
The D3 Toolbox
Behaviour Driven Development
Relentless Refactoring
Evolving Software Patterns
NetArt History
Understanding Uncertainty
Getting to Grips with SilverStripe Testing
Historiographica
The Relativity of Rates
Adaptive Design & Rapid Prototyping
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPT
Teaching material agriculture food technology
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Tartificialntelligence_presentation.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Machine learning based COVID-19 study performance prediction
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Teaching material agriculture food technology
NewMind AI Weekly Chronicles - August'25-Week II
Heart disease approach using modified random forest and particle swarm optimi...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
A comparative study of natural language inference in Swahili using monolingua...
Spectral efficient network and resource selection model in 5G networks
OMC Textile Division Presentation 2021.pptx
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Empathic Computing: Creating Shared Understanding
Tartificialntelligence_presentation.pptx
Programs and apps: productivity, graphics, security and other tools
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
A comparative analysis of optical character recognition models for extracting...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
MIND Revenue Release Quarter 2 2025 Press Release
Machine learning based COVID-19 study performance prediction

Readme Driven Development