[Scheduled Maintenance] Services database clear-out.

This is just to let you know that we will soon be performing a fairly substantial cleanup of the NickServ and ChanServ databases.

We’ll be dropping all expired nicknames. As explained in the FAQ, nicknames on freenode expire after 60 days. Nicks that are at least two weeks old and that were last used less than two hours after their creation are also considered to be expired.

There are a few things you should know about this cleanup process:

  1. It will take place at 9am UTC on Thursday  11th June 2009.
  2. It may take a little while. We prune the database infrequently and it’s grown fairly large sine the last time.
  3. A channel for which all contacts are expired will be deleted. If your channel is active but your contacts are not, please let us know by midnight Wednesday 10th June (again, UTC) and we’ll try make special arrangements.
  4. We will try avoid expiring project cloaked user nicknames.
  5. Grouped alternate nicknames which are considered to be expired will be dropped.
  6. If you’ve not used your grouped nick much, or you haven’t used it recently, it may be expired.
  7. Please make sure your bots identify to NickServ or its registration may be lost.
  8. Be sure to do the canonical setup so you don’t lose your nicks and channels. Please follow these canonical nickname setup instructions to make sure that your nicknames and channels aren’t lost through disuse.

Please make sure your nick(s) are set up properly before Thursday and that you’ve spoken with freenode staff to resolve any outstanding channel and nick issues. Thanks for your understanding, and thank you for using freenode.

Community Leadership Summit – July 18-19th 2009, San Jose, CA.

Jono Bacon, one of my friends and a FOSS contributor for which I have a lot of respect, known to many for his work as Ubuntu‘s Community Manager is one of the people behind arranging the Community Leadership Summit — a conference aimed at bringing people from various projects together to look at cross project collaboration and such things. The conference complements freenode and the PDPC’s Group Advisory Board very well and I for one shall be attending.

The goal is simple: if those passionate about building great communities can get together to compare notes and discuss and debate these topics, we will all benefit from better communities.

The summit gathers together community managers, leaders and organizers as well as the projects, organizations, commercial vendors, ISVs and others who have an interest in building a strong and enabled community. The purpose of the event is to get everyone together to talk about the many nuances of building strong and effective community, such as governance, creating collaborative environments, conflict resolution, transparency, open infrastructure, social networking, commercial investment in community, engineering vs. marketing approaches to community leadership and more.

You can read the rest of that over at Jono’s blog and of course, head over to the conference website, check it out and sign up if you can make it and it sounds like a good fit for you!

Wikipedia licensing change?

Wikipedia to change license to Creative Commons BY-SA?  — From http://creativecommons.org/weblog/entry/13967

A community vote is now underway, hopefully one of the final steps in the process the migration of Wikipedia (actually Wikipedias, as each language is its own site, and also other Wikimedia Foundation sites) to using Creative Commons Attribution-ShareAlike as its primary content license.

This migration would be a huge boost for the free culture movement, and for Wikipedia and Creative Commons — until the migration happens there is an unnecessary licensing barrier between the most important free culture project (Wikipedia of course, currently under the Free Documentation License, intended for software documentation) and most other free culture projects and individual creators, which use the aforementioned CC BY-SA license.

To qualify to vote, one must have made 25 edits to a Wikimedia site prior to March 15. Make sure you’re logged in to the project on which you qualify, and you should see a site notice at the top of each page that looks like the image below (red outline added around notice).

If you are eligible, please head over to http://creativecommons.org/weblog/entry/13967 and find out how to cast your vote!

PHP TestFest

Jonathan mentioned in his blog post about the free-as-in-node podcast yesterday that this weeks guest on “Pimp My Project” was there to talk about PHP TestFest.

The TestFest is an event that aims at improving the code coverage of the test suite for the PHP language itself. As part of this event, local User Groups (UG) are invited to join the TestFest. These UGs can meet physically or come together virtually. The point however is that people network to learn together. Aside from being an opportunity for all of you to make friends with like minded people in your (virtual) community, it also will hopefully reduce the work load for the PHP.net mentors. All it takes is someone to organize a UG to spearhead the event and to get others involved in writing phpt tests. The submissions will then be reviewed by members of php.net before getting included in the official test suite.

As per http://qa.php.net/testfest.php Head over there if you want some more information on how to get involved!

Irssi 0.8.13

Piping hot and straight from the oven! The Irssi core development team has been hard at work, hunched over their computers for many moons, tapping away till their hearts content! Bruised and blistered, they’ve just set off to put their sore fingers around a few bottles of cold beer and have a well deserved rest! Thank you all and keep up the good work!

All this, to make our IRC experience better! Everyone’s favourite IRC client, Irssi, v 0.8.13 has just been released! Head over to http://www.irssi.org to get your copy now!

Happy 15th!

15 years ago, on January 29th 1994 Rob (lilo) Levin first joined the channel #linuxneo on the EFNet IRC network. This date has since been referred to as the conceptual moment, the foundation, the cornerstone which later led to the network you now know as freenode.

Since that January evening in 1994 — the original channel made some network moves before it became it’s own network; irc.linpeople.org in 1995 — a few name-changes later and we’re freenode. Peaking at just over 52,000 daily users, spread across FOSS and other peer-directed communities.

We (freenode staff volunteers) have the pleasure of working with exciting projects ranging from the Wikimedia Foundation to various Linux distributions (Fedora, Gentoo, Redhat, Suse to name but a few) to the Free Software Foundation to .. the list goes on and on and on.. It’s fantastic to see so many people sharing our passion, all in one place — yet scattered across the globe.

So, to each and every one of you, to each and every project on the network, to Free and Open Source Software, to the exchange of ideas and information, to the memory of lilo — A very happy 15th birthday to freenode!

And to each and every user and to all the volunteers, past and present — thank you for making this possible!

2008/2009 Fundraiser.

We’re slowly climbing towards our target of £5,000.00 in donations by March 2009. However, as the pie-chart shows we’re still quite a way off. If you appreciate what we do and want to see the PDPC provide further services to the communities, why not head over to http://freenode.net/pdpc_donations.shtml and see if you are able to help us reach the target! Any donation, small or large is gratefully received and a massive thanks goes to those who have already dug deep and helped us climb up the ladder in this instance!

Nickserv Access Module Loaded.

We recently added support for NickServ’s ACCESS command to freenode’s services. This allows you to define a list of hostmasks from which nickserv will recognise you before you have identified. Logging in as normal is still required, but matching an entry on this list will prevent NickServ from changing your nick if ENFORCE is enabled.

For more detailed information, see NickServ’s help topic:

/msg NickServ HELP ACCESS

There is one caveat to this feature: if you match an entry on your nickname’s access list, you will not receive notices from NickServ asking you to identify. This, combined with nickname access lists that were migrated from our old theia database and have lain dormant since, may cause some auto-identify scripts to stop functioning.

If you find that this is the case, the simplest workaround is just to remove all entries from your nickname’s access list. Use

/msg NickServ ACCESS LIST

to see all entries, and

/msg NickServ ACCESS DEL <hostmask>

to remove them.

Merry Christmas and a Happy New Year!

Another year is coming to an end, for freenode and the PDPC it has been a year of change. We’ve made a lot of progress on development, the NFP is branching out and starting to slowly move towards providing more services to the FOSS communities and we’ve grown in size and now peak at a whooping 51,000 users! It feels amazing to see so many FOSS enthusiasts together in one place.

I hope that you all have a fantastic holiday season and that the new year brings you all you wish for! And a massive thanks to each and every user for making it worth our time to provide this service! And of course, thanks also go to all our fantastic volunteers, past and present for the time and effort they put in day after day for free. I look forward to another year with you, and another year working to bring FOSS developers and users together.

Help us test ircd-seven!

As many of you will have noticed, our current IRC server software, hyperion, has been showing its age for some time now. Expectations for its eventual replacement are nothing if not high — hyperion contains a great many features not found elsewhere, most of which are fairly unique to the way in which freenode operates, so anything that wants to take over from it must provide all of these, in a more robust, maintainable and future-proof package.

Charybdis looks like a good start — it’s a modern, modular IRC daemon supporting many of hyperion’s strange features, and built on top of ircd-ratbox, which gives it a good heritage of stability and scalability. ircd-ratbox is perhaps best known for powering the majority of EFNet, which seems to make it an excellent base on which to build.

However, neither ratbox nor Charybdis implements freenode’s more unique features, such as ban-forwarding or hidden IRC operators. So, some work is needed.

Enter ircd-seven. Seven is based on Charybdis, with the features freenode needs added in. Channel operators and network operators alike should recognise most of the useful, and heretofore unique, features of hyperion, without many of the bugs and oddities that have become an unfortunate fact of life.

Development and internal testing of seven has been ongoing for some time, and we’re now ready to open up testing to a wider audience. The test network is currently running on testnet.freenode.net, port 9002 for normal connections or 9003 for SSL connections. This is a new server, sharing no code with the current software, so all aspects of it need thorough testing, both that it works, and behaves in a way consistent with how most people want to use it — this last aspect is particularly difficult to do in small-scale private testing.

ircd-seven is designed to be capable of everything hyperion is, but not necessarily as a drop-in replacement. Some functionality is still available in a different form, or with a different interface. The most notable differences for users are summarised below:

SSL support
seven supports SSL, for client and server connections. Users connecting via SSL will get user mode +Z to denote this.

Channel bans and quiets
Channel mode +q (quiet) is now sent as a separate mode — hyperion’s translation of +q foo to +b %foo is gone. Extended ban types are supported for all ban-like modes (+bqeI). These extended masks begin with $, followed by an optional ~, to negate the match, and a single letter denoting the type of match to do. For example:

  • +b $r:Lee* will ban any client whose realname (gecos) field begins ‘Lee’. This is equivalent to hyperion’s +d mode.
  • +I $a:spb will set an invite exception for any client logged in to services as spb.
  • +q $~a will prevent any user not logged in to services from speaking. This is roughly equivalent to hyperion’s mode +R.

Forward channels for bans are now delimited with $ instead of hyperion’s !, and can be used with extended ban masks as well. Setting and unsetting of bans via the hyperion syntax (nick!user@host!#channel) is supported — it will be translated to nick!user@host$#channel.

Identified status
There is no user mode +e. The IRCd keeps track of the account name of every user who is identified to services, and uses this to determine whether a user is identified or not. The ‘is identified to services’ line in WHOIS output is no longer present; there is, however, a line containing the account name if the user is logged in.

Identifying on connect
Using a NickServ password as a server password still works as it does in hyperion. However, there are two new mechanisms:

  • You can specify : in the server password field, to log in to a specific account. This removes the requirement to connect using a nickname that is grouped to your services account.
  • seven supports SASL authentication, to log in to services during the connection process. This requires client support; a script for Irssi to do so is located here. Conspire supports this natively. Other clients, as far as I’m aware, do not.

Username prefixes
The n= and i= prefixes are not used; instead ~ is prefixed to a non-identd username, as in most other daemons.

IDENTIFY-MSG
The identify-msg capability is still present, but the way to enable it has changed — it is now part of the same CAP mechanism that is used to control SASL and multi-prefix capabilities. A script for irssi that understands both hyperion’s and seven’s identify-msg capability is available here. Conspire will also support this natively once w00t remembers to apply the patch.