베터코드 인사이트의 부활
관성적으로 당연하게 받아들이던 메뉴를 다시 생각해 보는 글입니다. '메뉴' 하면 화면에 나타나는 메뉴 목록 UI와 식당의 메뉴판 정도를 직관적으로 떠올릴 수 있습니다. 물론, 이는 지극히 개인적인 기억에 따른 결과입니다. 아무튼 이를 확인한 후에 위키피디아 메뉴 페이지를 훑어봤더니 메뉴에 대한 사전 정의를 처음 찾아봤다는 사실을 깨달았습니다.
그래서 <낱말의 뜻을 깊고 넓게 묻고 따지는 일의 소중함>을 실천하기 위해 위키피디아 메뉴 페이지를 훑어보았습니다. 크롬으로 번역을 요청한 후에 눈에 띄는 부분을 표기했습니다. 몰랐던 사실을 알게 되었네요.
메뉴라는 말의 실체는 애초에 조리된 음식 목록을 지칭하는 송나라 말이었고, 메뉴라는 단어는 라틴어가 기원이 된 프랑스에서 유래했다고 하네요.
하지만, 컴퓨터 분야의 메뉴는 별도의 위키피디아 페이지가 있습니다.
Menu (computing), a list of options
페이지에 한 줄 정의가 있습니다.
In user interface design, a menu is a list of options presented to the user.
사용자 인터페이스 설계(user interface design)로 맥락을 제한합니다. 놀랍게도 전치사 in을 BoundedContext 예시로도 볼 수가 있군요. 음식 대신에 정보를 보여준다는 점을 제외하면 거의 같은 의미니까, 꽤 괜찮은 은유란 점을 알 수 있습니다. options에 대해서도 <낱말의 뜻을 깊고 넓게 묻고 따지는 일의 소중함>을 실천해 보기 전에 위키피디아 페이지에 보이는 메뉴 이미지들을 봅니다.
옵션은 훨씬 더 보편적인 개념입니다. 그래서 위키피디아를 찾는 것보다 영어 사전이 더 나아 보였습니다.
An option is something that you can choose to do in preference to one or more alternatives.
그리고 옵션의 기원에 대해서는 제미나에게 물어서 쉽게 결과를 얻었습니다.
더불어 여러 가지 맥락에서 살펴보았던 옵션의 다양한 쓰임도 머릿속에서 스쳐갑니다.
여기까지 조사한 후에 무의식적인 이끌림이었을지라도 왜 내가 관성적으로 당연하게 받아들이던 메뉴를 다시 생각해 보는지 생각해 보았습니다. 가장 그럴싸한 추정은 <지각이 제한적인 에이전트가 만나는 세상의 모델>에 그렸던 그림에 흔적이 있습니다.
인공지능 등장 이후에 점차 사라져 가는 인터페이스의 경향을 떠올려 보면 번거롭게 클릭을 해야 하거나 사용자가 보고 싶은 정보가 나타날 공간을 차지하는 처지로 메뉴가 전락할 수 있다는 직관이 찾아왔습니다. 그래서, 메뉴가 변하는 세상에도 존재하려면 다른 형태로 진화해야 한다는 생각을 하지 않을 수 없었습니다.
모양은 창발 즉, 진화의 결과이니 아직 알 수 없지만, 분명한 것은 지각이나 판단을 돕거나 준비된 행동을 제공하는 것이어야 할 듯합니다. 다시 말해서 에이전트의 지능 행동 루프를 강화하는 어떤 가치를 만들어야 한다는 점이죠. 그런데 얼핏 생각하면 우리가 핸드폰 속의 수많은 앱들을 오가며 행하는 일이나 검색 엔진이나 자주 가는 사이트를 오가며 하는 행적 자체도 에이전트의 지능 행동 루프와 동떨어진 것은 아닌 듯도 합니다.
그렇게 생각을 확장하면 초점이 다시 흐릿해지는 부작용을 겪습니다. 이럴 때 앞서 찾아본 낱말의 뜻이 다시 방향을 잡는데 이정표 역할을 해 주는 듯합니다. 메뉴는 식당마다 제공합니다. 제가 고민하던 맥락으로 돌아오면 결국 식당을 앱(혹은 응용 프로그램)에 대응시킬 수 있습니다. 그리고, 앱의 메뉴는 에이전트의 지능 행동 루프에 도움을 주는 옵션들을 제때 제시하는 것이 생존 비결이라 할 수 있겠네요.