Skip to main content

Command Palette

Search for a command to run...

비판에는 대책이 없어도 된다

Published
2 min readView as Markdown

나는 대책 없는 비판이라는 말을 극도로 혐오한다. 자기가 옳다고 믿고 싶은 마음이 지나친 나머지 긍정적 결과를 낼 수 있는 토론을 미리 차단하는 것처럼 보여서다.

문제가 충분히 공론화되지 않은 상태에선 많은 사람들이 문제점을 인지하게 만든 뒤 해결책을 같이 고민하는 게 맞다.

대부분의 경우 해결책에 대해 같이 고민하는 게 낫기에 문제를 제기하는 사람이 해결책을 제시할 필요는 없다.

이게 내 생각이다.

잘 관리되는 오픈소스 커뮤니티는 대부분 이런 식으로 문제를 해결한다. 선진국들의 정치가 잘 관리되는 오픈소스 커뮤니티조차도 못한 수준이라는 게 정말 슬프지만 실제로 그렇다. 단순하게, 이슈 트래커에 버그 리포팅을 하는 사람이 PR을 보낼 필요는 없다. 어지간한 개발자는 다 이해할 말이지만, 이건 너무 규모가 다른 거 아니냐고 할 수도 있으니 다른 예시를 들어보겠다.

러스트의 std::mem::MaybeUninit은 기존 러스트의 API인 std::mem::uninitialized에 근본적인 문제가 있어서 나온 API다. 하지만 처음 문제 제기한 사람은 해결책을 제시하지 않았다. 심지어 그 사람은 API가 잘못되었음을 입증하지도 않았다. 뭔가 이상하다고, 어떤 상황에서 문제가 생기는데 자기가 뭘 잘못했는지, 어떻게 고쳐야하는지 모르겠다고 질문했을 뿐이다. 당연한 것이다. 원래 머리 쓰는 일에서 문제 제기와 문제가 맞음을 입증하는 것, 그리고 해결책 제시의 난이도 차이는 상상을 초월한다. 질문에 답변해주기 위해 문제를 살펴보던 사람들이 토론을 거쳐 문제가 맞음을 입증한 것이고, 그 사람들이 정리해서 공론화를 했다. 그리고 그런 뒤 다른 사람들이 토론을 거쳐 해결책을 제시했다. 그 해결책이 RFC라는 토론 과정을 거치면서 개선되었고 결국 표준 라이브러리에 추가된 것이다.

근데 이는 개발에서만 일어나는 일이 아니다. 뉴턴 역학으로 계산한 결과가 실제로 일어나는 현상과 맞지 않는다는 걸 발견한 사람들이 스스로 새로운 가설을 만들 때까지 문제를 알리지 않았다면 과연 상대성이론이 나올 수 있었을까?

상대 주장에 해결책이 있어야 상대의 주장을 반박하기 쉬운 건 맞지만, 목표는 반박이 아니라는 걸 잊지 말자.

More from this blog

Labor0를 만든 이유

사람이 병목이 되는 횟수를 줄이기 AI 에이전트 세션을 많이 실행하는 것 자체는 어렵지 않다. 내가 해결하고 싶었던 문제는 세션이 늘어날 때마다 사람이 모든 진행 상황을 확인하고 관리해야 한다는 점이었다. 사람을 병목에서 완전히 빼는 게 목표는 아니다. 사람은 여전히 병목이다. 대신 사람이 개입해야 하는 횟수를 줄이고, 실제로 결정이 필요한 순간에만 사람을

Aug 22, 20265 min read

작업 기록: 자동 QA 구성

최근에 Zephyr Cloud 의 프로젝트에 자동 QA 시스템을 구성했다. 그 작업 기록이다. 원래 이런 작업은 리눅스에서 하는 게 맞다고 생각했다. 그런데 나는 계속 로컬에서 디버깅해야 했고, 개발 흐름상 맥에서 바로 돌릴 수 있어야 했다. 예전에도 자동 QA를 시도한 적은 있었지만 끝까지 제대로 굴러간 적은 없었다. 그러다가 지난주 중반쯤, “이건 로

May 13, 20263 min read

한국의 학벌에 대한 생각

내 블로그의 제목이 kdy1: The way I think 인만큼 앞으로는 내 생각을 더 자주 올리려고 한다. 한국 기준으로, 학벌은 사람을 볼 때 꽤나 유용한 지표이지만, 절대적이지는 않다. 경험적인 얘기일 뿐이지만, 성균관대학교 자퇴생으로서 느낀 것들이 몇 가지 있다. 대학까지 간 사람의 학벌은 학습 능력 x 성실함 에 대체로 비례한다. 그래서 의미가

Apr 3, 20261 min read

kdy1: The way I think

303 posts