Sunday, January 25, 2009

Progress Report #3

This week, since I worked mostly on the coding aspect of my thesis, cranking out over half a thousand fresh lines of code in the music generating program, I encountered very few sources. Nonetheless, they helped.

  • Ishkur's Guide to Electronic Music
  • I was very excited to find this site...it's the most detailed map of electronic subgenres I've ever encountered! Not to mention that it has descriptions and multiple samples for each subgenre! Watch out though, Ishkur seems to have somewhat of a foul mouth. Still, his information is invaluable.
  • Mr. Hubbard
  • I had a brief chat this week with Mr. Hubbard about my program. This mainly occurred thanks to Matthew Saltz' insistence on me doing so. Since he was pressed for time, I just sat down and showed him a brief overview of the program. He said he thought it had great marketing potential and that there were a lot of places I could go with the idea. I'll be waiting for my next chance to talk to him about algorithmic composition in general.
Purpose Statement
In a broad exploration of algorithmic composition, I will study the creative aspect of music and methods for emulating human creativity. In the end, I will demonstrate my findings and own creative ability by building a working computer program to generate new, original compositions.

Research Questions
I'm still happy with the research questions from last week, I don't think any revisions are appropriate yet. They are guiding me towards the right persuits.

Reflecting on The Week
As I stated above, almost all of this past week was dedicated to raw coding. I started several new plugins including a Trance Progression module, a Trance Bass module, and a Trance Strings module. I'm developing them simultaneously to try to get a basic trance song underway. I'm still feeling great about my topic. I know it's going to be messy. It's going to be a lot more work than I expected and probably more than I expect even now. It's going to be massive. In the beginning I thought I'd have a very workable program by the time I hit ten thousand lines of code. Now I'm thinking at least fifty thousand before I start seeing nice results. Ten thousand seems like child's play. And you don't have to be a programmer to appreciate the magnitude of fifty thousand lines. Open up notepad and see how far you get hitting enter as fast as you can. Now imagine actually typing substantial, logical computer operations on each line. Ouch.

Still, I'm ready to work. I love music. I love computers. I'm clearly on the right track. I'm a firm believer that anything and everything can be accomplished when broken into small, tractable pieces. I sure hope I'm right!

Goals for This Week
(Sorry if these are too technical...there's really no way around that!)
  • Finish the Variating Drum plugin
  • I've been working on a simple drum plugin for mGen that works by taking basic drum patterns and applying random variation algorithms to the patterns to create dynamic drum beats.

  • Develop a Melody Method
  • While I haven't workeda huge amount on any part of mGen yet, melody is the only area that I literally have not touched. And considering that it's arguably the most important part of any song, I need to start thinking about methods for generating melody.

  • Generate a VERY Basic Trance Song
  • Shoot for the stars, hit the moon, right? This goal is probably very unrealistic, even with the lovely qualifiers in the goal statement. But if I could get mGen to crank out anything even faintly resembling trance by the end of this week, I think that would more or less solidify everything. I would not longer be running on faith that my six thousand lines of code thus far are going to magically come together and make sweet music. I need to hear the proof!

On with the battle!

2 comments:

celeste. said...

http://www.finalsense.com/services/blog_templates/hot_guitar_image.htm

Josh Parnell said...

That template looks awesome...but when I try to paste the code in it says it's invalid XML or something like that :/