위의 답변은 컴퓨터 그래픽스 (저자에 의해 언급 된 논문이 출판 된 영역)에서 자주 발생하는 몇 가지 실질적인 이유를 놓치고 있습니다. 코드 릴리스는 CS의 필드마다 크게 다릅니다. 예를 들어 머신 러닝에서 코드는 일반적으로 게시됩니다. 휴먼 컴퓨터 상호 작용에서 코드는 거의 게시되지 않습니다.
나는 컴퓨터 그래픽 코드의 꽤 발표했다, 나는 저자가 생각 하는가 동안 해야 자신의 코드를 공개, 그들은 왜 많은 간단한, 비 음모 이론의 이유가 안가 . 예를 들어
1) 대부분의 컴퓨터 그래픽 연구 프로젝트는 종종 서로 다른 기관에있는 여러 연구원들 간의 협력을 포함하며, 각 연구자들은 각각 퍼즐, 조각, 알고리즘 등을 제공합니다. 작업 코드를 공개하려면 모든 연구원이 동의해야합니다. 이것은 간단한 토론이 아니며 일반적으로 문제를 피하는 것이 더 쉽습니다.
2) 단일 논문의 코드는 종종 실험실 내에서 개발중인 더 큰 코드베이스에 포함됩니다. 해당 코드베이스에는 게시되지 않은 다른 작업이 포함됩니다. 단일 프로젝트의 코드를 분리하는 것은 많은 작업이며, 종종이 작업을 수행해야하는 사람들에게 즉각적인 혜택이 없습니다 (아래의 인센티브 참조).
3) 대학은 종종 코드에 대한 IP 권한을 보유합니다. 그러므로, 당신의 인생을 끝없이 어렵게 만드는 "혁신 사무소"에 연락 할 필요가 있습니다. "발명"을 문서화하여 오픈 소스 전에 특허를받을 수 있도록해야합니다. 경우에 따라 대학은 출처 공개 허가를 거부 할 수도 있습니다 (기관에 따라 다르며 (1)에 의해 크게 복잡함)
4) 많은 컴퓨터 그래픽 연구는 회사에서 수행합니다. 이 경우 작성자는 코드를 소유하지 않으며 코드를 해제하려면 변호사의 허가를 받아야합니다. 변호사들은 예라고 말할 유인이 거의 없습니다.
5) 코드를 게시 할 인센티브가 없습니다. 대부분의 컴퓨터 그래픽 연구 코드는 다른 사람이 사용하지 않습니다. 그것이더라도, 범용 코드의 경우 일반적으로 CV 측면에서 무의미한 승인을 얻습니다. 운이 좋으면 인용을 얻을 수 있습니다. 고용위원회와 보조금 기관은 일반적으로 코드를 공개하더라도 1 비트를 신경 쓰지 않습니다. 따라서 릴리스를 위해 코드를 준비하는 데 소비 된 시간은 다른 용지에 소비 될 수있는 시간 낭비입니다. (컴퓨터 그래픽에서 이것을 변경하려는 사람들이 있습니다).
6) 코드를 게시 하지 않을 유인이 있습니다. 코드는 때때로 신생 기업으로 전환하거나 기존 기업에 라이센스를 부여 할 수 있습니다. 이는 미래의 연구에 자금을 제공합니다. 우리 모두 먹어야 해