Greetings, and welcome to my weblog, covering topics ranging from computing to photography; gadgets; gaming; and anything else I think I can make interesting.
For those that don't know me, I am Peter Boughton, a ColdFusion developer, amateur photographer, and a total utter genius.
(For those that do know me, please don't tell anyone the genius bit isn't true.)
If you'd like to contact me, please send an e-mail using a clear subject line to peter:blog.bpsite.net.
On Thursday, the G1 mobile phone was finally released in the UK, and — ignoring the sensible policy of not getting first-generation devices — I ordered mine as soon as the website was available.
I now have my G1 and have written up my first impressions.
As I become more familiar with the Android-based device, I will be updating this entry with more details and photos.
Updates
1-Nov-2008 14:09 first posted
1-Nov-2008 15:30 added photos
Last Updated: 16-Nov-2008 22:35 added more details
read more...
Posted by Peter on 16-November-08 at 22:35 ~ ~ Category: tech
I have released v0.7 of QueryParam Scanner, which introduces a variety of improvements over v0.6.1:
Posted by Peter on 23-September-08 at 19:09 ~ ~ Category: projects , cfml , web-dev , sql
I recently* completed my very first Eclipse Plugin, and I found the whole experience to be very interesting.
*(well about a month ago; took me longer to get writing this than intended)
This blog entry will focus on two main areas - my experience with Eclipse (as opposed to CFEclipse and similar), and the issues I encountered from a development perspective
read more...
Posted by Peter on 22-September-08 at 23:10 ~ ~ Category: projects , cfml
This weekend Taleworlds have finally released v1.003 of Mount & Blade, an excellent game based primarily around mounted combat.
The game has been developed in shareware form for many years, it has a large following of fans and numerous graphical and gameplay mods, and earlier this year it was picked up by publishers Paradox Interactive, through whom it is now available to buy online and in shops.
Anyone who paid for a shareware version is entitiled to this full release at no extra cost.
Set in the mediaeval world of Calradia, Mount & Blade is an open-ended role-playing game which gives you a lot of freedom - there is no set storyline, and you can choose to do pretty much as you please.
read more...
Posted by Peter on 22-September-08 at 18:46 ~ ~ Category: games , misc
The more exploratary of users may have noticed that the Task Manager in Google Chrome allows you to specify which fields you would like to display.
(The menu for this is on the context menu of the background panel, not the main area of the dialog.)
One of the 234 possible options (yes, I did count them) is the intriguing "Goats Teleported" field, which (when enabled) displays a number that increases at an alarmingly rapid rate.

Where are these goats coming from, and where are they being teleported to? Has anyone even noticed their disappearance?
read more...
Posted by Peter on 15-September-08 at 17:29 ~ ~ Category: misc
The long awaited Railo 3.0 is out of Beta and available to all.
There are a lot of exciting new features with Railo 3.0: multimedia video conversion and manipulation, video player with playlisting, task manager, cluster scope, CF8 compatibility, and more.
Also, with Railo 3.0, the Community and Professional versions have been combined - keeping the price of the Community edition (i.e free), but without the previous restrictions this had. (With Railo 3.1 due later this year, Railo will fully become Free Software, under the LGPL2 license.)
For more details, the best place to head is the rebrushed Railo website, which has been updated to provide information on what is new with Railo 3.0.
There will also be a three part series on the Railo blog covering the new features. The first entry in the series is already available.
Posted by Peter on 09-September-08 at 18:08 ~ ~ Category: cfml , web-dev
As we (hopefully) all know, using HTML tables for layout is Bad and Wrong.
Unfortunately, the most common way people avoid using tables is to just replace their table, tr and td tags with divs, divs and more divs.
The div tag is a generic container that should be used as a last resort, if there are no other more suitable options.
Whilst the problem of excess divs is not limited to the conversion of table layouts, it is perhaps most obvious here, as it shows the developer is still stuck in the column+row frame of mind, rather than thinking about what they are actually displaying.
In this blog entry, I show an example of how avoiding this mindset can result in much simpler and cleaner code.
read more...
Posted by Peter on 30-August-08 at 17:32 ~ ~ Category: web-dev , cfml , accessibility
The first pre-release version of the qpScanner Eclipse Plugin is now available.
This is the very first Eclipse plugin I have created. It was an interesting experience, and something that I will be writing up in a separate entry as soon as I can collect my thoughts.
It order to use the plugin, you must be using v0.7 or higher of qpScanner - if you do not yet have this, you can download the latest development version of qpScanner, which contains details of the Update Site to use. If for any reason you cannot use the regular Eclipse Update method, you can directly download the qpScanner Eclipse Plugin instead.
Just to be clear, both v0.7 of QueryParam Scanner and v0.1 of the qpScanner Eclipse Plugin are currently considered development releases, and are being made available so that they can be tested and any bugs that might exist can be found - if you are unwilling to use pre-release software you should wait until the official release.
If you do get the Eclipse Plugin, or even just qpScanner on its own, I welcome any and all feedback you might have - whether to report bugs you have found, request new features you would like, or simply to let me know that works with your local setup.
Please send feedback via email to qpscanner_project
hybridchill.com or alternatively add a comment below.
Related websites:
QueryParam Scanner official website.
QueryParam Scanner project page at RIAForge
Posted by Peter on 25-August-08 at 22:24 ~ ~ Category: cfml , web-dev , projects
The latest development version of qpScanner is now in SVN at RIAForge.
It would be great if people could test it out and let me know of any issues they encounter.
As before, it is all self-contained, so it can be installed and run with minimal effort.
Note: As this is still the development version, you need to use the zip option at the bottom of the RIAForge page, not the "Download Project" link - the button will only give the old version.
When released, v0.7 will be a significant new version, so I want to give a quick discussion of the new features...
read more...
Posted by Peter on 16-August-08 at 23:01 ~ ~ Category: cfml , sql , projects
I've just encountered a very annoying bug with the expandPath function in CF8.
Take the following code:
<cfset MyDir = "."/>
<cfloop index="i" from="1" to="5">
<cfset MyDir = expandPath(MyDir)/>
<cfoutput><br/>#MyDir#</cfoutput>
</cfloop>
Run the code through Railo and you will get exactly the right behaviour, with the current directory output five times:
C:\dev\scratch
C:\dev\scratch
C:\dev\scratch
C:\dev\scratch
C:\dev\scratch
Now go run the same code with CF8 - and this is what you get:
F:\ColdFusion8\wwwroot\scratch
F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch\F:\ColdFusion8\wwwroot\scratch
It simply stacks the current directory onto the front each time. Very frustrating.
In order to get round this, I created a regular expression to pull off the last value of any directory containing more than one colon - this will work for Windows machines, but may need to be changed for Linux or MacOSX machines (if the bug affects these).
<cfif isDefined('Server.ColdFusion.ProductName')
AND Server.ColdFusion.ProductName EQ 'ColdFusion Server'
AND ListLen( MyDir ,':') GT 2>
<cfset MyDir = REreplace( MyDir , "^.*([A-Z]:[^:]+)$" , "\1" )/>
</cfif>
Posted by Peter on 16-August-08 at 16:23 ~ ~ Category: cfml