Friday, November 30, 2012

Creating team workout using Excel

Here is the screen cast of a rather simple solution in Excel for creating individualized team strength training workouts. 

Make sure to increase quality before watching

Friday, November 16, 2012

Estimating 1RM using load-velocity relationship

I recently wrote an article regarding the use of velocity of the lifts to predict 1RMs for the official GymAware website. You can read it by simply clicking on the image below.

I wanted to thank Rob Shugg for posting it and the whole Kinetic Performance company for creating such an amazing tool - PowerTool/GymAware.

I also hope that the article will bring some more  food for thought and stimulate more work in this direction.

Tuesday, November 13, 2012

Player and Test Report/Dashboard Screencast

Just a quick heads up for the screen cast of the Excel Dashboard/Reports and Database workbook I recently did. You can find more info in the recent blog entry here

Enjoy and let me know what you think.


Sunday, November 11, 2012

Finally done – Player and Test Report/Dashboard

During the last couple of weeks I have been reading a lot on VBA (Visual Basic for Applications) for Excel since I haven’t found PivotTable enough to fulfill my needs. Luckily I have a programming background (yup, a nerd – been using Qbasic, C/C++, MATLAB and Assembler during the days of 486) so I had the basic skills and all I needed were various tricks and techniques. 

So what was the problem so I needed VBA? Well, most of the databases are organized in the following way:

What you do basically, is write down all the players you have in a named range, along with tests (or things you track) and then organize the database in the manner showed above.

When you test a player, you write down the date, the test you did, player’s name and score. Pretty simple, right?

Using Pivot Table you can quickly and neatly summarize the data using filters (might be test and/or dates). In the following picture I utilized Pivot Chart and used Date and Test as Filters.

Pivot Table is thus great tool for providing summaries for the databases organized in a way I showed. The problem is that I didn’t want summaries – I wanted to see report/dashboard for each player.

What I wanted to see on one page is: 
·         basic player info
·         last test scores for selected tests, context for those tests (using target, great, average and bad scores, along with red flags for bad scores), which I fulfilled by using bullet graphs (luckily Excel haven’t yet integrate them, so using them was pain in the arse)
·         Difference from target score
·         Ranking of the test score to other players
·         Date of the last test being taken
·         Trend of scores
·         Change of the compared to the previous test (did the guy improve?)

To do this I had to re-organize the database (DB) to a following format, so I could use named ranges and dynamic graphs. I needed to organized DB into the following format:

The basic format for this database is Test Name, Player, Number of Entries, Date of the last test, and test scores going from last to the first. Organized this way, I was able to use DB for reporting and plotting really easy using custom functions in VBA or INDEX and MATCH formulas.

Anyway, last couple of days I was struggling to write a code to convert first database into second. First one I wrote was damn slow, but in the second one I used faster cell (or range for those with Excel VBA knowledge) reading and faster algorithm  (without referring to famous Sedgewick book :) ), along with basic user interface.

After this was done I was finally able to create report/dashboard page for both Player and Test.

Now it is easy to select a player and all the data is pulled automatically. You can also choose which test you want to visualize in each slot.

Couple of problems I had with visualization was creation of bullet graphs, and visualizing and quantifying negative tests.

What I refer under negative test are the type of tests where lower equals better (like 10m sprint, 1500m time trial, asymmetries between legs), compared to tests where higher equals better (relative strength, MAS, YOYO distance). Visualizing them was also problematic, but I choose inverted/negative bullet graph for that too. 

It was important to warn the user about those tests, so I used  symbol. When it comes to change in time (trend) having this test dropping down is also a good thing. Ranking was easy to solve (the lower the score the higher your ranking) by simply subtracting the score from 1. I am still looking for a better and more intuitive way to visualize the data, so the coaches know what they are dealing with and a immediately able to spot trends, strength and weaknesses and devise action plans. If you have any tip let me know in the comments.

Also,  if anyone (coaches and/or professional clubs) is interested into custom made Excel sheet for collecting and visualizing this be free to contact me.