This weekend there were failures for the interclub challenge hosted by Tassie MINI-Z and involved the Brisbane Mini-Z Club, and Adelaide MINI-Z Club. So before I go any further I apologise for the errors.
I appreciate the Brisbane Mini-Z for letting me try and fix on the fly - something that I am firmly against and should have not done. Unfortunately, it was the only way to figure out what was happening.
What went wrong?
tldr; Complexity.
When I undertook this project I did not realise how complex racing set-ups are (this is an obvious thing in 20/20 hindsight). Gathering lap data is one thing, making sure it is correct, handles staggered starts vs non-staggered, classes, driver management, handle the correct last lap time, bump ups, points, points across a class, transponders, labels for transponders, and lastly handling different lap timing systems....
Which is where a significant issue occured - the lap timing hardware had a different concept of time vs the application. So when I am testing with 'BLE', 'manual' and 'fake' timing systems, the error just did not occur. With other lap timing hardware they broke... badly... which cascaded errors through out.
I have been trying to cater to everyone's requests (where I can) and I have been spending too much time on feature creep vs robustness. Trying ideas where some work and others don't. I think the features now are pretty much done. I think it is time to focus on robustness. The system should just work.
So what needs to be improved?
Once I understood the problem, the main issue was fixed. However, that isn't quite enough, this is what I am doing for the future:
- Free racing until further notice - all practice and racing credits are set to 0
- Additional robustness - Changes to the Race Admin itself will be very carefully considered from now on and will likely go into a development cycle - maybe I'll setup a beta vs non-beta race environments.
- Improved UX - There is still room for improvement here, on the condition we are not changing the way something works - only the user interface to that something.
This does mean putting a few ideas and requests on hold until later this year - sorry!
I still want to complain to the manager!
I am the manager... and everything else 😂 This is a project that doesn't even cover its running expenses right now, and this project is only about 8 months old. You are welcome to reach out to me at anytime and ask for help, or give feedback (both positive and negative).
I want to finish off by saying that everyone has been really great to work with and I really appreciate the code, support, suggestions, and general enthusiasm. I believe most people can see where this project could get to - and that's pretty awesome really!