본문으로 건너뛰기
0
r/jeffnews HN 약 7분

프로그래밍을 모두에게 끔찍하게 만드는 방법 — AI를 최악의 컴퓨터 언어로 비판한 에세이

general

요약

AI를 컴퓨터 언어 설계의 관점에서 비판한 에세이. 해석, 예측 가능성, 발견 가능성이라는 세 가지 설계 원칙으로 AI 프로그래밍 도구를 평가하며, 예측 가능성에서의 완전한 실패를 지적함.

기사 전체 정리

프로그래밍을 모두에게 끔찍하게 만드는 방법 — AI를 최악의 컴퓨터 언어로 비판한 에세이

Quine Programmer에서 시작하는 질문

  • 저자가 The Daily WTF(아직도 운영 중이라고 놀람)에서 영감을 받아 던지는 근본적 질문: "아무거나 할 수 있는 시스템"과 Python의 차이가 뭔가?
  • "Quine Programmer"란 충분한 설정만 주면 뭐든 할 수 있는 시스템을 만든 사람을 말함. 그런데 프로그래밍 언어도 충분한 코드만 주면 뭐든 할 수 있잖음. 그럼 이 둘의 차이는 뭔가?
  • Excel이 프로그래밍 언어인가? Scratch는? nginx.conf는? find 명령어의 커맨드라인 플래그는? 저자는 이 모든 것이 넓은 의미에서 프로그래밍의 일종이라고 봄

컴퓨터 언어의 세 가지 설계 원칙

  • 저자가 제시하는 "컴퓨터 언어"의 정의: "의미 있는 입력의 복잡성에 한계가 없는 컴퓨터 프로그램" — 설정 파일, 마크업, 스타일 언어, 비텍스트 언어까지 포함하는 정의임
  • 좋은 컴퓨터 언어의 3대 설계 목표:
    1. 해석(Interpretation): 유효한 입력은 처리하고 무효한 입력은 거부해야 함
    2. 예측 가능성(Predictability): 사용자가 컴퓨터가 입력을 어떻게 해석할지 이해할 수 있어야 함
    3. 발견 가능성(Discoverability): 사용자가 시스템 안에서 새로운 목표를 표현하는 방법을 알 수 있어야 함
  • Quine Programmer는 해석은 자랑하지만, 예측 가능성은 생각도 안 했고("구현 자체가 멘탈 모델이지"), 발견 가능성도 무시함("코드 읽으면 되잖아!"). 그리고 에러 메시지라는 핵심 발견 도구도 놓침

AI를 이 잣대로 평가하면

  • AI는 발견 가능성에서는 뛰어남. 자연어로 소통하니까 진입 장벽이 극도로 낮음. 뭐든 설명해줄 의향이 있음 (사실 정확성은 제쳐두고)
  • 하지만 무효한 입력 거부를 못 함. 유효/무효 입력의 구분 자체가 있는지도 의문임
  • 가장 치명적인 실패는 예측 가능성 — 데이터셋의 규모 때문에 사용자가 동작에 대한 멘탈 모델을 구성하는 게 원천적으로 불가능함. "Peter Griffin이 블라인드와 씨름하는" 워크플로우를 코드베이스에 자동화한 셈

ℹ️참고

> Dijkstra가 주장했듯이, 논리적/기술적 작업에 형식 기호를 사용하는 것은 역사적으로 중대한 돌파구였음. 자연어의 모호성, 지역적 표현, 자기 부정, 문맥 의존성은 해석 과정을 극도로 오류에 취약하게 만듦

ELIZA 효과 — 사용자는 AI에 능력을 투사한다

  • 1960년대 ELIZA 챗봇 창시자 Weizenbaum의 분석: 사용자가 시스템을 이해할 수 없으면, 자기 자신의 사고 능력을 유일한 비유로 가져다 붙임. "고양이가 내가 전등을 켜고 끄는 걸 보고 마법이라 생각하는 것"과 같은 원리
  • 이건 순진한 비서만의 문제가 아님 — 전문 정신과 의사들이 ELIZA를 "정신의학의 미래"라고 선언했고, 칼 세이건까지 "컴퓨터 터미널로 치료받는 장밋빛 미래"를 제시했음
  • 저자 본인도 2014-2017년에 자기 트윗으로 학습된 트위터 봇(@jneebooks)을 운영했는데, 고등학교 친구가 봇과 대화하면서 저자 본인인 줄 알았고, 봇이라고 말해도 안 믿었음
  • 현대 AI는 이 의인화 경향이 중립적이지 않음. **적극적인 인지적 위험(cognitohazard)**임. 최근에 Meta AI 전문가가 공개적으로 OpenClaw에게 "이메일 지우지 마"라고 꾸짖었는데 — 컴퓨터가 수치심을 느끼고 행동을 교정할 거라고 가정한 거임

튜닝된 노이즈로서의 AI와 그 한계

  • 셰이더 프로그래밍에서 노이즈를 예술적으로 쓰려면 노이즈의 분포와 행동을 이해하는 것이 핵심임. 예측 가능성이 노이즈 활용의 전제 조건이라는 거임
  • AI/LLM 모델은 본질적으로 튜닝된 노이즈의 한 형태임. Andrej Karpathy도 "GPT는 입력 토큰을 다음 토큰의 확률 분포로 매핑하는 큰 수학 함수"라고 설명함
  • 노이즈를 출력에 쓰는 건 정당한 활용임 (예: 이미지 생성, 텍스트 생성 등). 하지만 인터페이스에 노이즈를 넣는 건 다른 문제 — 입력 복잡성이 무한한 컴퓨터 언어에서 이미 자연스러운 불확실성이 충분한데, 행동이 잘 이해되지 않는 새로운 불확실성 소스를 추가하는 건 창작 통제의 불필요한 포기임

결론: AI 프로그래밍의 운명은 The Last One과 비슷할 것

  • 1981년에도 "The Last One"이라는 Quine 시스템이 "프로그래밍의 종말"이라는 찬사를 받았음. "적응 못 하는 데이터 프로세싱 종사자는 일자리를 잃을 것"이라는 기사까지 나왔는데, 실제로는 끔찍한 시스템이었음
  • Claude 등 자연어 기반 프로그래밍 도구는 "The Last One의 실패가 기술적 한계 때문이었고, 하드웨어가 좋아지면 해결된다"는 전제 위에 서 있음. 하지만 문제는 인터페이스에 있음 — 기술 발전이 사용자를 얼마나 empowering하는지가 핵심인데, 그 부분이 빠져있다는 거임
  • 저자의 전망: 프로그래밍 도구가 불안정하고, 멘탈 모델링을 완전히 거부하고, 무효한 입력을 일관되게 거부하지 못하면 목적에 부적합한 것이고, 확실히 프로그래밍의 미래는 아님
  • 하지만 프로그래밍 기술 자체는 AI 겨울을 살아남을 것이고, AI가 만든 혼란을 치우는 일거리가 꽤 있을 거라고 봄
  • 마지막 조언: "올해 새로운 전통적 프로그래밍 언어를 배워봐라. 아니면 직접 만들어봐라. Quine Programmer의 실수는 컴퓨터 언어를 만든 것이 아니라, 형편없이 만들고 사용자에 대한 공감이 없었던 것"

핵심 포인트

  • 좋은 컴퓨터 언어의 3대 원칙: 해석, 예측 가능성, 발견 가능성
  • AI는 발견 가능성은 뛰어나지만 예측 가능성에서 완전히 실패
  • ELIZA 효과: 사용자가 AI에 인간적 능력을 투사하는 인지적 위험
  • 1981년 'The Last One'과 현재 AI 프로그래밍 도구의 유사성 지적

인사이트

AI를 프로그래밍 도구가 아니라 '형편없이 설계된 컴퓨터 언어'로 프레이밍하는 시각이 참신함. 특히 '노이즈는 출력에 쓰면 괜찮지만 인터페이스에 넣으면 문제'라는 구분이 날카로움.

댓글

댓글

댓글을 불러오는 중...

general

슬로베니아, EU 최초로 연료 배급제 도입 — '연료 관광'이 원인

이란 공습으로 인한 에너지 시장 혼란 속에서 슬로베니아가 EU 최초로 연료 배급제를 시행함. 오스트리아와의 가격차로 인한 '연료 관광' 현상이 직접적 원인.

general

개울가에 앉아서: AI 시대에 진정성을 지키는 일에 대하여

망가진 개울의 복원 이야기를 은유로 삼아, AI가 만들어낸 가짜 콘텐츠가 범람하는 시대에도 진정성과 소박한 삶이 결국 살아남는다는 에세이

general

AI 에이전트 작업에 최적화된 데스크 셋업은?

AI 에이전트와 함께 일할 때 모니터 배치를 어떻게 바꿨는지 묻는 HN 토론. 글쓴이는 위쪽 모니터를 HUD처럼 활용해 에이전트 CLI를 모니터링하는 방식을 공유함.

general

'메타버스'라는 이름을 만든 닐 스티븐슨이 Meta의 800억 달러짜리 실패를 돌아봄

소설 Snow Crash로 '메타버스'라는 단어를 만든 닐 스티븐슨이, Meta의 800억 달러 메타버스 프로젝트 종료를 계기로 HMD 기반 메타버스가 왜 실패할 수밖에 없었는지, 그리고 진짜 메타버스는 이미 Fortnite·Roblox 등으로 존재한다고 분석함.

general

Microsoft 내부에서 Windows 11 필수 계정 로그인 폐지 움직임

Microsoft가 Windows 11 대규모 개선을 발표했지만 계정 강제 로그인은 건드리지 않음. MS 부사장 Scott Hanselman이 이를 싫어하며 작업 중이라고 밝혔고, 내부에서 여러 영향력 있는 인물이 변경을 추진 중이나 확정된 계획은 없음.