Guitar practice log (1 Viewer)

Aurelius

New member
Joined
Nov 2, 2022
Messages
9
I'm looking for a nudge in the right direction for my guitar practice log. The bulk of my practice is with the table "phrases" which contains snippets of musical phrases that showcases a technique or isolates the difficult part of a song.

tblphrases.png



I have about a years worth of data now, and I want to be able to use that data to create a record set that gives me an optimized practice set everyday. If you're familiar with spaced repetition flashcard programs like Anki I kind of want something like that. Stuff I've been playing well I see less often, stuff I'm struggling with I see more often, and so on. Old material I see monthly, new material I see daily, etc. It will get a bit more complex than that, but that's the basic idea.

What is the best way to go about this? I know I can do very complex queries in Access but I find them hard to document and keep track of. I've actually forgotten how I did some stuff already and I regularly have to relearn it when I want to change something. However, I could possible learn to do it in VBA and then document my code. I'm comfortable with scripting languages like Powershell\bash\python etc. I want it to be easy to also tweak settings, and easy to pick up where I left off when I want to add new features a few months from now.
 
You are a few steps away from code and queries. You need to formalize your algorithm and identify ways to measure everything that goes into it. Right now you have a good basic idea of what you want, now you need to identify the specifics.

Stuff I've been playing well I see less often

What does 'playing well' mean in terms of data? What is 'less often' specifically mean?

I would open either notepad or Excel and manually create next months practice list based on the data in your database. This will give you an idea of what your formal algorithm should generate once its up and running. Once you have an idea of what you want to see exactly you can then start coding/querying to replicate a system to generate what you manually produced.
 
What does 'playing well' mean in terms of data? What is 'less often' specifically mean?

I have a pretty good idea of that already and have some queries to handle it. For example

qryPhrasesUnder30mins30Days - Returns any phrase that I've practiced for less than 30 minutes in the past 30 days.
qryPhrasesNoTempo - Returns phrases that I have yet to practice with a metronome. Usually because of difficult fingering

These are quick and dirty queries, but I don't yet know how to combine them in an easily manageable and configurable "Superquery", and I'm not sure it's possible. For example, some phrases are in different string tunings specified in "phrases.tuning". I might want to group those together so I'm only tuning my guitar once. I might also want to group similar tempos together so I'm only changing my metronome once, and so on. These seem like they require some coding rather than queries.

Basically I'm asking if VBA would be the best way to go, so that I can document it and easily adjust it in future, or am I overcomplicating things and it could be done just with queries?
 
Your asking for directions to an unknown destination. Nobody knows if you should walk, drive, fly or take a boat.

'Basically' is a word we have moved past; we are now on to 'specifically'. You need to specifically detail what you want to accomplish. Until you have that there's no telling how you should accomplish it.
 
Absolutely! Keeping a practice log is a great way to track progress and stay focused. For your guitar practice log, I'd suggest organizing it around the "phrases" table you mentioned. Consider noting down which techniques each snippet focuses on, any specific songs they're from, and maybe even jot down your thoughts on how you're improving with each one. It could be helpful to set specific goals for each snippet and track your progress towards them. Happy practicing!
 
These are quick and dirty queries, but I don't yet know how to combine them in an easily manageable and configurable "Superquery", and I'm not sure it's possible. For example, some phrases are in different string tunings specified in "phrases.tuning". I might want to group those together so I'm only tuning my guitar once. I might also want to group similar tempos together so I'm only changing my metronome once, and so on. These seem like they require some coding rather than queries.
If you are able to construct the simple queries, then combining them - finding which phraseIDs are common across the queries of interest combined together should be straight forward. Configurable queries - where you supply a filter value from the form are also viable - you need to think about what are the key criteria you need to gather before running the query. You might be able to set up a list of queries and tag those to be combined to execute and present a list of the phrase records in common.
If you want different string tunings to be "associated" then you are going to have to set up a table to do this, similarly for similar tempos - unless the tempo values can be found under a BETWEEN filter.
 
Gang, that was a year-old thread that appeared to have been abandoned. Check the dates for the last post by AccessBlaster.
 
If you are able to construct the simple queries, then combining them - finding which phraseIDs are common across the queries of interest combined together should be straight forward. Configurable queries - where you supply a filter value from the form are also viable - you need to think about what are the key criteria you need to gather before running the query. You might be able to set up a list of queries and tag those to be combined to execute and present a list of the phrase records in common.
If you want different string tunings to be "associated" then you are going to have to set up a table to do this, similarly for similar tempos - unless the tempo values can be found under a BETWEEN filter.
Sounds like it works.
 
I have a pretty good idea of that already and have some queries to handle it. For example

qryPhrasesUnder30mins30Days - Returns any phrase that I've practiced for less than 30 minutes in the past 30 days.
qryPhrasesNoTempo - Returns phrases that I have yet to practice with a metronome. Usually because of difficult fingering

These are quick and dirty queries, but I don't yet know how to combine them in an easily manageable and configurable "Superquery", and I'm not sure it's possible. For example, some phrases are in different string tunings specified in "phrases.tuning". I might want to group those together so I'm only tuning my guitar once. I might also want to group similar tempos together so I'm only changing my metronome once, and so on. These seem like they require some coding rather than queries.

Basically I'm asking if VBA would be the best way to go, so that I can document it and easily adjust it in future, or am I overcomplicating things and it could be done just with queries?
Good luck on your project.
While SQL queries are powerful for retrieving and manipulating data from databases, they may not be the best tool for organizing and managing tasks like grouping phrases by tuning or tempos.

For tasks like these, you might want to consider using a scripting language like Python or JavaScript to write custom scripts that automate these processes.
 

Users who are viewing this thread

Top Bottom