SlideShare a Scribd company logo
Amber Case
@caseorganic
Aaron Parecki
@aaronpk
acase@esri.com
Director, Esri PDX
aparecki@esri.com
CTO, Esri PDX
!done - Hacking IRC Bots for Distributed Teams
Open Source Bridge 2013!
Done Reports - Open Source Bridge
Changes
• Team dynamics change after 6 people
• Scrum lasted about 4-5 days
• Daily standups = cumbersome
• Needed a way to quickly share status
Done Reports - Open Source Bridge
> !done
First system
11/2012 - built quick
system to let us use
existing communication
channel: IRC
Team used IRC for years for group chat, also for
server log messages to get a pulse on the system
How it works
• During the day, the IRC bot asks you what
you’ve done
• You say !done what you did
• At the end of the day, everyone gets an email
with what everyone has done
> !done squashed some bugs
At the end of the
day, everyone gets
an email with what
everyone has !done
> !done
squashed some
bugs
Daily Email!
Done Reports - Open Source Bridge
!done commands
> !done pushed to production
> !todo send out notification emails
> !hero caseorganic for bringing
Legos!
> !blocking loud noises from
construction work
And…
> !meme
> !meme to production | and beyond!
Done Reports - Open Source Bridge
Done Reports - Open Source Bridge
Adoption
Someone sees our
channel & asks
“what is that?”
Scale!
Lots of people want to use it!
!donereports was built as a hack, we
needed this quickly
It was a database, IRC bot and a daily
email, no other interface!
Aaron was the bottleneck:
had to add users manually
mysql> INSERT INTO users
(username, email, nicks) VALUES
('aaronpk’,'aparecki@esri.com',
'aaronpk');
Done Reports - Open Source Bridge
Done Reports - Open Source Bridge
All Groups
Done Reports - Open Source Bridge
Done Reports - Open Source Bridge
Limechat
Limechat
Email report!
Documentation?
No documentation!
Invariably, someone else in
the channel will explain how
it works!
Usage Suggestion
• If a group doesn’t use one of the features
(such as !hero) then that email contains a tip
at the bottom with a suggestion!
Building IRC Bots
Use ZenIRC Bot!
• Great framework for building bots!
• github.com/zenirc
Benefits
• Modular – service oriented
• Can write in any language and run under the
same bot
• Uses Redis PubSub to pass message between the
different frameworks
Bot Architecture
Beta for OSBridge Attendees!
Want to try it out? Sign up at donereports.com
and we’ll let you in!
github.com/donereports/Done-Reports-IRC
> !done presented at OSBridge!
Amber Case
@caseorganic
Aaron Parecki
@aaronpk
acase@esri.com
Director, Esri PDX
aparecki@esri.com
CTO, Esri PDX
Tweet suggestions to @donereports!
donereports.com

More Related Content

PDF
Using Telegram to interact with an LED Matrix
PDF
Powerful Automation Made Simple
PPTX
Better Tools, Better Mindset
PDF
Paint it blue with PowerShell
PDF
Create a Bot with Delphi and Telegram - ITDevCon 2016
PPTX
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
PPT
Independent Publisher New England Ebook Presentation. April 27m 2012
Using Telegram to interact with an LED Matrix
Powerful Automation Made Simple
Better Tools, Better Mindset
Paint it blue with PowerShell
Create a Bot with Delphi and Telegram - ITDevCon 2016
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
Independent Publisher New England Ebook Presentation. April 27m 2012

What's hot (9)

KEY
Erlang - Dive Right In
PDF
Building a single page application with Polymer
PDF
Apply chat automation today - work smarter tomorrow
PDF
React, London JS Meetup, 11 Aug 2015
PDF
Bot. You said bot? Let build bot then! - Laurent Ellerbach
PDF
WordPress Media in a post-Koop Universe
PDF
DevOps the Wooga way (Webmontag Berlin)
PPTX
Functional Programming in PHP
PPTX
2014 SpiceWorld London Breakout
Erlang - Dive Right In
Building a single page application with Polymer
Apply chat automation today - work smarter tomorrow
React, London JS Meetup, 11 Aug 2015
Bot. You said bot? Let build bot then! - Laurent Ellerbach
WordPress Media in a post-Koop Universe
DevOps the Wooga way (Webmontag Berlin)
Functional Programming in PHP
2014 SpiceWorld London Breakout
Ad

Viewers also liked (10)

PPTX
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
PPTX
Building Web Apps with the Esri-Leaflet Plugin - Dubai DevSummit 2013
PPTX
Low Friction Personal Data Collection - Quantified Self Global Conference 2013
PDF
Low Friction Personal Data Collection - Open Source Bridge
PPTX
Intro to the ArcGIS Geotrigger Service
PPTX
UC2013 Speed Geeking: Intro to OAuth2
PPTX
Rule Your Geometry with the Terraformer Toolkit
PPTX
Low Friction Personal Data Collection - QS Portland
PPTX
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
PPTX
Using ArcGIS with OAuth 2.0 - Esri DevSummit Dubai 2013
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
Building Web Apps with the Esri-Leaflet Plugin - Dubai DevSummit 2013
Low Friction Personal Data Collection - Quantified Self Global Conference 2013
Low Friction Personal Data Collection - Open Source Bridge
Intro to the ArcGIS Geotrigger Service
UC2013 Speed Geeking: Intro to OAuth2
Rule Your Geometry with the Terraformer Toolkit
Low Friction Personal Data Collection - QS Portland
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Using ArcGIS with OAuth 2.0 - Esri DevSummit Dubai 2013
Ad

More from Aaron Parecki (14)

PPTX
The State of OAuth2
PPTX
Low Friction Personal Data Collection - CyborgCamp 2012
PPTX
Personal Data Collection Breakout Session Notes
PPTX
An Introduction to OAuth 2
PPTX
An Introduction to OAuth2
PPTX
OAuth 2 at Webvisions
PPTX
Home Automation with SMS and GPS
PDF
The Current State of OAuth 2
PPTX
Ambient Discovery - Augmented Reality Event 2011
PDF
Geolocation in Web and Native Mobile Apps
PDF
Ambient Location Apps and Geoloqi
PDF
Geoloqi iPhone App Tour
PDF
The Vowel R - Ignite Portland 9
PDF
Geoloqi: Non-visual augmented reality Open Source Bridge
The State of OAuth2
Low Friction Personal Data Collection - CyborgCamp 2012
Personal Data Collection Breakout Session Notes
An Introduction to OAuth 2
An Introduction to OAuth2
OAuth 2 at Webvisions
Home Automation with SMS and GPS
The Current State of OAuth 2
Ambient Discovery - Augmented Reality Event 2011
Geolocation in Web and Native Mobile Apps
Ambient Location Apps and Geoloqi
Geoloqi iPhone App Tour
The Vowel R - Ignite Portland 9
Geoloqi: Non-visual augmented reality Open Source Bridge

Recently uploaded (20)

PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
A Presentation on Artificial Intelligence
PDF
cuic standard and advanced reporting.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Cloud computing and distributed systems.
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
Machine Learning_overview_presentation.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Empathic Computing: Creating Shared Understanding
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
Chapter 3 Spatial Domain Image Processing.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
A Presentation on Artificial Intelligence
cuic standard and advanced reporting.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Review of recent advances in non-invasive hemoglobin estimation
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
Cloud computing and distributed systems.
Per capita expenditure prediction using model stacking based on satellite ima...
20250228 LYD VKU AI Blended-Learning.pptx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Machine Learning_overview_presentation.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Network Security Unit 5.pdf for BCA BBA.
Mobile App Security Testing_ A Comprehensive Guide.pdf
MYSQL Presentation for SQL database connectivity
Spectral efficient network and resource selection model in 5G networks
Empathic Computing: Creating Shared Understanding
Advanced methodologies resolving dimensionality complications for autism neur...

Done Reports - Open Source Bridge

Editor's Notes

  • #4: After we were about 6 people, team dynamics are very differentWe tried Scrum, lasted about 4-5 days. Too much work to get everyone in the same room at the same timeNeeded a way to quickly share what everyone is working on without doing daily standups
  • #7: Get better screenshot