Wednesday, 19 November 2014

IoT for Defence

I gave a talk about the Internet of Things for Defence on 18 November 2014. This is the World's biggest and best IoT meetup - here are my slides and some brief notes.

Wednesday, 22 October 2014

Entertainment and the Internet of Things

Why don't people at the cutting edge of Internet of Things developments talk about entertainment?

I have finally put a shape around ideas that have been forming in my mind for many years. These ideas are about the use of technology for entertainment. I don't mean mobile apps or gaming consoles. I mean the whole of entertainment from Opera to Graffiti, Boxing to Birdwatching. By technology I'm particularly interested in the Internet of Things.

Friday, 12 September 2014

Open Office Bullet Point Bug

Open Office is a great free alternative to Word, Powerpoint & Excel. One annoyance is that opening a Word .doc with OpenOffice replaces bullet points with a weird symbol. This Open Office Bullet Point bug is easily fixed...

Tuesday, 9 September 2014

Remote Server Access Without Passwords

How to remotely access a server with ssh without a password and simultaneously limit ssh connections to individual machines.

If you're running your own server for example to host a web server it's essential to be able to log in to the shell remotely to carry out setup or administration tasks. This is usually done by using a 'ssh' connection from your local machine using a username and password which is not the most secure method. Sending passwords over the internet is bad, you may forget the password and if someone in your team leaves you may have to spend time resetting all kinds of passwords.

Thursday, 28 August 2014

XCode 5 Quartz Composer Bug Fix

Apple's XCode 5 has a bug that breaks it's ability to embed a Quartz Composer composition within an application. The post shows how to fix the bug and continue to use Quartz Composer in XCode 5.

XCode is the program provided by Apple for software development for Mac computers and iPhones. It is available free of charge from the Apple App Store and is an incredible piece of software. Apple released XCode 5 in September 2013 together with some bugs.

Quartz Composer is a node-based visual programming language provided as part of XCode and is for processing and rendering graphical data.

Quartz Composer allows you to do some very cool animations easily - so code wrangling doesn't get in the way of your creativity. Embedding a Quartz Composer Composition in an XCode App wraps it in functionality that can grab data from the internet and use it as content within the animation. In my case I built a tool to search, moderate and creatively display tweets.

Monday, 18 August 2014

Fractal Systems from Louis Khan's Architecture

The Design Museum in London hosts the awesome Design of the Year exhibition which I encourage anyone to visit. From July to October 2014 they also showed a collection of architect Louis Kahn's work. One idea from Kahn really stuck in my mind - The Plan of a City is Like the Plan of a Home. It got me thinking about Fractal Systems Architectures.

Friday, 15 August 2014

Mac Printer Drivers for Old Printers

I have a Canon i560 printer but Apple's Mac Operating System no longer supports it. Canon do not have a driver for their old i560 printer for the new Mac OS. Gutenprint  (formerly known as gimp-print) is the answer to this printer problem.

Monday, 11 August 2014

Problems Installing Google Chrome on Mac

I just got a new Macbook Pro with OSX 10.9.4 Mavericks and could not install Google Chrome. The download installer link always hung and would go no further. The answer to this problem is...

Wednesday, 9 July 2014

My NATO Workshop

I have been organising a NATO workshop entitled 'Cross-Domain Integrated System Health Management Capability' that will take place on 16th and 17th October in Brussels. We have just finalised our programme and enrolment has just been opened on NATO's public website. It is tremendously exciting to see the official announcement and the awesome set of papers and speakers.

Wednesday, 4 June 2014

Android Hello World App

App Inventor for Android is an open-source web application originally provided by Google, and now maintained by the Massachusetts Institute of Technology (MIT). This post is a step-by-step guide to creating a 'Hello World' app with App Inventor.
App Inventor allows newcomers to computer programming to create software applications for the Android operating system (OS). It uses a graphical interface, very similar to Scratch and the StarLogo TNG user interface, which allows users to drag-and-drop visual objects to create an application that can run on Android devices. In creating App Inventor, Google drew upon significant prior research in educational computing, as well as work done within Google on online development environments.
This step-by-step guide walks you through setting up App Inventor, explores the development environment and gets your app running on any Android device. This is the first of a series of posts introducing key App Inventor features.

Thursday, 29 May 2014

Finding the perfect workspace

When you are self-employed, where you choose to work is very important. Social engagement relieves some of the stresses of work, networking can open unexpected doors. I have tried working at home and hot desking in London's Silicon Roundabout. Since moving in to Iliffe Yard, South London I really feel I've found my perfect workspace.
Pullens Yards Open Studios

Thursday, 8 May 2014

Install node.js on Raspberry Pi

I decided to run a version of a node.js web app I'm developing on a Raspberry Pi. This post describes how to install node.js on a Raspberry Pi. It also services as one way to get node.js up and running on any Linux box.

Tuesday, 29 April 2014

When Testing Goes Wrong

This is a reminder to self and warning to others to make sure your testing environment is as similar as possible to the real environment as possible. This doesn't just go for computing either...

Friday, 25 April 2014

Build a node.js bootstrap site in 30 minutes

Bootstrap is 'The most popular front-end framework for developing responsive, mobile first projects on the web'. In English this means it is a pile of pre-defined cool aesthetics to apply to your webpage that automatically adjust for viewing on different screen sizes to always look good.

This post shows how to build a simple website using a node.js + express and play around with some of the bootstrap styles and layouts all in half an hour.

Wednesday, 2 April 2014

Add Existing Project to Github

I often start work on a project on my own but end up having to work with another developer as the project grows. I find Git to be the best way to share and control code and use Github or Bitbucket for central repositories. This post explains how to add Git control to a local project and create a central repository for easy sharing.

Thursday, 27 February 2014

Self-employed and living the dream

Being self-employed is a roller coaster full of dizzying highs and anxious lows. I have find it essential to record the highs as a resource to battle the lows. After 2 years of self-employment it seems to be paying off and I'm a little more relaxed when I hit a slow period or suffer a setback.

This is a post about the previous 24 hours that have been one of the many highs that remind me that being self-employed is my way of 'Living The Dream'.

Wednesday, 19 February 2014

Raspberry Pi Interface Board: Part 1

Through the meetup I organise, RaspberryPint, I received a Raspberry Pi Interface board and an I2C Port Expander Kit from Quick2Wire.  These kits are self-assembly and enable lots of cool possibilities for control of the real world and protect the Raspberry Pi in case of wrong connections which could otherwise burn out your Pi - eek.

I have written a series of blog posts about assembling and using these Quick2Wire kits.

Part 1: Assembling Quick2Wire's Raspberry Pi Interface Board
Part 2: Assembling Quick2Wire's I2C Port Expander Kit
Part 3: My first project with my expanded Pi (yet to be written)

Raspberry Pi Interface Board: Part 2

Through the meetup I organise, RaspberryPint, I received a Raspberry Pi Interface Board and an I2C Port Expander Kit from Quick2Wire.  These kits are self-assembly and enable lots of cool possibilities for control of the real world and protect the Raspberry Pi in case of wrong connections which could otherwise burn out your Pi - eek.

I have written a series of blog posts about assembling and using these Quick2Wire kits. This is Part 2: Quick2Wire I2C Port Expander Kit assembly

Part 1: Assembling Quick2Wire's Raspberry Pi Interface Board
Part 2: Assembling Quick2Wire's I2C Port Expander Kit
Part 3: My first project with my expanded Pi (yet to be written)

Thursday, 6 February 2014

Renaming multiple files

Have you got a folder full of files that you want to rename in the same way? If you are using Linux or Mac you can do it with one line of commands.

Saturday, 25 January 2014

Raspberry Pi 6 Operating Systems

Like any computer a Raspberry Pi requires an operating system - software that allows you to do computery stuff with the hardware. Phones, laptops and even some washing machines have operating systems.  Windows is an operating system and so is Android, Mac OSX, Linux - there are hundreds of different operating systems out there.

This post describes how to install 6 different operating systems for your Raspberry Pi.

The Raspberry Pi can use a number of the operating systems available - all for free. You just need to download one and write it to an SD Card to plug in to the RPi. The SD Card is much like a hard-disk on a computer, just like Windows is installed on a laptop's hard-drive, Raspberry Pi Operating systems must be installed on the SD Card.

Tuesday, 7 January 2014

CentOS 6.5 Install Problem

I have recently installed CentOS 6.5 on a couple of computers, once without any problems and once with a fatal hang during install.  With both installs I chose to overwrite any existing partitions and use the whole hard-drive.

The problem during the failed install happened as the new partitions were being created. An error window including 'Unable to read group information from repositories' had a Retry button that did nothing. Google was no help (other than to say it might be a DVD read problem) but with some persistence I found a straight-forward solution.

If you get this error, power off the computer then start the installation process again. This time choose to overwrite an existing installation and CentOS will install without this problem recurring.