과학은 오픈 소프트웨어다

1 week ago 21

현대 과학, 적어도 계산과학에서 오픈소스 소프트웨어는 과학 그 자체임. 소프트웨어는 예측 모델을 실행 가능한 형태로 담고 공유하는 수단이기 때문임 재현성은 같은 결과를 반복하는 데 그치지 않음. 다른 사람이 과학적 아이디어를 자신의 모델에 통합하고, 검증하고, 수정하거나 확장할 수 있어야 함 과학적 결과는 그 기반인 소프트웨어의 정확성에 의존함. 연구자가 모든 의존성을 검증할 수 없는 현실에서 신뢰할 수 있는 소프트웨어가 필수적임 오픈소스는 코드를 실행하고 수정하며 함께 개선할 수 있게 함. 지식재산권, 보안, 버그, 안정성 문제를 없애지는 못하지만, 결함을 공개적으로 검토하고 고칠 수 있음 더 나은 계산과학을 위해 코드 공유와 문서화, 재현 가능한 실행 환경, 기존 도구의 활용이 필요하며, 학계의 승진 평가도 소프트웨어 기여를 인정해야 함 과학의 기준과 내적 모델 결과와 논문을 우선하는 학계에서는 소프트웨어 작업을 시간을 잡아먹는 부수 업무로 취급하기도 하지만, 공개적이고 재현 가능한 소프트웨어 작업은 과학적 방법을 지키는 데 필요함 과학은 우주에 관한 검증 가능한 가설과 예측의 형태로 지식을 구축하고 조직하는 체계적 활동임 임의의 arXiv 논문에 지식이 담겨 있더라도, 독자가 그 예측을 직접 검증하고 체계화하기는 어려울 수 있음 Kenneth James Williams Craik의 The Nature of Explanation은 사람이 현실의 작은 시뮬레이션을 이용해 외부 세계를 설명하고 예측한다는 생각을 담고 있음 외부 현실과 자신의 가능한 행동에 대한 작은 모델이 있으면 대안을 시험하고, 상황에 더 안전하고 능숙하게 대응할 수 있음 과학의 목적은 내적 모델을 개선해 이전보다 더 나은 예측을 가능하게 하는 데 있음 이 기준에서는 독자가 세계를 예측하는 데 도움이 되지 않는 논문은 과학으로 보기 어려움 소프트웨어는 예측 모델을 표현하고 공유하는 수단이므로 계산 재현성이 중요함 재현성은 결과 복제보다 넓음 과학적 결과는 단지 존재하는 것만으로 충분하지 않으며, 체계적이고 검증 가능해야 함 논문을 이해하기 어렵거나 접근하기 어렵다고 해서 과학적 통찰이 없는 것은 아님 두세 번 읽은 뒤에야 통찰을 체계화할 수도 있지만, 이해하지 못한 독자는 그 아이디어를 자신의 것으로 삼아 검증하거나 세계 모델을 개선하는 데 활용할 수 없음 재현성은 아이디어를 자신의 내적 모델에 통합하고, 상황에 맞게 수정하고, 그 위에 새 ...

Read Entire Article