Jpeg problems in Firefox and IE

Problem: Someone emails you an image file. You can see the thumbnail fine in Gmail, so you save it to your hard drive. But when you try to view the image in Firefox, you get this error instead: The image “file:///C:/Documents%20and%20Settings/whatever.jpg” cannot be displayed, because it contains errors. Paint.net and Photoshop can view it. Re-saving the file in Paint.net works; re-saving in Photoshop doesn’t work. What’s going on?

Solution: You got an JPEG which uses CMYK instead of RGB encoding, and Firefox/IE choke on such files. In Photoshop, you can convert the JPGs to RGB colorspace, or you can select “Save For Web…” to make the file valid for common browsers.

Takeaways:
- When you get a weird error message, do an exact search for that error message, e.g. “cannot be displayed, because it contains errors”.
- If you write software, make your error messages as descriptive as possible. Something like “This image is in CMYK color space, so you’re screwed, buddy. Try converting it to RGB instead.” That’s much more helpful than “your file contains errors,” especially since it isn’t really an error. Other programs handle JPEGs like that just fine.

R.I.P., Google Answers

Google has decided to shut down Google Answers. In my personal opinion, this was the right call. Products from years ago often need overhauls and rewrites or else the underlying code grows stagnant, and the Answers code launched in 2002. And even if a product runs with very little resources, it’s still a tiny bit of a distraction. Greg Linden said it best: “Old products never die, but they should. To innovate, it is not enough to love creation. We must also love destruction.”

By the way, I had the honor of mentoring Lexi on her very first starter project years ago (even before she tackled Google Answers). I can’t tell you what it was, but to this day I still point other Googlers to it as a model to learn from. One of Google’s biggest strengths is the same as Soylent Green: it’s the people. Except not in a creepy foodstuff kind of way. More in a “the right person at the right time can change the course of a company” kind of way.

I remember back when Google was a couple hundred people and maybe one hundred engineers, I walked around the building late one night and just counted what I call “diamonds in the rough”–people who I believed could tilt a company from failure to success by their own efforts. Things like the ability to conceive of a completely different search architecture that would clearly outperform the best-of-industry standard. At the time, I counted 11 people out of the hundred engineers, which to my mind is an incredibly high number (remember, these are people that a start-up may only need 1-2 of). I still can’t believe the critical mass you can get when you can attract a high caliber of people. As Paul Graham puts it, “Smart people will go wherever other smart people are.”.

Okay, as I’m writing this it’s late and I’m still in Omaha, except I’m an uncle (uncle-in-law?) now, and I’m starting to wander. Why don’t I stop here? :)

MSFT adds bot verification

A couple months ago Google gave a way to do Googlebot verification. Basically, it involves two steps: a reverse DNS lookup followed by a forward DNS lookup. Now Microsoft has implemented the same DNS policies, so you can use the same method to verify MSNBot.

Good for them. Who will be next to implement this open method to authenticate search engine bots: Yahoo!, Ask, or Exalead? Place your bets. :)

Update: w00t! I’m digging out from comments and just saw this comment by Peter Linsley of Ask: “The issue of whether Ask could support bot authentication was raised in Las Vegas at PubCon and we’ve updated the webmaster FAQ. No surprises here, it’s the old DNS roundtrip lookup trick; all our crawlers are under the ask.com domain:

http://about.ask.com/en/docs/about/webmasters.shtml”

So it looks like Ask wins the prize! Here’s the specific entry in Ask’s documentation:

Q. How do I authenticate the Ask Crawler?
A: A User-Agent is no guarantee of authenticity as it is trivial for a malicious user to mimic the properties of the Ask Crawler. In order to properly authenticate the Ask Crawler, a round trip DNS lookup is required. This involves first taking the IP address of the Ask Crawler and performing a reverse DNS lookup ensuring that the IP address belongs to the ask.com domain. Then perform a forward DNS lookup with the host name ensuring that the resulting IP address matches the original.

I’m in Omaha

I’m in Omaha, so light posting this week. I’m checking with PR if I can post pictures of my slides from the “Search Engine Smackdown” talk at PubCon. And since my slides were all nice, polite, and smackdown-less, I expect that I’ll do a “poor man’s version” of the talk on the blog sometime soon.

Google vs. Yahoo at sports

(Okay, I did a serious SEO post about PubCon. I’ll do a fun one about the bowling at the MSN party. As it happens, I didn’t hit the Yahoo party, the MSN party, or even Greg Boser’s birthday party this time around. But I heard from several people that they were a lot of fun.)

Google’s mission statement is to organize the world’s information and make it universally accessible and useful. I’ve heard that Yahoo’s unofficial motto is to work hard and play hard. Given those two mottos, which company do you think is going to be better at sports? Oh hell yes, I believe it will be Yahoo. If you want world chess or puzzle champions, we are your company. If you want intramural sports, I’d bet on Yahoo.

Sure, it’s a sweeping generalization, but let’s look at some sports. Recently Yahoo! and Google played tennis against each other. Who took that one? Yahoo did. And a couple months ago, these flyers turned up at the Googleplex as Yahoo and Google squared off in softball:

Google Softball flyer

I don’t know who won that match-up, but I’d be willing to bet a shiny quarter that Yahoo did. On the other hand, Google can acquit itself pretty well at some activities. At SES San Jose, Vanessa Fox suited up in a sumo wrestling suit and took down her Yahoo! opponent, 3-1.

Given, all this, I was interested to hear bowling results from the MSN party at PubCon (MSN rented out a suite with a bowling alley at the Palms). It turns out that Danny snapped pictures of the final scores. A few of the players and their scores:

Melanie Mitchell (AOL) – 133
Eytan Seidman (Microsoft Live) – 116
Danny Sullivan (Search Engine Land) – 112
Tim Mayer (Yahoo!) – 99

I skipped the MSN party, but I’ll chip in my last bowling score:

My bestest ever bowling score

It’s nice to know that I could have gone to the MSN party without fear of bowling shame. I know, I know, you’re wondering why I have a copy of a bowling game from last year. Two reasons: first, it’s the highest score I’ve ever hit by margin of 50 points or so. I doubt I’d ever do that well again. Second, it was about an hour before I took my punishment for losing a bet. If you have to bet on a company for something sports-related though, I’d still put my money on Yahoo! over Google. :)

css.php