Hide Gmail’s “Consider including” using Chrome and AdBlock

If you want to hide Gmail’s annoying “Consider including” feature you can do so by blocking it like it’s an ad.

Step 1. Get Chrome and Chrome AdBlock

Step 2. Right-click the red stop icon for AdBlock and click Options

Step 3. Click Options and Edit your manual filters.  Paste in the following:

mail.google.com##span[class*="aaf"]

My coffee grinder

For Christmas I got a coffee grinder as a present.  Having looked at numerous models both electric and manual we opted for a manual grinder.  This was principally as reviews tended to be a bit up and down even on popular electric grinders, and getting them in the UK is quite difficult.  I opted for this:

Shown next to our crappy kettle for comparison of size.  Actually it’s probably slimmer than it looks.  It’s from Amazon:

http://www.amazon.co.uk/gp/product/B001804CLY

Like all the best stuff, it comes from China and ALL of the instructions are in Chinese.  Configuring it isn’t rocket science though.

Part of the reason I went for this was it was the canonical burr grinding element bit, which is supposedly the best type.  I can vouch for the quality of the grind as I set to “notch 3″ on the first grind, and it came out like powder (suitable for Turkish/Greek coffee I’d imagine).  I now use it on “notch 10″ and there’s probably 20-25 notches in total, configured by a three wing nut on the bottom of the black bit.

This is what the innards look like:

And this is what a canonical burr looks like:

 

I don’t clean it every day as it seems to keep reasonably clean of its own accord.  That’s with about a week’s worth of debris on it.

Part of having good quality coffee isn’t just grinding it, however, it’s keeping the coffee fresh in the first place.  For that I bought some airlock bags from Lakeland, which come with a plunger to suck the air out.  I apportion my coffee into a single cup’s worth and put it in separate bags.  For my large cup it’s 8 grams of coffee beans, so I had to buy some relatively accurate scales too (also from Lakeland).

http://www.lakeland.co.uk/14931/Lakeland-Airlock-Starter-Kit

Vim perl-support error: “Global template file ‘/usr/share/vim/vimfiles/perl-support/templates/Templates’ not readable”

Recently I’ve installed the perl-support plugin for vim.  However having installed as instructed I got the following error:

“Global template file ‘/usr/share/vim/vimfiles/perl-support/templates/Templates’ not readable”

As I don’t really want to mess with settings for everyone I pointed vim at the local version by added a line in .vimrc to set the global variable:

let g:Perl_GlobalTemplateFile=’/home/YOURLOGINNAME/.vim/perl-support/templates/Templates’

Note that ~/.vimrc didn’t seem to work for me.

My fictional blog – The Diary of a Telecommuter

Recently I have been inspired to write some fiction, which takes the form of a diary.  If you have a Kindle you can subscribe here:

Alternatively you can read it online here:

The Diary of a Telecommuter

To be clear: it is ficitonal. :-)

Getting Things Done – command line

Today as a quick aid to tracking some tasks I wrote a ‘getting things done’ style program in perl.  I can’t boast that it’s sophisticated, but it can be found on github here:

https://github.com/PaulMdx/gtdcmd

Checkers – Trading Positions

I’m often conscious while playing of the value of men further towards the king row than in the ‘home’ position.

Take the fictitious example below.  Red has the option to either (A) swap men to get nearer a king, or (B) swap men with white’s man near its king line.

Assuming only moves A and B are in consideration, which would you choose?

For me, choosing move A is pretty tempting.  You’re getting pretty close to a king, which will force white’s man on white’s second row to have to move.

Move B has more subtle benefits, however.

Firstly, the utility of red’s two back men has very little value.  They’re not causing much of a headache in preventing white getting kings.  The best red could hope for is white getting a king to the left behind man ‘B’, allowing red to move its first line man to exchange a king for a man.  Assuming white is a reasonable player, this isn’t very likely.

Secondly, getting nearer to the end of the game, it’s likely red’s men on its first and second row are going to need promotion to kings.  They’re a long way off that.

Thirdly, and most importantly, red has the opportunity to effectively ‘gain’ moves.  Consider white’s man that red can exchange.  At minimum it has cost 2 moves to get to its current position.  Consider red’s man B, which has cost at most 1 move to get to its current position (2 moves once exchange takes place).  If red can exchange men, it has a net effect of having gained 1 move, as the red man on red’s first row moves 2 places (jumping white’s exchanged man).  The likelihood is white’s man could have moved more than 2 places, effectively making the gain greater.

For homework, consider the costs associated with move A.

So when playing, it’s worth considering the value of the pieces you’re moving.

Perl convert RGB to hex HTML color

Converting RGB to hex just involves understanding the decimal representation of RGB. See below for a small perl procedure.

sub RGB2Hex
{
my $r = shift;
my $g = shift;
my $b = shift;
my $dec = 0;

$dec += 256*256*$r;
$dec += 256*$g;
$dec += $b;

return sprintf(“%.6x”, $dec);
}

Use CASE statement in SELECT in MySQL

Sometimes you might want to replace numbers with an enumerate value.  Let’s take an example with a BIT field for HasChildren.

SELECT Name, IsParent
CASE
WHEN HasChildren=1 THEN ‘Parent’
WHEN HasChildren=0 THEN ‘Not parent’
ELSE ‘Unknown’ END AS IsParent
FROM Person

Get source code from GitHub with git (read-only)

If you want to get source code from GitHub it’s easy enough to click ‘Download’ if you just want an archive.  However if you’re on GitHub you might want to use the proper git client.

Get git if you haven’t already:

http://git-scm.com/

Once that’s installed just run the following from a command line:

git clone git://github.com/username/project.git

To get the connect-auth source tree use:

git clone git://github.com/ciaranj/connect-auth.git

Enjoy your new source.

Building Pidgin on Ubuntu linux

To build pidgin on Ubuntu linux you’re going to need a whole bunch of libs and tools.  Let’s check you’ve got the base dev tools installed:

sudo apt-get install build-essential

Next the glib stuff and libxml:

sudo apt-get install libgtk2.0-dev

sudo apt-get install libxml2-dev

I’m not sure if you need this separately, however libpurple is the plugin system for Pidgin:

sudo apt-get install libpurple-dev

Finally mop up any specific pidgin dependencies that are missing:

sudo apt-get build-dep pidgin

If you haven’t already downloaded the Pidgin source get it here:

http://www.pidgin.im/download/source/

Uncompress it:

tar zxvf pidgin-sipe-1.11.2.tar.gz # change for your version

cd into the directory, then run:

./configure

make

make install

Enjoy!