31 December 2015

Christmas is here!

This Christmas, the impossible happened. Perl 6 is officially released.

Since its inception, a lot has occurred. The 2001 September 11th attacks on the U.S. and subsequent wars in Afghanistan and Iraq. Apple makes the iPod. There's a new Pope. New Fallout games. We've gone from PHP 4 to PHP 7, skipping 6 because they couldn't get Unicode working right. Apple made a phone, and it turned out to be quite popular. Python 3 was released. Apple made a tablet. The end of the Space Shuttle program. Duke Nukem Forever got released after only 14 years of development. We've landed rovers on Mars, and are making self-driving cars. Apple made a watch. We had two more Star Wars prequels that sucked, and an Episode VII that was actually pretty good.

And now we have Perl 6.

Understand that it is a completely new language rather than an incremental version upgrade. It's still called Perl because it's still in the spirit of doing things the Perl way, and it's got a shiny new version number because it is shiny and new and modern, but it is by no means intended to be backwards compatible with previous versions (except via magic). It is a clean break. And I'm excited to start learning it.

28 May 2015

Ghosts Forge

So today, I see news that SourceForge, once the mightiest of Free Libre Open Source Software distribution platforms, has basically Hijacked the GIMP for Windows account and is bundling adware with the installer. They don't want to close the project and have decided that it has been 'unmaintained'. This is really shady behaviour.

I guess I was one of the last hangers-on to SourceForge - when GitHub came out it was the latest trendy thing and anyone who's anyone uses GitHub for their work - except to be completely honest, I kinda find Git to be obtuse and annoying. DVCS is not simply 'better' than a centralised VCS, especially not when everyone using Git seems to be reliant on GitHub being the centre of their world anyway! But rants about version control systems can wait until a later post. SourceForge's behaviour is now quite belligerent. I think I should dig up some of my old (abandoned-for-now) SF.net projects and move them elsewhere.

But where? Well, there's an alternative to GitHub that is really quite shiny - bitbucket.org. It's got an excellent web UI, I've used it for a few of my little blog-post scripts already, and more importantly it supports Mercurial as well as Git. I haven't used Mercurial a whole lot yet, but it feels a lot nicer than Git. Everything in the interface is just laid out a lot more sensibly, and that's important when you have something complex like a revision control system. You don't wanna take Git's approach of "Well, if you just learn all the guts and how the internal file structures are laid out everything will make more sense".

Oh dear, this is heading into rant territory. Let's leave it at this. Flee SourceForge now, it's a sinking ship.

26 April 2015

Cheryl's Birthday

blogdown: cheryl.md So for some reason, the entire internet (possibly an exaggeration) has latched onto this Cheryl's Birthday Problem. It's a logic puzzle where you can deduce the solution while knowing only a few facts about what other people in the puzzle know. I first stumbled across this Prolog solution which explains the problem quite nicely - and then found people had already started implementing their own solutions in e.g. Java, which made me decide to spend a lazy Monday afternoon hacking away on my own Perl 5 version.