Upload
rob-scaduto
View
161
Download
4
Embed Size (px)
Citation preview
Create your own Chatbot with Hubot and CoffeeScriptRob Scaduto
President and CTO, Third Wave Technology @scardetto
About Me
•President and CTO of Third Wave Technology
•Developing software professionally since 1998
•Maintainer of a handful of open source projects (Crux, physique, build_number, Microservice.Template)
•Musician and aikido practitioner
About My Company
•Boutique consulting firm specializing in Agile software development.
•Develop custom software solutions for a variety of languages and platforms.
•Strong focus on Agile practices like Unit Testing and Continuous Integration.
Hubot is a chat bot.•Automates your chat room.
•Fully customizable.
•Runs on Node.
•Written in CoffeeScript.
•Uses Regular Expressions to match text to commands.
•Easily deployable to Heroku. (or Linux or even Windows)
Lots of Integrations• Flowdock
• Twilio
• XMPP
• Gtalk
• Yammer
• iMessage
• Hall
• ChatWork
• AIM
• Lingr
• Campfire
• Slack
• HipChat
• IRC
• Partychat
• Talker
• Gitter
• Visual Studio Online
• Talktype
• Fleep
• Let’s Chat
• VictorOps
Or Write Your Own!
We use
• Awesome user experience.
• Support for multiple teams.
• Integrates with popular services like GitHub, BitBucket, Dropbox.
• Very quickly becomes the central communication hub for your team.
Productivity Examples•Check the uptime and status of your apps.
•Kick off Acceptance Test Suite.
•Integrate with your issue tracker.
•Kick off builds and deployments.
•Be notified when PR’s are submitted and approved.
•Provision Servers with Puppet or Chef.
•If it has an API or even just a hackable URL you can automate it.
Built with CoffeeScript•CoffeeScript compiles to JavaScript.
•Was an attempt to expose the good parts of JavaScript and eliminate a lot of cruft and confusion.
•The syntax will be friendly if you are a Ruby or Python developer.
•ES6 has fixed a lot of the issues that made CoffeeScript a viable alternative.
•However, for Hubot, everything is written in CoffeeScript.
Anatomy of a Hubot Script
<- Documentation is important
<- Hubot will listen for any message
<- Hubot will respond when called by name
Thanks for Listening!Tweet me if you have questions:
@scardetto
Source code available at: github.com/scardetto/hubot-talk