Skip to main content

SerenityOne 2013 Wrapup

ยท 3 min read

Throughout the month of November 2013 I spent three weekends at three different Salsa and Latin competitions running the SerenityOne scoring system.

The first two competitions were in New Zealand: the NZ Salsa Championships, and the NZ Salsa Open. The Australian and International Salsa Solo was a very successful event where they pushed SerenityOne to the limits by running two concurrent competitions in different rooms at the same time.

I was pretty anxious about this, but it worked a treat, and as I was running back and forth between the two rooms everything was running almost perfectly without me. The only issue which I hadn't considered was the range of my cheap Airport Express WiFi device, but by placing it in the middle of the two rooms it worked fine. This was on the tail-end of a major rewrite and refactoring of the software backend and tablet interface.

My new software "stack" now comprises the following components:

  • ASP.NET MVC Administration Interface (Replacing the old WinForms solution)
  • BootStrap.js for overall MVC site design
  • DevExpress Components for Reporting and rich MVC UI
  • ASP.NET WebAPI API Implementation (Replacing ServiceStack)
  • SQL Server Database Backend
  • Xamarin Android and Xamarin IOS Mobile UI implementation
  • MVVMCross Core Application and Custom UI implementation
  • GitHub for source control

In the next iteration of development I would like to add some bells and whistles to overcome some limitations in the current system:

  • Implement a SignalR-based "live" scoreboard function. I previously planned to do this as a WPF application, but after doing some research and prototyping with SignalR it seems to be a much better choice to use SignalR as a push mechanism to a web page. This will allow the live scoreboard to run on any spare laptop, desktop or tablet and to be easily connected to a projector.
  • Related to the scoreboard, a variety of simple monitoring screens to allow the MC, DJ, etc to have a live monitor screen to show them the current state of the competition.

Following on from these "simple" enhancements, which will run perfectly on top of the existing on-premises model which I use (running the software directly from my laptop), I would like to then work on deploying the administration and registration functionality to the cloud. I'm not sure about whether it's feasible to have the entire server-side hosted due to the reliability issues of internet access at the venues of dance competitions, but that would be the ultimate goal, along with BYO device + App Store software.