Starting a Programming Project

After surviving a semester of C212 and java, I decided to embark on my own software project this summer.  Mainly a learning project, I’m doing it in Java because it’s either that or Scheme (which I learned in my first semester, C212).  It’s aim is to solve a personal itch for something I want my computer to automate for me.  

I have a large classical music collection that used to sit mostly on my shelves.  It now sits in my closet and gets its use in digital format on my computer.  The only problem I have with my digital classical music collection is the irregularity in the metadata.  Since I have been ripping/collecting these files for quite a number of years, I have music that spans mp3s, ogg, and my newer rips are all now flac.  I realized recently that I have failed to have any consitent use of tags when naming files, and especially I have overlooked an extremely valuable tag for classical music: the composer tag.  Typical digital files have the artist, track, album tags, but these are too limited with you have something like a Mahler symphony, for example.  Who is the artist?  The composer?  The conductor? The orchestra?  Using more tags allows a better description of the file.  The artist could be Solti, a performer tag could be set to the Chicago Symphony and the composer tag to Mahler.  And it’s here that my little project springs to life.

I will write a program that will set the composer tag based on the information already contained within the filename itself, and the other tags within the file.  This way, I can traverse my entire music collection and (hopefully) set the correct composer tag without having to do it all by hand.  I will scan through the filename and metadata and look for a composer match in a composer database that I will build.  If I scan a file called ‘Mahler – Symphony No.2 – I.mp3′ for example, my program would be able to match the ‘Mahler’ to ‘Mahler, Gustav’ in my database and then set the composer tag accordingly.  This will allow me to set the composer tag for a large number of files and also prevent minor misspelling that might have occured if I set them by hand.  It will be consistent, in other words.  I won’t have ‘Bach, J.S’ in one file and ‘Bach, Johann Sebastian’, in another.  

As for the difficulty of this project, it seems doable with my so far limited skill and knowledge in programming.  I think what will be the most challenging is putting the whole package together.  In my java class last semester, putting the large scale project together was done by the professor and assistants.  We focused on purely coding, not putting together the pieces to create the whole.  Figuring it all out on my own will be a challenge, but I hope I’m up to it.  

And I really hope I follow through and finish it!  There’s nothing quite like an unfinished project, be it a composition or piece of software.

From Violin to Saxophone to. . Python?

If I had asked myself 10 years ago where I thought I’d be today, starting over on in new field would not have been a possibility.  I would be somewhere in some sort of paying gig doing something with music.  My 17 year old self wasn’t sure what he wanted exactly, but knew that he wanted to do something involving music.  I had been studying violin seriously for 12 years already and getting decent with the saxophone for the last 5.   Any college considerations were based on the quality of their music program.  My school days revovled around band, jazz band, and choir.  Almost all my friends were music nerds.  The only trips I took involved music.  My grades were never very good, my talent was in the music department.  I won awards at the end of each year only in music.  I hated math because it was (in my mind) the antithesis of the free flowing spirit of the musician.  I was a musician.  And I was going to make a living as one.

Fast forward 3 semesters and I found myself at the University of Central Arkansas.  I had a free ride compliments of a state sponsored scholarship, a minor ACT scholarship (I somehow managed a  25 my first try and only went down from there), and a very large saxophone scholarship.  I was searching for direction, but only so far as a direction within the music field.  I met an adviser before classes started to set up a schedule.  Why not go ahead and declare a major for music education I was told.  You took 4 semesters of music theory, 2 music history, ensembles every semester, band, and a few other electives.  I would learn everything music performance kids would but at the end of the day I would have a teaching license and a good chance at a real job.  It sounded fine to me because I lacked a sense of direction. I didn’t mind being shoved in any particular direction so long as music was involved.

I came home after my second semester of college with a 3.5 GPA.  Music theory had initially left a bitter taste in my mouth, but the freedom to think in new ways began to shake my once firmly held beliefs.  A close friend was majoring in music and math.  It was gross to consider at first  but the more I discussed and argued the more I starting considering different points of view.  I was still an emotionally driven, music is not tied to the rigidity of math sort of person, but I was no longer offended by other ideas.

My third semester was a disaster.  My lazy tendencies took over and I was soon staring at a letter revoking my music and ACT scholarship due to my poor GPA.  I was dating my future wife at the time and the combo of that shock with her insistence I grow up (and fast) got me back on track and into the employment of the fine dining establishment that is Arby’s.  I was determined more than ever to practice and study hard even though that task was now more difficult than before with 30 hours of roast beef slicing a week now on the agenda.

3 years later I am walking down two aisles, one to receive a diploma and the other to wed my girlfriend.  The problem was, even after 4 years of college I wasn’t any closer to discovering my dream job than when I started.  I was certified to teach instrumental music ages K – 12.  I could become a music teacher within a few months.  And I did.  The problem was that I knew I didn’t like that path.  It was a noble profession.  It was a huge challenge.  It involved music.  It came with a not very large, but steady paycheck.  And it didn’t involve slicing roast beef or delivering pizzas (which I had been doing for the last year and a half).  But I lacked drive for a specific direction.  Teaching was a way to pay the bills until I could find a better path.

Saxophone, I thought.  Why not become a saxophone professor?  I’m good, but I could be really good if I actually practiced seriously.  My wife wanted to continue down her path too, piano.  Indiana University was her first choice, and, still lacking direction, once again followed the suggested path.  We both auditioned, but only I was accepted.  Nonetheless in August of 2005 we packed our possessions and cats and moved north.

I didn’t get a scholarship this time.  Graduate out of state tuition was damned expensive (for a state school).  If I were to drop out for 12 months I could qualify as an in-state student and save thousands.  I didn’t want to drop out, but my wallet said otherwise.  Now, for the first time in my life, I was not involved with school or music directly.  I was working 3 part time jobs to save for tuition.  While I was waiting to become in-state qualified my wife auditioned again and this time was accepted.  I, on the other hand, was finding I had to drag myself to the practice room.  Saxophone was turning into a dreaded chore and not a joy.  I still lacked direction, but I least I knew a path I did not want to travel.

By the spring of 2007 I had spent one semester in school and 2 working low paying, high stress jobs.  I knew saxophone wasn’t the right path but music was still the only consideration.  I loved computers.  I loved music.  I loved computer music.  Why not try that?

August of 2007 rolls around and now I am in Miami, FL.  My wife is still working on her piano performance masters in Indiana.  I am alone and starting a masters in electronic music from the University of Miami.  I like the program and I love the people.  I hate being 1200 miles from my wife.  I don’t see her from early August until Thanksgiving break.  I come back from break knowing we can’t keep living apart.  For the second time in my life I stop work on a masters after a semester.

I am back in Indiana.  I am not in school.  I am waiting tables full time.  I hate my life.  I lack direction.  I begin to question my assumption that music is the only path.  I ask myself a question:  What would you like to do if you could do anything?  What if you didn’t try to make a living with your musical skills?  I made of list of every job that had even an ounce of interest to me.  I tried to imagine myself in all of them.  I kept adding and subtracting from the list.  What did I like to do?  What am I good at?  What interests me?  Which of these actually involved a paycheck?  As I made changes I found the list evolving  to include more technology related fields than others.  I was always obsessed with computers but considered it a hobby, not a possible profession.  As I reconsidered previous beliefs and suggested directions from others that thought shifted.   Why not at least try it?  Take some classes, see if it suits you.  No harm in a little taste.

Math.  Math was the problem.  I had finished one semester of math in the pursuit of my undergraduate degree.  College Algebra.  Computer science required math, and plenty of it.  Calculus and linear algebra and other classes from which I would have fled before awaited me.  But was it really a problem?  I am 26 now.  In the 8 years since high school my tastes and philosophies on music and life had grown and changed perspectives.  Perhaps I did not become excited studying math.   But it was no longer ugly and offensive.  I had made a truce with math.  I didn’t find it particularly beautiful, but it wasn’t offensive.  I was neutral.  I knew it’s value and I knew that, although it would be a major challenge, I could do it.

And here I am now.  A few weeks into my second semester of computer and math classes.  I still don’t know exactly where I’m headed.  What I have is drive.  I am 26.  I have a college degree.  I make my living expenses serving food to people.  I hate my job.   I am starting over.  I am the equivalent of a freshman.  I want to finish.  I want to finish now.  I want a real job.  One I like.  So far I’m enjoying myself.  So far I think I’m on the right path.  Instead of struggling through a Bruch violin concerto, I try to wrap head around recursion.  I don’t fret over reed care and maintenence, I learn the differences between functional and object oriented programming languages.  I compose lines of code instead of lines of music.

But I am still a musician.  The lines I used to see bound between music and math, music and the logic of computers, are perhaps not even boundaries at all.  I am being challenged in ways I haven’t before and am learning more about myself and the world.  Perhaps I wish I had made different choices at an earlier age.  But I ultimately cannot regret my path.  I have grown and learned more through mistakes than I would have on the safer path.  I enjoy music more than ever, but I enjoy it on my terms.  It may have taken me a while, but I am starting to live my life on my terms, not the suggestions of others.