Live data from Hacker News

IRC bots for Laziness, Impatience, and Continuous Deployment

eng.wealthfront.com

11–15 of 15 posts

Re: IRC bots for Laziness, Impatience, and Continuous Deployment

#11
post #6

My complaint with IRC (and I freely admit that it could be that I am not using the "right" client) is that there is just this sea of text on the screen. There is very little formatting to speak of, and it reminds me of everyone talking at once on a conference call. slighty off-topic: I am proud to say that I was introduced to Wealthfront via HN, and I was so impressed by their engineering blog that I went to their we…

I'm a fan of irssi myself, I've found that the defaults are pretty sane and the few things I've wanted to customize could be.

Re: IRC bots for Laziness, Impatience, and Continuous Deployment

#12
At StackVM we use an IRC bot to tell us when the servers are down. In our case the bot is just a DNode service so all the backend needs to do is connect to the IRC service, post its message, and disconnect.

http://github.com/substack/rowbit

It's a pretty great fit since we already use IRC a ton to coordinate development so we see the notifications right away.

Re: IRC bots for Laziness, Impatience, and Continuous Deployment

#13

At StackVM we use an IRC bot to tell us when the servers are down. In our case the bot is just a DNode service so all the backend needs to do is connect to the IRC service, post its message, and disconnect. http://github.com/substack/rowbit It's a pretty great fit since we already use IRC a ton to coordinate development so we see the notifications right away.

Sweet. We use Apache ZooKeeper for service discovery and have a #zk channel. We just did a deployment, here's the irc log: (deploying the 'PM' service, updating instance pm12 first)

[1:05pm] dm: PM leader changed from pm12 to (none)

[1:05pm] dm: PM leader changed from (none) to pm11

[1:05pm] dm: UNANNOUNCED: ServiceDescriptor[id=pm12,kind=class com.kaching.platform.guice.KachingServices$PM,uri=http://10.99.110.140:8080,shards=[],status=UP]

[1:05pm] dm: ANNOUNCED: ServiceDescriptor[id=pm12,kind=class com.kaching.platform.guice.KachingServices$PM,uri=http://10.99.110.140:8080,shards=[],status=INIT]

[1:05pm] dm: UPDATED: ServiceDescriptor[id=pm12,kind=class com.kaching.platform.guice.KachingServices$PM,uri=http://10.99.110.140:8080,shards=[],status=UP]

Re: IRC bots for Laziness, Impatience, and Continuous Deployment

#14
post #9
post #7

This is exactly why I wrote https://github.com/thwarted/nodebot , as a I ran into problems scaling and securing things like supybot, and integrating it with shell scripts. nodebot is announce only, and doesn't join the channels (so your IRC server needs to be setup to allow that), and since it's not centralized, high traffic from one node/service that ends up getting rate throttled by the server doesn't delay message…

Nice. Last.fm has a nice post at http://www.metabrew.com/article/how-we-use-irc-at-lastfm . We also have separate channels for each message type. IRC is pub-sub, yay! Plus you can direct-message a bot and it will DM you back, to not pollute the channel you're currently in. Do you have any bots that take commands? I think that's where it gets really useful.

I've considered it, but that wasn't the use case for nodebot. In order to do some of that, you'd need to be able to run commands on the machine the bot is running on, or have the bot keep some log of state as messages are fed into it, both of which are somewhat non-trivial in terms of storage/query-ability or security. We have a few modified bots (supybot is the most common, I think) that developers have written and run themselves, but I don't think any of them are much more than playthings.

I could definitely see having the ability to allow a bot change the topic of a channel though, so, for example, the deployment status channel's topic shows the most recent version deployed, or the status of the current deployment, for those case where you're not sitting in the channel. Also, the ability to control nagios from IRC would be interesting, but we just use shell scripts for that right now (which is non-ideal in other ways).

Re: IRC bots for Laziness, Impatience, and Continuous Deployment

#15
post #6

My complaint with IRC (and I freely admit that it could be that I am not using the "right" client) is that there is just this sea of text on the screen. There is very little formatting to speak of, and it reminds me of everyone talking at once on a conference call. slighty off-topic: I am proud to say that I was introduced to Wealthfront via HN, and I was so impressed by their engineering blog that I went to their we…

I'm slightly biased, but this is what I aim to solve with Mibbit - make it a little more friendly and clean looking. Hopefully I'm headed in the right direction so far.
Post reply on HN