Saturday, July 30, 2005

I have remixed Annie's Alibi so that you can actually hear the Megaman music. After listening to it using several different pair of headphones, I realized that the game music was so buried in the mix as to not be noticeable. Since "Annie's Alibi" is the first song alphabetically, which means that least some folks will listen to it first, that was not a good thing.

Thursday, July 28, 2005

To Layer or not to Layer? That is the Architectural Question

/work /j2ee

Wednesday, July 27, 2005

Annie's Alibi

Not only is this song not about anyone I know named Annie, that name wasn't even what this song was supposed to be called. I wrote these lyrics while filling up my car at a gas station near my house, using the name of a flower shop that I saw across the parking lot. Unfortunately, I can't use that name for reasons that I can't even discuss on this blog. So Annie it is.

The lyrics are basic blues or country material, and I tried to blues it up as much as possible on the lead guitar. The game music is the "Crashman" level of Mega Man 2. It is slowed down quite a bit, to fit the speed at which I wanted to sing the lyrics. The choice to set these particular lyrics to this particular music was totally arbitrary, based purely on the fact that I wanted to use "Crashman" for something..

Annie don't you worry.
Annie don't you cry.
You know that I will always
be you your alibi.

I'll tell the judge and the jury
that you were layin' in my arms.
I'll them 'em that you were with me
the night your old man come to harm.

Annie what's the matter?
Did I offend your pride?
Can't you say that you love me
just to save your hide?

Annie I don't believe it.
Annie how can this be?
You're gonna point your little finger
and make a scapegoat out of me.

The judge done banged his gavel,
and soon I'm gonna fry.
But you know that I still love you.
And I'll still be your alibi.

I'll tell old Saint Peter
that you were layin' in my arms.
I'll tell 'im that you were with me
when your old man come to harm.

Monday, July 25, 2005


File under: work related, security, crypto

Saturday, July 23, 2005

My Adrienne: a Legend of Zelda Murder Ballad

Like "Oh Jessica", this song has the name with a girl I knew in high school, but is most emphatically not *about* her.

The game music is subject to more manipulation than on previous songs. The two parts, "treble" and "bass" of the original mono track were separated by a complicated series of actions involving Audacity's "noise removal" plug-in. They were panned left and right, and their differences were exagerrated. The treble part was pitch-shifted up an octave. The bass (which carried the melody) was shifted down an octave, and then filtered until it was almost just a sine wave, then amplified and clipped to turn it into something more like a square wave.

I originally intended to have the guitar double the melody, but it was too hard to play. So then I tried to have the guitar double the high part, but that was hard too. So I gave up and overdubbed two acoustic guitars each playing different notes from the main chords. These guitars parts are on a loop so I wouldn't have to play them more than once. A third guitar comes in later, played straight through and not looped.

For whatever reason, I decided to let it start with just guitar and adds the game music after the first verse. This is a departure from all the other songs so far.

My Adrienne,
show me your face;
so out of place.

My Adrienne,
come to my room;
I'll seal your doom.

My Adrienne,
take off your clothes;
put on my robe.

My Adrienne,
drink from this cup;
it will wake you up.

My Adrienne,
why do you scream?
I'll set you free.

My Adrienne,
oh how you cry.
It's time to die.

Friday, July 22, 2005

Re: StaleCon

Thursday, July 21, 2005

Session Riding (PDF)

Not sure if I've blogged this before or not.
In this paper we describe an issue that was raised in 2001 under the name of Cross-Site Request Forgeries (CSRF) [1]. It seems, though, that it has been neglected by the software development and Web Application Security community

Tuesday, July 19, 2005

Down in the C64 Dungeon

Longtime Flvxxvm Florvm Fanclvb members will recognize this one. This is an attempt to return the FF classic "Down in the Dungeon" to something like the way originally written.

There are two versions (here and here) , but the older of these was still recorded several years after the idea for the song germinated.

As you should know if you read my wonderful liner notes, the lyrics were originally going to be set to some of the music from the "Popeye" cartridge for the Commodore 64 (I'm pretty sure it was a cartridge, not a disk. I didn't even have the game, I remember I was playing it at someone else's house when I thought up the song).

So anyway, here it is, the actual (well, emulated) game music with those now well-worn lyrics and some poorly thought out guitar slapped on because, well, I'm a compulsive guitarist the way some people are compulsive liars. And fake handclaps provided by a drum that I borrowed from a friend in 1996 and have yet to return. (Why couldn't I have kept that Big Muff I also borrwed back then instead?)

This is a bit of a step down from the last two songs, I know. It has neither the mainstream appeal of "Kissed Your Ruby Lips" nor the rawk-n-roll excess of "Oh Jessica". It sounds almost like a children's song, or it might if you have very strange children.

The Old New Thing : Keep your eye on the code page

Don't remember if I blogged this before or not, but it's the sort of thing that I would want you to read.

Document Security in Web Applications (PDF)

Interesting stuff about how to send documents (Word, PDF) etc. over HTTP in such a way that "both" browsers will handle them securely.

Monday, July 18, 2005

No XML, please!

Uhm... interesting.
The majority of Web frameworks rely on XML to implement the MVC (Model-View-Controller) paradigm. Do you like to program in Java or do you like to configure XML files? In this article, author Sergio Oliveira Jr. presents a new open source project called Mentawai and shows how the same features of other Web frameworks can be accomplished with easy code and, best of all, no XML.

Sunday, July 17, 2005

Summer is ant season (and not the build.xml kind)

The environmentalists/organic/natural/hippy people are right about one thing: those new-fangled "earth friendly" orange cleaners, the ones made from orange oil, rock.. as insecticide! (They clean stuff too, but so do lots of things, so no big whoop there)

Spray some on a bunch of ants, and they stop dead in their tracks. Keeps 'em away from the treated area after that, too.

My only misgiving is that it might eat the paint off of my baseboards and the varnish off my floor, considering that you can also apparently buy citrus-based paint stripper these days. We'll see.

Saturday, July 16, 2005

The Foul-mouthed Gourmet presents: How to make real fucking popcorn

This is normally a PG-rated blog, but with this series of posts I'm kickin' it up a notch. It'll be just like Good Eats, but with more swearing. Well eat like kings, damn hell ass kings.

Today's recipe: popcorn. Not that spoiled-brat microwave stuff, with ten kinds of partially hydrogenated bullshit. Real greasy-ass popcorn like mother used to make, with real butter.


- Popcorn kernels. It really doesn't matter what brand; store brands work as well as name brands.

- Oil. Doesn't matter what kind. Canola, peanut, whatever. But probably not olive, it burns away too fast and would probaby make the popcorn taste like shit.

(You real hardcore meat-freaks bastards could try to use bacon grease or the drippings from the last time you fried hamburgers. I've read that popcorn was in fact made that way before relatively recent times. Depends on if you want your popcorn to taste like meat or not, I guess.)

- Butter. Real-ass butter, the kind that comes from a cow.

Make sure you have a 4 quart or larger saucepan (what we used to just call a damn "pot" when I was growing up) that has a lid. If you don't have this, then your whole kitchen setup is fucked anyway.

How to do it:

1. Put enough oil into the pan to completely cover the bottom of it, to about the depth of a popcorn kernel.

2. Put the pan on the stove and turn the heat all the way up, and leave it there. No wussing out and turn it down. That's the trick that the instructions on your bag of popcorn probably don't tell you.

3. Put in one or two test kernels.

4. Wait. While waiting, go ahead and break off about half an inch from a stick of butter. Measure out anywhere from 1/2 to one cup of popcorn, too.

5. When the test kernels pop, throw in the rest of the popcorn and throw the butter in there with it. Put the lid on. Do all this really fast.

6. Wait some more. That shit should start to pop pretty fast. If it starts to slow down, give it a shake. However, people really overestimate how much you need to shake popcorn. There is really no justification for those specialized popcorn pans with the damn crank that you turn to shake it up for you.

7. When it stops popping and shaking won't wake it up anymore, take it off the heat NOW before it burns. Seconds count.

8. Pour it into a bigass bowl and put salt on it.

9. Eat it and drink a lot of beer.

Friday, July 15, 2005

"A" come Ignoranza

You don't have to be able to read Italian to tell that this stuff must be pretty funny. (via chet)

Wednesday, July 13, 2005

First Act - Products :: Product Details

This is, I kid you not, the amplifier heard on "Oh Jessica" and "Kissed Your Ruby Lips'.

FirstAct is a brand of inexpensive musical instruments typically sold at toy stores and Wal-Marts, and marketed towards children and other people who are just dabbling in music.

This little amplifier is louder than it looks. A lot louder.

It's also very crunchy; in spite of what the manufacturer says about "clean to distorted sounds", it's difficult to get a really clean sound out of it. It wants to be distorted, that's all there is to it.

Of course, I'm the sort of person who doesn't consider either of those to be a big disadvantage.

Finally, it has a friggin' cool blue LED.

Tuesday, July 12, 2005

more NES tribute lunacy

This song, called "Oh Jessica", is performed to one of the tunes from Castlevania II. I won't bother posting the lyrics because they're so embarrassingly bad.

(I must retract my earlier promise of no joke lyrics, these are so awful that they can't be anything but a joke. I wanted to write real lyrics for this song, but these just came to me like most of my lyrics do, while I was mowing the lawn, and I couldn't deny them.)

"Jessica" is the name of a girl I knew in high school, whom I never dated and with whom I shared absolutely nothing memorable enough to write a song about, except that her name is the right number of syllables for this song.

I wouldn't use the name of my wife, or any member of my family, or a friend, or a co-worker, or anybody I remotely care about for a song this stupid.

Warning: this is a much more guitar-oriented song than the last one. Wankery ahoy!

PS, Brandon: yes, that Jessica. The one who was your wife in Great Quest III.

Create an application-wide user session for J2EE

Despite its comprehensive sets of APIs for writing distributed applications, J2EE does not provide an application-wide session. While Web applications can use the HttpSession facility, this context won't automatically carry over to Enterprise JavaBeans or J2EE clients. By combining code generation with a mixture of aspect-oriented programming and a hint of design patterns, it is possible to provide such a context across components in an enterprise application and hide most of the complexity from the developer.

Friday, July 08, 2005

things that people believe about MAC addresses

1. They are burned into network cards by the manufacturers and cannot be changed.
2. They are globally unique.

There is apparently still software that tries to rely on those two mythical properties of MAC addresses for security purposes. Wtf?

Tuesday, July 05, 2005

I'm just gonna throw this out there and not explain it

Some people will tell you that the "Sex Pistols" of their generation was Nirvana. BS. The real Sex Pistols of late-80s/early-90s was Guns N' Roses.

number one?

What exactly does it mean to have the "Number One" (or, for that matter, number 100) song in this day and age?

I know that way back when, it was literally based on the number of 7" 45rpm records sold each week. While this was already somewhat bogus because I think even in the 70's there were a lot of people who only bought LPs, at least it was based in reality in some way.

But WTF do they count now? CD singles? Does anybody actually buy those? Do they count legal downloads? How about illegal downloads?

Or is it just completely bogus now, like the New York Times "best seller" book list?

(Inspired by watching the The Filth and the Fury over the weekend)

Monday, July 04, 2005

I have truly seen everything

Today I witnessed an actual dog (a chihuahua in fact) bark along with the chorus of "Who Let the Dogs Out". I mean, the song went "Who let the dogs out?" and then the chihuahua went "woof woof woof" in perfect time. It was like something you never expect to see in real life, like something you'd see on the Simpsons. It was freakin' funny. (Excuse the Napolean Dynamite swearing, but this is a family friendly blog, after all.)

Friday, July 01, 2005

Matt Groening's Portland

Can't remember if I've blogged this before or not.

Hamm's Beer bear - Wikipedia

The two most interesting parts of this:
Its name (never mentioned in the commercials) is Sascha, after the wife of the founder of the company.

Is it supposed to be flattering to a lady to name a beer-drinking bear after her?
parent Miller Brewing had discontinued it over concerns it might be interpreted as marketing beer to children; R.J. Reynolds Tobacco had recently been forced to discontinue its Joe Camel character for similar reasons.


"The Awful German Language" by Mark Twain

via Slashdot