Monday, July 29, 2013

Ideas for a touches app

With all the coding I've been doing recently (both for my NHL code and for real-life projects) I got to thinking about maybe writing a puck-tracking app. I've written something similar for tracking shot locations for basketball, and I thought the only changes I'd have to make would be to track the location of the mouse, not just clicks, and somehow incorporate a clock as well as figure out a way to separate carries from passes and dumps as well as changes of possession. One person could chart the movement of the puck, and someone else, watching later, could match that information up to which players handled the puck. Not only do we quickly consolidate the scoring chance, zone entry, and zone exit projects (the latter two of which are looking for help for next season), but we add a ton of data on top of that.

Then, I remembered this article from Arctic Ice Hockey. Tracing the path of a puck on a tablet is much faster and more accurate, I'm guessing, than tracing the path on a computer screen. One person could track the movement, and one person the players, as before. Since so many people have iPads, I thought about writing an app, but then I saw it costs $99 to get a developer's license for a year—more than I want to spend for just one app. But it's free (I think) to put up Android apps, a lot of people have Android tablets or phones, and thanks to this tool I discovered from MIT, it might be surprisingly straightforward to get this thing up and tested relatively quickly.

Before I start, I'd like some feedback.

a) Do you think it's feasible to track touches for entire games? (It would basically need to be done without looking at the tablet/phone at all.)

b) How would you design the app?

Obviously, I think the answer to (a) is "yes." To (b), here's my vision:



You open up the app, and it asks for a season and game number.

The clock starts stopped. You start the clock by double tapping (or maybe hitting a start button...although a phone may not be big enough for that). You drag your finger around the rink to mimic the motion of the puck—maybe the tracker moves one second behind game time—and the app records the (x,y) position every tenth of a second or so. You drag your finger to indicate carries, tap to indicate a single touch (like on a one-time touch or pass).

I was thinking about different ways to indicate other types of puck movement—passing and uncontrolled puck movement, like dump-ins and chips out of the zone—but I think we can infer passes from successive carries by the same team, and infer turnovers from when a carry by one team leads to a carry by another. (Keep in mind the play-by-play has a lot of information, too, so we need not track something like shots.)

Stoppages and the running clock might be tricky. To indicate the goalie covering the puck, one could drag the puck to the crease and release, and after some set time delay (maybe three seconds) the app automatically stops the clock and asks you to enter the current time. For a puck out of the playing area, drag your finger quickly out of the rink (which might be slightly smaller than the actual screen) and let go, and again, after some time delay the app asks you to reset the clock. For something else, like a penalty or an offsides, maybe a two-finger press, one in the offensive zone and one in the defensive zone, and again, the app asks for a clock reset. It automatically ends at the end of a period.

At the end of the game, it exports the data (or finishes exporting it) in some sort of spreadsheet format, which is just an (x,y) every tenth of a second or so.

Someone watching the game later has to go through this data and indicate which player made each touch. (This wouldn't necessarily even require another app, if the app exports another spreadsheet with just a list of touches and their start and end times. One player per touch. I could write something for a computer to visualize the touches first, though.) That doesn't sound too hard—people who watch their team a lot can probably identify every player on their favorite team without even needing to see the jersey number, and so could use the number pad on a computer to type in numbers. (With a little practice, I could see this second person not even needing to pause the game. Remember, on average there is a faceoff or more a minute, so there's plenty of time to catch up.)

In sum, one person tracks puck movement for both teams. Another tracks which players got touches, either for one team or both, and, if necessary, another person tracks the player numbers for the other team. At the end of it all, we hopefully have a treasure trove of information.

So now I'll again ask the questions I posed above. a) Do you think one person could track touches for both team for an entire game in this way? b) If yes, how should a touches app be designed? What revisions (minor or major) would you make to my suggested design above?

1 comment:

  1. Considering the immense popularity enjoyed by robinets vente at reduced rates, it's not astonishing that every main brands are leaving no robinets cascade unturned inside as being a piece of the gravy train. The robinetterie baignoire selection of designs plus styles has ensured that the radioactive stocks of these elegant, distinctive plus affordable robinets LED fly off the shelves inside shops with amazing briskness. Pot filler or individual hole faucets, pull-down or pre wash, pull-out or individual lever mitigeur douche, two-handle or wall-mount faucets for your kitchen, the options are simply staggering.

    ReplyDelete