Writing a Bluetooth-based location-based reminder app

May 25th, 2008

My bad back means that I’ve not spent too much time writing code for the past week or two. Tonight, I’m in the mood to try and hack something together.

I should probably try and do some work on my CurrentCost setup – now that I’ve got the new home server connected to the CurrentCost meter, I could write a script to start collecting data and do something with it.

But that can wait for another night – for tonight, I want to get back to doing something mobile.

One idea that I’ve had kicking around since last month is a location-based reminder app based around people – using Bluetooth as a way to know who is near you.

The idea was to have an application which lets you assign tasks in your Tasks list to Bluetooth device IDs for mobile phones and laptops. Then, when your phone sees that Bluetooth Device, it could remind you about that task.

For example, I could know that I want to talk to Will about a particular project. I can put this in my To Do list, but unless I’m actually looking at my To Do list when Will is around, it’s not very helpful.

But with this app, I set my To Do list to remind me to talk to him about it the next time I am near him – the next time his phone and/or laptop is within Bluetooth range, my mobile can prompt me with an alarm.

Read the rest of this entry »

My new home server – a NSLU-2

May 21st, 2008

I finished putting together my latest gadget this afternoon – a mini home server made from a Linksys NSLU-2 NAS device and a portable USB harddrive.

Why did I want it?

Do I really need an excuse? 🙂

Now I have a full, albeit small, Linux server at home, I’m sure I can think of some fun things to do with it. But as I wrote last week, the catalyst that pushed me to doing this now was wanting something to collect data from my new CurrentCost electricity meter.

It needed to be cheap, small, and low-powered – no point having a server running all the time to monitor my home’s electricity usage if it makes a significant dent in my electricity usage all by itself!

What did I buy?

A NSLU-2 – a network storage link for USB 2.0 disk drives, by Linksys. This is a small NAS device that lets you make a USB harddrive available on a network. The firmware in it comes with enough software to create a network share for any portable USB harddrives or USB flash memory key that you plug in.

It’s a neat little gadget, but what makes it special is that it is very easy to flash the firmware and replace it with a full Linux distro. Plug in your USB harddrive, and you have a Linux server with as much space as you might want.

Oh – and for some reason, people call them “slugs”.

Read the rest of this entry »

Ouch

May 19th, 2008

Disclaimer: This is not a medical post. I’ve not referred to anything to write it, and I only vaguely understand what I’m talking about… if you are looking for medical advice, please look elsewhere.

My twitters for the past few days have mainly been moaning about my back hurting. I injured it last week, and have been out-of-action since.

I’ve been diagnosed today, so thought I’d share the full scale of my pain and woe with the world.

I have an annular tear in my lumbar region.

I’m trying to resist the temptation to google for this (seriously – that way madness lies!) but from what I remember of the doc’s description, one of the discs between the vertebrae in my spine has torn, causing the jelly (?!) inside to leak out. The jelly is what caused the muscles around the disc to inflame and spasm – a big cause of the pain I’ve been having since last week.

Read the rest of this entry »

CurrentCost – first impressions

May 15th, 2008

CurrentCostCurrentCost has been a bit of a buzz going round Hursley for a few weeks now.

I’ve been resisting the temptation to get involved, because I know how obsessive I get about stuff, and I’m a bit busy at the moment to take on another new obsession!

But last week, I weakened. It was all looking a bit too cool, so I figured I had to give it a go.

I’m a few weeks behind the other guys at Hursley, so I’ve not got much to add that hasn’t already been said yet. Still, I have a few readers from outside the IBM group, so thought I’d share links to posts I’ve been following about what other IBMers have been up to, and add my first impressions.

Read the rest of this entry »

XBox Live anyone?

May 5th, 2008

I’ve twittered this already, but for those people not following the inane minutiae of my life, here is another call.

I got an XBox 360 for my birthday (woot!) and am really getting into XBox Live games. If you know me and play on XBox Live, feel free to add me as a friend. My gamertag is dalelane.

And don’t be surprised if I become massively unproductive for the next few weeks…

Flickr video vs YouTube

May 4th, 2008

It’s my birthday today, and one of my presents was a Flickr subscription. How cool is that?! 🙂

There’s lots that I want to play with, but my first experiment with Flickr was to upload the same AVI video file that I uploaded to YouTube last week. I was curious to see the difference in picture quality between the two.

I’ve embedded them both below so you can see for yourself. This isn’t meant to be a representative or scientific test, but as first impressions go, I much prefer Flickr video. The interface feels cleaner, and the video quality is better.

Read the rest of this entry »

Mobile broadband – USB dongle modems

May 1st, 2008

I’ve been playing with a mobile broadband for the past few weeks, with a USB modem dongle courtesy of 3mobilebuzz. In return for a three months free trial – free loan of the hardware, with free (unlimited) data usage – the deal is that I have to post my thoughts about it. So here goes 🙂

Huawei E169 modemThe idea
The EEE PC, and the slew of EEE PC alternatives that have followed it, have started to get more people thinking about mobile computing. It’s now possible (and not too expensive!) to have a fully-fledged personal computer that is so small that you can leave it in the bottom of a bag and have it with you all the time on the off-chance that it might come in useful. And so light that you’ll barely notice.

I love the EEE PC. You can do a surprising amount of work on such a small machine. With the built-in wifi, if I’m at home or in a coffee shop, I can get online and do even more.

But that leaves a lot of places where I can’t get it online.

And that’s what appealed about the idea of mobile broadband dongles. Because for the size and weight of something like a USB memory key in the bottom of my bag, the EEE PC can now be online (pretty much) anywhere.

Plug it in, wait a few seconds, and it’s online. Internet access anywhere, anytime. Proper Internet. That is a very cool thing.

Read the rest of this entry »

Programmatically making an Internet connection in Windows Mobile in C++

April 29th, 2008

Although a lot of people seem to be finding my Twitter widget for Windows Mobile useful, it seems that there are also a few people who noticed that it was hacked together in a few hours overnight!

One of the more noticed issues was the fact that the widget reused the mobile’s existing Internet connection.

It was described in emails such as:

Some times I have to invoke a data session with PIE or another networked app before it will let me send a twit. Anyway to make it start it’s own network session if one doesn’t already exist?

and in tweets such as

ooh i'm liking cetwit. But not you, twittoday

oh and a side note to data apps everywhere: if you want a connection, REQUEST IT YOURSELF. I have better things to do than holding your hand

The issue is that when you use the web services APIs, this is all handled for you. But I rolled my own HTTP POST code using the wininet API. And these low-level calls aren’t so helpful.

It wasn’t a problem for me, because my phone is always connected anyway. But enough people have mentioned it, so I figured it was worth looking into!

If anyone is interested in how you start a connection programmatically in C++, read on.

Read the rest of this entry »