Sunday, November 30, 2014

Online Drum Practice Log

I recently attended a weekend drum camp with Thomas Lang. where I learned a lot of things about drumming in general, but one thing very specific:  Practice time is everything.   This is also a motto of the amazing drum teacher Mike Johnston, who recently posted this simple truth video about practice.

My own modest experience as a struggling drum student certainly mirrors Thomas' and Mike's teachings and underscores the importance of persistent and consistent practice.   I think that I have been practicing a good amount, but I have been relying on my own memory for the number of hours practiced rather than a real log of my time.     At camp, Thomas spent a bunch of time teaching the importance of a detailed log and gave some great advice on what should be in the log and why.   I will attempt to summarize the teachings and then give details about an online tool for keeping a drum log practice log.     If you are not a drummer, keep reading, this tool could easily be adapted as a practice log for any instrument, or any skill that could benefit from a practice log.

What should be in a practice log?

  • Duration - This one seems pretty obvious.   How much time was spent practicing.   I choose to log each time that I sit down at my kit rather than summarizing at the end of the day.
  • Mood - Did the practice feel great or awful?  Some days are better than others, and for many people the time of day effects their mood and productivity.    By keeping track of the mood or general productivity in a detailed format, the log can help identify the best times or days to practice in the future.
  • Time of day - The time of day is recorded so that the mood can be correlated.     With enough data it should be possible to see what time of day is the most productive time to practice so that future practice sessions can be optimized.
  • Date - This allows for the correlation of mood as well as knowing how many minutes are practiced each day.
  • What - What was practiced in general.    If consistent categories are used, the tool can tell how many minutes are practiced on a given category over time.
  • BPM - "Beats Per Minute" track the speed of a given exercise so that progress can be tracked on rudiments, grooves and other exercises where building speed matters.   This may not apply to all practice sessions but is useful for many.  
  • More Details - A place to record specific details about what was practiced, problems, successes and any other notes that might be useful

There is a lot of data to record and I am notoriously bad about keeping paper records, so I immediately started to look for digital versions of a practice log.

My wish list for a digital practice log are:
  • All of the data points listed above should be easy to capture
  • The tool must work on a variety of platforms including: PC, MAC, Android and IOS
  • The data needs to be centrally hosted or synced among all the application instances so that I can record practice time from anywhere.    It definitely cannot be trapped on my phone only.
  • The data should be exportable so that I can put it into a spreadsheet or another program to get better insight into the data.
  • It shouldn't cost too much. :)
I was not able to find anything that met all of my criteria, so I started to investigate how difficult it would be to make my own.      One of my goals is that the data should be exportable to a spreadsheet, so I started my process by looking at my favorite collaborative spreadsheet program, Google Sheets. Google Sheets is part of Google Docs/Drive and is similar to MS Excel.     I knew that if I was able to get all the data into Google Sheets I would be able to meet most of my criteria since it is a cross platform centrally hosted program.   I knew that I would not be happy manually entering the data, so I started looking for ways to make data entry easy.       It turns out that Google Sheets has  a programming API that allows for mobile or web apps to query and enter data, but as I started working on a web app I realized that it was going to be a fairly involved effort.    I started researching some more and found that Google sheets has a very cool "forms" mode that I had never used before.    The more I played with it, the more I realized that it would be the simplest and most effective method to build the log tool with.  

Try out my solution

I ended up writing a new solution myself that works well for me.  Would you like to try it out?     The data entry form is here and the back end spread sheet is here

When you go to the data entry form you will notice that you do not need to enter the date or time of day, because that information will be automatically captured at the time you submit the form.    If you need to enter data for a prior day, simply log the information with the form and then go to the spreadsheet and change the date.    

The spreadsheet provides all the tools needed to graph practice time over days, months and years.    And since the data is in a standard spreadsheet program it is easy to export to any other program.    Since Google sheets is cross platform, the form and spreadsheet can be accessed from any device, mostly through a web browser, but also through the Google drive mobile app.

Set it up yourself

If you want to set this up for yourself, follow these steps.
  • Make sure that you already have a Google Drive account set up.
  • Go to the shared spreadsheet here
  • In the "File" menu choose "Make a Copy..."
  • Give the file a new name and save it.   It will now be in your Google Dive account.
  • Select the sample data by clicking and dragging and use "edit->Delete Values" to clear it.
  • Under the "form" menu, choose "Go to Live Form".   This is your entry sheet and can be used from any web browser on a computer, phone or tablet.    Save a bookmark to it.
  • Start practicing and log each practice session using the "Live Form" to make it easy to use.
  • Visit the spreadsheet to see all your sessions and graphs of your practice over time
  • You may also want to edit the input form to customize it for your name.   Go to the "form" menu in the spreadsheet and choose "edit form".   Change "Music Practice Log" to "YOUR NAME's Practice Log"
Within the spreadsheet are several tabs along the bottom that contain summary graphs for different time periods.    They are made using pivot tables and summarize the data based on the following:
  • Last 60 Days - Time summarized by day
  • Days   (All days for the entire practice log)
  • Months - Time summarized by month
  • Years - Time summarized by year
All of the graphs are embedable in web pages in case you want to put up a page that shows your progress.

Advanced notes

If you are interested in using this tool for anything other than a drum log, or to expand the functionality, this section is for you.     You can easily change the names or headings of the data collected by using the form editor in Google Sheets.   Open the spreadsheet and look under the "form" menu.   The form editor will allow you to change the name of the items being collected and will allow you to add new items to the form.    If new items are added, a new column will be created in the spreadsheet automatically.    If you know how to use Excel or another similar spreadsheet program, you will be able to add to or analyze the data in almost any way you can imagine.    The benefit to the data being in a spreadsheet is that it is easy to manipulate and graph.


Feel free to post a comment below if you have any problems getting the spreadsheet to work, or if you have other questions about changing the spreadsheet to work for your needs.   I will try to reply as soon as I can.