Is my programming knowledge contaminated?
<p>We know that ideas are not copyrightable (except for patent related issues), but expressions are (<a href="https://en.wikipedia.org/wiki/Idea%E2%80%93expression_distinction" rel="nofollow noreferrer">idea–expression dichotomy</a>). However, after reading about <a href="https://en.wikipedia.org/wiki/Clean_room_design" rel="nofollow noreferrer">clean room design</a>, I got somewhat confused. Wikipedia states:</p>
<blockquote>
<p>The term implies that the design team works in an environment that is
&quot;clean&quot; or demonstrably uncontaminated by any knowledge of the
proprietary techniques used by the competitor.</p>
<p>Typically, a clean-room design is done by having someone examine the
system to be reimplemented and having this person write a
specification. [...] The specification is
then implemented by a team with no connection to the original
examiners.</p>
</blockquote>
<p>This description suggests that mere knowledge of copyrighted implementation details can become an issue. And therefore the clean room method was devised as a technique to circumvent this issue.</p>
<p>To me this implies that as soon as I read a programming book (with code samples) or open source code, my knowledge is contaminated or biased and the code that I write might infringe copyright. Is this true or did I misunderstand the clean room design principle?</p>

<p>Clean room design is intended to protect against not only copyright liability, but possible trade secret liability as well. It avoids any possibility that any part of the expression of the source work has been included in the re-implemented work, because the designers and creators of the latter work only from a specification.</p>
<p>There is never a legal requirement to use clean-room design. It is a strategy used to ward off possible legal action by demonstrating in advance that no unauthorized and protected elements have entered the re-implemented product.</p>
<p>It does not follow that someone who has learned concepts and ideas from a protected work must employ clean room principles to  use that knowledge. Someone looking to sue for copyright infringement would need to show some aspect of the protected expression that had been copied. Without that there is no <em>prima facie</em> case to answer.</p>

<p>The clean room design strategy is not necessarily a best practice – it's a proactive defense strategy when you expect to be sued for copyright infringement. For example, if you have a company and want to reverse-engineer a competitor's functionality, a clean-room design could help minimize legal risks. Executed correctly, it makes it possible to <em>prove</em> that your implementation cannot be infringing.</p>
<p>But just because you have viewed copyrighted material doesn't imply that anything you create would be infringing. You merely have the opportunity to infringe (intentionally or unintentionally).
Authors read other authors' books.
Directors view other directors' films.
Bands listen to other bands' records.
And software developers read other developers' code.
This is perfectly normal.</p>

copyright software open-source-software