Hacker News new | ask | show | jobs
by madgar 3426 days ago
> In the limit it means "you read this code, understood how it worked, and wrote new code that could do the same function." You can stretch that to cover anything you have ever seen. Which is sad.

I thought the industry adopted "clean room" techniques decades ago to avoid this kind of appearance of impropriety.

It's more expensive, sure, but isn't eliminating legal risk something that typically gets paid for?

4 comments

This particular point worries me. Are we now not going to be able to make a clean room re-implementation of concept? Do we need to worry about our previous employer suing us because we are successful?
They didn't seem to do clean room here. Seems like Carmack was wrote code for both companies which is the exact opposite of clean room.

(Please correct me if I misunderstood the facts of the case)

The employer of John Carmack is buying his work product for as long as he remains an employee. The company cannot buy his knowledge and expertise from him, as that is an integral and indivisible part of him.

So if you hire Carmack to write a rendering engine, then he quits and goes to work for another company, to write a different rendering engine, he is not "copying" the engine you bought. His memories of all the software he had previously written do not belong to you. You cannot contractually obligate him to forget a part of himself that makes him valuable as a software professional.

The work of a software professional is constrained, because while a given mathematical problem may be solved in an infinite number of ways, only a few of those ways will be optimal for any given set of computing conditions. Different implementations may be grouped by algorithm. With respect to computer graphics, all rendering engines will tend to converge on the fastest algorithms for painting pixels on rectangles. Because of this, all rendering engines will be very similar in some respects. But they will also markedly diverge in others.

There are pretty much only 4 types of algorithm: the fast way, the frugal way, the magical way (viz. both fast and frugal, but requires top-level expertise to invent or understand), and the hardware exploit. Carmack is certainly capable of writing magical algorithms. And he can remember how to make the pixie dust. He will also tend to write all his implementations in a similar style.

Thus it is very possible that one person could write identical code at different times, while having no specific memory of the previous time it was written, nor any need to refer to associated documentation around that instance.

The clean room is clean if no property of the other company was ever inside it. Carmack cannot be property, therefore his presence is not a contaminant. My opinion is that any non-disclosure agreement Carmack may have been a party to can only meaningfully cover the contribution of other individuals to the project, since Carmack-qua-Company-A-employee cannot meaningfully wall off knowledge from Carmack-qua-Company-B-employee. If Company A wanted to keep Carmack's raw knowledge and expertise from Company B, they would have had to get him to sign a non-compete agreement (which no one at his level of clout should ever do for less than a significant ownership share in Company A).

> The employer of John Carmack is buying his work product for as long as he remains an employee. The company cannot buy his knowledge and expertise from him, as that is an integral and indivisible part of him.

This is the entire point of non-compete agreements. To deny competitors the expertise the person has developed during their time at your company.

I'm not entirely certain that you read all the way to the end of my reply.

To really lock someone up, you need both a non-disclosure and a non-compete. And anyone worth a non-compete should make it really expensive for the company that is asking for it. You're trading away potentially several years worth of lost opportunity costs to basically not be what you are for some time after leaving a company.

"Clean room" is a name for one extreme of the spectrum, where you go for overkill in demonstrating and documenting there's no possible way there could have been copying. The law says you don't need to go so far, but people try to mitigate the low burden of proof in US court civil cases.
In this case, and others like it, a clean room is challenging because a principal (in this case Carmack) left one company and joined another. So the 'taint' if you will is in his head.
If so, then I see two possibilities here:

1) The IP in question was only reimplementable with Carmack involved, and the lawsuit was basically inevitable. Hiring Carmack in this scenario is reasonably perceived as an end-run around buying/licensing the IP itself.

2) The IP could be reproduced clean room without Carmack involved. Lawsuit is easily headed off.

The visual and written arts seem to get away without requiring "clean room" techniques. It's not like authors have to avoid reading any other author's work.