Defining Dinghy Classes

Now that we are starting to use computers routinely to manage race information it is a good time to improve things and define a standard that different software applications can share

A Proposed Standard: Boat Timer Standard Class Definitions

Sailors usually know the difference between a Laser Radial and a standard Laser and that the two boats go at different speeds. Trouble is, computers are not as smart as people. Now that we are starting to use computers to routinely manage race information it is a good time to improve things and define a standard that different software applications can share.

This means that there is always an easy way to be sure of the corrected time calculation for that class and what boat specification was used in a race

In writing the Boat Timer app I had to define an “internal” standard for an ID so that the app could accept race entries using a common name, such as “Laser Radial” and refer to that class internally by the ID so that even if the name changed (it can happen – the Laser 2000 is now an RS 2000 for example) it would carry on working. This means that there is always an easy way to be sure of the corrected time calculation for that class and what boat specification was used in a race.

I decided I would assign an alphanumeric ID code (so no spaces or punctuation) that was limited to eight characters. A Laser Radial became “LsRadial” whereas a standard Laser was still just “Laser” and a Laser 4.7 was “Laser47”. I tried to pick an ID that was still easy to identify, so the Laser Pico is just “Pico” and the aforementioned Laser 2000 is “2000”.

To link the ID back to the names we are familiar with, the standard includes a class, subclass, name and shortname. For the Laser Radial the class is “Laser” and the Subclass and shortname are “Radial” and the name is “Laser Radial”. The shortname is better than name when displaying a table of race results so the column title for the class is not too wide. You may not use all five different parts of the standard – the name and shortname are the most useful when displaying information – but they allow the standard to be flexible and used in a number of different ways.

So the Boat Timer standard class definition for the Laser Radial is:

ID: LsRadial
Class: Laser
Subclass: Radial
Name: Laser Radial
Shortname: Radial

the Laser is:

ID: Laser
Class: Laser
Subclass: <– intentionally blank!
Name: Laser
Shortname: Laser

and for a Devoti D-Zero (hopefully a good example) it is:

ID: DZero
Class: Devoti D-Zero
Subclass: <– intentionally blank!
Name: Devoti D-Zero
Shortname: D-Zero

You might wonder the D-Zero and D-One are not treated like the Laser Radial and have a class of “Devoti” and subclass of “D-Zero” or “D-One”. There is a reason for this: the Devoti D-Zero is not the same boat as the Devoti D-One, so one is not a variation of the other. But the Laser 4.7, Radial and standard Laser are the same boat with three different rigs, just like the RS Aero 5, 7 and 9.

Notice that the “-” has been dropped from the ID of the D-Zero but not from the shortname. The shortname is limited to eight characters like the ID, but it can include characters like “-” and “.” that the class normally use to describe the boat. The same is true for the 2.4mR which has an ID of 24mR but a shortname of 2.4mR.

Just an aside – there are two different sizes of rig for the D-Zero, a 6.9 and an 8.1. But the RYA PY tables only list a single entry for the D-Zero. I must get to the bottom of that one. I guess it just shows that having a standard for classes is useful, we will need a DZero81 in the list in the future (if the RYA are referring to the 6.9 rig?).

To make sure the Boat Timer standard list of classes is available to everyone just by using a browser, the Boat Timer server now has a way to easily get the information in two different formats

To make sure the Boat Timer standard list of classes is available to everyone just by using a browser, the Boat Timer server now has a way to easily get the information in two different formats. To get it in JSON format, which is a format commonly used for data exchange between web servers the address is:

For the CSV format used by many desktop programs like HAL Results and Sailwave the address is:

If you see any mistakes or omissions, please email me at ian.cherrill here at so I can correct the list. There are a number of rare or older classes not on the list, so if you use one of those for racing I will be happy to add it.

Boat Timer – where do I start?

What does it do?

Boat Timer exists to make timing a lap or finish easier in a sailing race. Writing down times on paper as several boats finish near each other is difficult, but in the app you just press a “Finish” button.

How do I run it?

Boat Timer runs in your browser, so you just go to

There are options in the app to install it so you have an icon on your desktop, but you do not have to use these for Boat Timer to work.

There is no internet or phone signal – can I still use it?

Yes. You need the internet to open Boat Timer the first time, but after that it can be used without the internet.

Can it run on my phone?

Not really. It is possible on some phones, but the screens just aren’t big enough to record the boats.

What about a tablet?

Yes. The touchscreen makes it a quick way to record finishes.

A word of warning – Apple devices such as the iPad can be used, but they are not as good a choice as an Android tablet for some technical reasons. In particular, the export and backup options do not work on an iPad. However the timing or a race and viewing results do work correctly.

If you have an Android tablet you can use either the Chrome browser or the Android app for Boat Timer.

What sort of laptop can I use?

Just about all of them. Ideally you should install the Chrome web browser (even on a Macbook). But a variety of systems should work, including Windows 7 & 10, Apple Macbooks, Chromebooks and various types of Linux. An up-to-date version of the Chrome browser is the best way to get a good Boat Timer set-up.

I have more than one start in my club races. Will Boat Timer cope?

Yes. In the “Race” page you can add as many starts as you like. You get results for each start.

Does it do results of handicap races?

Yes. You set each start in a race to use a rating system like Portsmouth Yardstick. This will be used automatically to produce a results table at the end of the race.

Does it upload results to the internet?

Your club can sign up to Boat Timer “Cloud Services” in order to sync information with the internet. This gives your sailors online entries and results on the web as soon as the race is over. The Cloud Results Service calculates race results on handicap (for races using a rating system) and gives you a series or event table, based on your discard and scoring choices.

Clubs can get online race entries and instant race results using Cloud Services for a small monthly fee.

Is Boat Timer free?

Yes. You can use it to time races free of charge – no registration required. The app produces results at the end of the race (including corrected times if you use a rating system) which can be printed off or exported to a CSV file.

How can I print the results table?

There is an “export” option in the results for the HTML format (a web page). If you export the results to that format you can open the file in your browser and print the page. As it is an HTML file on your computer you do not need the internet to see it.

Can I export the results to Sailwave?

Yes. There is an export to CSV format option in the results. You can use that CSV file to transfer results to another scoring system like Sailwave.

The first blog post: what’s the problem?

if you love the sport of sailing you already know the feeling of freedom that helming your own dinghy around a lake or harbour gives you. There’s no path you must follow and no engine to start, you decide where to go and the wind and water is the way you move along. If you were lucky enough to sail as a child you won’t have forgotten the feeling that you finally get to decide where to go and what to do.

I know some people think of sailing as an expensive, even elitist, sport but I don’t believe that. I grew up sailing Mirror dinghies which were designed by a DIY television celebrity of the day, Barry Bucknall, and a top boat designer, Jack Holt. The 60s saw the start of a craze for dinghy sailing and racing in the UK that gave many people their first taste of sailing and led to an extraordinary series of performances at the Olympics from UK sailors such as Rodney Pattison, the super-fit Royal Navy sailor of the late 60s and early 70s to the modern-day medallists Iain Percy & Andrew “Bart” Simpson, Ian Walker, Ben Ainslie, Shirley Robertson, Sarah Ayton, Sarah Webb, Pippa Wilson, Hannah Mills, Saskia Clark and Paul Goodison, to name a few.

Lately the cost of sailing seems to have risen and a lack of spare time plus competing activities seems to have led to a drop in the number of people wanting to sail dinghies. That has to change: sailing is such a unique experience and gets adults and children away from the pressures of modern life in a way that very few other sports can.

So what is the point of this website?

Rotor-Rig is a name I gave to a number of projects to try to help dinghy sailing at the “grass roots” level – a really bad term for a water sport I know, but I hear it a lot. Sailing’s grass roots are the local clubs that give everyone a first opportunity to learn dinghy sailing and racing in a safe environment. The first project is “Boat Timer” – an app to make timing races and recording the results quicker and easier, hopefully meaning that sailors see their results quicker and fewer volunteers are needed to run a race. You can get the app for your laptop at as well as an Android version in the Google Play Store. There’s also an app called Rooster Signals that might help with sound signals for training races.

There’s more to come though. In Covid lockdown I started to work on Jetty Map, an app not only to map the location of sailing clubs (that’s already been done by the RYA, among others) but also to map the club buildings, start and finishes lines and racing marks and – if they have standard courses – the courses they use. Almost every club website has a map of their location, but adding information relevant to club racing makes a club easier to understand for those new to it. I haven’t finished Jetty Map yet, but you can see an example of the mapping of racing marks in this map of Chichester Harbour clubs.

I write software for a living, so these projects are familiar territory for me. But there are plenty of other problems to solve. I am not the only one concerned about the number of unused boats in most sailing club boat parks. They are cheap to buy secondhand, but avoided for racing by most sailors for a number of reasons. Yet we have a surprisingly large number of new classes of boats aimed at racing sailors for – what seem to me at least – large sums of money. I bought my old RS200 for £2,000 a number of years ago but if I want a new one it is going to cost me around £12,000. I think we have to remember that this sort of money for a sport you do one day a week is beyond a lot of people. I don’t have all the answers to this, but I am kicking some ideas around for a new class of dinghy called the Frensi. More on that in another blog post.

Boat Timer: rating number updates for 2020

Each year the RYA publish the new Portsmouth Yardstick (PY) numbers around this time (March). The new table has arrived and you can see it here. Boat Timer keeps a table of these rating numbers and also has an easy way for you to change the numbers for your club (each club can adjust the ratings to suit their racing) and add boats not on the table. You can even add a new rating system.

The Portsmouth Yardstick is not the only system, other countries such as the USA have their own, though many are based on PY numbers. Another popular system in the UK is “Great Lakes” which is a variation of the PY based on the Great Lakes winter series racing and Boat Timer includes the Great Lakes numbers for many classes. You can see more details about it here.

Boat Timer: Backup option plus revised CSV columns

Boat Timer now has a backup option. This is a significant addition as it allows data to be saved and also moved to another computer. Under Options – Backup are “Export” which saves all Boat Timer information to a single file and “Import” to read an exported file back in.

“Import” should be used carefully: it deletes all Boat Timer databases and recreates them from the file, so anything done in the app after the export will be lost.

In the CSV file created from the Boat Timer results are two new columns: “Status” and “Actual”. Actual simply records the finish time as would be recorded on a clock. Mark at Rooster suggested this would help when using programs such as HAL Race Results. The Status column records codes such as DSQ, OCS, RTD for boats that do not finish. These codes previously appeared in the Elapsed column which made it difficult to import them to another program.

Finally Boat Timer now displays the version number of the app so it is clear what version you are using – it appears just under the black header when you open the Options page. The new version is 20071 – the number is based on the day of the year, in this case the 71st day of 2020.