I recently took inventory of the bluegrass and oldtime tunes and songs that I know. While it is a huge increase from the 4 fiddle tunes I “knew” in July of this year, it just isn’t a very big list. Nothing compared to the pile of jazz standards I know, and not anywhere near enough to have the same kind of literacy in bluegrass/oldtime as I enjoyed on the piano with the body of jazz music. I want to know more, have a better vocabulary, and be all-around more fluent in speaking bluegrass (musically, that is) on my mandolin.(more…)
I started back in July of this year knowing 4 fiddle tunes (if I am very generous with the meaning of “know”). I have generally been keeping track as I’ve added new ones over the last months. Presented here is the list of tunes I know to date.* Some of the tunes have resource pages here on the site, so I have linked to them.
- Bag of Spuds
- Bonnie Tammie
- Soldier’s Joy
- Cold Frosty Morning
- Clinch Mountain Backstep
- Whiskey Before Breakfast
- Blackberry Blossom
- John Stinson’s
- Old Favorite
- The Wind that Shakes the Barley
- Goodbye, Liza Jane
- Bill Cheatham
- Old Joe Clark
- Cluck Old Hen
- Chinquapin Hunting
- Angeline the Baker
- Boil Them Cabbage
- Cripple Creek
As you can see, the list is not very large, but it is what it is. I have two initiatives – one underway and the other planned – to boost the amount of material in my tune vocabulary. During the month of December, I am doing a end-of-year tune and song sprint (which I will post about separately) to add an additional 12 tunes and 6 sings to my repertoire. Then next year, I have planned out a Tune of the Week, with a designated TOTW and a bonus tune each week (because I try to always learn at least two tunes a week). I also have a Song of the Week plan, with a SOTW and bonus song each week (because I am trying to increase the number of songs that I actually know the melody and lyrics to). There will be posts about the TOTW and the SOTW plans closer to the end of the month.
* I also know two or three Hungarian fiddle tunes from my book, but I can’t pronounce or spell their names, which really gets in the way of talking about them.
I am excited to start sharing this new post type. I plan out my mandolin practice for the week every Sunday. I will make a longer post talking about how I do my planning and what I include and am looking for, but here is a quick summary.
I follow a format that I learned from David Benedict (not directly, of course – although I think he’s super rad, I have never met him) that has five sections: 1) New Material, 2) Developing Material, 3) Performance Material, 4) Techniques, and 5) Musicianship. I also indicate in my plan whether I have a lesson and what my plans for playing with others are for the week (I have a goal to play with others at least once every week).
Starting today, I am going to be posting my weekly practice plans here on Turtlshel. Obviously I am a bunch of days late posting this week, but a person has to start somewhere.
Practice Plan for 23 October 2022
26 October 2022
Playing With Others:
1) New Material
- Tune: Cripple Creek
- Song: Bury Me Beneath the Willow
2) Developing Material
- Bluebirds Are Singing for Me
- Clinch Mountain Backstep
3) Performance Material
- Jenny Jenkins
- Fiddle Tune Medleys using Bonnie Tammie, The Wind the Shakes the Barley, Bag of Spuds, John Stinson’s, and Old Favorite.
- LH ergonomics
- Double stops
- Bluegrass box
- Transposing (using the key signature dice)
- Standing while playing
- Ear training
What it’s All About
The be clear and straight-forward from the beginning, I do not know VBA. My coding experience outside of HTML and SQL is entirely Python, R, and C/C++ (and C/C++ was long enough ago as to be another lifetime). But when I needed to make a list of all of my Bureau’s data files while still working without software beyond the basic build (I have browsers and MS Office), and without access to any useful utilities or the ability to install anything, I turned to VBA as a possible solution.
The most important nuance of my task is that I needed the authors attribute from the extended Windows file information (this is different from the normal author/owner file attribute that, in my case, showed a generic account for the Bureau that provisions the servers, and not the creator of the file like I needed. I found lots of examples online of code that made a list of all of the files in a folder. A few of them accessed the attributes I needed. I found a couple working examples of VBA that listed all of the files in a folder and all of its sub-folders. What I wasn’t able to find was an example of code that lists out all of the files in a folder and its subdirectories AND accessed the attributes I wanted.
I know enough about coding, in general, and I have access to Google, so I was able to put together something that mostly works, using bits from all of the various examples I found. I apologize to all those on Stack Exchange and elsewhere that contributed code that I absorbed into my mess: it didn’t occur to me to track authors for attribution until I had already long lost track of what pieces came from where.
Like I said, the whole thing is a mess, and breaks in strange places. And there is a weird “feature” that makes the list start back at the beginning of the spreadsheet once it reaches 65k records. But in case someone out there is struggling to accomplish the same thing that I was, here is the code I came up with:
Sub file_list() Call ListFilesInFolder("Z:\Test_Folder", True) End Sub Sub ListFilesInFolder(ByVal SourceFolderName As String, ByVal IncludeSubfolders As Boolean) Dim FSO As Object Dim SourceFolder As Object Dim SubFolder As Object Dim ObjectFolder As Object Dim ObjectShell As Object Dim FileItem As Object Dim ObjectFolderItem As Object Dim i As Long Dim ws As Worksheet Set FSO = CreateObject("Scripting.FileSystemObject") Set ObjectShell = CreateObject("Shell.Application") Set SourceFolder = FSO.GetFolder(SourceFolderName) r = Range("A65536").End(xlUp).Row + 1 Range("A1:G1").Value = Array("File Name", "Extension", "Path", "Date Created", "Date Modified", "Author", "Size") For Each FileItem In SourceFolder.Files Set ObjectFolder = ObjectShell.Namespace(SourceFolder.Path) Set ObjectFolderItem = ObjectFolder.ParseName(FileItem.Name) Cells(r, 1).Value = ObjectFolder.GetDetailsOf(ObjectFolderItem, 0) 'File Name Cells(r, 2).Value = FSO.GetExtensionName(ObjectFolderItem) 'Extension Cells(r, 3).Value = SourceFolder.Path 'Path Cells(r, 4).Value = ObjectFolder.GetDetailsOf(ObjectFolderItem, 4) 'Date Created Cells(r, 5).Value = ObjectFolder.GetDetailsOf(ObjectFolderItem, 3) 'Date Modified Cells(r, 6).Value = ObjectFolder.GetDetailsOf(ObjectFolderItem, 20) 'Author Cells(r, 7).Value = ObjectFolder.GetDetailsOf(ObjectFolderItem, 1) 'Size r = r + 1 X = SourceFolder.Path Next FileItem If IncludeSubfolders Then For Each SubFolder In SourceFolder.SubFolders ListFilesInFolder SubFolder.Path, True Next SubFolder End If Set FileItem = Nothing Set SourceFolder = Nothing Set FSO = Nothing End Sub