What are you talking about? Everyone knows knitting is tremendously seductive.

Tonight I found myself talking to a member of the “seduction community”. As per my new resolution, instead of staying politely silent, I spoke up and said they were full of shit.

I also offered some advice: If you want to date more women, hang around more women. For example, try joining a knitting group. There are knitting groups all over the place (they’re the new book clubs). I know several knitters, and they tend to be creative, fun women, and a lot of them even like nerdy guys.

“But that’s not what I want. I want to be a studly womanizer who seduces a different supermodel every night. My support network of fellow losers tells me that it’s totally possible.”

Yeah, good luck with that, asshole.

I hope there’s a special level of hell for Pat Robertson

Pat Robertson is such a dick. One hundred thousand Haitians die (about 1% of their population — the equivalent of 3 million Americans dying), and he says it’s because they “made a pact with the Devil”? What a heartless lying bastard. It’s time we start boycotting any television station that carries his show.

God needs to bring back Tammy Faye.

Three songs by George Michael that are hillariously hypocritical in retrospect

1) I Want Your Sex

In this U.S. #2 hit from 1987, George Michael begs his female lover to have sex with him. This was 11 years before George was caught soliciting anonymous gay sex in a public lavatory in Los Angeles.

His actual girlfriend of the time appeared in the videoclip. “Don’t you think it’s time you had sex with me?”, he asks of her. “I tell you that I love you but you still say no.”

I suspect it was actually the other way around.

2) Monkey

In this U.S. #1 hit from 1988, George rails against his lover’s addiction (unspecified, but presumably drugs).

This was 18 years before George was found passed out at the wheel of his car in the middle of the road due to habitual drug use. And 18 and half years before the second time George was found passed out at the wheel of his car in the middle of the road due to habitual drug use.

3) Spinning the Wheel

In this U.K. #2 hit from 1996, George laments the unfaithfulness of a lover who seeks out dangerous sex with strangers. “Ain’t you getting what you want from me?”, he asks.

Ten years later, George was (again) busted for seeking anonymous public sex. George told the media that it was okay because he and his boyfriend, Kenny Goss, had an open relationship. Apparently that was news to Kenny.

BSG: The Plan was awesome

Or, at least, BSG: The Plan would have been awesome if it had immediately preceded “No Exit” (episode 4.17) instead of coming as a tepid postscript to the series.

Read the rest of this entry »

Bjarne Stroustrup: Full of crap Very nice fellow

I was reading through Bjarne Stroustrup’s The C++ Programming Language, supposedly the definitive book on the C++ language by the man who invented it, when I found a mistake in it.

In Section 7.2.2 (in the chapter on operator overloading), he says:

In particular, operator=, operator[], operator(), and operator-> must be non-static member functions; this ensures that their first operands will be lvalues.

That’s not true at all. Being member functions won’t ensure that their first operands are lvalues. And nor do the first operands even need to be lvalues. (I’m sure we’ve all written code like get_smart_pointer()->foo(), where get_smart_pointer returns an object of class type. In that situation, the first operand of the -> operator is not an lvalue.)

I suspect the real reason that operator[], operator(), and operator-> must be member functions is to prevent the first operands from being built-in types, and the reason operator= must be a member function is because the compiler needs to know at the time of the class’s definition whether or not to generate a default operator= function.

Apparently there are parts of the C++ language that Bjarne doesn’t actually understand.

(By the way, I checked two different editions of the book — an older one and a more recent one — and they both contain this error. So it wasn’t just a one-off misprint.)

Cheryl Cole is not a fashionable woman

It seems to be a standard trope in celebrity journalism to talk about what a fashionable woman Cheryl Cole is.

They’ve obviously never seen this photo:

Cheryl Chav Cole

Read the rest of this entry »

Dannii vs Cheryl (a.k.a. Goddess vs Chav)

It’s funny how quickly the public can turn on you.

This time last year, Cheryl Cole could do no wrong. She was on the cover of Vogue Magazine. She was voted sexiest woman in the world by FHM. Women liked her, men liked her, and who cares about that pesky criminal conviction for assault. I’m sure it was just a misunderstanding.

But now the headlines have changed. “Cheryl’s too thin”, “Cheryl’s showing too much skin”, “Dannii outdresses Cheryl again”.

And on top of that all: Her debut solo single is crap.

Where did it all go wrong for Cheryl? Well, I can tell you. It went wrong for her when she crossed paths with Dannii Minogue.

Dannii Minogue with motorcycle

Read the rest of this entry »

The unintentional homoeroticism of “O Canada”

The English-language version of O Canada has come under attack for a lot of reasons. People complain that it’s sexist, or dislike the reference to God, or the use of the word “native”.

But there’s a more embarrassing problem with the anthem, if you ask me: The cryptic line “True patriot love in all thy sons command”. It doesn’t make any sense.

I think a lot of people mishear the line as “True patriot love in all thy sons’ command” (i.e. in the command of all thy sons), but have another look. There is no apostrophe.

Read the rest of this entry »

Thanks a lot, C++ committee.

Hey, has anyone noticed that the function strtod, declared in the standard header file <cstdlib>, has the wrong signature?

The signature is:

double strtod(const char *str, char **endptr)

but it ought to be:

double strtod(const char *str, const char **endptr)

This means you have to use a const_cast just to use this function correctly. Gah. (This also applies to related functions strtol, stroul, and strtoll.)

This one is for all you Canadian politics geeks

Have a read of my petition regarding the appointment of the Governor General. If you like it, sign it.

Feel free to correct me on my French too.