Archive for June, 2009

Workaround for IE7 mouseout bug

Tuesday, June 30th, 2009

I had a beautifully crafted site (Serendeputy, in case you were wondering) that worked in all the browsers. Then, I noticed that in Internet Explorer 7, the mouseover and mouseout actions weren’t working correctly. Specifically, the mouseover event would fire correctly, adding a hover class that exposed additional information; unfortunately, the mouseout action was way too eager: it would fire when the mouse left any text, not when it left the div.

The users couldn’t access the items the hover class exposed. As soon as they went to click on them, the items disappeared. It is not nice to cruelly taunt your users.

Anyway, Google let me down, and I couldn’t find any good workarounds. So, this is what I did.

I ended up using a different class for IE, despite the icky duplication it caused in the stylesheet. This is what the original beautifully-simple jQuery code looked like:


$("div.story").mouseover(function(e) {
  $(this).addClass("hover");
});

$("div.story").mouseout(function(e) {
  $(this).removeClass("hover");
});

This code worked in every browser but IE7. Here’s what I did for IE7:


$("div.iestory").mouseover(function(e) {
  $(".iestory").removeClass("hover");
  $(this).addClass("hover");
});

So, this removes the class from all possible divs as you enter a new one. It then lights up the hover for the current div. This is hitting a fly with a sledgehammer, but it was the simplest thing I could think of that would possibly work. You don’t really notice the speed hit unless you have tons of these possible divs on the page.

If there’s a better way to do this, please leave it in the comments. If not, then I hope you find this useful.

Lots of smart people thinking the same way

Thursday, June 25th, 2009

TechCrunch writes this morning about Fever, a personalized RSS reader from Shaun Inman. I’ve been a fan of Mr. Inman’s for a long time, having bought installations of Mint, his stat-tracking program, for several of my sites. From TechCrunch:

Besides offering a full-featured feed reader, the application attempts to create a personalized Techmeme by scanning a user’s feed list for popular (or hot) links. Fever then groups these links into stories and assigns each a “temperature.” This allows a user to quickly keep a pulse on what’s going on in his or her “slice of the web.”

I’m glad to see that other smart people are trying to solve the same problems that I am. Helping people make the most of their limit time and attention is one of the biggest challenges of the next couple of years. Fever is an interesting take on it.

Built out the vocabulary engine

Wednesday, June 24th, 2009

Today has been one of my more exciting days building. I finally finished up my vocabulary engine.

The vocabulary engine lets me fine-tune my classification engine topic-by-topic and source-by-source. This will allow me to do some pretty sophisticated disambiguation, and I hope that it will make document classification all the more effective.

This is still a hand-defined engine, but I also wrote in the hooks for the machine-learning piece. That’s still a ways away, though.

I’ve been an IA geek for a little over fifteen years at this point. Having the system of my dreams is pretty cool. It’s pretty rewarding to have the system you’ve had in your head for a long time actually exist in the real world. I’m not quite a sculptor, but I have to imagine the feeling is the same.

Three cheers for crushing self-doubt

Tuesday, June 16th, 2009

The creeping terrors arrive. I wonder if I’ve spent a year building a personalized news site that no one else is ever going to use or like.

Well, it is what it is. If nothing else, I’ll have a kickass personalized news site for myself.

Getting closer

Tuesday, June 16th, 2009

We’re getting ever closer. The placeholder page is up. Drop me a note if you want to play with the private beta. The public launch is imminent-ish.

Part of me wants to hold off on inviting people. Serendeputy’s getting better every day (literally, as I’m spending most of the day in Emacs tweaking things), so the longer people hold off on trying it, the better it will be. But, I need to put it out there at some point. Might as well make it soon.

My favorite quote of the day is from Reid Hoffman, the founder of LinkedIn, among other companies.

If you review your first site version and don’t feel embarrassment, you spent too much time on it.

Reid Hoffman, as quoted in Mark Goldenson’s 10 lessons from a failed startup, a post-mortem of what PlayCafe’s founders did right and wrong.