codeBrane Blog

Software development and philosophical musings

Installing a Shibboleth SP From Source

I’ve been working on an interesting project recently, along the lines of public access to university library resources (walk-in access). I’ve developed an Android app, set up an iBeacon for the App to detect and a backend which interfaces to Active Directory but between the app and the backend is some gubbins. That gubbins is a Shibboleth Service Provider (SP) and although I wrote my own one many years ago, I decided to go with the ‘official’ one and build it from source.

Rescue a USB Backup Disk

So I plugged the WD My Passport mega-tera-huge USB drive into the mac, ready to do a backup and nothing appeared. That sinking feeling and the faint sound of a year’s worth of backups spiralling round the u-bend.


Sometimes it’s nice to sit down and have a look over what you’ve been up to over the last month, so I brewed up a nice mug of coffee and did just that. It’s been pretty busy with different development projects jostling for space in the old brainbox but with judicious use of Jira (release management) and Stash (git), it’s a pleasurable experience.

The Shibboleth Sonnet

It’s National Poetry Day today! So I thought I’d publish a poem I knocked up a while ago. It tells the tale of a Shibboleth IdP when contacted by a fake SP, using the credentials of a long vanished real one.

Your Very Own Raspberry Pi and iPhone Butler

This post is about creating your very own digital butler. You’re iButler if you like. Who will welcome you into your room with a butlerish pleasantry and wave you goodbye as you leave. Let me introduce you to Bluetooth the Butler and his sidekick, piBeacon.

What I’ll be doing is getting a Raspberry Pi to act as an iBeacon (piBeacon), broadcasting some data and then getting an iPhone to pick it up. If the iPhone detects you entering the location it will play a welcome message. When you leave it will play a farewell, see you soon message.

Designing a Simple Serial API for the Arduino and Node.js

As I work towards a remote Arduino weather station, sitting out in the garden, or even up a hill (with GPRS perhaps?), I started looking into hooking it up to the Raspberry Pi via the serial port, to investigate an initial hardware control API. Now before you go running off at the thought of RS232 and voltage conversions, the Arduino has an internal serial to usb converter, hoorah!

Arduino Mega Web Server With WiFly and Temperature Sensor

I’ve had a pile of electronics lying around for a while, waiting for me to tackle an interesting project. How to get an Arduino on the wifi network, broadcasting the temperature. Well, the parts list is fairly simple to get hold of:

  • Arduino (I used a Mega 2560)
  • WiFly shield
  • Stackable headers
  • BMP180 temperature/pressure sensor. I got one from eBay (I think!)
  • A load of jumper wires and a wee breadboard (for the BMP180)
  • Soldering iron and lead free solder
  • Some AC/DC albums (optional)

Connecting to SQL Server From Node.js

I’ve been hearing some good things about Node.js recently so I thought I’d give it a go. Not on something easy like a quickie server but on something much more gnarly. Getting it to talk to MSSQL via ODBC.

First things first, you need to install the ODBC/FreeTDS infrastructure and I’ve already blogged about that here.

The Four Levels of Software Testing

I was recently having a blether with a colleague about testing and how we should thrash out a shared understanding of the different types. There are so many ways to test software, all with their own advocates, terminology and fluff that we just had to write down what we meant when we said ‘the software is tested’. The whiteboard is your friend in cases like this.