SlideShare a Scribd company logo
1 of 50
Download to read offline
Readme Driven
 Development
(and how to be a better writer)



                  Mark Rickerby
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
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
Crowdfunding
A model for
  successful
collaboration?
https://github.com/xenph/ignition
Thank you.

More Related Content

Similar to Readme Driven Development

Before you build a website 2015
Before you build a website 2015Before you build a website 2015
Before you build a website 2015mwfordesigns
 
Give a Great Tech Talk
Give a Great Tech TalkGive a Great Tech Talk
Give a Great Tech Talkjberkus
 
10 Steps to Writing a Research Paper
10 Steps to Writing a Research Paper10 Steps to Writing a Research Paper
10 Steps to Writing a Research PaperGNBCEC
 
Optimizing Your Web Site for Discovery: A Workshop
Optimizing Your Web Site for Discovery: A WorkshopOptimizing Your Web Site for Discovery: A Workshop
Optimizing Your Web Site for Discovery: A WorkshopOReillyTOC
 
Ultimate Professional Content Writing Guidelines
Ultimate Professional Content Writing GuidelinesUltimate Professional Content Writing Guidelines
Ultimate Professional Content Writing GuidelinesArifulIslam542
 
Technical Writing For Consultants
Technical Writing For ConsultantsTechnical Writing For Consultants
Technical Writing For Consultantsrlucera
 
10 steps to writing a research a paper
10 steps to writing a research a paper10 steps to writing a research a paper
10 steps to writing a research a paperGNBCEC
 
Week 4 css recap and js
Week 4   css recap and jsWeek 4   css recap and js
Week 4 css recap and jsbrianjihoonlee
 
php app development 1
php app development 1php app development 1
php app development 1barryavery
 
In Text Citation How To
In Text Citation How ToIn Text Citation How To
In Text Citation How ToTara Neely
 
XML for Humans: Non-geek Discussion of a Geek-chic Topic
XML for Humans: Non-geek Discussion of a Geek-chic TopicXML for Humans: Non-geek Discussion of a Geek-chic Topic
XML for Humans: Non-geek Discussion of a Geek-chic TopicPublishing Smarter
 
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryInteractive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryAshish Thapliyal
 
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryInteractive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryMicrosoft Tech Community
 
Solving Localization Challenges with Design Pattern Automation
Solving Localization Challenges with Design Pattern AutomationSolving Localization Challenges with Design Pattern Automation
Solving Localization Challenges with Design Pattern AutomationPostSharp Technologies
 

Similar to Readme Driven Development (20)

Before you build a website 2015
Before you build a website 2015Before you build a website 2015
Before you build a website 2015
 
Give a Great Tech Talk
Give a Great Tech TalkGive a Great Tech Talk
Give a Great Tech Talk
 
10 Steps to Writing a Research Paper
10 Steps to Writing a Research Paper10 Steps to Writing a Research Paper
10 Steps to Writing a Research Paper
 
Optimizing Your Web Site for Discovery: A Workshop
Optimizing Your Web Site for Discovery: A WorkshopOptimizing Your Web Site for Discovery: A Workshop
Optimizing Your Web Site for Discovery: A Workshop
 
Ultimate Professional Content Writing Guidelines
Ultimate Professional Content Writing GuidelinesUltimate Professional Content Writing Guidelines
Ultimate Professional Content Writing Guidelines
 
Technical Writing For Consultants
Technical Writing For ConsultantsTechnical Writing For Consultants
Technical Writing For Consultants
 
Unit 2 (html)
Unit 2  (html)Unit 2  (html)
Unit 2 (html)
 
10 steps to writing a research a paper
10 steps to writing a research a paper10 steps to writing a research a paper
10 steps to writing a research a paper
 
Writing for the Web
Writing for the WebWriting for the Web
Writing for the Web
 
Week 4 css recap and js
Week 4   css recap and jsWeek 4   css recap and js
Week 4 css recap and js
 
php app development 1
php app development 1php app development 1
php app development 1
 
In Text Citation How To
In Text Citation How ToIn Text Citation How To
In Text Citation How To
 
Basic php 5
Basic php 5Basic php 5
Basic php 5
 
XML for Humans: Non-geek Discussion of a Geek-chic Topic
XML for Humans: Non-geek Discussion of a Geek-chic TopicXML for Humans: Non-geek Discussion of a Geek-chic Topic
XML for Humans: Non-geek Discussion of a Geek-chic Topic
 
Basics PHP
Basics PHPBasics PHP
Basics PHP
 
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryInteractive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
 
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive QueryInteractive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
Interactive ad-hoc analysis at petabyte scale with HDInsight Interactive Query
 
Web Design.ppt
Web Design.pptWeb Design.ppt
Web Design.ppt
 
Solving Localization Challenges with Design Pattern Automation
Solving Localization Challenges with Design Pattern AutomationSolving Localization Challenges with Design Pattern Automation
Solving Localization Challenges with Design Pattern Automation
 
Web site design
Web site designWeb site design
Web site design
 

More from Mark Rickerby

Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven DevelopmentMark Rickerby
 
Relentless Refactoring
Relentless RefactoringRelentless Refactoring
Relentless RefactoringMark Rickerby
 
Evolving Software Patterns
Evolving Software PatternsEvolving Software Patterns
Evolving Software PatternsMark Rickerby
 
Understanding Uncertainty
Understanding UncertaintyUnderstanding Uncertainty
Understanding UncertaintyMark Rickerby
 
Getting to Grips with SilverStripe Testing
Getting to Grips with SilverStripe TestingGetting to Grips with SilverStripe Testing
Getting to Grips with SilverStripe TestingMark Rickerby
 
The Relativity of Rates
The Relativity of RatesThe Relativity of Rates
The Relativity of RatesMark Rickerby
 
Adaptive Design & Rapid Prototyping
Adaptive Design & Rapid PrototypingAdaptive Design & Rapid Prototyping
Adaptive Design & Rapid PrototypingMark Rickerby
 

More from Mark Rickerby (10)

The D3 Toolbox
The D3 ToolboxThe D3 Toolbox
The D3 Toolbox
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven Development
 
Relentless Refactoring
Relentless RefactoringRelentless Refactoring
Relentless Refactoring
 
Evolving Software Patterns
Evolving Software PatternsEvolving Software Patterns
Evolving Software Patterns
 
NetArt History
NetArt HistoryNetArt History
NetArt History
 
Understanding Uncertainty
Understanding UncertaintyUnderstanding Uncertainty
Understanding Uncertainty
 
Getting to Grips with SilverStripe Testing
Getting to Grips with SilverStripe TestingGetting to Grips with SilverStripe Testing
Getting to Grips with SilverStripe Testing
 
Historiographica
HistoriographicaHistoriographica
Historiographica
 
The Relativity of Rates
The Relativity of RatesThe Relativity of Rates
The Relativity of Rates
 
Adaptive Design & Rapid Prototyping
Adaptive Design & Rapid PrototypingAdaptive Design & Rapid Prototyping
Adaptive Design & Rapid Prototyping
 

Recently uploaded

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Recently uploaded (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

Readme Driven Development