Thursday, October 30, 2008

Chad Fowler Is A Werewolf

The goal of a villager is to keep conversation rational and logical. The goal of a werewolf is to mislead, cast doubt, undermine logic, and encourage paranoid suspicion.

Chad Fowler is a werewolf.



Exhibit A

Months ago I criticized Chad's decision to move RailsConf to Las Vegas. In that post, I also praised Chad's book My Job Went To India. I praised Chad's book again just the other day, and he e-mailed me. He asked me to review the upcoming second edition before he publishes it, since he knew I wouldn't hold back if it was off anywhere. I was flattered, because I really do admire that book. It's very well-done and one of the best books out there on how to go about being a programmer. I frequently recommend it to people.

He said he wanted me as a reviewer because it would be good to have someone look at it with a "truly critical eye." There's a difference between being truly critical and being an honest critic, but I assumed he meant an honest critic and just said the wrong thing.

Exhibit B

That was on October 17th. On October 21st Chad published an interview on his blog with Ben Bleything. Ben is an awesome programmer. He and I and Yossef Mendelssohn are doing a talk at RubyConf on Ruby and music. But Chad went to him for an interview about this talk, leaving me and Yossef out of it - when people are saying my presentation on Ruby and music is the geek video of the year. And he posts this just four days after a perfectly amicable e-mail conversation with me. And he asks Ben this question:

Can computers generate beautiful music? Dance beats seem easy. What about jazz improvisations? Classical music? Pop songs?

For the record, Archaeopteryx isn't about dance beats; I've also used it to generate ambient music for a temple at Burning Man. Archaeopteryx is about instrument design. But maybe I'm being paranoid. I mean he never mentions Archaeopteryx specifically, does he? Maybe he's referring to all the other semi-autonomous dance beat generators in the Ruby community.

Maybe not. In politics, they call this kind of trick a dog whistle, after sounds that dogs can hear but humans can't. If you know what he's talking about, you realize he's dissing me, but if you're not in on the joke, it seems like an inconsequential musing.

Notice also how he doesn't say he made some dance beats, and they were easy, or that he wrote some software to dynamically generate dance beats, and that was easy. I wish he would. I can't wait for him to shut me up. But he won't. He doesn't have to, because he's not saying he knows they're easy. He's just saying they seem easy. That's the whole point of the trick.

Can computers generate beautiful music? Dance beats seem easy. What about jazz improvisations? Classical music? Pop songs?

"We're not going to talk about any libraries that create dance beats, because they don't count. Even if they do exist, they're nothing to write home about. I'm not talking about mere dance beats. I'm talking about beautiful music. This form of music is music I don't listen to; therefore it must not have any subtleties or complexities that I don't appreciate. If Giles spent years working on electronic music and never got a label to release any of his tunes, well, dance beats seem easy, so he must just be an idiot."



If you've read Chad's blog for a while you've seen this kind of thing before. It's the sniper shrug - oblique criticism which never makes any allegation specific enough to refute. It's offensive when he's wrong and useless when he's right. Chad's old-school, so he remembers the days of "Matz Is Nice So We Are Nice," but he puts his own spin on it: "Matz Is Nice, So We Are Passive-Aggressive."

Dance beats seem easy. To whom? They must seem easy to somebody. Probably not to the people all over Europe who go to university programs to get degrees and diplomas in electronic music. Maybe not to people like DJ Tiesto, who's bought some very large houses with electronic music and categorically refuses to reveal any of his specific studio techniques to any of the magazines that have been pestering him about it for years. Dance beats are money and then some. But to say that something seems a particular way is so non-specific that nobody could ever really deny it. Because it must seem that way to somebody under some set of conditions.

Seriously, am I the only dude who ever dated a chick from the debate team? Who falls for this shit?


What it's like dating Debate Team Girl: After she wins the argument, she gloats about the holes in her own logic that you didn't spot.

Ben responded to the question:

I’m sure that a computer can generate beautiful music, but I think it would be mostly coincidental. I’m still undecided on whether you can program a computer to always generate beautiful music. It surely happens by chance sometimes, though.

I suspect that there’s interesting results waiting down the path of doing things like markov chaining with music instead of text. Analyzing and chaining music is a significantly more complex problem than doing it with words, but my gut says with the right corpus, you could get some pretty interesting stuff.

Fundamentally, though, I think music has to have soul to be truly great. I want everyone to try to prove me wrong, though!


Ben's response was pure opinion. But there's nothing wrong with that. Ben responded with opinion because he didn't know the answer. I do. You've heard computers generate beautiful music if you've ever played the game Spore. Brian Eno wrote the algorithmic compositions which write the soundtrack, or, more accurately, the infinite number of unique soundtracks.



The iPhone app RJDJ is such a powerful and groundbreaking beautiful-music generator that it doubles as an accurate LSD simulator. I spoke recently at a San Francisco computer music meetup and met tons of people making beautiful music with computers. The guys at this meetup told me about an AI researcher who had spoken there a few months before me. He had computers cooking up symphonies that professional orchestra musicians couldn't differentiate from symphonies composed by human beings.

Speaking of symphonies, Mozart probably wrote dice-based algorithmic compositions, and Hadyn definitely did. And Ben was right about Markov chains - the Grace project uses Markov chains in Scheme to generate music in the style of Messiaen. As for jazz improvisations, researchers were successfully modelling jazz improv for analysis with Markov chains in 1998, while the composition technique's been part of the literature since 1957.



For Ben not to know all this is not so unreasonable, especially when it comes to the arcane historical shit. It's relatively obscure knowledge, and most people in the Ruby community haven't researched it as obsessively as I have. But that's kind of the point. I speak at so many conferences and user groups on Archaeopteryx - in San Francisco, San Diego, Los Angeles, London, New York, Toronto, Portland, Huntsville, Philadelphia, Albuquerque, Virginia, coming up next month in Orlando and Boston, December in Santa Barbara, next year in Edinburgh, and probably in some other places I forgot about - that Chad's decision to interview Ben, not me, seems pretty weird. It doesn't even make sense as a way of promoting Ben's talk, because it's not Ben's talk. It's Ben's, and Yossef's, and mine.

I don't know why Chad made this decision. It seems like something a werewolf might do. If he had said to me that dance beats seemed easy, I would have shown him they were hard. For instance, I would have mentioned my blog post about generating polyrhythmic dance beats in multiple time signatures simultaneously - the same one he sent me an e-mail about on October 17th, four days before he posted this interview.

Exhibit C

Chad's known to preach about the Ruby community. Everybody who saw my talk at RubyFringe freaked the fuck out like it was the best thing in the world. That doesn't mean it was the best thing in the world, but I'll tell you what it does mean. What do you call it when a group of people who are all into the same topic agree on something? It means the community has spoken, and the community's verdict: Archaeopteryx doesn't seem easy. Chad talks about the community a lot, but in this instance, he doesn't agree with the community, and doesn't explain why he disagrees. When you're making generalizations that something seems a particular way, it's relevant information if this thing doesn't seem that particular way to anybody else in the world but you.


Some of the Rubyists who don't count as Rubyists in Chad Fowler's opinion.

Exhibit D

In 2007, at the Rails Edge in Chicago, Chad spoke about ActiveResource, including its limitations. He mentioned a particular feature that ActiveResource lacks. I had just grafted that feature onto ActiveResource for a client project, so I said, hey, I just grafted that feature onto ActiveResource for a client project. Pretty reasonable thing to say. Chad said in response, "He's lying."

It was weird. Right there in front of 100 people. Out of nowhere.

He then explained that unusual remark by reference to the fact that I've blogged about taking acting classes. He said something like, "He's lying. No, I don't mean that, I only say it because he's in acting classes." But even then it didn't make sense. If anything it got weirder.

Exhibit E

The last guy who criticized Chad isn't part of our community any more. At night, the villagers went to sleep. It's morning and he's gone.

Exhibit F

This is just hearsay, but I heard a rumor Chad encouraged some conference organizers to schedule their conference at the same time as RubyFringe, so that people who wanted to go to both would have had to choose one.

Exhibit G

Chad used to be really into Werewolf. I don't know if he still is or not, but everybody says he's very good at it. I even heard rumors about a game of Werewolf where he and Marcel Molina decided the final outcome beforehand, just to prove that they could. The skills you need in Werewolf include logic and manipulating people. These are skills which Chad has a reputation for.

If it weren't for this reputation, I'd figure he's probably just a little insane. The liar accusation came out of nowhere and made no sense. The "dance beats seem easy" dis was inaccurate, but it was at least coherent. You might even figure he didn't mean anything by it, it's just his logic was a little unclear.

But he has this reputation for logic. Not only that, he has this reputation for being able to make his logic seem unclear but basically well-intentioned when it suits him to do so. So what's going on? If this guy's reputation for logic and manipulating people holds any water, then you have to wonder what in the name of God he could be thinking. But you don't have to wonder at all, do you? We all know what he's thinking. He's thinking werewolf thoughts, with his canine brain and his dirty sharp teeth.


Chad Fowler in his true form.