Biomedical Open Source Software: Crucial Packages and Hidden Heroes
본 논문은 CZ 소프트웨어 언급 데이터셋을 활용하여 PyPi, CRAN, Bioconductor 생태계에 걸친 생명정보학 연구 소프트웨어의 상류 의존성을 매핑하고 분석하며, 중심성 지표를 통해 종종 간과되는 과학 공동체에 대한 중요성을 부각시키는 핵심 '숨은 영웅' 패키지를 식별합니다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
과학 연구의 세계를 거대하고 붐비는 도시로 상상해 보세요. 이 도시에서 과학자들은 새로운 발견을 설계하는 건축가이자 건설자입니다. 하지만 그들은 벽돌과 모르타르로 짓는 것이 아니라 소프트웨어로 짓습니다.
오랜 기간 동안 우리는 이 도시의 "마천루"만 바라보았습니다. 즉, 과학자들이 논문에서 직접 언급하는 크고 화려한 소프트웨어 도구들 말입니다. 우리는 마천루를 누가 지었는지 알고 그들에게 상을 수여합니다. 하지만 이 논문은 그 마천루를 지탱하는 기초, 배관, 그리고 배선을 무시하고 있다고 주장합니다. 그것들 없이는 도시 전체가 무너질 텐데, 이러한 숨겨진 부분을 유지하는 사람들은 종종 인정도, 자금도, 명성도 받지 못합니다.
다음은 이 논문이 무엇을 하고 무엇을 발견했는지에 대한 간단한 요약입니다:
1. "보이지 않는" 노동자들
소프트웨어 패키지를 레시피라고 생각해 보세요.
- "보이는" 요리사: 과학자가 유명한 레시피 (예:
ggplot2또는DESeq2) 를 사용하여 요리를 (연구 논문을) 만듭니다. 모든 사람이 요리사와 요리를 봅니다. - "숨겨진" 공급자: 그 유명한 레시피는 실제로 수십 가지 다른 재료에 의존합니다. 특정 종류의 밀가루, 특수 오븐, 독특한 계량 컵 등입니다. 이러한 재료들은 다른 소프트웨어 패키지들입니다.
- "네브래스카" 문제: 이 논문은 인터넷 인프라의 중요한 부분을 아무도 모르게 유지하는 네브래스카에 사는 남자에 대한 만화를 재미있게 인용합니다. 이것이 바로 **"네브래스카 패키지"**들입니다. 그들은 밀가루와 오븐입니다. 최종 논문에서 거의 언급되지 않지만, 그것들 없이는 레시피가 실패합니다. 그들은 "숨겨진 영웅"들입니다.
2. 도시를 어떻게 매핑했는지
연구자들은 논문에서 언급된 사람만 본 것이 아닙니다. 그들은 거대한 의존성 지도(소프트웨어의 가족 나무) 를 구축했습니다.
- 그들은 240 만 편의 생물의학 논문을 살펴보았습니다.
- 해당 논문에서 언급된 모든 소프트웨어 패키지를 추적했습니다.
- 그다음, "이 패키지는 실행되려면 무엇이 필요한가?" 그리고 "저것은 무엇이 필요한가?"라고 물었습니다. 그들은 가장 깊고 근본적인 도구를 찾기 위해 층층이 토끼굴을 파 내려갔습니다.
그들은 **카츠 중심성 (Katz Centrality)**이라는 수학적 도구를 사용했습니다. "케빈 베컨의 6 단계" 게임을 상상해 보세요. 다만 배우 대신 소프트웨어가 등장합니다.
- 만약 어떤 소프트웨어가 유명하고 많이 인용된 논문에서 사용된다면 점수를 받습니다.
- 만약 어떤 소프트웨어가 또한 중요한 다른 소프트웨어에 의해 사용된다면 더 많은 점수를 받습니다.
- 이를 통해 직접적으로 언급되지 않더라도 전체 시스템에 필수적인 도구들을 찾아낼 수 있습니다.
3. 네 가지 유형의 소프트웨어 ("스토크스" 지도)
저자들은 소프트웨어를 도시 지도처럼 네 가지 그룹으로 분류했습니다:
- "파스퇴르" 패키지 (슈퍼스타): 이들은 유명한 것들입니다. 논문에서 끊임없이 언급될 뿐만 아니라 많은 다른 도구의 기초가 됩니다. 예:
ggplot2,DESeq2,numpy. 모든 사람이 알고 있으며, 이들은 결정적으로 중요합니다. - "인기" 패키지: 논문에서 많이 언급되지만, 다른 것들의 기초가 되지는 않습니다. 연구의 "얼굴"이지만 엔진은 아닙니다.
- "대다수" 패키지: 거의 언급되지 않고 다른 도구들에 의해 거의 사용되지 않는 지루하고 작은 도구들입니다. 이들은 배경 소음입니다.
- "네브래스카" 패키지 (숨겨진 영웅): 이것이 큰 발견입니다. 이들은 결정적으로 중요 (높은 중심성) 하지만 논문에서 거의 언급되지 않는 도구들입니다. 이들은 침묵하는 엔진들입니다.
- 발견된 예시:
vctrs(R 의 데이터 유형 처리 도구),withr(코드 안전 실행 도구),setuptools(Python 코드 패키징 도구). - 하나의 구체적인 발견은
tifffile이었습니다. 이는 한 사람이 만든 고품질 이미지 파일 처리 도구입니다. 많은 프로젝트에 필수적이지만 문헌에서는 거의 보이지 않습니다.
- 발견된 예시:
4. 이것이 중요한 이유
이 논문은 과학자를 보상하는 현재의 시스템이 고장 났다고 주장합니다.
- 우리는 "마천루" (가시적인 도구) 를 쓴 사람들을 보상합니다.
- 우리는 "배관" (네브래스카 도구) 을 유지하는 사람들을 무시합니다.
- 위험: 이러한 숨겨진 도구들이 고장 나거나, 자금을 받지 못해 유지하는 사람들이 그만둔다면, 과학 도시 전체가 위험에 처합니다. 이는 유틸리티 회사가 선로 작업자에게 급여를 지급하지 않아 전력망이 고장 나는 것과 같습니다.
5. 한계점 ("세부 사항")
저자들은 그들의 지도가 완벽하지 않다고 솔직하게 인정합니다:
- 이름 혼동: 때로 소프트웨어는 다른 것과 같은 이름을 가집니다 (예: "TopHat"이라는 도구와 쓰이는 모자). 컴퓨터가 가끔 혼란을 겪었습니다.
- 누락된 부분: 그들은 특정 "상점"(PyPI 및 CRAN 등) 의 오픈 소스 패키지만 살펴보았습니다. 엑셀과 같은 독점 소프트웨어와 리눅스 커널과 같은 매우 깊고 저수준의 시스템 코드는 추적하기 어려워 놓쳤습니다.
- 시간 여행: 그들은 현재 존재하는 소프트웨어를 보았습니다. 하지만 소프트웨어는 변합니다. 10 년 전에 결정적이었던 도구는 이제 구식일 수 있지만, 지도는 여전히 그것을 중요하게 표시합니다.
결론
이 논문은 행동의 호소입니다. **"얼음산의 꼭대기만 보지 마십시오."**라고 말합니다.
과학이 앞으로 나아가게 하려면, 자금 지원자와 기관들은 현대 연구를 가능하게 하는 보이지 않는 기초 소프트웨어인 "네브래스카 패키지"들을 인정하고 지원해야 합니다. 그렇지 않으면 과학 인프라 전체가 밑바닥부터 무너질 위험이 있습니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.