GUI는 비사회적이다
지난주에 CoRecursive 팟캐스트의 PowerShell 수석 아키텍트 Jeffrey Snover와의 인터뷰를 들었습니다.
그 인터뷰에서 일주일 내내 머릿속을 떠나지 않은 장면이 있는데, Snover가 그래픽 사용자 인터페이스(GUI)는 본질적으로 ‘비사회적(antisocial)’이라고 주장하는 대목입니다.
문득 깨달았습니다 — 그러니까, 마우스는 비사회적이라는 것을요. GUI는 비사회적입니다. 그게 무슨 뜻일까요? 해결해야 할 문제가 있고, 그걸 GUI로 해결한다고 해 봅시다. 그러면 무엇이 남을까요? 해결된 문제 하나뿐입니다.
하지만 스크립팅 환경의 명령줄 인터페이스로 문제를 해결하면 결과물이 남습니다. 그리고 갑자기 그 결과물을 다른 사람과 공유할 수 있게 됩니다.
덧붙이자면, 문제를 해결한 방식 자체가 기지를 드러낼 수 있습니다. GUI를 기발하게 쓰는 사람을 본 적이 단 한 번도 없습니다. 한 번도요. 거기에는 기발함이란 게 없습니다. 가령 이런 일은 절대 일어나지 않죠. “세상에, Adam이 마우스 클릭하는 것 좀 봐. 세상에. 얘들아, 얘들아, 얘들아, 얘들아, 이리 와 봐! 봐봐, Adam이 버튼을 클릭하려고 해! 세상에! 정말 대단하다!” 그런 일은 그냥 일어나지 않습니다.
Snover는 이를 인상적인 명령줄 스크립트를 봤을 때의 반응과 대조합니다.
그건 마치 이런 거죠. “세상에! Proust가 한 거 봤어? 정말 경이로워! 이 사람 진짜 천재야.” 그리고는 “야, 그거 좀 줘 봐. 그 기술 훔쳐서 내 코드에 적용해야겠어.” 아니면 제가 결과물을 만들어 공개하면 사람들이 그걸 사용하기 시작합니다. 그러면 고마움의 빚이 생기죠. 마치 다들 저에게 맥주 한 잔 빚진 것 같은 거예요.
…
그래서 이건 사회적 환경인 겁니다. 아무튼, 정말 그 순간 — “와, 우리 정말 신나게 하고 있구나!” 하는 느낌이었습니다.
Snover의 이런 관점이 마음에 들었습니다. 스크립트 가능한 인터페이스가 GUI보다 조합하기 쉽고 재사용하기 좋다는 것은 많은 사람들이 이미 알고 있지만, 스크립팅이 어떤 면에서는 더 인간적으로 느껴진다는 생각은 미처 해보지 못했기 때문입니다.
스크립팅은 사람들이 GUI에서는 할 수 없는 방식으로 창의성과 기지를 발휘할 수 있게 합니다. 그리고 스크립팅에서는 서로의 기술을 배우며 즐겁게 교류하는 상호 학습이 일어나는데, GUI에서는 그런 일이 일어나지 않습니다.
글을 무작위로 읽기