Getting started with Kubuntu

The Ultra 40 that I won arrived on Wednesday, but I've been too busy since then to do much with it until now.

I have spent a little bit of time carrying out some research. My initial plan was to triple boot this server. First as a FreeBSD machine -- it's my preferred Unix flavour, my other Unix boxes run FreeBSD, and it gives me the opportunity to carry out FreeBSD testing on a 64 bit platform.

Then with Solaris 10. I want to carry on the work that I've already started with DTrace, and get some more experience with other Solaris technologies.

Finally, as a Windows XP box. Two reasons for this. First, Photoshop. I take quite a lot of pictures, and, not currently having a Dual Core Mac to hand, Photoshop on XP is my preferred image editing system. I also have something of a workflow built around it. The other reason is games. I don't get much opportunity, but when it arises I can quite happily while away the time playing Half Life 2.

That's not quite what happened.

Subversion UK User Group / Google open source jam writeup

Last Thursday (the 18th) I attended two open source events in London. The first was the third Subversion UK User Group meeting, and the second was Google's second Open Source Jam.

Subversion commit access

I'm very pleased to say that I've just been granted with a partial commit bit for the Subversion source code. The developers have had enough of me popping up on the mailing list talking about issues with the Perl bindings and posting patches, and have given me the necessary access rights to fix and improve things myself.

As is traditional, my first commit was to the list of Subversion committers. This ensures that the ACLs are set up correctly and so on.

I'll be working on the perl-bindings-improvements branch, making sure that they're up to date with respect to the rest of Subversion, and that they behave as "Perlishly" as possible for anyone else who needs to interoperate with Subversion repositories using Perl.

Planet Subversion updates

I've given Planet Subversion a facelift, and decided to splash the cash on a domain for it too -- planet-subversion.com. I've also recently added (but neglected to mention here) a feed from Mark Phippard, who has been writing some very interesting articles about the Subclipse project.

Perl parameter validation and error handling

I write and maintain quite a lot of Perl software. Much of it is open source and available on CPAN. Most of it consists of libraries designed to be used by other applications, rather than applications in their own right.

One of Perl's strengths is that "There's more than one way to do it" (TMTOWTDI, often pronounced tim-toady). This makes for a language that is flexible, and allows you to write a solution to a problem that matches the problem, rather than trying to shoehorn the problem in to the language in order to solve it.

This is also one of Perl's weaknesses. There can be many ways to solve a particular problem -- some of them are not optimal.

Open Source support and OpenLogic

One of the common pieces of FUD used to argue against the use of open source software is "There's no vendor support. If it breaks, who do we turn to?".

There are a number of answers to this particular concern.

SVN::Web 0.50 released

After a slightly longer development process than I would have liked (I had several hard disks choose inopportune moments to go south -- no data loss thanks to backups, but I took the opportunity to shuffle some hardware around), SVN::Web 0.50 has been released, and should now be available on CPAN.

There are quite a few significant changes in this version...

Subversion UK User Group / Google Open Source Jam, 18th January 2007

If you're in London on Thursday 18th January and you've got an interest in Subversion then you might want to come along to the next Subversion UK User Group meeting. It's at 3pm, there are directions and sign up instructions at that link.

I'll be there, giving a tour of the Subversion related applications and tools that are available in the Perl space.

And after that it's the first London Google Open Source Jam of 2007 -- an opportunity to catch up with other open source developers, and find out more about interesting projects that people are working on.

Alerting users that their PCs are compromised

A great deal of spam is sent by "botnets". These are (typically) Windows PCs that have been compromised in some manner, and are now illicitly controlled by a third party. This third party uses the network of thousands of PCs that they have compromised to:


  1. Send spam

  2. Host phishing sites

  3. Carry out denial of service attacks



There are many DNS based Black Lists (DNSBLs) operated by numerous groups that aim to list the IP addresses of systems that have been compromised in this way. This allows mail server operators to configure their systems to query these DNSBLs and reject messages that are being sent from a compromised system.

The problem with this approach is that it's not visible to the owner of the compromised system. They might notice that it's behaving a little slower, or that their network connection doesn't seem as fast as it was, but they're not going to know why, because there's no easy mechanism to alert them.

In a perfect world, Internet Service Providers would monitor these DNSBLs, notice when IP addresses of their customers appear on them, and terminate (or provide limited) service to that customer, along with appropriate assistance to help them clean their system.

In practice this rarely happens.

It occured to me that one way to make the fact that their PC has been compromised more visible to end users would be by enlisting the help of companies that host or provide online game environments.

For example, consider Second Life, Eve, or World of Warcraft. All huge, multi-player games/environments, to which millions of people connect every day.

If the companies that host these environments were to check the IP addresses of connecting systems against these DNSBLs, they could provide a warning to the player that it's highly likely that their PC has been compromised, and that they should make sure their anti-virus is up to date, and so on.

Further, suppose you've got a PC and an XBox or Nintendo Wii at home1. Both of those game systems support online play. And through a networking quirk that I don't need to go in to here (NAT), it's highly likely that the PC and the games console(s) are going to appear online with the same IP address.

So if the PC appears on a DNSBL the Wii or XBox is going to appear on that DNSBL too. This provides an opportunity for Microsoft and Nintendo to check the IP address, and again, place a warning in the "dashboard" (XBox dashboard, Nintendo Wi-Fi Connection) that their systems display to the user as they go online.

This could significantly raise the awareness of owners/operators of compromised PCs.

1 Guess what I got for Christmas :-)