Keeping a Reasonable Number of Incremental Backups

My servers are backed up using a little script that works just like Apple's TimeMachine. Every day a backup job moves the latest backup to a folder named by the date of its creation and creates a new backup in the folder latest. Rsync has a nifty feature that creates hardlinks to files in a different folder if the file matches with the current folder. Meaning that you don't create a full backup every time but only sync the differences, i.e. an incremental backup.

All in all that works quite well and I can go back to any date in time to see the state of…

Exciting updates to MetaCPAN

MetaCPAN went live with the switch over to Catalyst (previously we hadn't been using a framework at all) this morning.

The main aim was to make it easier for people to contribute and also to extend.

An unintended consequence was a significant increase in speed. We've not delved into the details - but the lesson learned is that using something as established and polished as Catalyst really makes a big difference compared to putting something together from scratch.

We've also added an e…

Introducing metacpan.org - A better search for the CPAN

I'm very excited to announce the front end for MetaCPAN: metacpan.org. This is what you can expect from the new interface to the CPAN:


  • New uploads instantly available
    New uploads to the CPAN are indexed within seconds. No more waiting for new upload to appear on the search site. Check out /recent

  • Modern site layout
    The page layout leverages the extra space you hav…

GitHub-like activity indicator for authors and distributions

(Note: open the post to see the indicators. blogs.perl.org doesn't show them on the summary page)

Indexing the whole CPAN to the beta version of MetaCPAN just finished. Here is one example of what you can do with the data available from MetaCPAN:

This is rafl's activity over the last 24 month.

And…

First week of GSoC and progress made with MetaCPAN

As you might have heard, my MetaCPAN project has been accepted for the Google Summer of Code. If you are unfamiliar with the proposal, you can find it here.

The first few weeks are called the "bonding period". In this period the student is supposed to bond with their mentors and the community, read docs and get to know the project.

My tasks for this period are mainly to contact maintainers and author of CPAN Ratings, CPAN Testers and CPAN Vote to figure out how to include their data in the in…