Upcoming changes to hyperion, our ircd software

We’re working on rolling out some new changes to hyperion, our ircd software. If everything goes well, we should be running with these changes in a few weeks. However, you should note that we’re releasing these changes as hyperion 1.0.3, and we don’t particularly encourage any other networks to try to run this code (there are better, more modern ircd software out there). In addition, hyperion 1.0.3 will probably be the last release we make of hyperion. (We are collaborating with Stuart Walsh and TJ Fontaine, the authors of oftc-hybrid which have some great ideas for a next generation ircd tree for freenode!)

This update will add some fairly modern features to the ircd’s I/O engine to allow it to operate more efficiently and fix a few internal bugs that have been noticed during the run of hyperion 1.0.2b. These changes will be going live on a testnet in the next few days most likely, at which point I will write another post with information on how to play around on the freenode testnet with the updated ircd code.

We have also added support for a commonly requested feature, CALLERID (umode +g, server side ignore) in this update, and we have added support for the NETWORK property in our 005 numeric (IRC client authors will probably be thrilled). We have also implemented support for the Linux epoll mechanism, which may provide a marginal performance boost on some of our client servers.

If anyone else has any suggestions or bugs, please note them as comments to this story or come discuss it in #hyperion. We would love to hear your feedback. The more technically inclined can download the in-progress 1.0.3 working tree from our subversion repository at http://svn.freenode.net/hyperion/trunk.

Getting voice in #freenode-social

If you’ve been on the network for a little while you’ll probably have noticed that #freenode presently forwards you to #freenode-social, a moderated channel. This is officially our “staff social channel”, but it oftens confuses people how it can seem to take a long time to get a voice, when most of the channel are happily chattering away. I thought I’d have a go at clearing up this mysterious situation a little, in the hope that the channel will cause less angst in the future. At the moment, we get a lot of requests for voice, and I hope that by explaining the situation here it will be easier for people to understand what policies we are implementing.

The channel has been moderated for a long time, and this is because of the many problems with spambots that the network had been experiencing all that time ago. Unfortunately, we are the target of many an attack and moderation stops this – when a staffer comes and gives out voices, they are able to keep an eye on people trying to spoil the fun of others. Although you may notice that some users have auto-voice by ChanServ, a run of voices is usually given out every few hours or so, when a staffer notices that the channel has a lot of unvoiced people. This system isn’t the most efficient, but it allows us to keep a close eye on what is going on to keep things stable. Generally speaking, voice is not given on request because we feel that we would find ourselves very quickly inundated with requests, but we try and voice regularly none the less.

I hope that this explanation clears up some concerns surrounding the channel. In addition to all this, we’re currently looking for ways to clarify the purpose of the channel, so stay tuned for more.

What’s your story?

We would like to feature a few stories of how open source in general and freenode in specific influenced you and your life. Anyone who is interested in getting their story published should write email to blog*freenode.net. Depending on feedback, this might even evolve into a weekly feature (or not ;) ). So, happy submitting!

Building Bridges

For the last few months, some of freenode’s staff have been doing overtime as ‘observers’ on another IRC network for FOSS developers; hanging out in their staff channels, watching how they do things. At the same time, some of their staff have been watching how we work. It’s been interesting.

It should come as no great surprise to most people to learn that the two groups are remarkably similar. We have the same goals, the same mindset, and common roots. We’re moving in the same direction, of course we’re taking similar paths! But it’s nice to know that, to have it confirmed by months of observation and conversation, by sharing common problems (and common jokes).

Today we’ve moved on to phase 2 of this bridge-building exercise. Some of freenode’s staff now have IRCop privileges on the other network, and some of their staff have IRCop privileges on freenode. We’ll be trying to help each other’s users just the same way that we’d help our own (a few procedural differences aside). I’m guessing it’s going to be a challenge making sure we do things properly for each other, but there’s no better way I can think of to move forward from here; to try to get us all onto not just similar paths, but the same path.

So, I’d like to welcome (and I’d like you to welcome) several new members of staff to freenode; cdlu, cryogen, Ganneff, hajvan, sarnold, scott, tjfontaine, and weasel, from OFTC. Be gentle with them :)