Wednesday, August 31, 2011

The first enhancement

I decided that this weekends release is just going to address a couple of small bugs.  They were annoying and I’d rather fix them quickly.

On the scorecard window, after doing some more design work I’ve decided to just push ahead with the redesigned scorecard window and put a setting in place to allow users to switch back to the old one.

The new scorecard design will be a better fit for some of the new features I’m planning for the next few months.

It’s funny, working on StrokePlay now seems to be a more relaxed affair than it did prior to the launch.  I guess the removal of all the pre-launch nerves was a bonus.

Tuesday, August 30, 2011

Fascination With Statistics

StrokePlay Pro is all about statistics.  You enter your score data in as much detail as you would like to and it makes sense of the numbers and presents you with various ways to look at your data and spot trends in your golf game that could use some attention.

Today was really the first time I’ve stopped and looked at the various post-release statistics that are accumulating and they’re almost as interesting.

The trial edition is being downloaded already, tracked by a Google Event tied to the download button.

The number of unique visitors to the StrokePlay Pro website is already higher than my regular company website achieved over the course of the last nine months.

The average time on site is over three minutes.

I made some changes to the website this evening to tidy up the meta tags.  I also installed a mod on the support forums to send me an e-mail when someone registers and another update saw the addition of Tapatalk to allow browsing on smartphones.

On the application front, I started looking at the scorecard entry window.  I think that it could be a little daunting for first time users and I’m thinking of introducing a simplified version as a user selectable option.  At the moment the design for the optional scorecard is sitting in a Balsamiq Mockup so that I can play around with it.

I might post the mockup on the support forums and see if anyone has an opinion one way or the other.

Monday, August 29, 2011

What a difference a day makes.

What a great first post-launch day!

I’ve been well and truly humbled by the messages and support from friends and family.

From like’s and re-posts on Facebook to re-tweets on Twitter.

I had planned day 1 as a quiet day, staying away from the PC and not looking at site analytics.  I had a little peek at the analytics but I was more interested in where StrokePlay Pro was being mentioned.

There was the re-tweet on whisky related Twitter feeds thanks to the the celebration glass of the water of life at launch time.

Then there was the repost of the launch entry in Facebook which led to my first registered user on the StrokePlay Pro support forums. 

I simply found myself unable to sit still with all this going on so I base lined V1.0.11 and moved on to the next release.  I have a few small defects to track down and fix and I need to look at the post-day 1 feature list and pick up a couple of smaller items to include.

A first update release towards the end of the week is the plan.

Sunday, August 28, 2011

What does a software release look like?


It looks like a large glass of malt whisky and sounds very much like a long exhale of breath and a satisfied “aaaaahh”.

StrokePlay Pro v1 is now live.

It’s been quite an evening. 

I can’t remember feeling so excited, worried, nervous and focused all at the same time.

I’ll do all of the product announcements and kick off my advertising tasks tomorrow.  Right now I just want to stop, pause and reflect on what it the achievement of a long held ambition.

I’d also like to say a big thank you to my Wife and Son who’s patience have been saintly.  Their willingness for me to disappear off to the study to work late into the evening, almost every evening, and during the day at weekends has played a massive part in getting to this stage.

So, a pause, a sleep then into looking at the small things I noticed in the final version.  

Saturday, August 27, 2011

Irene, Go Away!

When Mother Nature wants to be heard she has a way of making sure everyone is listening.

StrokePlay’s release is still on pause, but a couple of days here or there is nothing when your graphic designer is facing mandatory evacuation because of Hurricane Irene. 

I’m still resisting going near the StrokePlay code.  Instead I’m doing a little more testing and noting any points of interest in  Axosoft OnTime.

Some post launch advertising is getting some much needed attention too.

I need to take a look at my Subversion source control installation.  The connection between the repository and Visual Studio isn’t behaving correctly.

On the “playing around with a game” front I’ve been looking at the Haaf Game Engine.  Looks like it may be a good place to start with my spare time project.

Friday, August 26, 2011

The problem with the global marketplace is…


Or rather, time zones.

StrokePlay sits, waiting on a new graphic.  Meanwhile the designer in New York starts work in the middle of the afternoon and finishes shortly before midnight – my time.

So another day rolls by, the help files improve, the website gets tweaked and I start looking at the feasibility of fixing a couple of minor things in the application.  I then stop thinking about it because it would be madness at this stage.

So my mind has been wandering today.  Some planning for post version 1, some notes about future features.

Then I got completely distracted and thought about looking at another ambition to fill any spare time – writing a computer game.

Not just any game, but the fantastic DropZone from my Commodore 64 days.  I’ve already noted some tweaks and additions to the game I’d like to see.

But, that’s a side project.  A personal one that would never see the world beyond my PC.

It’s funny how the mind wanders.

If anyone out there has some pointers for sources of information on C++ game programming for 2D Scrollers please feel free to forward them on.

Someone switch off the snooze button.

The image licence issue has been resolved but it does mean I need to drop in a new graphic to replace the old one.

For StrokePlay itself it’s only used in one place so it’s a quick alteration and rebuild.

Amending the website, help files and other items will take a few hours though.

It’s a job for tomorrow, mainly because the graphic artist is in New York and I’m 5hrs ahead, at which point the countdown will resume.

All going well I’ll be looking at a Friday evening release.

Wednesday, August 24, 2011

Countdown Paused

What does StrokePlay Pro look like right now?


Unfortunately that’s how it’ll look for the remainder of today too.

A last minute hitch over the licence rights of an image used by StrokePlay means I’m waiting on approval to use the image.

The global nature of the supplier chain these days means that time differences are extending the time taken to resolve the issue.

Lesson here?  Read the very small print in the licence.  My oversight.  But, glad my checklist/review prior to launch caught it.

It looks like it may be an early finish this evening whilst I wait on a couple of e-mail responses.  Failing that I’ll be looking for a replacement image first thing tomorrow.

Tuesday, August 23, 2011

T-Minus 1

The countdown continues.

It still looks like there is a lot to do before the launch and indeed the launch checklist looks very long.

But most of them are actually checks rather than something that needs a task completed before it’s ticked off.

However, I have a feeling tomorrow could be a long day.

Monday, August 22, 2011

T-Minus 2

A busy evening full of pre-launch preparations.

So, given the hour, this is a short update.

Things are looking good.

I’m pushing forwards and aiming for a V1 release at some point on Wednesday.

That’s five days later than planned but bugs will do that to a schedule.  Well, bugs and a developer who really wants to try and ship a bug free V1 product but who now realises that it’s better to ship and then fix those last little imperfections in the first maintenance release.

So, the countdown begins.

Sunday, August 21, 2011

Bug? Squashed!

What a frustrating day!

After finding and correcting a number of unexpected bugs on Friday and Saturday I was in full on prepare to release mode.

I was finalising the help file with Dr.Explain which has proved to be absolutely fantastic.  The help contents that I’d been drafting in Word just took a cut and paste into Dr.Explain and with some setup of theme, header and footers I had the CHM and HTML Files for a great looking help file.

A final run through each of the versions of StrokePlay (Debug, Release and Free Trial) was the start of the problems.  The Debug and Free Trial editions looked good but the Release version appeared to be recording some invalid data which caused the charting SQL queries to misbehave.

In the end it all boiled down to a old SQL statement I’d missed when the final table layouts were made.  This resulted in some score data being reset before insertion which in turn led to the charts getting invalid data.  It took an age to track down because it only happened in the release version – which is full of anti-debug and anti-trace code!

At the end of the day it was a bug.  It’s now an ex-bug which will no longer appear in the release version.

I had extra time during all the wait time between builds too, so I put the support forums in place on the website using phpBB.  An added bonus.

Back into release prep mode now moving forward quickly.

Saturday, August 20, 2011

Gremlins in the sunlight

I ended yesterday with 11 defects in the queue.

The statistics as of right now are Raised: 38, Rejected: 1, Fixed & Closed: 36, Open: 1

One defect remains open but I’ve identified and put in place a partial fix.  It’s not a big enough defect to stop things going live.

So the final testing hurdle awaits me tomorrow. 

The dreaded destructive testing, with no user manual, at the hands of my 12yr old son.

He’ll be the first person to get his hands on the release-ready installations.

This isn’t as odd as it sounds.  He’s a tech savvy, gaming, programming, 12yr old who likes to try his hand at Minecraft mods and is inquisitive enough to throw up some questions I probably hadn’t thought of before.

The lack of documentation is a simple test of how intuitive he finds the interface without any help whatsoever.

I’ll provide him with a list of basic things I’d like him to try and accomplish and then just set him loose.

While he’s working away I’ll be readying everything else for a potential V1 release tomorrow.

Friday, August 19, 2011

The Gremlins Found Water

As they did in the film Gremlins a couple of cute, small bugs found some water and grew into some real nasty critters.  So even though I closed 8 defects today I’m still sitting with 11 in the queue.

First up was what looked like a simple dashboard page not refreshing when scorecard data was amended. That one ended up being a thread synchronisation issue and some chart title handling gone mad.  A Mutex (great word) was the answer to the thread issue and a little code re-ordering fixed the charts.

The second one was a bug in the post-installation start-up.  The table population order was slightly out resulting in a complete failure of the application under certain circumstances.  That defect resulted in the rewrite of a chunk of the post-installation start-up code.

Anyway, they’re fixed and StrokePlay is all the better for it.  The big task first thing tomorrow is to close off the remaining 11 and, hopefully, that will be done without any more Gremlins emerging.

I made good use of the time between builds today though.  I used the waiting time implement a website comment page for people who are uninstalling the trial edition.  I’ll tweak Inno Setup to ask if they’d like to leave a comment before directing them to the web page.

Thursday, August 18, 2011

Testing, Testing, 1…2…3…

It was a day of testing today.  Working through the defects found so far and logging another two.

The two new defects were minor and they were fixed as quickly as they were found.

An additional four were closed, bringing todays total to 6, including two which required some rework in a couple of the SQL queries used in the various charts.

As I type there are 10 open defects.  But the build that is currently compiling should address another one of them.

One bit of fun today was trying to get the web browser control, used to display the raw statistics, to print custom headers and footers. 

I had to dust off some repressed memories of trying this before for a client.  When I did it before the outcome was a custom ActiveX control for IE which gave the client complete control over the printing process (headers, footers, margins, printer setup etc.) using scripting on the HTML page.  That particular solution made use of print templates.

This time I adopted a much simpler approach.  For those interested it just required some extended print information being passed on the controls ExecWB method.

Another day closer to a release.

Wednesday, August 17, 2011

It’s ready! Time to kick the tyres.

It’s official!

I’m out of the build phase for StrokePlay Pro V1.  It’s done.  It’s a lock. It’s complete!

But before any dust could settle I was straight into testing. 

I’ve upgraded my defect and feature tracking from the PC version of axosoft Ontime to the latest online edition – axosoft OnTime11.  First impressions are good.  Easy to use and very responsive.

I ended the day with 13 open defects, 5 fixed and 1 non-defect.  Of the 18 raised today only 4 were actually new – the other 14 were things I’d spotted during the late stages of development but decided to track and check them at the end of the build phase.

I also selected my help authoring tool – Dr.Explain.  Well done to Dennis for replying to an earlier blog post – that comment led to a sale which will go through tomorrow.

The help itself is sitting in draft form within a Word document.  I’ll move that into Dr.Explain tomorrow and complete the help file.  The added bonus with Dr.Explain is that I can quickly produce an HTML version of the help file for inclusion on the website.

On the website front, I decided to add currency conversion to the Buy Now page.  I’ve put some PHP scripting in place to collect real time rate conversions for GBP/USD/EUR so that I can show prices in key currencies. 

I also tidied up the home page as a result of some great comments from Jim at Mosaic Retouching.

Tomorrow brings a full day of testing as I head full steam towards the V1 release.

Tuesday, August 16, 2011

A free lunch? Yes, with a small plate.

Another evening, another step closer to release.

Tonight's focus was all on the free trial data limits.  These need to be large enough for those evaluating StrokePlay Pro to exercise all of the features but restrictive enough for them to want to buy a full licence in order to track an larger, more useful, number of scores for analysis.

Time will tell if I have it right.

I also finished off round one of the anti-trace and anti-debug measures.  These will change in the second release and in every release after that.

One great bit of news was that the guys over at SQLCipher got in touch to say they’d created a pre-built Windows binary which includes the functions for allowing the DLL to be loaded as an extension.  This means my SQLite management tool SQLite Expert Professional can load it and I can now manage my encrypted databases with a great GUI.

Monday, August 15, 2011

Nag, Nag, Nag

Final coding and testing continued this evening but I’m having to think about two items a bit more to make sure I’m not going to annoy prospective and newly paid users too much.

For the prospective user it’s the nag screen.  After 30 days of using the free trial edition, StrokePlay will pop up box reminding them that the trial period has expired and, when dismissed, allow them to continue using the limited trial.  I’m ok with this but the bit I didn’t implement was a timer controlled dismissal of the message box.  Instead, the user can just click “Ok” to dismiss.

For the newly paid user I want them to enter the licence information as soon as possible after purchase, so StrokePlay will pop up and ask them for it as soon as it starts after install.  At this point if they enter the licence information then it’s verified right away and they’re never asked again.  But if they choose not to I’m exiting StrokePlay after warning them that this is what will happen.

The question is, do I continue with that process or allow the new paid user to use the full edition of  StrokePlay for a limited time in an unregistered limbo.  A decision for tomorrow perhaps.

Sunday, August 14, 2011

The dash for the line begins here

Sunday has just disappeared in a haze of PHP fuelled scripting.

The website is done. The only thing remaining is the final screen captures which I’ll take at the end of testing. 

I started, and completed, the shopping cart integration with e-Junkie, which was extremely painless.  It just worked. The online help was great and I hooked up both PayPal and Google Checkout in quick succession.

Shopping cart testing worked well once I’d added the e-Junkie handshake to the PHP licence generator script and before I knew it I’d successfully completed a purchase and registration without any problems.

I also plodded on with the HTML help files which I’ve always disliked doing.  Thankfully I haven’t been near any for years but that hiatus came to an end today.  I looked at them, sighed, and went in search of something to make them easier to work with.

I started with HelpNDoc but since I was tired I gave up pretty quickly when I was looking for a feature it didn’t have. 

The next tool I tried was HelpSmith which didn’t have the desired feature either.  But, I preferred the interface and decided to give it a little more time.

So, this week is all about the home stretch.  Nothing to do but final testing and Inno Setup scripting. 

Almost there!

Saturday, August 13, 2011

Step Away From The Code

I stayed away from coding and testing today in order to concentrate on the StrokePlay Pro website.

The break serves two purposes, one is to allow me to return to the testing with fresh eyes after having stared at it for months.  The second is to build a working website.

I originally bought the website template from TemplateMonster and it was generally fine.  But it was a multi-row/multi-column layout which I’ve now ripped apart and rebuilt to suit my needs. 

It was also html based which I’ve now changed to php in order to make the template more efficient and easier to amend.  Each website page file is now just a few php includes and a main body.

I also picked up a few more images from iStockPhoto to tidy up some layout items.

I’m aiming to finish off the website tomorrow, with e-Junkie integration right at to the top of the todo list.

So, without further delay, here’s todays version of the home page:


Friday, August 12, 2011

Keeping Pirates at Bay

Anti-Debug, Anti-Cracking, Anti-Trace.  Call it what you will, it’s all about protecting users, ideas and income.

StrokePlay Pro exists because I’m a developer who wants to earn his living developing software that people want to use.  To do that I need to be able to charge for a license.

Hackers and pirates, through their illegal actions, have the potential to stop that from happening. 

They also have the potential to harm users PC’s.  By cracking open software and altering it to remove licensing restrictions they’re also free to insert anything they like. Cracked software is a backdoor to your PC and everything on it.

So, what to do?

There would appear to be two schools of thought on this one.  Either spend a lot of time building numerous countermeasures into your software and, perhaps, use a commercial protection product like Themida, or build two versions of your software, a free trial version and a purchased version.  The free trial version is normally limited in some way and has some code removed or altered.

I’m in the latter camp.  StrokePlay Pro will be offered as a free trial version and a purchased version.  The free trial will have some data limits, a nag screen after 30 days of use and will have some minor feature limitations.  By doing this I reduce the need to spend a massive amount of time protecting the software and can spend more time on new and enhanced features for my paid users.  I’ll include targeted countermeasures which will change from release to release.

Once you realise that you can’t keep a determined cracker out you can change focus to making the software a pain in the neck to crack.  You can also rotate countermeasures from release to release meaning the cracker has to rework every single version to keep up with new features.

For those of you out there who are looking at this topic right now here are some sources of information, as a starter, you might want to take a look at:


Security Best Practices for C++ (Microsoft)

Anti-Unpacker Tricks (Peter Ferrie) – Very useful PDF file.

Getting Information from Authenticode Signed Executables (Microsoft KB)

An Anti-Reverse Engineering Guide (Josh Jackson - The Code Project)

Windows Anti-Debug Reference (Nicolas Falliere, Symantec)

The Art of Unpacking (Mark Vincent Yason) – PDF file of an IBM presentation.


Writing Secure Code (Michael Howard/David LeBlanc) – This one should be on everyone’s bookshelf.

Debugging Applications (John Robbins) – Another bookshelf essential.

Rootkits: Subverting the Windows Kernel (Greg Hoglund/Jamie Butler) – Fascinating background reading.

Applied Cryptography (Bruce Schneier) – Again, great background information to have at hand.


Reversing : Secrets of Reverse Engineering (Eldad Eilam)This was recommended to me but I haven’t had a chance to obtain a copy yet.

Thursday, August 11, 2011

A glimpse of the future?

What a hugely productive day today!  I now know what my inbox looks like when it’s filled with new license purchase notification e-mails.

I’ve gathered together a list of all the initial anti-debug and anti-cracking techniques I’ll put in version 1.  They’ll be added to the code tomorrow.

The big item today was the licensing and registration process. 

Yesterday I did the license generation server script.  Today was all about it’s companion – the license verification process.

This needs to be as painless as possible for the user.  I’ve chosen online registration since it gives me much more control over the whole licensing process.  Some people don’t like online registration but I’ll stick with it unless it becomes a big problem.

As for the process, after a purchase is made the user will receive an e-mail containing the license information.  All they have to do is select the entire e-mail body contents and paste it into the registration window:


Once that’s done, simply click “Register” and the online process takes over:


And, once complete:


And that’s it!  The user is now fully registered.

Now, if I could just turn all of those test “New License Purchased” e-mails into genuine sales I’ll be able to afford a celebration!

Wednesday, August 10, 2011

Blowing Out The Cobwebs

This post was supposed to be about me having put the anti-debug and anti-cracking processes into StrokePlay but instead it’s a short post on having to refresh skills before using them.

The first of the main tasks completed today was “Check for Updates” functionality.

Now StrokePlay can call out to a server on the Internet to check for new versions of the application and the course database. 

This took a little longer than I’d hoped but a crash in a dialog exit needed attention.  Turned out to be a simple case of the dialog being closed from the wrong thread.

The second task required the skills refresh.  I haven’t had to use PHP and MySQL for a while so a quick catch-up was needed.

But, by the end of today I had a working license generation script up and running on the server which was pulling reference data from a MySQL database and writing the generated licenses to a table, ready for a verification call from StrokePlay.

Two tasks that ended up being bigger than anticipated but which turned out better for the extra attention.

Tuesday, August 9, 2011

It’s Patently Simple, Use It or Lose It.

An off topic post but the subject of obvious patents does annoy me more than a little and I felt the need to comment on what, to me, is yet another absurd patent battle.

According to The Register, Operating Systems Solutions (OSS) are suing Apple over what, on the face of it, looks like nothing more than saving the machine state to allow fast reboot – aka Hibernation.

The patent in question is over at The US Patent Office.

If you’re a developer, state saving as a means of enabling the quick startup of an application or the quick creation and population of an object is a standard item in the toolbox. 

But is this just another shot across the bows in the on-going Patent War taking place in the smartphone market? The patent would appear to have been originally granted to LG Electronics who, some say, are spoiling for a fight with Apple over Android.

To me this is just another example of an absurdly obvious patent being sat on until it’s useful to the holder.

Is a “Use It or Lose It” clause long overdue? My opinion is that it may well help technology innovation by ridding us of the process where absurd patents are granted and subsequently held, quietly, until there is some potential income to be generated or competitor to pursue.

It’ll be interesting to see how the America Invents Act fares in Congress after the August recess.

Monday, August 8, 2011

That App Is So Yesterday

Todays focus has been on finishing off one or two conditional compilation steps and adding in the code to perform the checking for available updates.

The back end for the update check is a small PHP based web application which does nothing more than send out the current version information for StrokePlay Pro.

Within the application itself, I’ve added code to check the pull the current version information from the application database and to retrieve the latest release version information from the PHP server application across and HTTP connection.

All of the update processing in StrokePlay Pro sits within some conditional compile directives which just completely removes the code from the Free Trial edition.

Testing locally is simple enough since the PHP server application is running on an Apache installation which runs on my Netgear ReadyNAS NV+ (a fantastic device).

Sunday, August 7, 2011

Building for the future

One of StrokePlay’s features is the ability for me to ship a database of predefined courses and to update the information in the course database from time to time.  The user can also create courses and they all reside in the same database.

One of the todays tasks was to put the coding in place to handle database updates during installation of both a new version and an update.  SQLite does make this a fairly trivial task  which only needs the source and target databases to be attached to the same database connection and to run a REPLACE/SELECT statement on each of the tables to be updated.

This was a good approach since it took just 5 SQL statements to update all required databases and the statements don’t expose any of the internal table design.

I also finished off some more conditional compiles, this time around limiting the trial edition to only searching through the maximum scorecard count allowed in the trial and limiting the search timeframe to the previous three months.

I do like the freedom that building a different trial edition gives me from massive amounts of anti-cracking and anti-piracy work.  I’ve devised a plan of changes to the code which will rotate with each released version and allow the techniques to vary and move in every release too.

Saturday, August 6, 2011

Tick, Tick, Tick and Conditional Features.

I’ve put the user side of StrokePlay to one side today and instead concentrated on a mixture of release and administration steps.

The website “holding” page is now live on the actual StrokePlay Pro Website. Previously this linked to a more general page on my company website.

StrokePlay Pro now has a facebook page; the Free Trial build is now included in the daily builds; all binaries now automatically get digitally signed and time-stamped during the build and the initial steps for the automatic Inno Setup installer builds were started.

I also started putting in the conditional compilation steps to customise the feature list between the Free Trial and Full versions of the application.  I took this a little further and put code in place to remove items like menu options rather than just grey them out.  No point in creating work for myself when Free Trial users start to wonder why they can’t use greyed out options and start e-mailing support.

Putting up the facebook page was something I had to think about.  Not because I had doubts about a presence on facebook but because for the first time StrokePlay is open to friends and family to take a peek at.

So if all you facebook friends and family have been wondering what I’ve been up to for the past while, this is it!

Friday, August 5, 2011

What? No Way! Really?

Yes way!  All of the V1 user features in StrokePlay Pro are coded!

When I finished the last raw statistic query earlier today and fired it up it was a little strange to see every function available on the GUI working as designed.  No gaps, no spaces, just all of the functionality.

I have to say it feels very strange!

I have a couple of small things to finish off (a few more conditional compile steps, some hard coding in the trial version) but nothing of any real significance.

There’s also some final testing to wrap up.

After that it’s the release check list to work through.

It’s a bit odd to have the original vision of the application sitting right in front of me – working.

Thursday, August 4, 2011

Spot The Difference

Between the Accuracy and Putting raw statistics:


Give up?

The former is the finished product, the latter is just dummy data Smile

All of the classes and structure for the raw statistics page on the dashboard are finished.  I put a little more work than intended into the classes since they’ll be enhanced in the first post V1 release to add more statistics.  It was easier to make them more easy to expand now rather than later.

The only thing left remaining is to finish off the single query method for two of the four raw stats sections.

The query functions all exist, since they’re used elsewhere to populate the graphs and charts, so it’s just a slot together exercise which should be done tomorrow.

The last V1 feature looks like it’s about to be complete.  Phew!

Wednesday, August 3, 2011

And Then There Was One

One user feature left to code, well half code because it’s half done.

Handicap tracking was finished today.  It’s a little more basic than I intended (thanks USGA & R&A) but it’ll work well until I get StrokePlay’s internal handicap algorithm tested.

Handicap tracking is a two stage process – one small data entry dialog to enter handicap changes:


And the main dashboard page to show the handicap history:


The chart has the usual pop-up tool tip with data point information and any scorecards detailed in the list control can be viewed with a double click. 

Straightforward and simple to use.

The aim for tomorrow is to close off the last half of the last user feature.

Tuesday, August 2, 2011

My Alter Ego

I have another interest which, while highly technology related, is not linked to playing golf or writing software.

Formula 1.

I didn’t make any postings over the weekend from the track due to the lack of any decent data connection at the dust bowl that is the Hungaroring.

It’s not always the most exciting race but this year was an exception.  The rain played a huge factor, causing some strange tyre strategies.

The biggest moment was when the Renault of Nick Heidfeld emerged from the pits literally on fire, proceeded to stop just in front of us and exploded from the sidepod.  The Marshals were extinguishing the fire at the point of explosion and one was seen to limp away.  I understand that he was ok which was great news.  Marshals are the unsung heroes of motor racing.

Anyway, enough non-StrokePlay posting.  Back into development this evening.  But before I finish, here’s a picture of the Renault after the Marshals got the fire under control.