Occasionally, someone will brag about their progress in such a way that not only do you realize they’re actually far behind, but that they have absolutely no idea how far behind they are or how much lies ahead.
In software engineering, there’s a certain type of programmer fitting this mold that everyone runs into sooner or later. They’re not very communicative, but whenever asked about the status of their part of the project, they response positively, reporting things are going well. No big issues.
They usually have some experience, meaning nobody really has to watch over their shoulder. Besides, everyone else is busy getting their part done.
There is a very distinct moment at which you realize one is on your project. A moment where your heart fills with an icy chill, and mind can’t help but lock in on the words “OH FUCK.”
It’s days before QA — or even before launch — when everyone needs to have everything done. Not “mostly done.” Not “almost done.” Really done. Done done.
As in the users can use it now.
As the group assembles for the status check, maybe others in the room to report a bug or two they are putting the last touches on. Or a taking care of last minute cosmetic issue. When it comes our friend, he proudly proclaims his status — so gleeful you can almost see the “Mission Accomplished” banner behind him — “Great!”, he says, “I got it to compile this morning! It’s done!”
Typically, this moment is filled with silence. Maybe after a brief pause, someone will clarify that this, in fact, the first time it compiled. Usually, the response, a grinning acknowledgment with an “Ain’t it great!?” feel, confirms the worst.
The rest of the team continues to reflect in silence. Not because they don’t want to burst his bubble, but because they are realizing how utterly fucked they are. How the launched is delayed. And their personal lives are about to go out the window, as it will now fall to them to find all the guaranteed problems with the untested code & spend late nights & weekends getting it ready enough to launch.
It’s not quite the same, but that sort of thing was going through my mind when I read how Microsoft had announced improvements for their search engine.
To quote from the article:
Nadella said the updates will be phased in by the end the month. Among them, he said, are improvements to the way Live Search interprets what users are looking for, even if they misspell a word, type in two separate words instead of a compound word or use a variation, like “driving” instead of “drive.”
Live Search also will better detect what Nadella calls “stop words” — keywords or phrases that aren’t considered unless there’s a specific combination or context — like the name “Will Smith” in the U.S.
“It’s a huge improvement,” Nadella said. “We believe we can now compete with Google.”
They didn’t have these things before?!
Understanding “driving” vs. “drive”? That’s a pretty basic problem called stemming. How basic? Put it this way, there’s been open source code out there to this before there was a Microsoft Search. Fuck, even the Wikipedia page has existed since 2007. All they had to do was go there. I know Microsoft is big about “eating their own dogfood”, but damn, use Google just this once to find it.
Now et’s assume for a second, they’ve had stemming and it’s a problem that’s actually harder — something like knowing “car” and “automobile” are the same thing. Now, granted that’s harder, but here’s the thing — when I transfered down to Yahoo Search Marketing, some 4-5 years ago, they already had this technology. The process was called canonicalization, and by the time I got there, it was an old, well-established piece of technology. So well-established that despite being fairly technical, everyone in the company — business, product, support, etc. — knew it was, at least at a high level, its purpose and so on.
Likewise their updated stop words. Yahoo’s long had a process called “Units”, which look for things like “Denzel Washington” and know it’s not the same as the Northwest state or the national capital. You can see a related patent application from Yahoo here. Although, if you work for Microsoft (or Google), it’s probably best you didn’t.
So really what was the crux of Microsoft’s announcement? Two things:
- They have absolutely no idea how far behind they are.
- They’ve launched technology that will catch them up to where the other big players were 5-6 years ago.
And now they think they’re on par with Google?
Seriously, it’s like they got a Revolutionary War era powder-gun off Ebay and declared “We believe we can now compete with the U.S. military.”