I wrote an Eclipse plugin that turns Eclipse's built-in JUnit runner into a music box. The following video demonstrates the plugin:
Each test class is assigned one of seven chords in the key of C major. The assignment is deterministic, so a particular sequence of tests will play the same "song". Passing test methods play a pleasing arpeggio, while failing tests play an ugly dissonant chord. The time each test method takes to execute determines the speed of the music. If more than one test class runs, then the music resolves to the tonic at the end of the session.
Here is the plugin (including source code). To try it out, simply save the .jar file in Eclipse's plugins directory and restart Eclipse. I tested it in Eclipse version 3.4.0 running on JDK 6. The plugin requires MIDI, so if you do not hear any sound when running JUnit tests, your computer probably lacks an appropriate MIDI device or it is configured incorrectly. Try running this simple class to test your MIDI setup.
I am not the first to think of making JUnit play music. There is a Musical JUnit project on SourceForge, but it has not been updated in three years. It also uses prewritten samples, while mine produces sound programmatically.
Over the summer I bought a DigiTech JamMan looper pedal. It allows me to record riffs while performing, then solo over them. Also, I can upload backup tracks from the computer. Such a fun toy. To prepare for the event, I uploaded the drum and bass tracks for Orange and Hedgehogs and Fish.
Danny and I set up our equipment about 30 minutes before the FE was scheduled to start. I had my guitar, PODxt, and JamMan, which I plugged into the CS department's PA system. Danny's amazing setup was much more involved. He had two 4x12 speaker cabinets, a rackmount amplifier, an eight-button multi-effects pedal, a looper pedal, and a laptop.
A crowd had already gathered while we tuned our instruments and warmed up. By the start of the show, the entire atrium was full of people eating the free food. I did not expect such a good turnout; it was the largest crowd I have ever played for.
Danny and I alternated back and forth on four or five songs. Danny soloed over jazz standards, while I played some solo songs and jammed over my prepared backup. After three or four songs, a professor sang a love song dedicated to his wife, introducing it by saying, "computer scientists aren't all cold and analytical."
After we finished our prepared set, Danny and I jammed together. We have wanted to jam since meeting last year. This event gave us our first chance. Danny is graduating, so we will not get many more.
This event taught me a lot about how to prepare for a public performance and how to use the looper pedal. First, I realized I should have included more instruments than just drums and bass on my backup tracks. It was difficult to keep my place without the cues of other instruments. At one point while playing H&F, both the drums and bass cut out for a solo section that I was completely unprepared for. Second, I need to prepare several different phrases that I can seamlessly link when I am recording loops on the fly. Just one gets boring. Third, I need to balance loop and instrument levels before the show.
Between our prepared pieces and the jam session, we played for about an hour and half. Both of us felt the event was a success. Thanks to everyone who came.
Thanks to Alejandro Gutierrez for taking the pictures. The full set can be found here.
It is an Ibanez SR506. This model has six strings (an extra high and low string in addition to the normal four), a beautiful mahogany body, active electronics, and the most comfortable neck I have ever felt on a bass.
I started thinking about getting a bass after playing Josh's several times. He and I have been jamming about every other weekend with a drummer named Jason. Josh writes the songs and plays rhythm guitar; I play lead guitar and bass; and Jason plays bongos. We are still debating what to do about real drums and a singer. Bongos cannot replace a full drum set, and the singer we had— an opera major, no less— recently moved away. We have a good number of songs but definitely need to practice more before we move from the apartment to live shows.
I will always have my solo music whether I am in a band or not. That is the main reason I bought a bass. I can now record my bass tracks rather than having to write them out note-by-note to be played by my MIDI synthesizer. Tonight I threw together three short samples:
Bass Solo – This clip really demonstrates the range of a six-string bass.
To record the bass, I upgraded my POD to include the bass expansion pack. The installation was interesting. I had to download a client program that ran on my computer and communicated with the POD via a USB cable. After I paid for the expansion pack, the client program downloaded the firmware from Line6's website and installed it on the POD. The bass amp models included in the expansion sound great, and I like being able to record both bass and guitar through one device, but I had to debate long and hard whether to spend a good chunk of money on what amounts to a software update. Unlike a physical console, I cannot resell the expansion if I decide to upgrade in the future.
Between the new equipment and the band, I expect I will have more music to post in the future.
Note: This is the second new purchase post in a week. One could almost get the impression that my grad student salary is more generous than it really is. I assure you that this is not the case.
Yesterday night I put together my first complete new song in ages. I call it "Hedgehogs and Fish" because that is what came to mind when I saved the MP3. The song is all guitar except for the drum track. It is very laidback with an interesting chord progression. Enjoy.
For about two years I've recorded my music by simply plugging my amp's line out into my Audiophile 2496 sound card. This setup yielded several decent pieces despite continual problems with buzzing, touchy levels, flat tone, and the numerous other difficulties involved in using a 70-pound amp as a recording input. Every other month or so I would buy some nifty music gadget to try and fix the problems, but nothing seemed to work how I wanted it to. I eventually realized that to improve the quality of my music, I would have to change the foundation of the sound by using something besides the amplifier to boost the signal into my computer.
Yesterday I found it.
I bought Line 6's PODxt not really knowing what to expect. I had read the reviews in various places, but I was afraid it would be just another multi-effects box. I'm happy to say I was quite wrong. After just a day of playing, I've found it has taken away 90% of the difficulties I had in recording. I just plug it in to the sound card (using its line level output), play around with the amazing range of modeled amplifiers and effects until I get the sound I want, and hit record. The POD takes care of all the levels, equalization, and tone that used to come from my amplifier. Not only that, the POD does it far better than my amplifier ever did.
Here's a quick sample recording that I threw together yesterday afternoon. I think you'll agree, the sound is incredible. No buzz, great tone, perfect levels— I've fallen in love with this little red kidney bean.
Jeremy is probably the closest thing to a roots blues man you're likely to find in central Indiana. He came over yesterday afternoon for a second recording session, and to my surprise, banged out three songs in as many hours. With his permission, I posted two of the songs over in the music section.
I attribute yesterday's unusual speed to the different ways the two of us record music. I have always recorded in four to eight measure spurts alongside rigid MIDI backup tracks. This makes it easier to modify and mix songs electronically, but it also promotes a time consuming stop-and-go method of playing. Also, I regularly spend 25 takes or more on each short section of track, which, once I get one I like, I copy as many times as needed. Jeremy is the exact opposite. It always amazes me that he can record an entire song-length track without any kind of backup; know exactly how many measures he needs; keep incredibly solid time; play well throughout the song; and do it all in less than three takes.
Now this method of recording does have its downside: it makes it nearly impossible to go back and seamlessly modify a track. When listening to the recordings, you'll probably notice a few places where I made some recording mistakes that I couln't go back and fix by splicing in a better section. The best I could do was play with levels and tweak the EQ, though as I mentioned in the last post, I'll be the first to admit I'm still learning in both respects.
Despite these minor difficulties, I feel the songs came out okay and give a good impression of Jeremy's impressive Blues talent. It was a learning experience for both of us, and I enjoyed helping him out.
I get perturbed every time I think back to recording the charity CD senior year. I had a mid-range soundcard on a mid-range computer and I didn't have any significant amount of experience recording anything but myself. This rudimentary equipment and inexperience definitely showed in the final product, and I always cringe when I think about how much better it could have been. Since that time, I've acquired some better equipment and significantly improved my ability to use it. Nonetheless, I will be the first to admit I am still learning when it comes to recording others. Of course, one improves by practicing, so today I was happy to record a song for Jeremy who was steadily writing blues tunes while was away at college.
Most of the tracks came together without much trouble. Thanks to the better equipment I mentioned, we were able to overdub several acoustic guitar tracks, a bass line, and vocals in a rather short time. We hit our first real snag while trying to record the overdriven guitar. Understandably, Jeremy wanted to get his familiar bluesy tone from his amplifier, but we couldn't seem to get rid of a horrendous ground loop buzz. We tried plugging into his amp's line out plug; we tried miking it: we even tried putting the amp in the closet?all to no avail. In the end we had to sacrifice a bit of tone by going through my amp like the other guitar tracks. With that problem solved, we wrapped up the rest of the song in another two or three takes.
As expected, the afternoon was as much a learning experience for me as a recording session for Jeremy. I got to see how my recording setup worked with another person's equipment while Jeremy got to hear what his music sounded like with multiple layered tracks. We're planning to record again next Sunday, and I expect it will go as well as or better than today's session. Perhaps I'll figure out how to get rid of that buzzing.
I've been getting back into music making of late, which, when coupled with some extra spending money from work, has once again given me New Gear Fever. I seem to be dealing with it better than usual because today I bought only one new effects pedal, a BOSSBluesDriver. There are several reasons why I got it. First off, I've never really been satisfied with my amp's built-in overdrive. It always sounded washed out— especially when recording. Second, my ultra-fuzzy Death Metal Distortion (which I used on my song Amalgam) just wouldn't sound right in either the new song I'm currently working on or majority of the music I find myself playing nowadays. Third and fourth, two great guitarists I've known, Jeremy and Charlie's dad Chuck, have both played Blues Drivers with very good results. And fifth, it sounded the best out of the four pedals I tried at the store. However the proof came when I plugged it in at home. This pedal is exactly what I have been looking for: a clear overdrive that adds to the sound rather than masks it.