25 November 2016

Tired but Friday;

Just a tiny micro-post today; I have a new job! It's Perl 5 related so expect more Perl 5 posts since I want to stay in that headspace, but I haven't forgotten about Perl 6.

I want to show off a little neat feature of Perl 6 that might not be the most widely used feature you're ever gonna see, but is still going to be useful once in a while.

07 October 2016

Software Spotlight: KDirStat

Very short tiny post today to show I'm not quite dead yet and maybe ease myself back into things. Rather than write some brand new software today, let's look at some software made by other people that's really handy: KDirStat.

29 March 2016

Roll for Initiative, part 2

blogdown: text2.md

More Perl 6 learnings must be had! I'm behind on my posts and I want to quickly catch up to where the module is at, so that I can then make the module even better! But what is a Module, in Perl 6? Perl 5 programmers will find it's a pretty similar process, but let's look over it and also see how classes work. Yes, there's a class keyword in Perl 6 and it's built in, no Moose required!

22 February 2016

Roll for Initiative, part 1

Oh hi! Just a short post for the moment because I am somewhat overwhelmed with things. But it can easily turn into some sort of multi-part thing. We're looking at more Perl 6 fun.

It all started when I was looking through Perl 6 docs, pondering what should be my second thing to learn about and write. I came across the metaoperators, which is a treasure trove of rather fantastic things that you can do in other languages just fine but tend to need tedious, repetitive looping constructs. Perl 6? Baked into the language, of course.

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.


27 August 2014

Jailing Java

Just a short post today. Aside from all the other distressing things happening in my life I've recently learned I'm getting kicked out of my apartment. Joy. I'll keep blogging to keep me sane, but they might not be as technical or in-depth as some of my other series.

Have you looked at your homedir lately? Cluttered with dotfiles, isn't it? If you don't know what a 'dotfile' is, look at your home files with ls ~/ ... now look again with ls -a ~/ . Quite a difference, right? In theory we have some modern XDG standards that will take a lot of that clutter and put them in ~/.config, ~/.local, and ~/.cache but that requires the programs to adhere to the XDG spec. Since we're in The Year Of The Linux Desktop we're actually in an exciting time where we are seeing a lot of developers making software (including games!) for Linux without actually being in the ecosystem from the start. So a lot of them aren't necessarily using Linux day-to-day. They aren't aware of how your homedir can get littered with crap from software that doesn't understand that ~/ is not the same as "My Documents" on other operating systems.