양극성 LISP 프로그래머

1 hour ago 1
  • Lisp는 기술적으로 뛰어나지만 주류가 되지 못한 “뛰어난 실패작” 이다.
  • 저자는 그 이유를 언어 자체보다 Lisp에 끌린 사람들의 성향에서 찾는다.
  • 이들은 탁월한 지성과 독창성을 지녔지만, 지루한 마무리·협업·타협·지속성을 견디지 못하는 경향이 있다.
  • Lisp는 이들의 창의성을 증폭했지만, 동시에 그 약점까지 생태계에 확대해 놓았다.

뛰어난 실패자는 어떻게 만들어지는가

  • 오래 가르친 강사에게 특히 기억에 남는 학생은 아주 뛰어나거나 아주 형편없던 학생이다.
  • 그런데 어떤 학생은 두 범주에 동시에 속한다.
  • 이들은 대체로 고등학교까지는:
    • 적은 노력으로 최고 성적을 받고,
    • 마지막 순간에 시작해도 잘 해내며,
    • 학교의 규칙과 형식을 우습게 본다.
  • 실제로 많은 규칙이 형식적이기 때문에 이들의 냉소는 완전히 근거 없지 않다.
  • 문제는 쉬운 성공에 익숙해져 꾸준함과 마무리를 배우지 못한다는 점이다.

몰입과 무기력의 반복

  • 흥미가 생기면 짧은 시간 동안 놀라울 정도로 몰입한다.
  • 그러나 곧 지루해져 일을 끝내기 전에 버린다.
  • 광적인 활동 뒤에는 무기력과 철수가 따라온다.
  • 저자는 이런 성향을 BBM(brilliant bipolar mind) 이라고 부른다.
  • 여기서 “양극성”은 엄밀한 진단명이라기보다, 고양과 침체가 반복되는 성향을 가리키는 비유에 가깝다.

대학에서 무너지는 이유

  • 대학은 자유와 더 높은 난도를 동시에 준다.
  • 고등학교 때처럼 재능만으로 버틸 수 있다고 믿지만, 어느 순간부터 꾸준한 노력 없이는 성과를 유지할 수 없다.
  • 성적은 떨어지고, 본인은 실패감을 느끼면서도 습관을 바꾸지 못한다.
  • 정규 학업 대신 흥미로운 샛길로 빠지기도 한다.
  • 다만 자기 주제로 프로젝트를 할 자유가 주어지면 갑자기 살아나 독창적인 결과물을 내기도 한다.
  • 문제는 평소 성적과 평판 때문에 그 독창성이 제대로 평가받지 못할 수 있다는 점이다.

Lisp가 이런 사람을 끌어당기는 이유

  • Lisp는 개인의 지적 능력을 크게 증폭하는 도구다.
  • 한 사람이 다른 언어로는 감당하기 어려운 규모의 아이디어를 빠르게 구현하게 해 준다.
  • 그래서 큰 비전을 지닌 사람, 기존 방식의 부조리를 싫어하는 사람, 혼자서도 많은 것을 만들고 싶어 하는 사람을 강하게 끌어당긴다.
  • Lisp 공동체가 가비지 컬렉션, 리스트 처리, 개인용 컴퓨팅, 윈도잉 같은 분야에서 선구적이었던 것도 이런 성향과 관련 있다.

Lisp 공동체의 약점

  • Lisp는 아이디어를 너무 쉽게 구현하게 해 준다.
  • 그 결과 다음과 같은 태도가 생기기 쉽다.
    • “내 환경에서는 작동한다.”
    • “나는 이해하니 충분하다.”
    • “문서화와 정리는 나중 문제다.”
  • 실제로 Lisp 생태계에는 비슷한 도구가 많았지만,
    • 문서가 부족하고,
    • 버그가 많으며,
    • 유지보수가 끊긴 경우가 흔했다.
  • 각자가 자기 해법을 만들었지만, 공동의 안정적인 기반으로 발전시키는 일에는 약했다.

C/C++ 진영과의 대비

  • C/C++에서는 큰 시스템을 혼자 만들기 어렵다.
  • 그래서 자연스럽게:
    • 협업,
    • 분업,
    • 문서화,
    • 유지보수
      가 필요해진다.
  • 역설적으로 언어의 불편함이 조직적 협력을 촉진한다.
  • 고용주 입장에서는 불안정한 천재 한 명보다, 소통하고 인수인계할 수 있는 평범한 개발자 여러 명이 더 안전하다.

이상주의와 현실의 충돌

  • BBM은 제도와 시장의 허위, 비합리성, 타협을 빠르게 알아차린다.
  • 문제는 그것을 견디거나 활용할 준비가 되어 있지 않다는 것이다.
  • Lisp 머신은 기술적으로 “옳은 것”을 만들려 했지만, 시장과 플랫폼 현실을 무시했다.
  • 그 결과 기술적 순수성이 생태계적 고립으로 이어졌다.
  • 저자는 이것을 Lisp 실패의 핵심 사례로 본다.

우울과 자기부정

  • Lisp 공동체에는 강한 자부심과 강한 비관이 함께 존재한다.
  • Lisp가 얼마나 뛰어난지 확신하면서도, 현실에서는 결국 더 단순하고 열등한 기술이 승리할 것이라고 절망한다.
  • Richard Gabriel의 「Lisp: Good News, Bad News, How to Win Big」과 “Worse is Better”는 이 양면성을 잘 보여 준다.
  • 문제는 해결 가능한데도, 침체기에 들어서면 모든 것이 끝난 것처럼 보인다.

결론

  • Lisp의 문제는 Lisp 자체라기보다, Lisp를 둘러싼 사고방식과 문화에 있다.
  • 탁월한 비전과 독창성만으로는 성공할 수 없다.
  • 그것을 현실의 성과로 바꾸려면 다음이 필요하다.
    • 마무리
    • 문서화
    • 협업
    • 유지보수
    • 현실과의 타협
  • 결국 Lisp는 결함 때문에 실패한 언어라기보다, 뛰어난 사람들이 자신의 강점을 지속 가능한 형태로 조직하지 못한 사례다.
  • 그래서 저자의 마지막 답은 역설적이다. Lisp에는 아무 문제도 없다. 문제는 사람들이 그것으로 무엇을 만들어 내느냐에 있다.
Read Entire Article