SlideShare a Scribd company logo
Continuous Documentation
The best time is now
1@expensivestevie
Hello! Terve!
I’m Kenigbolo Meya Stephen
Front-End Engineering Lead @bcaster
Arch Conveyer/Community Manager @TheCodeAfrique
You can find me on twitter at @expensivestevie
22@expensivestevie
WHAT I’LL BE TALKING ABOUT
4
😉
✘ What is Continuous Documentation.
✘ Why is it important.
✘ Common pitfalls in current documentation practices.
✘ How to improve by implementing Continuous
Documentation
✘ Continuous Documentation - Moving forward 👉
44@expensivestevie
1.
WHAT IS CONTINUOUS DOCUMENTATION
5
55@expensivestevie
CONTINUOUS DOCUMENTATION
Continuous documentation is a documentation pattern we
developed at BCaster that takes into consideration
constant changes/improvements in code and business
logic to be reflected internally for every single closed sprint.
6
66@expensivestevie
“In our industry, change occurs so
fast that it sometimes is difficult
to catch all of it. This is the same
case for the documentation and
unfortunately release notes
alone do not cut it.
7
77@expensivestevie
“The open source (OSS) world
uses Requests For Comments
(RFC) however even in that world
the RFC’s are rarely summarized.
What do you use internally in
your company?
8
88@expensivestevie
THE PROBLEM COMES WITH
ANOTHER
CHANGE
CHANGE
EVEN MORE
CHANGES
9
99@expensivestevie
2.
WHY IT IS IMPORTANT
10
1010@expensivestevie
“The reasoning behind a change
that you fail to document today
might become lost forever
resulting in knowledge base gap.
What you end up having is an
unsynchronized knowledge base
11
1111@expensivestevie
TYPICAL DOCUMENTATION TYPES
✘ Proprietary software - Docs included and
maintained
✘ Popular Frameworks - Dedicated teams for
docs.
✘ Your company - Developers make docs?
Dedicated documentation team? How do you
handle your documentation?
12
1212@expensivestevie
3.
COMMON PITFALLS IN CURRENT
DOCUMENTATION PRACTICES
If you just said to yourself “we’re definitely doing it right” then trust
me when I say you’re definitely doing it wrong
13
1313@expensivestevie
1414@expensivestevie
SIMPLE THINGS YOU’RE PROBABLY DOING WRONG
Readme’s
If majority of your code
documentation are mostly
README.md documents then
you’ve been doing a lot of
dis-service to what
documentation should be
Unhelpful Phrasing
Do you have a word checker for
your documentation? Do you
spot unhelpful phrases in
documentation? Can you
define what an unhelpful
phrase is? If the answer to any
of those questions is “No” then
there’s room for improvement
Inconsiderate Writing
Can you take your
documentation and give to a
non technical person and
expect them to make any
sense out of it? If you answered
that question with “but it’s a
technical doc” then there’s
definitely room for
improvement
15
1515@expensivestevie
README
✘ Readme’s are supposed to be an entry point to your documentation
as opposed to it being your main documentation
✘ If you’re having more than three sections in a Readme that already
signifies there is a lot of information that needs to be somewhere
else.
✘ Ever heard about clutter? Extensive readme’s are simply that -
Clutter.
16
1616@expensivestevie
1717@expensivestevie
Unhelpful phrasing
✘ “Simply run the tests”..
✘ “Just write a compiler then it simply works”.
✘ “Simply”, “Just”, “Simple”, “Actually”, “Easy”, “Easily”, “Obviously”.
18
1818@expensivestevie
INCONSIDERATE WRITING
✘ Gender favouring - “Hey Guys”, “he”, “his”, “dude” etc.
✘ Avoid race related phrases (tricky one but we’ll see how to deal with
this later on).
✘ Polarizing/Unequal Phrasing - “It has always been like that” - It’s
safe to say we all have that one guy in our company.
19
1919@expensivestevie
4.
HOW TO IMPROVE VIA CONTINUOUS
DOCUMENTATION
Preconceptions are pure evil
20
��
2020@expensivestevie
“Always remember that
documentation is a form of
communication. Communication
is a two way street. If your
documentation is ambiguous
then you have failed to
communicate
21
2121@expensivestevie
Our process is easy
MAKE CHANGES
DOCUMENT
CHANGES
SCREEN
UPDATED DOCS
22
2222@expensivestevie
README
✘ First ensure your document is in Markdown format
✘ Badges are good and informative so if you have CI badges put them
up there.
✘ Create a separate folder for docs in every repository. Markdown
documents can be used to link to other markdown documents..
✘ Your readme should contain simply the description and getting
started installation instructions. Every other detail should be a link
to a respective Markdown document.
23
2323@expensivestevie
UNHELPFUL PHRASING
✘ Documentations are a tools for communication as opposed for a
place to expand your ego. Do not assume that everyone using them
is on the same skill level as you.
✘ Call a non-technical person or content writer to help you review.
Like pair programming, a second pair of eyes is always good.
✘ Review documentation changes just as you rigorously review your
code. It is equally as important
24
2424@expensivestevie
INCONSIDERATE WRITING
Don’t you think Primary/Replica sounds better than Master/Slave?
How about we use AllowList/DenyList instead of Whitelist/Blacklist?
Doesn’t “Hey everyone” sound more gender neutral than “Hey guys”?
I’m guessing now you’re already thinking about a lot of phrases that you
use but never considered inconsiderate up until this point?
25
2525@expensivestevie
“Release notes are nice and
should be a must have for every
major change irrespective of the
size of your company and
regardless of if you use semantic
versioning or not.
26
“There is no such thing like too
much of good documentation. If
there’s a reasonable change
somewhere there should be a
corresponding documentation
update to show that change.
27
“Auto generating documentation
from code while being a good
thing can most times result in a
lot of common mistakes flying
below the radar. Treat your
documentation quality better
than you even treat code quality.
28
5.
MOVING FORWARD
Continuous Documentation is all about continuous improvement to
documentation practices.
29
“Currently working on a documentation spec
that enforces certain standards but are
flexible enough to be configurable.
Also currently working on a linting tool using
those standards and it will be called DocLint.
It will be to documentation as EsLint is to
Javascript
30
DocLint target platforms
JavaScript
(JS Package)
RUST
(CLI)
BROWSERS
(EXTENSION)
31
“Interested in helping out? Let’s have a chat
and brainstorm ideas on how to proceed
with this. We’ve created an internal TC at
BCaster for this very purpose and I’d be
more than glad to share more info on this.
32
33
That’s all for today folks
33@expensivestevie
34
Thank You! Kiitos! (Key-Toss!)
Any questions?
You can find me at
▰ Twitter @expensivestevie
▰ Github @kenigbolo
34@expensivestevie

More Related Content

What's hot

Designing a secure software development process with DevOps
Designing a secure software development process with DevOpsDesigning a secure software development process with DevOps
Designing a secure software development process with DevOps
Mike Long
 
Dev ops lpi-701
Dev ops lpi-701Dev ops lpi-701
Dev ops lpi-701
Radhouen Assakra
 
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
AWS User Group - Thailand
 
DevOps without DevOps Tools
DevOps without DevOps ToolsDevOps without DevOps Tools
DevOps without DevOps Tools
Jagatveer Singh
 
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
XebiaLabs
 
DevOps Pragmatic Overview
DevOps Pragmatic OverviewDevOps Pragmatic Overview
DevOps Pragmatic Overview
Mykola Marzhan
 
Education
EducationEducation
Education
Danish Khan
 
Devops: A History
Devops: A HistoryDevops: A History
Devops: A History
Nell Shamrell-Harrington
 
The Learning loop of Devops in Enterprise
The Learning loop of Devops in EnterpriseThe Learning loop of Devops in Enterprise
The Learning loop of Devops in Enterprise
R. Gesit Prasasti Alam, PSM®
 
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
VMware Tanzu
 
Top Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps HandbookTop Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps Handbook
XebiaLabs
 
GeeCON 2015 DevOps and the dark side
GeeCON 2015 DevOps and the dark side GeeCON 2015 DevOps and the dark side
GeeCON 2015 DevOps and the dark side
Steve Poole
 
10 Myth of DevSecOps
10 Myth of DevSecOps10 Myth of DevSecOps
10 Myth of DevSecOps
DevOps Indonesia
 
The Four Keys - Measuring DevOps Success
The Four Keys - Measuring DevOps SuccessThe Four Keys - Measuring DevOps Success
The Four Keys - Measuring DevOps Success
Dina Graves Portman
 
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldApplication Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
James Wickett
 
DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017
Giulio Vian
 
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia
 
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
DevOpsDays Tel Aviv
 
Threat Modelling in DevSecOps Cultures
Threat Modelling in DevSecOps CulturesThreat Modelling in DevSecOps Cultures
Threat Modelling in DevSecOps Cultures
DevOps Indonesia
 
Better Software is Better than Worse Software - Alexandre Vasseur
Better Software is Better than Worse Software - Alexandre VasseurBetter Software is Better than Worse Software - Alexandre Vasseur
Better Software is Better than Worse Software - Alexandre Vasseur
VMware Tanzu
 

What's hot (20)

Designing a secure software development process with DevOps
Designing a secure software development process with DevOpsDesigning a secure software development process with DevOps
Designing a secure software development process with DevOps
 
Dev ops lpi-701
Dev ops lpi-701Dev ops lpi-701
Dev ops lpi-701
 
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
AWS Meetup: Career Day 2019 - Lightning Talk with Cloud Career Path: DevOps E...
 
DevOps without DevOps Tools
DevOps without DevOps ToolsDevOps without DevOps Tools
DevOps without DevOps Tools
 
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
Measure Your DevOps Success: Using Goal-based KPIs to Drive Results and Demon...
 
DevOps Pragmatic Overview
DevOps Pragmatic OverviewDevOps Pragmatic Overview
DevOps Pragmatic Overview
 
Education
EducationEducation
Education
 
Devops: A History
Devops: A HistoryDevops: A History
Devops: A History
 
The Learning loop of Devops in Enterprise
The Learning loop of Devops in EnterpriseThe Learning loop of Devops in Enterprise
The Learning loop of Devops in Enterprise
 
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
Drinking from the Stream: How to Use Messaging Platforms for Scalability & Pe...
 
Top Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps HandbookTop Lessons Learned From The DevOps Handbook
Top Lessons Learned From The DevOps Handbook
 
GeeCON 2015 DevOps and the dark side
GeeCON 2015 DevOps and the dark side GeeCON 2015 DevOps and the dark side
GeeCON 2015 DevOps and the dark side
 
10 Myth of DevSecOps
10 Myth of DevSecOps10 Myth of DevSecOps
10 Myth of DevSecOps
 
The Four Keys - Measuring DevOps Success
The Four Keys - Measuring DevOps SuccessThe Four Keys - Measuring DevOps Success
The Four Keys - Measuring DevOps Success
 
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldApplication Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
 
DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017
 
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
DevOps Indonesia "Going deeper into Jenkins, Docker and even more" - Announce...
 
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
 
Threat Modelling in DevSecOps Cultures
Threat Modelling in DevSecOps CulturesThreat Modelling in DevSecOps Cultures
Threat Modelling in DevSecOps Cultures
 
Better Software is Better than Worse Software - Alexandre Vasseur
Better Software is Better than Worse Software - Alexandre VasseurBetter Software is Better than Worse Software - Alexandre Vasseur
Better Software is Better than Worse Software - Alexandre Vasseur
 

Similar to Continuous Documentation: The Best Time is Now

APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCasterAPIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
apidays
 
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
NETWAYS
 
WordCamp Nashville: Clean Code for WordPress
WordCamp Nashville: Clean Code for WordPressWordCamp Nashville: Clean Code for WordPress
WordCamp Nashville: Clean Code for WordPress
mtoppa
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job Easier
Tonya Mork
 
Need to reboot your content creation strategy? Start with "No"
Need to reboot your content creation strategy? Start with "No"Need to reboot your content creation strategy? Start with "No"
Need to reboot your content creation strategy? Start with "No"
Keith Boyd
 
Engineer Stunning (API) documentation
Engineer Stunning (API) documentationEngineer Stunning (API) documentation
Engineer Stunning (API) documentation
Pronovix
 
Documenting Good Practices in School: Part 3
Documenting Good Practices in School: Part 3Documenting Good Practices in School: Part 3
Documenting Good Practices in School: Part 3
JoseRadinGarduque2
 
Writing documentation with neurodivergent oss contributors in mind (1)
Writing documentation with neurodivergent oss contributors in mind (1)Writing documentation with neurodivergent oss contributors in mind (1)
Writing documentation with neurodivergent oss contributors in mind (1)
Rin Oliver (they/them)
 
DevOps for Managers
DevOps for ManagersDevOps for Managers
DevOps for Managers
All Things Open
 
A sweet taste of clean code and software design
A sweet taste of clean code and software designA sweet taste of clean code and software design
A sweet taste of clean code and software design
Kfir Bloch
 
Good Code / Bad Code
Good Code / Bad CodeGood Code / Bad Code
Good Code / Bad Code
Kelly Harrop
 
Importance of Documentation for programmers
Importance of Documentation for programmers Importance of Documentation for programmers
Importance of Documentation for programmers
NASSCOM
 
WordCamp US: Clean Code
WordCamp US: Clean CodeWordCamp US: Clean Code
WordCamp US: Clean Code
mtoppa
 
Agile presentation
Agile presentationAgile presentation
Agile presentation
BrendaNyokabi
 
WordCamp Pune 2017- WordPress Coding standards
WordCamp Pune 2017- WordPress Coding standardsWordCamp Pune 2017- WordPress Coding standards
WordCamp Pune 2017- WordPress Coding standards
Swapnil Patil
 
the best code, is code never written
the best code, is code never writtenthe best code, is code never written
the best code, is code never written
Daniel Davis
 
InnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your companyInnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your company
Eric Caron
 
Finding balance of DDD while your application grows
Finding balance of DDD while your application growsFinding balance of DDD while your application grows
Finding balance of DDD while your application grows
Carolina Karklis
 
From DevOps to NoOps how not to get Equifaxed Apidays
From DevOps to NoOps how not to get Equifaxed ApidaysFrom DevOps to NoOps how not to get Equifaxed Apidays
From DevOps to NoOps how not to get Equifaxed Apidays
Ori Pekelman
 
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
Braun Interactive
 

Similar to Continuous Documentation: The Best Time is Now (20)

APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCasterAPIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
APIdays Paris 2019 - Continuous Documentation by Kenigbolo Meya Stephen, BCaster
 
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...
 
WordCamp Nashville: Clean Code for WordPress
WordCamp Nashville: Clean Code for WordPressWordCamp Nashville: Clean Code for WordPress
WordCamp Nashville: Clean Code for WordPress
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job Easier
 
Need to reboot your content creation strategy? Start with "No"
Need to reboot your content creation strategy? Start with "No"Need to reboot your content creation strategy? Start with "No"
Need to reboot your content creation strategy? Start with "No"
 
Engineer Stunning (API) documentation
Engineer Stunning (API) documentationEngineer Stunning (API) documentation
Engineer Stunning (API) documentation
 
Documenting Good Practices in School: Part 3
Documenting Good Practices in School: Part 3Documenting Good Practices in School: Part 3
Documenting Good Practices in School: Part 3
 
Writing documentation with neurodivergent oss contributors in mind (1)
Writing documentation with neurodivergent oss contributors in mind (1)Writing documentation with neurodivergent oss contributors in mind (1)
Writing documentation with neurodivergent oss contributors in mind (1)
 
DevOps for Managers
DevOps for ManagersDevOps for Managers
DevOps for Managers
 
A sweet taste of clean code and software design
A sweet taste of clean code and software designA sweet taste of clean code and software design
A sweet taste of clean code and software design
 
Good Code / Bad Code
Good Code / Bad CodeGood Code / Bad Code
Good Code / Bad Code
 
Importance of Documentation for programmers
Importance of Documentation for programmers Importance of Documentation for programmers
Importance of Documentation for programmers
 
WordCamp US: Clean Code
WordCamp US: Clean CodeWordCamp US: Clean Code
WordCamp US: Clean Code
 
Agile presentation
Agile presentationAgile presentation
Agile presentation
 
WordCamp Pune 2017- WordPress Coding standards
WordCamp Pune 2017- WordPress Coding standardsWordCamp Pune 2017- WordPress Coding standards
WordCamp Pune 2017- WordPress Coding standards
 
the best code, is code never written
the best code, is code never writtenthe best code, is code never written
the best code, is code never written
 
InnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your companyInnerSource - Using open source best practices to help your company
InnerSource - Using open source best practices to help your company
 
Finding balance of DDD while your application grows
Finding balance of DDD while your application growsFinding balance of DDD while your application grows
Finding balance of DDD while your application grows
 
From DevOps to NoOps how not to get Equifaxed Apidays
From DevOps to NoOps how not to get Equifaxed ApidaysFrom DevOps to NoOps how not to get Equifaxed Apidays
From DevOps to NoOps how not to get Equifaxed Apidays
 
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
World Usability Day 2014 - Keene State College - Usable Documentation - Kevin...
 

More from Pronovix

By the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too lateBy the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too late
Pronovix
 
Optimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and FeedbackOptimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and Feedback
Pronovix
 
Success metrics when launching your first developer portal
Success metrics when launching your first developer portalSuccess metrics when launching your first developer portal
Success metrics when launching your first developer portal
Pronovix
 
Documentation, APIs & AI
Documentation, APIs & AIDocumentation, APIs & AI
Documentation, APIs & AI
Pronovix
 
Making sense of analytics for documentation pages
Making sense of analytics for documentation pagesMaking sense of analytics for documentation pages
Making sense of analytics for documentation pages
Pronovix
 
Feedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiencesFeedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiences
Pronovix
 
GraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing DocsGraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing Docs
Pronovix
 
API Documentation For Web3
API Documentation For Web3API Documentation For Web3
API Documentation For Web3
Pronovix
 
Why your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API designWhy your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API design
Pronovix
 
unREST among the docs
unREST among the docsunREST among the docs
unREST among the docs
Pronovix
 
Developing a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIsDeveloping a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIs
Pronovix
 
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyoneAnnotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Pronovix
 
What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?
Pronovix
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and ConfigurationsInclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Pronovix
 
Creating API documentation for international communities
Creating API documentation for international communitiesCreating API documentation for international communities
Creating API documentation for international communities
Pronovix
 
One Developer Portal to Document Them All
One Developer Portal to Document Them AllOne Developer Portal to Document Them All
One Developer Portal to Document Them All
Pronovix
 
Docs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation ExperienceDocs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation Experience
Pronovix
 
Developer journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your productDeveloper journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your product
Pronovix
 
Complexity is not complicatedness
Complexity is not complicatednessComplexity is not complicatedness
Complexity is not complicatedness
Pronovix
 
How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...
Pronovix
 

More from Pronovix (20)

By the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too lateBy the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too late
 
Optimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and FeedbackOptimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and Feedback
 
Success metrics when launching your first developer portal
Success metrics when launching your first developer portalSuccess metrics when launching your first developer portal
Success metrics when launching your first developer portal
 
Documentation, APIs & AI
Documentation, APIs & AIDocumentation, APIs & AI
Documentation, APIs & AI
 
Making sense of analytics for documentation pages
Making sense of analytics for documentation pagesMaking sense of analytics for documentation pages
Making sense of analytics for documentation pages
 
Feedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiencesFeedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiences
 
GraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing DocsGraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing Docs
 
API Documentation For Web3
API Documentation For Web3API Documentation For Web3
API Documentation For Web3
 
Why your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API designWhy your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API design
 
unREST among the docs
unREST among the docsunREST among the docs
unREST among the docs
 
Developing a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIsDeveloping a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIs
 
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyoneAnnotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
 
What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and ConfigurationsInclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
 
Creating API documentation for international communities
Creating API documentation for international communitiesCreating API documentation for international communities
Creating API documentation for international communities
 
One Developer Portal to Document Them All
One Developer Portal to Document Them AllOne Developer Portal to Document Them All
One Developer Portal to Document Them All
 
Docs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation ExperienceDocs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation Experience
 
Developer journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your productDeveloper journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your product
 
Complexity is not complicatedness
Complexity is not complicatednessComplexity is not complicatedness
Complexity is not complicatedness
 
How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...
 

Recently uploaded

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 

Continuous Documentation: The Best Time is Now

  • 1. Continuous Documentation The best time is now 1@expensivestevie
  • 2. Hello! Terve! I’m Kenigbolo Meya Stephen Front-End Engineering Lead @bcaster Arch Conveyer/Community Manager @TheCodeAfrique You can find me on twitter at @expensivestevie 22@expensivestevie
  • 3.
  • 4. WHAT I’LL BE TALKING ABOUT 4 😉 ✘ What is Continuous Documentation. ✘ Why is it important. ✘ Common pitfalls in current documentation practices. ✘ How to improve by implementing Continuous Documentation ✘ Continuous Documentation - Moving forward 👉 44@expensivestevie
  • 5. 1. WHAT IS CONTINUOUS DOCUMENTATION 5 55@expensivestevie
  • 6. CONTINUOUS DOCUMENTATION Continuous documentation is a documentation pattern we developed at BCaster that takes into consideration constant changes/improvements in code and business logic to be reflected internally for every single closed sprint. 6 66@expensivestevie
  • 7. “In our industry, change occurs so fast that it sometimes is difficult to catch all of it. This is the same case for the documentation and unfortunately release notes alone do not cut it. 7 77@expensivestevie
  • 8. “The open source (OSS) world uses Requests For Comments (RFC) however even in that world the RFC’s are rarely summarized. What do you use internally in your company? 8 88@expensivestevie
  • 9. THE PROBLEM COMES WITH ANOTHER CHANGE CHANGE EVEN MORE CHANGES 9 99@expensivestevie
  • 10. 2. WHY IT IS IMPORTANT 10 1010@expensivestevie
  • 11. “The reasoning behind a change that you fail to document today might become lost forever resulting in knowledge base gap. What you end up having is an unsynchronized knowledge base 11 1111@expensivestevie
  • 12. TYPICAL DOCUMENTATION TYPES ✘ Proprietary software - Docs included and maintained ✘ Popular Frameworks - Dedicated teams for docs. ✘ Your company - Developers make docs? Dedicated documentation team? How do you handle your documentation? 12 1212@expensivestevie
  • 13. 3. COMMON PITFALLS IN CURRENT DOCUMENTATION PRACTICES If you just said to yourself “we’re definitely doing it right” then trust me when I say you’re definitely doing it wrong 13 1313@expensivestevie
  • 15. SIMPLE THINGS YOU’RE PROBABLY DOING WRONG Readme’s If majority of your code documentation are mostly README.md documents then you’ve been doing a lot of dis-service to what documentation should be Unhelpful Phrasing Do you have a word checker for your documentation? Do you spot unhelpful phrases in documentation? Can you define what an unhelpful phrase is? If the answer to any of those questions is “No” then there’s room for improvement Inconsiderate Writing Can you take your documentation and give to a non technical person and expect them to make any sense out of it? If you answered that question with “but it’s a technical doc” then there’s definitely room for improvement 15 1515@expensivestevie
  • 16. README ✘ Readme’s are supposed to be an entry point to your documentation as opposed to it being your main documentation ✘ If you’re having more than three sections in a Readme that already signifies there is a lot of information that needs to be somewhere else. ✘ Ever heard about clutter? Extensive readme’s are simply that - Clutter. 16 1616@expensivestevie
  • 18. Unhelpful phrasing ✘ “Simply run the tests”.. ✘ “Just write a compiler then it simply works”. ✘ “Simply”, “Just”, “Simple”, “Actually”, “Easy”, “Easily”, “Obviously”. 18 1818@expensivestevie
  • 19. INCONSIDERATE WRITING ✘ Gender favouring - “Hey Guys”, “he”, “his”, “dude” etc. ✘ Avoid race related phrases (tricky one but we’ll see how to deal with this later on). ✘ Polarizing/Unequal Phrasing - “It has always been like that” - It’s safe to say we all have that one guy in our company. 19 1919@expensivestevie
  • 20. 4. HOW TO IMPROVE VIA CONTINUOUS DOCUMENTATION Preconceptions are pure evil 20 �� 2020@expensivestevie
  • 21. “Always remember that documentation is a form of communication. Communication is a two way street. If your documentation is ambiguous then you have failed to communicate 21 2121@expensivestevie
  • 22. Our process is easy MAKE CHANGES DOCUMENT CHANGES SCREEN UPDATED DOCS 22 2222@expensivestevie
  • 23. README ✘ First ensure your document is in Markdown format ✘ Badges are good and informative so if you have CI badges put them up there. ✘ Create a separate folder for docs in every repository. Markdown documents can be used to link to other markdown documents.. ✘ Your readme should contain simply the description and getting started installation instructions. Every other detail should be a link to a respective Markdown document. 23 2323@expensivestevie
  • 24. UNHELPFUL PHRASING ✘ Documentations are a tools for communication as opposed for a place to expand your ego. Do not assume that everyone using them is on the same skill level as you. ✘ Call a non-technical person or content writer to help you review. Like pair programming, a second pair of eyes is always good. ✘ Review documentation changes just as you rigorously review your code. It is equally as important 24 2424@expensivestevie
  • 25. INCONSIDERATE WRITING Don’t you think Primary/Replica sounds better than Master/Slave? How about we use AllowList/DenyList instead of Whitelist/Blacklist? Doesn’t “Hey everyone” sound more gender neutral than “Hey guys”? I’m guessing now you’re already thinking about a lot of phrases that you use but never considered inconsiderate up until this point? 25 2525@expensivestevie
  • 26. “Release notes are nice and should be a must have for every major change irrespective of the size of your company and regardless of if you use semantic versioning or not. 26
  • 27. “There is no such thing like too much of good documentation. If there’s a reasonable change somewhere there should be a corresponding documentation update to show that change. 27
  • 28. “Auto generating documentation from code while being a good thing can most times result in a lot of common mistakes flying below the radar. Treat your documentation quality better than you even treat code quality. 28
  • 29. 5. MOVING FORWARD Continuous Documentation is all about continuous improvement to documentation practices. 29
  • 30. “Currently working on a documentation spec that enforces certain standards but are flexible enough to be configurable. Also currently working on a linting tool using those standards and it will be called DocLint. It will be to documentation as EsLint is to Javascript 30
  • 31. DocLint target platforms JavaScript (JS Package) RUST (CLI) BROWSERS (EXTENSION) 31
  • 32. “Interested in helping out? Let’s have a chat and brainstorm ideas on how to proceed with this. We’ve created an internal TC at BCaster for this very purpose and I’d be more than glad to share more info on this. 32
  • 33. 33 That’s all for today folks 33@expensivestevie
  • 34. 34 Thank You! Kiitos! (Key-Toss!) Any questions? You can find me at ▰ Twitter @expensivestevie ▰ Github @kenigbolo 34@expensivestevie