|
"실시간 사용자 경험 프로그래밍” 제목에는 나타나지 않지만 Python(+GAE), Javascript, (아주 약간의 PHP, Java)를 주로 사용하여 실시간 사용자경험 제공을 위한 방법을 다루고 있다. |
|
책의 제목부터 관심을 끌었습니다.
실시간(Real Time) + UX (User Experience, 사용자경험)
여기까지였으면 아마 이 책 또한 흔한 이야기만 하려니 하고 넘어갔을지 모릅니다. 하지만 여기에 프로그래밍까지 다루고 있다니, 어떤것을 대상으로 어떻게 내용을 꾸려갈까 상당히 궁금해졌습니다.
이 책은 선수 지식으로 파이썬과 자바스크립트, JSON, 구글 앱 엔진에 대한 내용을 제공해주고 있습니다. 사실 파이썬은 Panda 3D 물리엔진 사용을 위해 잠시 다뤄봤지만, 나머지는 웹을 주로 하지 않은 저로써는 프로그래머가 가지는 동물적 감각(?)으로 습득해나갔습니다. 물론 이후에 본문에서 실습내용으로 반복적으로 다루고 있어, 프로그래밍 언어에 대한 약간의 이해를 가진분이라면 미리부터 어려워할 필요는 없어 보입니다.
그리고 프로그래밍 실습이라 하여 모든것을 다 만들도록 강요하지는 않습니다. 기존에 공개되어 있는 몇몇의 API와 SDK를 적절히 사용하여, 난이도 또한 난해하지 않게 하면서 동시에 이런 라이브러리들을 접할 기회까지 제공해 주고 있습니다.
다만 이 책을 읽어가며 느낀것이지만, 실시간 사용자 경험 프로그래밍이라는 주제라고 해서 이 모든 것에 대한 완벽한 답은 제공해주지 않습니다.
웹 페이지가 사용자에게 어떻게 실시간으로 페이지(혹은 메시지)를 보여주게 할 것인가? 채팅은 단순한 메시지 (텍스트) 전달만 하면 되는것이 아니였는가? 트래픽등의 통계자료를 실시간으로 받으려면? 데이터를 추적하기 위해선?
이 책에서 분명 그 내용과 방법, 소스코드를 제공하지만, 이것은 어디까지나 수많은 기법 중의 일부에 지나지 않는다는 것 또한 깨닫게 될 것입니다.
하지만 웹 개발을 하기 이전에 자신이 개발하고자 하는 방향, 사용자에게 어떻게 보여줄 것인가에 대한 고민 등을 해볼 수 있게하여, 조금 더 모던한 웹을 완성할 수 있게끔 이끌어 줄 수 있는 책이라고 생각합니다. |
|
모던 웹을 위한 실시간 사용자 경험 프로그래밍 Real Time UX 라는 표지를 보고 아무생각 없이 책을 고르게 되었습니다. 웹에서 실시간 사용자 경험이라... 무엇보다 책표지에 언급된 모던웹이라는 생소한 단어가 너무 궁금하더군요. 이곳저곳을 검색하며 찾아보니 가장 비슷한 기능이 구글 검색사이트였습니다. 검색버튼을 누르지 않고도 실시간으로 화면이 바뀌는 것이지요. 이러한 지식을 습득하고자 한다면 이 책은 가장좋은 안내서가 될 것입니다. 쉽게 말해서 " 웹에서 채팅이 가능하게 구현하고 싶어요." 이 책에 그 해답이 있습니다.
책의 저자 제가 선택하는 또다른 기준이 바로 책의 저자 입니다. 수없이 많이 나온 여러 프로그래밍언어 책 중에서 자신이 원하는 책을 찾기란 그리 쉽지 많은 않습니다. 수많은 전공서적을 읽다 보니 나름대로 책선정이준이 생기게 되더군요. 그중에서도 우선순위를 두는 선정기준은 "저자도 선택의 기준에 포함시켜라", "현직 개발자가 쓴책은 믿을만한 책이다." 입니다.
이 책의 저자는 테드 로덴 이라는 분이십니다. 그는 가장 먼저 Vimeo.com에서 재직했으며 현재는 뉴욕타임즈의 R&D 부서에서 실시간 사용자 경험을 연구하고 있으며 니먼 저널리즘 연구소에서 연구와 프로토타입을 개발하고 있습니다. 개발자이기에 믿을만한 책이라 생각되었습니다.
책내용 간략 소개
이 책은 수많은 웹개발자들이 고민하는 "실시간" 이라는 것에 대한 고민을 말끔히 해결해주는 단비 같은 책입니다. 이 책은 먼저 독자들에게 이 책을 읽기위해 필요한 선수 지식에 대해 설명을 합니다. 필요한 언어에 대해서 독자가 익숙하지 않더라고 예제를 이해하는데는 어려움이 없을 거라고 저자는 이야기 하고 있습니다. 실시간 발행/구독, 실시간 위젯, 토네이토, 채팅, 구글앱 엔진, SMS, 실시간 세균전등 기본 개념에서 부터 약간의 난이도 높은 내용들까지 두루 설명을 하고 있습니다. "웹에서 이런것들이 가능할까?" 라고 의심했던 생각을 날려주는 아주 좋은 책입니다.
이 책의 좋은점
이책의 아쉬운점
마무리 하며.
저는 웹에서는 실시간으로 가능한 어플은 불가능 하리라 생각했습니다. 하지만 이 책을 읽고난뒤 무한한 가능성이 있다고 느끼게 되었지요. 그리고 실시간 UX라는 녀석이 먼지 어떤것인지 점점더 궁금하게 해주는 책이었습니다.
이 책은 완전 개발초보이신 분보다 어느정도 경험이 있으신분에게 권하는 책입니다. 좀더 수월하게 책을 학습하시려면 웹프로그래밍언어와 파이썬에 대한 지식이 있다면 더더욱 좋겠죠?
저는 웹에 대한 지식과 파이썬에 대한 지식이 다소 부족하여 시간과 노력이 많이 투자 되었습니다. 하지만 그것에 비해 얻는 것이 많았다고 생각되었던 책입니다. 이 글을 쓰고난뒤 한두번정도 더 심도있게 학습해 볼예정이지만 이 책이 주는 정보들은 충분히 가치가 있고 나의 시간과 열정을 투자할 만한 가치는 있다고 판단됩니다.
|
|
모던웹?? 모던웹이란 무엇일까?? 프로그래머로 살면서 새로 쏟아지는 용어를 이해하고 내것으로 만드는 일이 가장 어려운 일이 아닌가 싶다. 이럴때에는 어린아이처럼 그냥 무조건 받아들이고 보는 그런 능력이 필요한 것 같다. 포털사이트에 검색을 하고 나면 실시간으로 움직이는 각종 검색결과들을 봤는가? 유명한 검색사이트의 하나인 구글에서는 검색어를 입력할때 마다 페이지를 Refresh 하지 않고도 검색결과가 실시간으로 바뀐다. 이런 기술을 배우고 싶다면 책을 정말 잘 고른것 같다. 나의 경우는 단순하게 GAE(Google Application Engine) 이라는 단어만 보고 골라서 GAE관련 Chapter에서는 무척이나 당황했다. python으로 설명 되어있을줄은 몰랐기 때문이다. Java를 기대했는데.. 내용설명을 자세히 봤어야 했는데 실시간 사용자 경험이라는 단어와 스마트폰이라는 단어만을 보고 읽어 보고 싶다라는 생각이 들어서 무턱대고 읽기 시작했는데.. 살짝은 난감하고 새로운 용어 들에 어리둥절했지만 실시간 사용자 경험이라는 맛있는 경험을 한 것 같다. Python에 대해서 맛을 보기도 하고... Python을 할줄 알고 GAE에 관심이 많은 웹개발자들에게는 많은 도움이 될 것 같다. 아직 내가 능력자가 아니여서 Python 코드를 Java코드로 바로 바로 바꾸고 이해 하고 하지는 못하지만 실시간 UX 프로그래밍이 어떤것인지 더욱 더 궁금하게 해주는 책이었다. Python을 하는 프로그래머는 GAE를 이용하여 간단하게 예제를 따라해보고 스마트폰으로 사용해 볼 수 있는 좋은 경험이 될것 같다. 웹프로그래밍이 익숙하지 않은 초보 개발자들도 Python이라는 언어를 통해 간단하고 쉽게 예제를 구현해보고 피부로 느낄수 있는 책이라고 생각한다. (Java만큼 복잡한 설정을 해야하고 많은 규칙과 코드가 기다리진 않기 때문에.. ^^) 초급을 넘어서는 신중급 개발자 및 중급개발자에게 권한다. 안드로이드나, 아이폰 개발만 해봤던 프로그래머라면 웹프로그래밍에 대한 기초 지식이 필요하다. 작성자인 나는 안드로이드 개발 3년차 이고 Java웹프로그래밍 2년의 경험과 약간의 DX 프로그래밍 경험이 있다. 솔직하게 생각보다 어려웠고 다 소화하지 못했다. python이 너무 생소한지라... 웹기술의 공부도 많이 필요하고.. |
|
웹에서 실시간으로 서버의 정보를 가져오는 흔한 방법은 서버로 일정시간마다 갱신된 정보를 요청하는 방법이였다. 하지만 이방법은 사용자가 늘어나면 서버의 부하는 말할수 없이 늘어난다. 서버의 부하를 줄이면서 어떻게 사용자의 실시간을 구현할 것인가. 이책은 실제 나와 있는 방법들과 그 실제 예제들로 구성되어 있다. 서버로 부터의 실시간 응답을 위해서는 지속적인 커넥션은 필수 이다. 하지만 웹의 특성상 지속성적인 커넥션이 어려웠다. 이에 롱폴링이라는 방식이 웹에서 커넥션을 유지시키는 대안이 나왔으며 이를 구현하기 위한 전용 웹서버도 생겨났다. 오픈 소스인 토네이도의 설치부터 실제 예제들은 실제 서비스 적용에 많은 도움이 될듯 하다. 예제들이 파이썬과 자바스크립트로 되어 있어서 파이썬이나 자바스크립트에 대한 지식이 없다면 권하지 않는다. 실시간 서비스를 고려하는 개발자에게 권하는 책이다. |
|
- 웹사이트에 인터랙티브를 더하는 마술
이 책에서 가장 중요한 단어는 '실시간' 입니다.
'만들면서 배우는 실시간성이 높은 웹앱 프로그래밍' 정도 되지 않을까 생각합니다.
많은 것들이 달라 졌습니다. 다양한 앱의 제공, 다양한 OS지원을 위한 웹앱의 제공 등등 짧은 시간에도 앱에 대한 트렌드는 급속도로 바뀌어 왔습니다. 빠른 변화 속에서 이제 사용자들은 PC가 아닌 스마트 폰에서 실시간성을 원하고 있습니다.
'실시간성'이라는 주제에 맞춰 나온 것이 이 책입니다. 기존에 서적들은 HTML5 나 jQuery 등, 개별 기술의 사용법에 치중한 웹 관련 서적이 많이 나왔는데요 하나의 일관된 주제에 대해서 서술해 놓았습니다.
이 책을 읽기 위해서는 웹 개발과 관련된 다양한 지식이 필요합니다. 자바, 자바스크립트, php, 파이썬, MySQL, 등에 대해 자세히 알지는 못해도, 최소한의 사용법 정도는 알고 있어야 예제를 실습해 볼 수 있습니다. 또한 윈도우 기반으로 설명해 놓지 않고, 유닉스 처럼 명령행 기반으로 설명해 놓았기 때문에 명령행에 익숙하지 않은 경우, 약간의 어색함을 느낄 수도 있습니다.
자바스크립트의 기본적인 내용은 알고 보는 것이 좋을듯합니다.
복잡한 이론설명 보다는, 구체적인 예제를 작성하고 이해하는데 중점을 두고 있습니다.
'실시간성' 구현에 대한 감을 잡을 수 있습니다.
10장의 분량이 이 책의 25%가 넘을 만큼 자세하기 때문에 실시간에 대한 이해를 높이는데 많은 도움이 될 것이라고 생각합니다.
많이 이슈가 되지 않고 있는듯하지만 앞으로는 더 활성화되지않을까 생각합니다.
도움이 되는 책이라고 생각합니다.
|