Wednesday, June 22, 2011

The Start of Songwriting Season

So life has been busy. Crazy busy. We had a new baby. That's kid number five. I've been working crazy hours for the day job. I took only one day off for the birth of the new baby because I was working on such a critical deadline, that is all I felt I could spare. We've been trying to keep up with a house we're barely getting used to; we haven't even finished unpacking. Money is tight; things keep popping up to derail my plans, like car breakdowns. Part of our back fence collapsed due to the blizzards. The kids keep damaging stuff I wouldn't have even imagined they could possibly break, like tearing wallpaper off the walls, plugging our footing drains and flooding the basement with the garden hose, peeing in my shoes, or ripping keys off a keyboard. Our two-year-old is really a handful.

Et cetera, et cetera, Peter Cetera even.

Many days go by where it wasn't even really a question to get some quiet time for recording. I've been fortunate to get any time to practice guitar at all.

In the midst of all this I made the decision to sign up for the SpinTunes songwriting contest again, because it has been so valuable to me to have this incentive and occasion and support group. It's been invaluable, really.

The first challenge was announced 09 June 2011 and was due the evening of June 19th. The challenge was to "write a happy song about death." I thought I'd certainly be able to find a few hours during that week. I had been working a lot of overtime for the previous ten weeks or so, and was working very hard to hit a second deadline. If I had hit it, I would have tried to take three work days off in comp time. It was going to take me practically a full day just to get the office and studio cleaned up enough to work in there, leaving me a couple of full days to record a song. I had managed to get a simple lyric written and had a couple of very rough ideas.

That didn't pan out; I didn't get my build working, due to both my bugs and other people's bugs; I had to do two all-nighters; I had to travel to Lansing twice.

On Saturday (the day before the deadline) I blocked out about four hours. I thought that might be enough to record a sketchy demo. What happened instead was that my Apogee Ensemble went crazy. It had been behaving in a degraded manner. The week before it would occasionally reset itself, or start spitting bursts of ear-splitting noise through the speakers. But this was worse; Logic was locking up and crashing; the software meters wouldn't show any input data; the controls in the Ensemble control panel inside Logic showed crazy levels, like -454 dB. Apple's Audio MIDI Setup application was locking up and crashing; the Apogee Maestro application wouldn't talk to the Ensemble; I was seeing a non-stop string of errors in the Console. I reinstalled its firmware, and reinstalled its drivers, and rebooted. In this manner I managed to use up my entire time window in frustration. Apogee tech support is not available on weekends.

I thought that it was likely my Ensemble had fried itself in the extreme heat in the studio -- early in June we had a crazy heat wave and it was baking in there. I'm fortunate I didn't lose a hard drive. Our central air conditioning just doesn't get up there, apparently; we have to figure out how to improve the airflow. It's quite an old house, and many of the vents that we ought to be able to open or close can't actually be adjusted. The whole system needs some attention from professionals.

So I went for a walk with my Sony PCM-D1 digital recorder and recorded this podcast episode. I put that together later in the evening on the Mac Mini in the family room. Sunday was booked solid, with plans to have guests over, and a big backlog of basic chores I needed to catch up on, like grocery shopping. I pretty much had to announce I was going to be eliminated in round 1 by forfeit. It wasn't a good feeling. I knew that I had done everything I could, but still, it felt like establishing a work/life balance is what I had failed at, not just missing a deadline.

I put in some more work time and managed to get my code debugged. I was not working at peak efficiency and making dumb mistakes due to simple overwork and lack of sleep. Yesterday I got permission to take those three days off as comp time, a week late. And so the plan was to try to do what I had wanted to do a week ago.

Today I started by getting on the tech support chat with Apogee to see if I could get an RMA# for my Ensemble. The plan was to remove the Edirol FA-66 from the downstairs computer and bring it upstairs. I wasn't sure I'd be able to afford the out-of-warranty repairs for the Ensemble, and that was making me nervous. That box cost almost $2,000. If I had to shelve it because I couldn't afford to fix it, that would be a lot of money tied up in something I couldn't even sell. My head became filled with backup plans -- could I pay enough to have it fixed, then sell it on eBay, and track down an older Rosetta 200 with a PCI card to use instead as a simpler but perhaps more reliable and higher-quality setup? But the Apogee support person asked me to try uninstalling the Ensemble driver completely using a separate utility, then reinstalling it, not just running the installer again.

I thought I was just going through the motions to try to prove that the device was exhibiting a hardware failure. But for reasons not entirely clear to me, that worked. I'm not sure just what might have happened to the existing driver, but there it is; if you have an Ensemble, and it starts misbehaving, give that a try. Years ago I wrote a MacOS X IOKit audio driver, so you'd think I'd be able to diagnose a problem like this myself, but no -- it really seemed to me like it was very likely to be a hardware failure.

I've got a ventilation fan in the office bathroom window, pulling some cool air from the rest of the house, and that helps a bit. The plan is to get a portable air conditioner that vents to the window as soon as I can. Of course, if I'm going to record vocals, I have to shut everything off, and the heat builds up pretty quickly.

I often start to feel like I'm failing to do creative work for various reasons -- due to my day job, or due to the family. That mindset tends to lead me into thinking of my day job and my family as problems. That's a painful over-simplification. I didn't quit my day job like Jonathan Coulton, to produce songs. I didn't, and still don't, have the performance and songwriting and recording experience that had gotten him to that point yet. My life is not his life. I'm supporting a family of seven. My wife is a stay-at-home mom and we chose that arrangement.

Merlin Mann likes to ask the rhetorical question "what couldn't you ship?" He's asking people in business, particularly in software, to ask themselves how and why they've failed, and to address the root causes honestly. He talks about people who never ship anything -- who think they have big ideas for software projects, or writing projects, or music projects, but who are too busy, who have too many other priorities, and a lot to juggle, but still have time to watch TV every night, and don't even consider that to be negotiable.

I've shipped a hell of a lot. My entertainment time is highly negotiable. In the last ten weeks or so I negotiated away a lot of things, including a great deal of sleep and a great deal of time with my family. I wrote a server, in about five thousand lines of C++, to a rapidly changing spec, without the ability to debug it on the hardware platform it was designed to run on at all. It features three hierarchical state machines, a dozen threads, several message queues, and something like 70 methods. We shipped that (well, version 1.0 at least; there will no doubt be more features, more bugs, more maintenance).

I also completed a substantial revision to a piece of DSP code written in C. In this revision, through some simplifying and refactoring of a complicated piece of state machine code I managed to add features while removing almost 500 lines of code, or about 10% of the total program. I struggled for a few days with dumb bugs (most bugs turn out to be dumb, but occasionally I run into a bug that is truly fiendish). My boss happened to have possession of the debugger that I might have used to catch bugs right on the hardware, and it wasn't available for me to use this time, so debugging this involved some gritted teeth and a helpful co-worker with fresh eyes who read the code with me. I finally managed to extract the last obvious bug with the help of a separate test bench program, written in Visual C++, that allowed me to exercise most of the features of the program in an environment with a source-level debugger and the ability to log exactly what is happening. So that's shipped. My weekend was almost relaxing after over two months of this.

So I do ship, but the problem is that I'm often not able to ship what I'd most like to ship, and not able to work steadily on the projects I'd most likely to work on -- my creative projects. The creative projects have to fit into the cracks and between the teeth of the gears, without actually jamming them. That can be tricky. They're a luxury and yet I'm considering them to be more and more of a necessity as I get more burned out on this kind of work, and wonder how much longer I can keep doing this as a career. It seems now that there is not likely to be an upgrade path, if that makes sense.

So, with all that as prologue, today I recorded a song. I started with the snare drum that I was unable to record last week. It came out better than I expected. I used my matched pair of Rode NT-5 microphones in an X-Y pattern. With such a loud sound source, the exhaust fan in the other room didn't really matter much, so I left it on. I don't really know how to play drums, but I've manage to sort of teach myself just a tiny bit of stick work on a snare. That actually started with playing upside-down food storage buckets as drums during protest marches, particularly marching in solidarity with striking Borders bookstore workers in 2003.

I also recorded three improvised guitar parts on my Adamas 12-string, into the Radial JDV direct box, and then into the Ensemble. I put the capo on the fifth fret to make it sound a bit like a mandolin. It did not turn out at all like I had heard it in my head last week. I had been imagining something upbeat and Celtic-sounding, like a reel, with a dance-like beat. It didn't sound much like that -- it sounded minor and Middle Eastern. But I was trying to do a one-day wonder, so I had to press on.

I shut off the fans, improvised a vocal melody to my lyrics, recorded a few takes of that to get a reasonably clean one, and then did a few more takes to double it. I sang into the Oktava MK-219 at close range without a pop filter and it didn't seem like it needed one. I used Alloy with various presets on each channel. Now it definitely wasn't Celtic per se. Instead of a reel, it came out more like a dirge, even with the basic rhythm at 130 bpm. The combination of a fast beat with a very slow-moving vocal is odd. Still, like all my songs I at least like how bits of it came out.

I decided to ship it anyway. Sometimes you have to get a not-so-good song out of your system so you can listen to it and think it over and perhaps learn something from the attempt and try again, or just move on to something different. I haven't and written recorded very many complete original songs yet; this is number six, or thereabouts. If I get to a dozen I'll start to feel like I'm beginning to accumulate real experience at this.

I'd like to buy a copy of Nectar, the new vocal processing plugin from Izotope, since I really like Izotope's audio-processing tools, but that will have to wait. I have to remind myself that the right plug-ins might -- emphasis on the might -- help me to tweak a vocal found until I like it more, but no matter what microphone or plug-in I use, it isn't going to be work miracles on my vocal performance. I enjoy the sound of heavily processed audio tracks, even putting things like ring modulation or spinning speaker effects on vocals, but a lot of folks are a little more basic in their approach.

Merlin Mann would probably ask me whether that is really going to keep me from "shipping" -- from completing the project. The answer is no. The presumed-broken Ensemble consumed some of my valuable time, but it didn't keep me from shipping either. In fact, it seems that there isn't much that will.

The song, Today is Not That Day, can be found on Bandcamp here. It's not great. I'm not quite sure what I think of it yet. It always takes me a while to figure that out. I'm calling this Version 1 because, depending on what happens tomorrow and Friday, there's a good chance I'll record another version. While I was recording today I shot some video of the takes I put in the song, so maybe tomorrow I'll throw together a quick video. Goodnight all!

No comments: