추천사

정유진 <정유진의 웹 2.0 기획론>의 저자  http://www.youzin.com

 

“요즘 소프트웨어는 개떡 같습니다.”라는 첫 줄에서부터 웃음을 터트렸다.

 

시종 일관 정곡(?)을 찌르는 직설적인 표현과 생생한 예시들로 사용자 관점에서 소프트웨어 설계의 고정관념들을 파헤친다. ‘정신 나간 전문가들이 제정신을 찾게 해 달라는 울부짖음’ 속에서 화면 스토리보드에 아무 생각 없이 자바스크립트 확인 얼럿창과 메뉴를 덧붙이는 내 자신의 습관을 되 돌이켜 보았다.

 

누구나 쉽게 ‘사용자 관점’이라는 표현을 남발하지만, 정말로 사용자의 눈높이를 맞추는 것은 얼마나 어려운 일인가? 오히려 전문가를 자처하는 사람들일수록, 업계에 오래 종사한 사람들일수록, 때로는 사용자에 대해 ‘너무 많이’ 생각할수록 서비스를 사용하는 진짜 사람들의 눈높이에서는 멀어지기 십상이다. 저자는 온갖 복잡한 규칙과 오버된 고민들 속에서 한없이 높아진 고상한 눈높이를 가차 없이 그러나 매우 유쾌한 방식으로 ‘팍팍~’ 낮춰준다. 이 낮은 곳에서 바라보는 인터페이스의 세상이 왜 이리 생생하고 흥미로운지!

 

나열식의 딱딱한 how-to라기 보다는, 저자의 입담을 따라 유쾌하게 읽어가다 보면 어느 순간 소프트웨어와 화면 설계의 근본적인 문제를 고민하는 나 자신을 발견하게 되는 책. 스티브 크룩씨의 유저빌리티 명저 <Don’t Make Me Think> 이후 읽는 즐거움과 알찬 영양가를 고루 갖춘 ‘통하는’ 책을 만나 반갑게 추천한다.

 

신현석 (주)시도우 웹표준 연구센터 센터장  http://hyeonseok.com

 

다수의 사람들은 컴퓨터를 사용하면서 무언가 잘 안 되거나 어떻게 해야 할지를 몰라 적이 당황한 적이 있을 것이다. 보통 이럴 때 사람들은 자신의 이해력이 모자라거나 컴퓨터를 잘 몰라서 그렇다고 생각하게 된다. 하지만 사실은 이와 다르다. 사실은 컴퓨터 사용이 어려워서가 아니라 소프트웨어가 잘못 만들어졌기 때문에 이런 일들을 겪게 되는 것이다.

이러한 일은 비단 소프트웨어뿐만 아니라 웹사이트를 사용하면서도 쉽게 겪을 수 있다. 사용자를 우선으로 생각해야 한다는 것은 다들 당연하다고 얘기 하지만 그렇지 못한 사이트들은 굉장히 쉽게 찾아볼 수 있다. 한 번에 서너 개씩 깔아대는 액티브엑스 플러그인들, 불필요하게 요구하는 과도한 개인정보들, 입력한 데이터가 제대로 전송되지 않는 것에 대한 두려움, 장문의 글을 입력하고 전송버튼을 누른 후에 오류로 글이 다 날라 가서 겪는 좌절감 등 사용자들은 계속해서 이러한 불편을 강요 받아왔다. 자신들의 잘못이라고 생각하면서…….

“소프트웨어, 누가 이렇게 개떡 같이 만든 거야”에서는 이러한 문제들이 왜 소프트웨어의 잘못인지, 누구 때문에 이러한 일들이 발생하는지, 그리고 과연 잘 만들어진 소프트웨어는 어떠한 것인지에 대해서 아주 재미있고 직관적으로 설명하고 있다. 잘못된 소프트웨어를 만드는 개발자들의 생각하는 방식과 사용자들이 생각하는 방법을 아주 대조적으로 알기 쉽게 얘기 하고 있다.

이 책은 일반인들도 쉽게 이해할 수 있는 책이지만 일반 사용자뿐만 아니라 소프트웨어 제작자, 웹사이트 제작자들도 반드시 읽어볼 필요가 있다. 자신들이 만들고 있는 제품이 정말로 사용자를 위한 것인지, 이 책에서 말하고 있는 것과 같이 자신의 생각을 사용자에게 강요하고 있는 것은 아닌지를 생각해 볼 수 있게 할 것이다. 사용성과 접근성은 난해하고 복잡한 문제가 아니다. 이 책에서 말하고 있듯이 사용자가 생각하는 방식을 이해한다면 아주 자연스럽고 창의적으로 높은 사용성과 접근성을 갖춘 좋은 품질의 제품 만들 수 있게 될 것이다.

 

이준영 (주)트레이스존 컨설팅 대표 http://i-guacu.com/

 

소프트웨어 개발자가 사용자를 만나는 법

오픈소스 프로젝트에 참여하고 있는 한 유명 프로그래머가 인터뷰에서 “한국의 오픈소스 참여가 지지부진한 것은 언어적 장벽 때문이 아닌가?”라고 물으니 “모든 프로그래머는 프로그래밍 언어를 통해 대화 한다.”라고 대답한 것을 본 적 있다. 언어적 장벽을 물었더니 프로그래밍 언어가 만국 공통어라고 대답하는 이 프로그래머에게 이 책을 강력히 추천하고 싶다. 본인은 적절한 대답을 했다고 믿고 있지만 사실 전혀 엉뚱한 대답을 하고 있는 소프트웨어 개발자에게도 마찬가지. 물론 이 책을 가장 필요로 하는 사람은 현업에서 개발을 하고 있는 사람들이 아니라 이제 프로그래밍을 배우는 사람들이 아닐까 한다. 현업에서 개발을 하는 사람들은 이 책을 보며 이렇게 느낄 수 있다. “그래서 뭐!”

 

도발적인 제목과 다소 난삽한 내용 구성에도 불구하고 이 책이 갖는 가치는 분명하다. 골방에 틀어박힌 개발자가 세상의 다양한 사용자를 만나는 방법에 대해 이야기하고 있기 때문이다. 사용자 입장에서 읽으면 통쾌한 느낌이 들겠지만 개발자 입장에서 읽으면 부조리가 느껴질 정도로 시종일관 멍청한 개발자를 타격하고 있다. 그러나 자신만의 세상에 갇혀 소프트웨어를 통해 사용자와 대화할 수 있다고 믿는 개발자에겐 이 책을 읽음으로써 사용자들이 실제로 소프트웨어와 제대로 커뮤니케이션하지 못함을 깨닫게 될 것이다. 문제는 이 책을 읽은 후 개발의 방향이 바뀔 수 있는가 인데, 사실 바뀌는 것은 별로 없을 것이다. 개별적인 사례가 중요한 것이 아니라, 그 사례를 통해 소프트웨어 사용자가 얼마나 다양한 불편을 겪고 있는지 개발자에게 알려 주는 게 이 책의 목적이기 때문이다. 고객을 고객답게 대하라. 이 정도의 메시지를 전달 받을 수 있다면 이 책을 읽는 목적은 충분히 달성할 수 있다.

 

이 책을 기획자나 마케터가 읽으면 어떻게 될까? 멍청한 소프트웨어나 웹 사이트 혹은 웹 애플리케이션을 만드는 개발자를 공격하는데 좋은 도구가 될 것이다. 그러나 그렇게 할 경우 개발자의 반격을 충분히 예견할 수 있으니 삼가는 것이 좋다. 이 책을 개발자에게 선물하는 것도 바람직하지 않다. 마치 ‘당신 또한 이런 짓을 하고 있어!’라고 비난하는 꼴이 될 테니까. 그러니 개발자 스스로 읽어 볼 수 있도록 복도나 화장실에 살짝 갖다 두는 것이 최선이라고 생각한다.

 

안영회 SE 컨설턴트 http://younghoe.info

 

이 추천 글은 화장실에서 만들어진 것이다. 굳이 장소를 드러내는 이유는 그만큼 이 책이 사람을 끌어들인다는 점을 말하고 싶어서다. 그저 어떤 내용인가 훑어볼 요량으로 화장실에 들고 간 책인데 내가 변비 환자가 아님에도 불구하고, 빨려들 듯 책장을 넘기게 되었다.
책 제목도 그렇지만, 이 책에서는 시종일관 “개떡 같은”이라는 표현을 사용한다. 표현 자체는 매우 선정적이다. 그러나 스무 장쯤 넘겼을 즈음에 이 표현이 매우 적절하다는 사실을 직감할 수 있다. 사용자가 컴퓨터를 사용할 때 부딪히는 문제의 기원! 그것은 초창기 컴퓨터 프로그램 설계자들이 자신의 제품을 사용자가 쉽게 사용하게 하는 데는 전혀 신경을 쓰지 않았다는 것이다. 그리고 그러한 전통(?)은 시간이 흘러도 명맥을 유지하고 있다는 점에서 충분히 “개떡 같다”고할 만하다.

 

필자는 묻는다. ‘왜 여전히 개떡 같은가?’ 이 대목에서 나는 미소 짓지 않을 수가 없었다. 필자가 책에 무엇을 담고자 하는지 단박에 알 수 있는 물음이다. 바로 다음 페이지에서 친절하게 자신이 제시한 문제에 답을 내어 놓았다.

 

‘그대의 사용자를 알라. 사용자는 그대가 아닐지니’

 

그리고 설계에 대한 고민만으로 머릿속을 꽉 메웠을지 모를 나와 같은 개발자를 위해 사용성(Usability)에 대해 다양한 방식으로 설명한다. 실행 취소(Undo) 기능을 마우스의 발명에 견주며 내부 설계에만 골몰하는 관점을 전환하게 해주고, 구글 사례를 통해 서버 중심이 아닌 고객 중심 설계에 대해 친절하게 설명하고 있다. ‘스플래시, 플래시, 애니메이션’에서는 웹 디자이너에게 스며있는 잘못된 습관에 대해 적나라하게 묘사하고 있다. 기능 설계나 디자인(화면 설계)에 이어 보안 문제에 대해서도 인터넷의 구조적 문제, 개발자의 보안 불감증, 심지어는 패스워드가 갖춰야 할 모순적인 요건까지 폭넓게 설명한다. 마이크로소프트 문제에까지 나아가면 필자가 가진 폭넓은 지식, 그리고 이를 쉽게 풀어가는 재주에 감탄하지 않을 수 없다. 더불어 이 책의 역자 또한 칭찬하게 된다.

이 책의 전반부는 대체로 개발자의 올바르지 못한 시각을 지적하고 있는 반면, 후반부에 가서는 바람직한 소프트웨어 소비자의 태도에 대해 말하고 있다. 특히 9장에서는 소프트웨어사용성 개선 문제를 사회 운동 차원까지 언급하고, 이를 위해 만들었다는 suckbusters.com이라는 자신의 블로그를 소개하고 있다.

이 책은 개발자들이 자신의 고객을 어떻게 대하는지 그 태도를 돌아보기 위해 한번쯤 읽어볼 만하다. 또한, 내가 일하는 기업용 정보시스템 현장에서 소프트웨어 개발을 의뢰해야 하는 고객들이 개발자의 심리와 소프트웨어 개발 현실을 이해하기 위해 부담 없이 읽을 수 있는 좋은 책이다.