ZenIRCBot and the Art of Pub/Sub*
How Pub/Sub helped my IRC bot stop living in the past and live in the moment. Also, special bonus features for polyglots!
When writing my dozenth IRC bot I decided that instead of the standard monolithic or plugin based bots I’d written in the past, I would write one in a highly decoupled way. Instead of plugins, I’d have services!
What I hope to teach in this talk is how one can use microservices and a simple homespun protocol to write software that has very little holding it back. Things this paradigm allows for:
- Multiple languages in the same code base.
- Adding more services without needing to modify the core.
- Interaction with external services with just a small compatibility layer.
Note: I use an IRC bot to show these things, but I’ll give examples of other more real world systems that can also benefit from these lines of thinking. Hopefully leading you to come up with new and even more interesting use cases for these ideas and technologies.
I've spoken many times at PDX Python and used to do speech and debate in high school.
His speaking career is modest but he enjoys it. He has spoken numerous times at PDX Python and used to compete in speech and debate when he was in high school. His favorite events being impromptu and public debate.
He helps support Read the Docs. Has patched many open source projects over the years, mostly libraries he needed for his many projects. His favorite projects his own right now are: ZenIRCBot and GitHub Repo Widget. And if the stars align, he can be found on his blag
The rest of his code and projects can be found on Github