<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Root of the net</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/" />
    <link rel="self" type="application/atom+xml" href="http://www.steveroot.co.uk/atom.xml" />
    <id>tag:www.steveroot.co.uk,2007-10-30://1</id>
    <updated>2010-07-05T19:45:01Z</updated>
    <subtitle>Steve Root&apos;s web site. Covering topics like Family, Business, Internet, Recent Reading and anything else I make some time to type about.</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.31-en</generator>

<entry>
    <title>CRON - multiple cron jobs on one line (running consecutively, not concurrently)</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/07/cron---multiple.html" />
    <id>tag:www.steveroot.co.uk,2010://1.549</id>

    <published>2010-07-05T19:23:21Z</published>
    <updated>2010-07-05T19:45:01Z</updated>

    <summary>This post will (hopefully) remind me in the future how to do something very simple. A crontab is normally running one command on each line. EG: # m h dom mon dow command 01 00 * * * /home/cronscripts/vine-warn-when-large-user-profile 05...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="<![CDATA[WebDev &amp; Code]]>" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>This post will (hopefully) remind me in the future how to do something very simple.</p>

<p>A crontab is normally running one command on each line. EG:</p>

<p># m h  dom mon dow   command<br />
01 00 * * * /home/cronscripts/vine-warn-when-large-user-profile<br />
05 00 * * * /home/cronscripts/vine-get-remote-pc-backup.sh<br />
01 01 * * * /home/cronscripts/vine-samba-users<br />
01 02 * * * /home/cronscripts/vine-database-backups</p>

<p>So the above jobs run at 00:01, then 00:05, then 01:01am then 02:01am.</p>

<p>Instead, I can run these cron tasks one after the other by putting && between each task. EG:</p>

<p># m h  dom mon dow   command<br />
01 00 * * * /home/cronscripts/vine-warn-when-large-user-profile && /home/cronscripts/vine-get-remote-pc-backup.sh &&  /home/cronscripts/vine-samba-users &&  /home/cronscripts/vine-database-backups</p>

<p>So these jobs start running at 00:01am. When  vine-warn-when-large-user-profile finishes, vine-get-remote-pc-backup.sh  starts immediately, and so on.</p>

<p>Why is this useful?</p>

<p>I have several backup scripts for our linux servers.  Each script creates a tar archive of a directory, compresses it, SFTP's it off site, then deletes the tar archive from the server.</p>

<p>If the scrips all run at the same time, the server runs out of disk space.  I need them to run one after the other. I can't effectively guess when to start each one. The backup can't start until after midnight and must be finished by 7am when users are likely to start work again. Some directories can take minutes to archive, compress, send, delete. Others can take 2 or 3 hours.  One server also collects backups from a couple of other places, so that script has to complete before others start too.</p>

<p>Running this scripts concurrently means no useful transfer time is lost and I don't have to guess the time each script will take to run.</p>]]>
        
    </content>
</entry>

<entry>
    <title>cciss-vol-status on Ubuntu didn&apos;t work, it was cciss_vol_status</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/05/cciss-vol-statu.html" />
    <id>tag:www.steveroot.co.uk,2010://1.547</id>

    <published>2010-05-22T12:13:34Z</published>
    <updated>2010-05-22T12:59:14Z</updated>

    <summary>In the hope I find this post next time I&apos;m trying to monitor a SmartArray drive controller, A fresh install of Ubuntu 10.04, installing package cciss-vol-status didn&apos;t seem to work. I couldn&apos;t even find the file on the system using...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="<![CDATA[WebDev &amp; Code]]>" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>In the hope I find this post next time I'm trying to monitor a SmartArray drive controller, A fresh install of Ubuntu 10.04, installing package cciss-vol-status didn't seem to work.  I couldn't even find the file on the system using 'locate'.</p>

<p>For some reason, it installed as cciss_vol_status (using underscores instead of hyphens).</p>]]>
        
    </content>
</entry>

<entry>
    <title>Bad Bot go away!</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/04/bad-bot-go-away.html" />
    <id>tag:www.steveroot.co.uk,2010://1.545</id>

    <published>2010-04-06T08:19:38Z</published>
    <updated>2010-05-22T12:58:18Z</updated>

    <summary>Sigh. Here I am at work on Tuesday morning. List of jobs to do being interrupted by our web server triggering over load alarms. Actually, it&apos;s been doing it for quite a while, but I&apos;ve never sat down to analyse...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Internet" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="<![CDATA[WebDev &amp; Code]]>" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>Sigh.  Here I am at work on Tuesday morning. List of jobs to do being interrupted by our web server triggering over load alarms.  Actually, it's been doing it for quite a while, but I've never sat down to analyse the logs to find what's happening to trigger the alarm (our<a href="http://www.gandi.net"> gandi.net virtual server</a> is more than powerful enough to cope, so fault finding has been low on my to do list).  This morning as I walked to work I saw an overload message arrive in my email.  The sun is up, the sky is blue, it's 8am. It feels a good day to fault find...</p>

<p>It didn't take long to find the problem.  I used grep to pull out todays log entries from the apache log and put them into a temporary file<br />
<blockquote><br />
me@server4:/path_to_logs/rkbb.co.uk$ grep '06/Apr/2010' apache-log > check.txt<br />
</blockquote><br />
The bot causing the problem has a user agent of "Mozilla/5.0 (compatible; Purebot/1.1; +http://www.puritysearch.net/)", going to puritysearch.net I find a 'search engine' that doesn't appear to do anything but display adverts disguised as search results.</p>

<p><br />
So, how to stop this bot. Nice bots read a file called <a href="http://en.wikipedia.org/wiki/Robots_exclusion_standard">robots.txt </a>which tells them where they're allowed to go.  Purebot didn't read the robots.txt so I couldn't excluded it there.</p>

<p>My next thought was to use apache to exclude the user agent.  After an hour or so of trying I gave up with that (it is possible, I just didn't figure it out and took the easy for me approach).  The site is running Coldfusion (actually BlueDragon) so in the Application.cfm I can check the user agent and stop processing requests from Purebot there.</p>

<blockquote>
&lt;cfset useragenttest = find("Purebot",#cgi.http_user_agent#)&gt;

<p>&lt;cfif useragenttest GT 0 &gt;<br />
      &nbsp;  &lt;p&gt;Purebot banned&lt;/p&gt;<br />
      &nbsp;    &lt;cfabort&gt;<br />
&lt;/cfif&gt;<br />
</blockquote></p>

<p>The code isn't my most elegant but it works.  Next time I come across a badbot (or Purebot changes it's name) I'll just updated this piece of code to ignore their requests.</p>]]>
        
    </content>
</entry>

<entry>
    <title>blogging without using a keyboard (using windows built in speech recognition)</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/03/bloging-without.html" />
    <id>tag:www.steveroot.co.uk,2010://1.544</id>

    <published>2010-03-20T18:50:56Z</published>
    <updated>2010-05-22T13:00:02Z</updated>

    <summary>I&apos;ve been looking at buying dragon naturally speaking from an IT supplier for typing on to the computer. It is software I heard of many years ago that converts speech into type as you speak. I had an mail offering...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Root" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="zzz - None of the Above" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p><img alt="speechrecognitionmicrophone.png" src="http://www.steveroot.co.uk/images_for_posts/speechrecognitionmicrophone.png" width="69" height="119" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" />I've been looking at buying dragon naturally speaking from an IT supplier for typing on to the computer.  It is software I heard of many years ago that converts speech into type as you speak.  I had an mail offering it for only £30.00 which is less than I remember.  However I like to test things before I buy them especially when it comes to software.  I searched the Internet but couldn't find a trial version to download.  Just as I was about to give up I discovered a webpage that mentioned windows built in speech recognition.</p>

<p>So I'm sitting at home to blog for the first time ever without typing a word.  I've been through the tutorial and so far I'm finding it very accurate.   In the first paragraph I Can Count Three mistakes, I'm sure that as I continue to use it accuracy will improve over time.</p>

<p>It isn't quite plain sailing, I'm having a little trouble remembering all the commands but that's no different to when I first learned to use a computer.  (quick note, I was brought up with a local dialect where I use the word learnt, but the computer heard learned.  I'm sure there's a blog Post about observations of my local dialect somewhere here).  One thing I am glad of is that my headset microphone has a microphone mute button.  The software does it by saying stop listening to stop listening, but sometimes while I've been thinking of what to say and start speaking it thinks it misheard my silence as a word and asks me to repeat.</p>

<p>As a beginner with speech recognition the other problem I've been having is getting the cursor mixed up with an action.  For example, a moment ago I managed to select a whole section of text inadvertently and then change the format by telling the computer to use a button on the webpage.</p>

<p>I think I'm a long way off using this is a regular way of inputting text.  I just tested my typing speed on the website and got a result of 72 words per minute.  I think my current speaking speed is actually slower than 72 words per minute as I'm waiting for the computer to display each sentence as I've spoken.  Those of my friends who have seen one of my presentations may know that one of my biggest floors (and there are many I know) is speaking too fast.  Maybe I should record all of my presentation through speech recognition as a way of slowing myself down!</p>

<p>Now to see if I can publish this blog post without touching the keyboard ...</p>]]>
        
    </content>
</entry>

<entry>
    <title>Memories of Nan Root</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/02/memories-of-nan-root.html" />
    <id>tag:www.steveroot.co.uk,2010://1.543</id>

    <published>2010-02-24T19:25:49Z</published>
    <updated>2010-02-24T20:06:02Z</updated>

    <summary>Taking Nicola to swimming club tonight we were talking about memories of her Nan and that reminded me of my Nan. Two things immediately sprung to mind, the first was going to Nan&apos;s for lunch. She&apos;d always lay on a...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Family" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Root Memory" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>Taking Nicola to swimming club tonight we were talking about memories of <a href="http://www.steveroot.co.uk/2009/05/goodbye-alicia.html">her Nan</a> and that reminded me of my Nan.  Two things immediately sprung to mind, the first was going to Nan's for lunch. </p>

<p>She'd always lay on a huge spread of food, filling a table that to a 6 year old as as big as I was (so, I imagine, about 1.5m diameter?). It had fresh bloomer bread thick cut and spread with real butter (at home we had margarine so it was always a treat). New potatoes that always tasted unique (I later discovered, it was the salt. Nan always added lots of salt whereas mum didn't, which is why it always tasted so different at Nan's). Fine bone china bowls with pastel colour flower patterns spring to mind, though not in any detail.  Runner beans and peas, fresh from Granddad's flower bed.  Happy days of childhood.</p>

<p><img alt="marsmilkbottle.jpg" src="http://www.steveroot.co.uk/images_for_posts/marsmilkbottle%20%28Custom%29.jpg" width="117" height="200" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" />I then remembered the 'Mars Milk'.  I guess I was staying at Nan and Granddad's for a weekend. We'd gone shopping and I asked if we could buy the 'Mars Milk'. I didn't understand what Nan was trying to tell me at the time, that the Mars chocolate bar was an advert for Mars and the milk was normal milk.  I liked it enough to ask for it again though.  Several years later, and Mars flavoured milk appeared on the supermarket shelves. </p>

<p>I don't claim that any of the above is of interest to anyone but me, but the memories are wonderfully tasty in my mind.</p>]]>
        
    </content>
</entry>

<entry>
    <title>ruby on rails sql_type - A reminder for me</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/02/a-reminde-for-m.html" />
    <id>tag:www.steveroot.co.uk,2010://1.540</id>

    <published>2010-02-04T15:46:45Z</published>
    <updated>2010-02-04T16:32:34Z</updated>

    <summary>I treated myself to a rails training course last weekend (with Well House Consultants, rather good, I&apos;ll write about it if I get around to it). Immediately I start to create my first ruby app and I forget all the...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="<![CDATA[WebDev &amp; Code]]>" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>I treated myself to a rails training course last weekend (with <a href="http://www.wellho.net/course/rpfull.html">Well House Consultants</a>, rather good, I'll write about it if I get around to it).  Immediately I start to create my first ruby app and I forget all the sqltypes I can use in my Model and where to look them up.  As I think I'll be looking them up quite a lot, I've put them here on my blog for my later reference</p>

<p>:primary_key, <br />
:string,<br />
:text,<br />
:integer, <br />
:float,<br />
:decimal,<br />
:datetime,<br />
:timestamp<br />
:time, <br />
:date, <br />
:binary, <br />
:boolean. </p>

<p>Options that I can use in my migration<br />
<strong>I must remember to specify the decimal precision I need!</strong><br />
 :precision [1..63], :scale [0..30]. Otherwise Mysql Default is (10,0). </p>

<p>    * :limit - Requests a maximum column length. This is number of characters for :string and :text columns and number of bytes for :binary and :integer columns.<br />
    * :default - The column's default value. Use nil for NULL.<br />
    * :null - Allows or disallows NULL values in the column. This option could have been named :null_allowed.<br />
    * :precision - Specifies the precision for a :decimal column.<br />
    * :scale - Specifies the scale for a :decimal column.</p>

<p><br />
These came from: <a href="http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html">http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html</a></p>]]>
        
    </content>
</entry>

<entry>
    <title>View a Multi page tiff file in windows</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/01/view-a-multi-pa.html" />
    <id>tag:www.steveroot.co.uk,2010://1.539</id>

    <published>2010-01-28T18:50:35Z</published>
    <updated>2010-01-28T18:52:07Z</updated>

    <summary>I&apos;ve been meaning to write about this for a while. Many people we send images files to don&apos;t know how to view beyond the first page of a multi page tiff file in Windows XP (probably Vista, I haven&apos;t tried)....</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Business" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>I've been meaning to write about this for a while.  Many people we send images files to don't know how to view beyond the first page of a multi page tiff file in Windows XP (probably Vista, I haven't tried).</p>

<p><img alt="viewmultipagetifscreenshot.png" src="http://www.steveroot.co.uk/images_for_posts/viewmultipagetifscreenshot.png" width="423" height="161" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></p>

<p>If you open a multi page tif using 'Windows Picture and Fax viewer' (the default unless another program you've installed has taken over as your preferred tiff viewer) you get an extra little drop down box at the bottom of your screen, that allows you to choose which page you'd like to view.  When you go to print, you're shown a preview of each page and can choose (by tick box) which pages you'd like to print.</p>

<p>Our fax to email scanner creates these multipage tiff's.<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>Kent Challenge Team (1994 promotional video - have I aged much?)</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/01/kent-challenge.html" />
    <id>tag:www.steveroot.co.uk,2010://1.538</id>

    <published>2010-01-14T19:54:22Z</published>
    <updated>2010-01-23T15:55:30Z</updated>

    <summary> An old friend on facebook asked if anyone still had the Kent Challenge Team (KCT) promotional video so Rhonda found our copy and we&apos;ve uploaded it. Happy memories flood back :-)...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Root Memory" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/emya4JPRy_U&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/emya4JPRy_U&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />
An old friend on facebook asked if anyone still had the Kent Challenge Team (KCT) promotional video so Rhonda found our copy and we've uploaded it.  Happy memories flood back :-)</p>]]>
        
    </content>
</entry>

<entry>
    <title>Our Sydney holiday photo (after a little CGI...)</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/01/our-sydney-holi.html" />
    <id>tag:www.steveroot.co.uk,2010://1.535</id>

    <published>2010-01-09T16:33:00Z</published>
    <updated>2010-01-09T16:33:37Z</updated>

    <summary>In June 2004 we went on holiday to Australia. The photos were shared on my web site, crafted hand coded pages in the days before I used movable-type to blog. One day, I may move them into the main blog...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Family" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>In June 2004 we went on holiday to Australia.  The photos were shared on my web site, crafted hand coded pages in the days before I used movable-type to blog.  One day, I may move them into the main blog but for now they still live in their own little folder at <a href="http://www.steveroot.co.uk/australia/">http://www.steveroot.co.uk/australia/</a>.  Amongst the requisite family holiday photos is an aerial photo of Sydney taken from a helicopter flight.</p>

<p><a href="http://www.steveroot.co.uk/assets_c/2010/01/680bound-296.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2010/01/680bound-296.html','popup','width=680,height=425,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2010/01/680bound-thumb-500x312-296.jpg" width="500" height="312" alt="680bound.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a></p>

<p>This is 'Deco by Night', an image created by <a href="http://www.kiefer.nl">visual designer Albert Keifer</a>.  If you look really closely you can see our holiday picture in that image.... no I struggled too. The nice chap emailed a series of images to show me...</p>

<p><a href="http://www.steveroot.co.uk/assets_c/2007/11/P1010105-30.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2007/11/P1010105-30.html','popup','width=1600,height=1200,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2007/11/P1010105-thumb-300x225-30.jpg" width="300" height="225" alt="P1010105.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a></p>

<p>So here's our original holiday photo. The city of Sydney, it's wide blue river, Opera House, distinctive bridge and some of the email Albert sent asking if he could use the image.</p>

<p><em>I am an illustrator, visualiser and I was approached yesterday to enter in this contest. I had the shape lying around and started  working on rendering it from different angles and see how I could build an atmosphere. I was coming to a stage where I felt it needed some nice atmospheric background city to put this monumental shape in its correct feel of 'being very big and aloft'.</em></p>

<p><a href="http://www.steveroot.co.uk/assets_c/2010/01/01-the-beach-282.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2010/01/01-the-beach-282.html','popup','width=1200,height=750,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2010/01/01-the-beach-thumb-300x187-282.jpg" width="300" height="187" alt="01-the-beach.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a></p>

<p><em>So I started a Google Image search on birds eye view and that's how I came across your Sydney image. It immediately struck a chord and I went on to integrate it into the picture. I did not want recogniseable features since this is supposed to be a futuristich 'somewhere' place and a landmark building like the opera house would immediately distract from that and root it back to a well known place. That's why I started to do a quick manipulation (which is also part of what I do for a living) and that's how this image ended up the way it is now.</em></p>

<p><a href="http://www.steveroot.co.uk/assets_c/2010/01/02-city-base-added-285.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2010/01/02-city-base-added-285.html','popup','width=1200,height=750,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2010/01/02-city-base-added-thumb-300x187-285.jpg" width="300" height="187" alt="02-city-base-added.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a></p>

<p>I asked nicely if I could post it on my blog (OK, it's taken almost 2 years for me to post, but I've finally got to it!) so he emailed me some of the interim images to show how the steps used to crate the image.<br />
<strong>Click on the images to see them full size, you'll probably need to do that to see the detail of the changes</strong></p>

<p><a href="http://www.steveroot.co.uk/assets_c/2010/01/03-city-remodeled-287.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2010/01/03-city-remodeled-287.html','popup','width=1200,height=750,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2010/01/03-city-remodeled-thumb-300x187-287.jpg" width="300" height="187" alt="03-city-remodeled.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a><br />
The first image is 'the-beach' which is used for the skyline and low sun.</p>

<p>The second image is 'the-city-base-added', click and see the full size image and you can see how it's been flipped, cropped and laid on top of the first image.</p>

<p><a href="http://www.steveroot.co.uk/assets_c/2010/01/04-main-building-added-290.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2010/01/04-main-building-added-290.html','popup','width=1200,height=750,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2010/01/04-main-building-added-thumb-300x187-290.jpg" width="300" height="187" alt="04-main-building-added.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a><br />
In the third image 'city-remodeled' you can see how Sydney has been transformed into a generic city, losing the landmarks of the harbour bridge and opera house.</p>

<p>Finally, the computer generated image of futuristic chrome petal shapes is the top layer.<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>5 and a bit years of blogging... just</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/01/5-and-a-bit-yea.html" />
    <id>tag:www.steveroot.co.uk,2010://1.534</id>

    <published>2010-01-02T19:54:46Z</published>
    <updated>2010-01-02T20:24:07Z</updated>

    <summary>So I may have been quieter than usual over the summer, but the blog still goes on. What visitors are reading though has changed since last year when this post gave the top 4 posts. Now they are: 1. Useful...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="About the site" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>So I may have been quieter than usual over the summer, but the blog still goes on.  What visitors are reading though has changed since last year when <a href="http://www.steveroot.co.uk/2008/12/4-years-of-blog.html">this post gave the top 4 posts</a>.  Now they are:</p>

<p>1. <a href="http://www.steveroot.co.uk/archives/2005/10/useful_windows.html">Useful Windows Shortcut key to show Desktop</a> is still number - This was written for XP but the shortcut works in Vista too.<br />
2. <a href="http://www.steveroot.co.uk/2007/12/margins-and-mar.html">Margins and Markups</a> - what the difference is and how to calculate them.  <br />
3. <a href="http://www.steveroot.co.uk/2008/10/red-mushroom-wh.html">Red mushroom with white spots</a> - a photo I took while walking<br />
4. <a href="http://www.steveroot.co.uk/2008/01/bbc-iplayer-sti.html">BBC iPlayer and it's built in Kontiki software</a> - though I must make a new entry about this, as the iPlayer has moved on since 2 years ago. We're now watching <a href="http://news.bbc.co.uk/1/hi/8357777.stm">iplayer via our Ninendo Wii</a>!  Nicola used it to watch Gavin and Stacey for the first time to see the kitchen I designed (it's the maple one, in the house set in Essex).<br />
5. <a href="http://www.steveroot.co.uk/2007/11/welcome-to-the.html">Welcome to the Christmas Party season</a> - a review of our 2007 works christmas party.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Happy new year!</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2010/01/happy-new-year-1.html" />
    <id>tag:www.steveroot.co.uk,2010://1.533</id>

    <published>2010-01-02T17:16:49Z</published>
    <updated>2010-01-02T17:26:13Z</updated>

    <summary>Happy new year everyone! It may be apparent I&apos;ve not been typing a lot lately. Well, I have, just not in the blog. Having caught up with work and other real life fun things I&apos;m hoping to post several entries...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="zzz - None of the Above" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>Happy new year everyone!</p>

<p>It may be apparent I've not been typing a lot lately. Well, I have, just not in the blog.  Having caught up with work and other real life fun things I'm hoping to post several entries that are overdue.  Before I do that, some suitable geek humour that had me in fits of laughter (good job I'm the only one in the office).</p>

<p><img src="http://imgs.xkcd.com/comics/sandwich.png" title="Proper User Policy apparently means Simon Says." alt="Sandwich" /><br />
from: <a href="http://xkcd.com/149/">http://xkcd.com/149/</a></p>

<p>(funnier for me perhaps, 'cause sudo refers to the 'root' user.... hey, it's geek humour, it'll mean nothing to 99% of the population so you'll not be perfectly normal not to understand it)</p>]]>
        
    </content>
</entry>

<entry>
    <title>Brother Dave goes on a cycling holiday, we track his position live by GPS</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2009/09/brother-dave-goes-on-a-cycling-holiday-we-track-his-position-live-by-gps.html" />
    <id>tag:www.steveroot.co.uk,2009://1.531</id>

    <published>2009-09-15T13:03:18Z</published>
    <updated>2009-09-15T13:26:01Z</updated>

    <summary> Brother Dave decided to go on a cycling holiday, from Oslo in Norway to Copenhagen in Sweden. His Nokia phone has built in GPS and with a little software from http://www.mapmytracks.com/ and a not inexpensive data contract with O2...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
    <category term="gpstracking" label="GPS tracking" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p><a href="http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-279.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-279.html','popup','width=1294,height=800,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-thumb-300x185-279.jpg" width="300" height="185" alt="live-gps-track-via-internet.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a> Brother Dave decided to go on a cycling holiday, from Oslo in Norway to Copenhagen in Sweden.  His Nokia phone has built in GPS and with a little software from <a href="http://www.mapmytracks.com/">http://www.mapmytracks.com/</a> and a not inexpensive data contract with O2 (mostly needed so we can pester him with work email while he travels) we're able to watch where he cycles in real time.  You too can see him cycle slowly up hills on a scrolling map the wizz down the other side.</p>

<p>To find out where he is now, or where his last section finished, follow this link: <a href="http://www.mapmytracks.com/explore/author/davidjroot/latest">http://www.mapmytracks.com/explore/author/davidjroot/latest </a>, or <a href="http://daveroot.eu">visit his blog</a> for anything else he uploads (he's going to try and geotag his photos.....).</p>

<p>Special thanks to the developers of mapmytracks.com, it wasn't possible to link directly to the latest route yesterday so I sent an email asking for it to be added to the wish list.  Less than 12 hours later and they've added it already!</p>]]>
        
    </content>
</entry>

<entry>
    <title>Brother Dave goes on a cycling holiday, we track his position live by GPS</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2009/09/brother-dave-go.html" />
    <id>tag:www.steveroot.co.uk,2009://1.530</id>

    <published>2009-09-15T13:03:18Z</published>
    <updated>2009-09-15T13:25:15Z</updated>

    <summary> Brother Dave decided to go on a cycling holiday, from Oslo in Norway to Copenhagen in Sweden. His Nokia phone has built in GPS and with a little software from http://www.mapmytracks.com/ and a not inexpensive data contract with O2...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
    <category term="gpstracking" label="GPS tracking" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p><a href="http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-279.html" onclick="window.open('http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-279.html','popup','width=1294,height=800,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.steveroot.co.uk/assets_c/2009/09/live-gps-track-via-internet-thumb-300x185-279.jpg" width="300" height="185" alt="live-gps-track-via-internet.jpg" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;" /></a> Brother Dave decided to go on a cycling holiday, from Oslo in Norway to Copenhagen in Sweden.  His Nokia phone has built in GPS and with a little software from <a href="http://www.mapmytracks.com/">http://www.mapmytracks.com/</a> and a not inexpensive data contract with O2 (mostly needed so we can pester him with work email while he travels) we're able to watch where he cycles in real time.  You too can see him cycle slowly up hills on a scrolling map the wizz down the other side.</p>

<p>To find out where he is now, or where his last section finished, follow this link: <a href="http://www.mapmytracks.com/explore/author/davidjroot/latest">http://www.mapmytracks.com/explore/author/davidjroot/latest </a>, or <a href="http://daveroot.eu">visit his blog</a> for anything else he uploads (he's going to try and geotag his photos.....).</p>

<p>Special thanks to the developers of mapmytracks.com, it wasn't possible to link directly to the latest route yesterday so I sent an email asking for it to be added to the wish list.  Less than 12 hours later and they've added it already!</p>]]>
        
    </content>
</entry>

<entry>
    <title>Gmail default contact for a friend with more than one email address</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2009/09/gmail-default-c.html" />
    <id>tag:www.steveroot.co.uk,2009://1.526</id>

    <published>2009-09-10T14:07:07Z</published>
    <updated>2009-09-10T14:23:33Z</updated>

    <summary>I later read &apos;googlemail defaults to using the first email address of a contact....&apos;</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="Internet" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>This is so I don't forget, it took me a while to not find the answer via google, guess the solution successfully, and then read the solution by chance while looking at something else.</p>

<p>I use googlemail (actually, google apps but let's not get pedantic).  <br />
I have a friend with several email addresses, (work, other, home, other, other).<br />
Recently she asked for emails not to go her work address (unless they're really urgent).</p>

<p>When I use gmail to write an email just to her, it's easy to choose which address it's going too (and I know roughly which address is most appropriate at the time), but I have a contact group set up with her in it and those emails were always going to her work address.  </p>

<p>There was no option when creating the group to choose which of her email addresses should be used by default.  The address being used (work) was also the address that came up first when composing a message and including her specifically.</p>

<p>I guessed that this apparent default email address was the first contact address I'd entered for her and when I checked it was showing on the top of the gmail list of addresses for her contact record. I replaced the top of list email address with the prefered 'other' address, added the work address to the bottom of the contact list.  Created a new email and using the contact group and gmail used the 'other' address' instead of her work address.</p>

<p>I later read 'googlemail defaults to using the first email address of a contact....'</p>]]>
        
    </content>
</entry>

<entry>
    <title>Migrating Coldfusion to Open Bluedragon - form.FIELDNAMES</title>
    <link rel="alternate" type="text/html" href="http://www.steveroot.co.uk/2009/09/migrating-coldf.html" />
    <id>tag:www.steveroot.co.uk,2009://1.525</id>

    <published>2009-09-04T17:21:45Z</published>
    <updated>2009-09-04T17:41:22Z</updated>

    <summary>This is a note for my future self, because something tells me I&apos;ll come across the same problem again.... The old server ran Colfusion MX 6.01, the new server is running Open Bluedragon, the near equivalent to Coldfusion 7 or...</summary>
    <author>
        <name>Steve</name>
        <uri>http://www.steveroot.co.uk</uri>
    </author>
    
        <category term="<![CDATA[WebDev &amp; Code]]>" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.steveroot.co.uk/">
        <![CDATA[<p>This is a note for my future self, because something tells me I'll come across the same problem again....</p>

<p>The old server ran <a href="http://www.adobe.com/products/coldfusion/">Colfusion MX 6.01</a>, the new server is running <a href="http://www.openbluedragon.org/">Open Bluedragon</a>, the near equivalent to Coldfusion 7 or 8. (Colfusion MX6.01 doesn't work properly with Apache 2, or more recent linux operating systems and I couldn't justify the upgrade cost to the latest version of coldfusion.  My next big project will be to rewrite the Roots web site into an open source language though as Open Bluedragon runs coldfusion code and is open source, I might be able to develop rather than re-write from scratch, anyway, enough of that background).  </p>

<p>Things change between program versions and to my horror I found the shopping cart wasn't working yesterday.  The blame lies with me, I didn't properly test and I should have spotted it before the server move.  Hey ho, 3 hours to debug and fix, and the problem was with </p>

<pre>
&lt;cfset this = val(evaluate(listgetat(
   form.FIELDNAMES, listcontains(
      form.FIELDNAMES,"_ID_"))))&gt;
</pre>

<p>The Fieldnames are coming out as all lowercase, and the original code was written to handle the form.FIELDNAMES returning all uppercase.</p>

<p>If i've a bottle of white wine at home, I'll open it and have a glass to celebrate my satisfaction :-)</p>]]>
        
    </content>
</entry>

</feed>
