Piri Piri Stir-Fry Veg Beef

Source: Weightwatchers “Spicy and speedy” (p5), Takes: 15 mins, Rating: 6/10

piripiristirfryvegbeef This is quick to make because you use a ready prepared stir-fry veg pack and quorn pieces are quicker to cook that real beef. The chilli is the important ingredient, without them it would be really bland. I prefer it with noodles rather than rice. Excellent weight loss food.

Ratatouille Pie

Source: Weightwatchers”Delicious” (p157), Takes: 30 mins to prepare and 40 mins to cook, Rating: 7/10

ratatouillepie My mum grows her own marrows and cougettes and so used to make Ratatouille all the time as an extra vegetable dish as part of a Sunday roast. So having it as the complete meal felt slightly under-whelming but it’s actually pretty good.

The pasty on the top helps turn it into a complete meal but I did find I had to have a few slices of bread with it to make it more of a meal.

Lentil and Chickpea Casserole

Source: Weightwatchers Cook! (p120), Takes: 30 mins, Rating: 6/10

2009_01_10_ww_lentilandchickpeacasserole Classic vegetarian grub – boring but healthy. Lentils and Spinach are a good source of iron.

Moorish Tagine

Source: Weightwatchers Spicy and Speedy (p21), Takes: 30mins, Rating: 9/10, Nationality: Moroccan.

moorishtagine
A very sweet tasting dish with bags of flavour and fairly large portions that are quite filling. I particularly like the the crunchy green beans in contrast to the soft potato. Highly recommended (and I love how the name “Moorish Tagine” rolls off the tongue).

How to plot dates in Google Charts API

The Google Charts API is great but it can’t handle date-based data. Lets say you want to plot some values over a timespan, how do you do it? One way is to sample the data at regular time intervals and plot it as normal. But if the timestamps you want to plot are not regular, the trick is to convert each date into a day offset and plot the offset whilst still labelling the axis with the date text.

This is an example of plotting date-based data on the X-axis:

In, PHP you set the first date as 0 and then work out the day difference for each subsequent date. At the same time you need to store the text label for that date.



 $data):
           if ($firstDate == "")
              $firstDate = strtotime($date);

           $dayDiff = round((strtotime($date)-$firstDate) / (60 * 60 * 24));

           if ($dayDiff > $maxDay)
              $maxDay = $dayDiff;

           $googleChartDataX .= $dayDiff . ",";
           $googleChartDataY .= $data. ",";
           $googleChartLabsX .= "|". date("d/M/y",strtotime($date));
   endforeach;

   $axisScale    = "&chds=0,$maxDay,".min($dataSet).",".max($dataSet);
   $axisLabels   = "&chxt=x,y,x,y&chxl=0:{$googleChartLabsX}|1:|".min($dataSet)."|".((min($dataSet)+max($dataSet))/2)."|".max($dataSet)."|2:||Time scale||3:||Data values|";
   // Display a red line with a black dot at each point
   $dataLabels   = "&chm=D,FF0000,0,-1,1|o,000000,0,-1,4";
   $dataPoints   = "&chd=t:".substr($googleChartDataX,0,-1)."|".substr($googleChartDataY,0,-1);

   echo "";
?>


I created a small WordPress plugin that uses the above code to graph custom field data over time.

Home made Cushion

2009_01_11_kixcushion Kix made a cushion from material left over from the curtains. I never realised how complex sewing machines are until now.

Gears of War 2

XBox360,3rdPS,7/10December 2008

gears2 I played the game in co-operative mode with Kix – we did have fun but the verdict is: Not even as good as Halo 1.

The best new feature of the game was “Crawl Mode” – When you “die”, you don’t die you hit the ground and get a few seconds to crawl over to your buddy who can heal you. It leads to great “help help, I’m down” shouting where your partner has to stop and help. It’s also good that the enemy does the same so you can kill someone and watch them crawl for help and either sadistically shoot them again or watch another enemy run over and try and help.

gears2 headshot
Of course, this doesn’t happen if you kill them with a head shot – Head shots result in a head explosion and a fountain of blood globules from the void in the neck. This is as gruesome as I’ve ever seen in a game – hence the “18” rating.

I also found the cover system quite interesting – I liked how it was a bit truer to life but found it meant I was always camped out behind a wall peering out except to re-load which slowed down the action a little. The story was useless, the vehicle levels were generally terrible, the grenades are pretty boring and the bosses were all frustrating – Especially the lake monster. The last boss was not frustrating – he was the easiest boss EVER. He seemed to die in one shot.

Creamy Celery Soup

Source: Weightwatchers Cook! (p10), Takes: 10 mins to prepare + 20 mins to cook, Rating: 7/10

2009_01_10_ww_celerysoup Artists have their golden ratio, physicists have their theory of everything and us dieters have our zero point meals. What I like about this soup is that it tastes like it has cream in it but it doesn’t (it’s zero points so it can’t).

Geek Elements in our house

Our house is sprinkled with little geeky elements:

Subtle: Mum made me this penguin apron from scratchpenguinpic
Not so subtle:

(If you can spot 5 geeky things in this photo, you yourself are a geek…)

5geekthings
VERY subtle:

(hint: Gnome Logo, “Perl”)

cypherwithgnomebrush
Not so subtle:

(The doormat says “welcome” in ASCII Binary. The laptop is running Ubuntu Linux with Compiz snow flakes to add a Christmasy feel.)

binarydoormatlaptopcompizsnow

Neuros OSD (Christmas present from Grandpa)

neurososd This tiny box does two important jobs. Firstly it records any video source (as mp4 files) and secondly, it acts as a video jukebox (i.e. connects to the TV and can play video stored on a PC on the network). It’s a pretty useful gadget!

I’ve been ripping old VHS videos and archiving old camcorder cassette tapes to mp4 and building up a digital library. The Neuros OSD can stream from our Samba share. The video quality isn’t quite as high as hoped, it’s a bit dark but it’s really nice not to have to go through the hassle of copying video onto a USB stick to play it on our XBox 360.

For reference, to make a DVD in Linux (Ubuntu 8.10) out of the ripped mp4 files, first we chop the mp4 files into small relevant chunks (strip out blank noise / adverts / etc). You have to know the start time and end time in seconds of the section you want to chop out:

sudo apt-get install gpac
MP4Box -splitx <startTimeOfSectionYouWantInSeconds>:<endTimeInSeconds> inputFile.mp4
MP4Box -hint outputFile.mp4

The above commands leave the original untouched but creates a new file with the snippet you wanted. In takes about 10 minutes to chop out a 45 minute video. Once we have a bunch of snippets, we then use DeVeDe to compile the DVD using mp4 files as the “tracks”.

Don’t Make Me Think (Steve Krung)

Web Usability, 9/10 – November 2008

It’s strange how much you can learn when common sense concepts are explicitly pointed out. This book is short and easy to read because it uses very simple language but it taught me (a new web developer) a lot.

My favourite points:

  1. Steve Krung’s Law of Usability – User’s shouldn’t have little thought bubbles poping up when looking at your site. For example, clickable things should look clickable, things should be worded as users would expect (e.g. “Search” rather than “Find”).
  2. Web users Scan, Satisfice (try something and click back if not good and try again) and muddle though (don’t stop to think to make the optimal choice).Therefore, pages should be designed as bill boards and be able to be understood while passing at 70mph (i.e. built for scanning not reading).
  3. Web users should be able to see exactly what your page does (i.e. no playing Animal, Vegetable, or mineral?) – They like mindless choices.
  4. Keep text short – half the number of words, then do it again.
  5. For a page, this is the trunk test: Hold it at arms length and squint at it and as quickly as possible, find 1) The Site ID, 2) The Page Name, 3) Sections and sub-sections, 4) Local Navigation, 5) “You are here” indicator, 6) Search.
  6. After a few weeks on a site you can’t see it from a average users view anymore. So get someone (friend, family or neighbour) to sit and try to use your site and see where they get confused.

Finished the Dining room floor

In my last week before starting my new job we laid our dining room wood floor:

Before:
Our horrid original carpet

Our horrid original carpet

After:
Our new oak floor

Our new oak floor (+ French Door and painted walls)

It took 6 days, £600 and a lot of hammering and sawing. It’s a bit creaky and the room now has a echo but I like it much better than before. I just hope it doesn’t buckle when it comes to summer because there’s a few places where we don’t have a 1.6mm expansion gap.

Squeezebox Boom

Squeezebox Boom on our wardrobe I grew to hate our bedroom Hi-Fi because it was so bright at night and also sometimes made an annoying buzz and have wanted to replace it for while. I used Ebay to sell the Legatto II for £190 and buy the Squeezebox Boom for £170 as a replacement.

The Boom doesn’t have as big a screen as the Squeezebox 3 but the screen automatically dims itself at night which is REALLY good for a bedroom. I’ve been waiting for integrated speakers in the Squeezebox for years, they sound good but the Boom does look a bit small compared to a Hi-Fi, it’s best compared to a radio alarm clock.

Animal Ass Coat Hooks

A photo of our cat with a hair brush with the Gnome Logo on it
Did I chop Cypher in half and mount her better end on the wall while Kix was out?
No, I put up some unusual coat hooks:
A photo of our cat with a hair brush with the Gnome Logo on it