Devil's Advocate: The Microsoft-to-Google defection

It can't be the code they were after...

It can't be the code they were after...

The latest row over a Microsoft search expert who took a job offer with Google highlights the twin issues of software patents and secrecy, says Martin Brampton.

Perhaps it is the familiar paranoia but Microsoft is aggrieved by the possibility that Google might have pulled a fast one. It is accusing the search engine wizard of hiring a programmer who knew about Microsoft's own search technology. This is actually a very curious twist to the intellectual property rights (IPR) debate.

By and large, the last thing any programmer wants is a copy of somebody else's program. Every decent programmer knows that other programmers' work is seriously deficient. At the very least it needs to be in a better format but most likely it needs to be completely rewritten. These days, it probably contains quite a few glaring bugs.

It has always been one of the problems of IT that the value of code has been grossly overstated. This stems from the failure of many decision makers to comprehend what software development is about. Actually creating code is not really the issue. The first problem faced by the programmer is that the specification is rarely complete and is often not feasible, as stated.

Programming is, significantly, the working out of details in the specification, and possibly its complete recasting in the cold light of logical possibility. The idea that business analysts, or their like, work out all the real logic is completely divorced from reality. For most software, the devil really is in the detail.

The other major issue for programmers is that seemingly plausible code turns out to do something quite different to what was intended. This happens regardless of the level of the tools used. It can be worse with higher level tools, because their greater use of apparently ordinary language has a strong tendency to mislead.

Even in the best circumstances, almost any program can be rewritten better. If there is copyright on the old version, then rewriting is quite likely to get around the restriction. The new program need share very little with the old one, can carry out the same functions, and may well do so more efficiently and with less scope for error. The hard part is understanding somebody else's program in the first place.

So it seems unreasonable to imagine that Microsoft is worried about its actual code falling into other hands. One therefore assumes that the concern is with the ideas behind the code. That is the focus of software companies' desire to patent their work. There are numerous problems to that, many of which I have discussed in previous columns.

In relation to search engines, two problems are prominent. One is that many of the basic techniques were established long ago. It is the way they are put together that counts. The other is that the real battle for understanding is not so much between the search engine vendors as between them and the website builders.

And it is unlikely that software patents would help at all for this last problem. The issue is that website builders want to know how the search engines evaluate sites. As soon as they know, they figure out ways to distort the factors that matter, so as to promote their own sites. Many of the techniques are perfectly legal and proper, others, such as link spamming, are not.

But patenting their techniques is hardly going to give the search engines a start over the site builders. Secrecy is essential for finding ways to evaluate sites that deliver effective, undistorted results. Patents necessarily involve the abandonment of secrecy. Once again, it seems IT creates new problems that need new thinking rather than the simple application of old principles.