tudy.club
BlogResourcesChallengeMapAbout
EN

© 2026 tudy.club

개인정보처리방침이용약관
← Back to Blog

slave는 바뀌었는데 orphan은 왜 아직일까

tudy.club
Ddev

slave는 바뀌었는데 orphan은 왜 아직일까

클로드와 함께 DB 마이그레이션을 하다가 로그에 orphan이라는 단어가 찍혔다.

2026년 4월 21일•15분 읽기
#Development#Claude Code

slave는 바뀌었는데 orphan은 왜 아직일까

2026년 4월 21일

클로드와 함께 DB 마이그레이션을 하다가 로그에 orphan이라는 단어가 찍혔다.

고아. 부모 레코드는 지워졌는데 자식 레코드만 덩그러니 남아있는 걸 그렇게 부른다고 한다. 외래 키가 가리키는 대상이 사라져서 참조 무결성이 깨진 상태. 기술적으로는 정확한 비유다. 버려진 채 남아있는 데이터, 더 이상 연결고리를 찾을 수 없는 행(row). 근데 그 단어, 한국 정서랑 좀 안 맞다는 생각이 들었다.

orphan이 쓰이는 곳들

알고 보니 orphan은 생각보다 여러 맥락에서 쓰이는 용어였다.

  • 운영체제: 부모 프로세스가 먼저 죽어서 홀로 남은 자식 프로세스 (orphan process)
  • 데이터베이스: 외래 키가 가리키는 부모가 사라진 레코드 (orphaned record)
  • Git: 부모 커밋 없이 새로 시작하는 브랜치 (git checkout --orphan)
  • 블록체인: 채굴됐지만 메인 체인에 포함되지 못한 블록 (orphan block)
  • 타이포그래피: 문단 첫 줄만 페이지 끝에 남은 것

공통점은 전부 보호자 없이 홀로 남겨진 것이라는 은유다. 영어권에서는 이 비유가 꽤 자연스럽게 받아들여진다. 올리버 트위스트, 해리포터 같은 문학적 레퍼런스에서 orphan은 동정받는 주인공의 이미지로 소비되니까.

근데 한국어로 옮겨놓으면 얘기가 좀 달라진다. 한국사에서 노예제에 해당하는 제도는 노비였고, 천민과 같은 신분 구조가 있었다. 그래서 slave를 한국어로 노예라고 옮기면, 미국의 남부 영화가 먼저 떠오르지 한국 사회의 실제 역사적 상처와는 한 겹 거리가 있다. 번역되면서 단어의 뾰족함이 둥글어지는 거다.

반면 고아는 다르다. 한국전쟁 이후 전쟁고아가 대규모로 발생했고, 그 여파가 지금까지도 여러 방식으로 남아있다. 해외 입양, 고아원, 가족주의 문화 속에서 고아라는 단어는 여전히 무겁게 읽힌다. 영어 orphan이 문학적 동정의 대상이라면, 한국어 고아는 훨씬 구체적이고 최근의 역사에 발을 딛고 있는 단어다. 같은 은유여도 문화권에 따라, 그 사회가 지나온 역사에 따라 체감 무게가 완전히 달라진다.

업계는 용어를 바꾸고 있다

2020년 BLM 이후 IT 업계는 대대적인 용어 정리를 했다.

이전 용어대체어
master / slaveprimary / replica
master branchmain branch (GitHub 2020년 기본값 변경)
blacklist / whitelistblocklist / allowlist
black hat / white hatmalicious hacker / approved hacker

MySQL, Redis, Django, Kubernetes 등 주요 프로젝트들이 순차적으로 변경을 적용했다. Linux 커널도 2020년에 inclusive terminology 가이드를 도입했고, IETF도 RFC 문서에서 master/slave, blacklist/whitelist 용어를 교체했다. 그런데 이 흐름에서 orphan, widow, zombie, kill 같은 단어들은 거의 논의 대상이 아니었다.

왜 어떤 단어는 바뀌고, 어떤 단어는 안 바뀌나

업계가 민감하게 반응한 건 주로 노예제·인종차별 관련 은유였다. master/slave는 직접적이었고, blacklist/whitelist는 black = 나쁨, white = 좋음이라는 색 연관을 강화한다는 지적이 컸다.

반면 orphan, widow 같은 단어는:

  • 특정 집단을 비하하는 직접 표현이 아님
  • 오히려 보호받아야 할 대상에 대한 동정적 은유로 읽힘
  • 대체어(dangling, unreferenced)가 원어만큼 직관적이지 않음

그래서 논의가 있긴 했지만 주류로 가지는 못했다.

sanity check도 비슷하다. sanity의 반대말은 insanity(미친 상태)고, 정신질환을 부정적 레퍼런스로 쓴다는 지적이 있다. 구글, Linux Foundation 스타일 가이드에서는 validation check, consistency check로 대체하라고 권장한다. 근데 실제 코드·문서에서는 여전히 광범위하게 쓰인다. 대체어가 sanity check만의 뉘앙스(빠르게 말이 되는지 훑어보는 것)를 정확히 커버하지 못한다는 이유에서다.

여담이지만, 나는 sanity라는 단어를 Sanity.io라는 헤드리스 CMS로 먼저 알게 돼서 한참 동안 정신과적 맥락을 모르고 있었다. 브랜드가 원어의 뉘앙스를 덮어버린 케이스. Stripe, Slack, Discord, Notion도 비슷한 경우다.

권장하지 않는 용어 목록

구글, Linux Foundation, IBM, Microsoft 등이 정리한 inclusive language 가이드에서 공통적으로 언급되는 용어들을 카테고리별로 정리하면 이렇다.

인종·노예제 관련

피해야 할 용어대체어
master / slaveprimary / replica, leader / follower
blacklist / whitelistblocklist / allowlist, denylist / allowlist
black hat / white hatmalicious hacker / approved hacker
black box / white boxclosed / open, opaque / transparent
master branchmain branch
grandfatheredlegacy

정신건강·장애 관련 (ableist language)

피해야 할 용어대체어
sanity checkvalidation check, consistency check
crazy, insaneunpredictable, unexpected
dummy (data)placeholder, sample
crippleddisabled, impaired
blind tounaware of, overlook
dumb (terminal)basic, simple

성별 관련

피해야 할 용어대체어
manpower / man hoursworkforce, person-hours
chairman / foremanchairperson, chair
guys (사람 지칭)folks, team, everyone

폭력적 은유

피해야 할 용어대체어
hang / hungstall, unresponsive
kill (process)stop, end, terminate
hit (the endpoint)call, access
abortcancel, stop

원주민·문화 전유

피해야 할 용어대체어
powwowmeeting, discussion
tribal knowledgeinstitutional knowledge
spirit animalfavorite, mascot
guru, ninja, rockstar (채용)skilled, experienced
native featurecore feature, built-in feature

한국 개발자의 감각

이 목록을 보면서 드는 생각은, 용어 교체는 결국 영어 화자의 감수성으로 일어난다는 것이다.

애초에 코드가 영어로 쓰이다 보니 변수명, 함수명, 에러 메시지, 공식 문서 전부 영어를 기준으로 만들어진다. 그래서 용어에 대한 문제 제기도 영어 모국어 화자들이 느끼는 불편함에서 출발할 수밖에 없다. 위 목록 대부분이 영어권 고유의 역사적 맥락인 것도 그래서다. Jim Crow법, 노예제, 아메리카 원주민, Roma 민족, 미국 정신의학 용어. 한국에서 일상적으로 쓰는 abort 같은 단어는 영어권에서 낙태 연상으로 조심하는 단어지만, 한국어로 중단이라고 번역되는 순간 그 뉘앙스가 휘발된다.

반대로 한국 개발자가 orphan이나 widow 같은 단어에서 느끼는 무게감은, 용어 교체 논의의 테이블에 올라올 통로가 없다. 코드가 영어로 쓰이는 이상 문제 제기의 언어도 영어여야 하고, 영어 화자에게 orphan은 애초에 뾰족한 단어가 아니니까. 그래서 slave는 바뀌었는데 orphan은 아직 orphan인 거다.

바뀌는 중인 흐름

일부 프로젝트에서는 orphan 대신 dangling, unreferenced, stale을 쓰는 경우가 있다. dangling reference, unreferenced row 같은 표현. 한국 개발자가 만드는 도구나 문서에서 의식적으로 대체어를 쓰는 것도 작은 선택지다. 물론 2025년 들어 미국 빅테크들이 DEI 이니셔티브를 축소하면서 inclusive language 가이드 자체가 후퇴하는 분위기도 있다. Google이 responsible AI 페이지에서 DEI 문구를 뺐고, Meta는 팩트체커를 없앴다. 앞으로 이 흐름이 어디로 갈지는 불확실하다.

거울을 뒤집어 보기

사실 이 글을 쓰면서 더 오래 남은 생각은 따로 있다. orphan을 보며 한국어로는 무겁다고 느꼈다면, 반대로 내가 아무렇지 않게 쓰는 단어 중엔 다른 누군가에게 불편한 단어가 있지 않을까 하는 경각심이다. slave라는 단어에 미국인 개발자가 먼저 불편함을 느꼈듯이, orphan에 한국인인 내가 위화감을 느꼈듯이. 대체어 목록을 정리하면서도 대부분의 단어는 나에게 아무 감각도 불러일으키지 않았다. 그건 내가 무뎌서가 아니라, 그 단어가 뾰족하게 느껴지는 역사를 내가 살지 않았기 때문이다. 그래서 나는 모르고 지나쳤을 거다, 누군가의 불편함을.

그리고 AI는 레거시를 학습한다

요즘 코드를 쓸 때 AI의 도움을 받지 않는 날이 거의 없다. 클로드 코드, 코덱스, 제미나이. 전부 과거의 방대한 코드베이스를 학습해서 가장 그럴듯한 다음 토큰을 제안한다. 그런데 그 학습 데이터는 대부분 용어 교체 흐름이 일어나기 이전의 코드다. GitHub에 쌓인 수십 년치 오픈소스, 튜토리얼, Stack Overflow 답변, 기술 블로그. master/slave, blacklist/whitelist가 정답이던 시대의 코드가 압도적으로 많다.

그러니까 내가 별생각 없이 AI에게 "DB 레플리케이션 설정해줘"라고 하면, 통계적으로 가장 흔한 패턴인 master, slave 변수명이 그대로 튀어나올 가능성이 높다. 개발자가 무심코 accept하면 그 코드는 또 어딘가의 레포에 올라가고, 다음 세대 AI의 학습 데이터가 된다. 용어를 바꾸자고 공식적으로 합의해도, 이 순환 속에서 옛날 용어는 계속 되살아난다.

이게 좀 무섭다. AI는 과거의 평균을 재생산하는 도구라서, 어떤 의미에서는 규범을 과거에 붙잡아두는 힘으로도 작용한다. 내가 직접 타이핑할 때는 '아 이거 이제 primary라고 써야지' 하고 의식할 기회라도 있는데, AI가 자동완성으로 던져준 걸 받아 쓰면 그 순간이 없다. 인지 또한 없다. 그래서 AI를 쓰는 개발자로서 한 번 더 멈춰 생각할 필요가 있다는 생각이 든다. AI가 제안한 이 변수명이, 이 함수명이, 이 에러 메시지가 과거의 어느 시점에서 온 것인지. 한 번쯤 의심해볼 것.

결국 남는 것

결국 포인트는 어떤 단어가 맞고 틀리냐를 외워서 정답처럼 쓰자는 게 아니다. 내가 쓰는 단어가 나의 문화권 바깥에서는 어떻게 읽힐 수 있는지, 그리고 그 단어가 어느 시대의 규범에서 온 것인지 한 번쯤 멈춰서 생각해보는 감각에 가깝다.

한국 개발자로서 영어 용어의 위화감을 느끼는 것, 내가 쓰는 영어 용어가 다른 문화권 누군가에겐 뾰족할 수 있다는 것, AI가 제안하는 단어가 과거의 답습일 수 있다는 것. 세 가지는 결국 같은 방향을 가리킨다.

내가 괜찮은 게 남에게도 괜찮다는 보장은 없고, 흔한 게 옳다는 보장도 없다. 우리는 이미 서로의 결과물 위에 다음을 만든다. 내가 바꾼 한 단어가 결국 다음 사람이 받는 기본값을 바꾼다.

Written by

J
Sejin Jung

PM이자 빌더. Sapienta Director.

목차

  • orphan이 쓰이는 곳들
  • 업계는 용어를 바꾸고 있다
  • 왜 어떤 단어는 바뀌고, 어떤 단어는 안 바뀌나
  • 권장하지 않는 용어 목록
  • 인종·노예제 관련
  • 정신건강·장애 관련 (ableist language)
  • 성별 관련
  • 폭력적 은유
  • 원주민·문화 전유
  • 한국 개발자의 감각
  • 바뀌는 중인 흐름
  • 거울을 뒤집어 보기
  • 그리고 AI는 레거시를 학습한다
  • 결국 남는 것