Welcome to Eastleigh

December 26th, 2010

This is a video that my (at the time) five year old, Grace, made last summer.

It was in the school holidays when I was looking for things that would keep her occupied for a couple of days – and I suggested that she might want to do some filming. She decided to make a documentary about the town where we live.

I would have posted this at the time, but it all got a little out of hand and ended up over twenty minutes long – which made it too long for me to upload to YouTube. But today, my YouTube account got approved for posting longer videos, so I thought that (even if five or six months late!) it’d still be worth sharing.

Welcome to Eastleigh

Grace was, unsurprisingly, in charge of everything – acting as presenter, director, narrator, location scout, and all-around bossy boots. My job was to point the camera where I was told in the bits where she wanted to talk. ๐Ÿ™‚

It was all filmed using a normal digital stills camera that happens to let you record video clips. So the quality isn’t great (the microphone in particular doesn’t handle the wind well!).

Read the rest of this entry »

Making YouTube (very slightly) more child-safe with a Firefox extension

November 16th, 2010

Kids stuff on YouTubeOur six year old daughter, Grace, has lost interest in kids TV recently – she’s discovered the joys of YouTube!

She can happily spend a half-hour sat in front of the TV on Firefox (our TV set-up is a Linux-based media centre, so it’s proper Firefox with a keyboard and mouse) clicking from video to video.

I’m fine with this. It’s good: she’s getting more familiar with how to use a web browser, getting used to starting the browser, typing “youtube” into the address bar, using the search box to search for what she wants, using the ‘Back’ button to go back to the search results if it’s not what she wanted, and so on. This is all good stuff, let alone the fact that there is a lot of content on YouTube that is actually ideal for kids.

But…

Well, she’s six. Not every video on YouTube is suitable for her. I’m not just talking about the stuff for over-18s. I don’t even want her to come across stuff with, for example, more swearing and violence – such as stuff that you might be happy to show a 12 year old.

The real solution to this is what we do now – she’s doing this in the sitting room on the TV, while we’re in the room watching stuff with her. I’m not saying I want to give her a laptop, send her up to her room, and say “here’s YouTube – off you go, have fun!”.

Even so, I wanted something to help out a little.

Read the rest of this entry »

You need to ask if you want an Android to vibrate

November 13th, 2010

I posted a few days ago about a new little app I stuck in the Android Market. An error report appeared from the app in the Market last night that I thought was interesting.

The app does some stuff in the background then when it’s finished, it sticks a notification in the top status bar. In my code, I just use the default notification settings – LED flash, vibrate, etc. And on every Android I’ve tested it on, it’s been fine.

But for one user, it caused the app to crash:

Exception class java.lang.SecurityException

Source method Parcel.readException()

java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:200)
at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
at java.lang.Thread.run(Thread.java:1102)
Caused by: java.lang.SecurityException: Requires VIBRATE permission
at android.os.Parcel.readException(Parcel.java:1247)
at android.os.Parcel.readException(Parcel.java:1235)
at android.app.INotificationManager$Stub$Proxy.enqueueNotificationWithTag(INotificationManager.java:368)
at android.app.NotificationManager.notify(NotificationManager.java:110)
at android.app.NotificationManager.notify(NotificationManager.java:90)
at com.dalelane.lovefilm.data.ImageProcessService.publishUpdateNotification(ImageProcessService.java:281)
at com.dalelane.lovefilm.data.ImageProcessService.access$0(ImageProcessService.java:234)
at com.dalelane.lovefilm.data.ImageProcessService$ImageProcesser.doInBackground(ImageProcessService.java:215)
at com.dalelane.lovefilm.data.ImageProcessService$ImageProcesser.doInBackground(ImageProcessService.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:185)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
... 4 more

Read the rest of this entry »

A LOVEFiLM app for Android

November 9th, 2010

4 - LOVEFiLM - your finished photo
A simple Android utility app for a simple idea – adding DVDs to my LOVEFiLM queue while I’m out and about by taking photos of what I want to add.

(If you’ve not heard of LOVEFiLM before, they are an online DVD rental service: you use their website to set up a queue of DVDs you want to watch, they post you some, you watch them and post them back, and they send you some more.)

I love the service, but I never remember to add anything new to my queue. I’ve got a long queue of stuff to watch, but it’s all pretty old – months go by in between me remembering to visit the site.

And most of the time I think “oh, I’d love to watch that” I’m out and about. It could be walking past the Blockbuster Video store, or cinema in town and seeing a movie poster in the window. Or it could be seeing a DVD case in a shop or at a mates house. I think “I should add that to my LOVEFiLM queue when I get home”. And then promptly forget.

8 - LOVEFiLM - main screenSo last week, I started writing a quick Android app to help.

The idea is that whenever I see a movie poster or DVD cover now, I can snap a quick photo of it with my smartphone, then put the phone back in my pocket. Quick, one button press, no typing.

Then in the background, the app will try and work out what DVD I’ve taken a picture of, and then add it to my LOVEFiLM list.

It’s not always super-quick – it can take a minute or two – but, realistically that’s fine. It’s unlikely to make any difference to when LOVEFiLM will send me the DVD if it gets added to my queue now, in ten minutes, or even in a few hours time.

5 - LOVEFiLM - reviewing a problemWorst case scenario, if the app can’t figure out what the picture is, it can prompt me to let me know that it needs some help. The notification will sit in my phone’s status bar until I have some spare time to look at the photo, and manually type in the name of the DVD – which the app will then go and add to my queue.

This is still helpful though – I can trust that the app will somehow add the film to my queue, even if this means prompting me if it needs extra information.

It means I don’t forget to add it, because the app reminds me. And I don’t have to stand around typing in a name while I’m rushing around in town – if I need to do any typing at all, I can do it later when I have some spare time.

I’ve put a walkthrough of screenshots with an explanation of each stage on flickr.

Read the rest of this entry »

GaianDB – my talk at bathcamp 2010

October 30th, 2010

Here are the slides I used for a talk on Gaian DB – a dynamic, distributed, federated database technology that we produced at work and have made available through IBM alphaWorks.

Read the rest of this entry »

Great South Run

October 29th, 2010

It’s safe to say that I’ve been a stereotypical geek where sports are concerned. You know the sort – always picked last for sports at school, and came up with a variety of ways to avoid P.E. lessons wherever possible (helped by a secondary school that let me swap PE classes for additional academic classes).

Last February, a mate suggested that I join him to do the Great South Run – a ten mile run in Portsmouth. My initial reaction was that I could never do that. I’d never run a mile before, let alone ten. And I hadn’t done any running at all since school.

But then… the fact that I’d never done anything like it before also seemed like a good reason to do it. So, I signed up.

Read the rest of this entry »

Why you want code monkeys who tinker in their own time

October 14th, 2010

This post is a modified version (in other words, shameless rip-off!) of an interesting post on seo-chicks.com. It talked about why companies should expect their SEO specialists to moonlight in their own time, and the benefits of this. You should go and read the original article as it’s really good.

But as I read it, I saw a parallel with how big software companies like my own employer should view their developers…

There are many reasons why you should expect your developer to be working on their own projects. Your developer should be doing something besides showing up to work, working on clients (or in house) and going home.

Working on their own projects is essential because it gives them experiences beyond their immediate work and gives them a platform for experimentation. Better that they try and fail on their own side projects than on your enterprise software products or your client’s live systems.

Software development is an art and a craft. It takes skill, knowledge, understanding and learning. Training is sparse once beyond the beginning stages, particularly in recent times where training budgets are getting harder to justify. Practice and experience are good forms of training – finding out the hard way what works and what doesn’t.

A passionate developer, someone who is bitten by the bug and craves to learn more, will go on to do more code development in their free time. That is the code monkey that you want รขโ‚ฌโ€œ someone who has passion and strives to learn more. This is the developer that you should want to find and keep. The professional who will test, push boundaries, experiment and learn more in their free time is valuable and should be kept and nurtured. This developer will bring more to an organisation than you may be able to utilise however they are worth their weight in gold over the long term.

Read the rest of this entry »

Eating in the dark

September 30th, 2010

I couldn't take a photo... so you'll have to make do with this artist's impression

Friday was Amy‘s birthday. I probably shouldn’t share which birthday.

For her birthday, we went to London for the weekend, doing touristy things like the London Eye and shopping stuff like Selfridges and Liberty. For her birthday meal, I thought of trying something a bit different and booked us a table at Dans Le Noir. It’s an unusual restaurant, so I thought it was worth sharing a little about the experience.

I know I tend to ramble, so let me get a short version out of the way: you have to eat in the dark, and it’s pretty intense.

Read the rest of this entry »