Mash Up? Mashup?
최근 여러분은 매쉬업(Mashup)이라는 말을 들어 보신적 있으신가요? 필자도 인터넷을 찾아보니 대략 ‘Open API를 제공하는 업체들에서 정보를 받아 새로운 서비스를 만들어 내는 것’ 정도로 요약이 되는 듯싶습니다. 물론 IT Boundary 안에서의 의미겠지요.
Mashup은 차세대 웹 어플리케이션과 서비스를 개발하는데 있어 중요한 역할을 하고 있는 것 같습니다. 예를 들면, ChicagoCrime.com이라는 사이트가 있습니다. 이 사이트는 시카고 경찰국의 범죄관련 데이터베이스와 구글 지도(Google Maps)의 서비스를 결합하여 시카고의 범죄 정보를 구글의 지도 위에서 보여주도록 하고 있습니다.
만약 최근 시카고에서 발생한 범죄가 어디서 발행했는지 알고 싶다면 몇 번의 클릭으로 이용자는 그 위치들을 파악하고, 풍선 도움말 기능을 이용하여 좀더 자세한 주소와 범죄내용까지 확인 할 수 있습니다. 또한 자신이 거주하는 지역의 이웃들의 범죄정보도 확인할 수 있으며 이 정보는 범죄 유형별로 다른 색으로 구분 됩니다. 그런데 이런 사이트가 우리나라에서도 필요할까요?
아무튼 누군가의 글을 보니 Mashup이라는 단어는 팝음악에서 기인했다고 합니다. 특히 힙합 음악에서는 리믹싱(Remixing)이라고도 불린다는 군요. 말 그 데로 다시 섞는다는 뜻일 것 같습니다. 필자 역시 웹 개발자들과 함께 일하던 여러 곳에서 온 웹 콘텐트를 섞어서 재 구성할 때 Mashup이라는 단어를 쓰곤 했습니다.
HousingMaps.com
Mashup을 누가 제일 먼저 시작했는지 가늠하기는 어려운 것 같습니다. 다만 폴 래드머처(Paul Rademacher) 라는 사람이 Mashup을 논할 때 폭넓게 회자되는 듯싶습니다. 그가 만든 웹사이트 역시 다른 성공적인 웹사이트처럼 자기 자신 스스로의 필요와 호기심에 의해서 기인되었다고 합니다.
과거 그 역시 자신이 살집을 구할 때 지도를 보면서 자신이 원하는 가격대의 리스트를 정리하고 그 위치를 일일이 확인하는 일을 무척 힘들게 느꼈었고 이러한 문제를 해결하기 위해 그는 필자가 앞서 소개한 Craigslist의 부동산 정보와 구글의 지도 정보를 결합하여 새로운 software를 개발했습니다. 그것이 바로 HousingMaps.com 입니다.
여러분, 간단해 보이는 아이디어 아닌가요? 그러나 이는 꾀나 새로운 것이었나 봅니다. 이 서비스가 단점이 없는 것은 아니었습니다만 점차 많은 사람들이 래드머처가 만든 이 웹사이트에서 자신들이 살 집을 구했습니다. 이는 한 사람의 프로그램 재능과 상상력이 얼마나 훌륭한 결과를 만들어 낼 수 있는지를 보여주는 사건인 듯싶습니다. Google이 보기에도 HousingMaps는 충분히 훌륭했었나 봅니다. 그는 지금 Google에서 일하고 있습니다.
It’s just copy?
여러분, 다른 웹사이트의 컨텐츠를 가져다 쓰는 것이 새롭게 느껴지시는지요? 물론 새로운 것이 아닙니다. 여기서 가격 비교 쇼핑사이트를 한 예로 들고 싶습니다. 이런 가격 비교 쇼핑 사이트는 인터넷에서 가격 정보를 추출하여 자신들의 웹사이트에 보여줍니다.
한 곳에서 가격을 비교해서 쇼핑하는 일은 이용자의 시간과 돈을 절약 할 수 있다는 점에서 인기가 많았습니다. 그러나 이런 사이트는 수집한 데이터를 재 구성하는 일 이상의 어떠한 역할 도 하지 않습니다. 다시 말해 가장 저렴한 가격 순서부터 가능 비싼 순서로 보여주는 식입니다. 그것뿐이지요.
자, 더 생각해 봅시다
그러나 필자는 Mashup이 Copy 개념이 아닌 한 단계 더 나아간 개념으로 이해하고자 합니다. 바로 Open API 때문입니다. 웹에서 수집한 데이터를 단순히 포스팅하는 대신 Mashup 개념에서는 개발자는 자신이 개발한 웹사이트에서 새로운 모습의 정보를 제공하는 것뿐만 아니라 그 오리지널 형태를 수정할 수 있도록 하는 것 입니다. 정확히 말하면 컨텐츠 제공자의 API를 이용하여 그들의 컨텐츠를 재 가공하여 자신의 웹사이트에서 서비스 할 수 있다는 의미입니다.
사실 이는 많은 웹 개발자들의 바램이었습니다. Google Maps와 같은 많은 웹사이트들이 점차 그들의 API를 공개하고 있습니다. 특히 필자가 좋아하는 있는Sourceforge.net과 같은 오픈 소스 진영의 개발자들에게는 기쁜 소식이 아닐 수 없습니다.
Mashup과 Ajax
Mashup이 갖고 있는 큰 과제는 프로그래밍 문법과 개발 툴의 표준 문제일 걸로 보입니다. 한 예로 Ajax가 대표적이지 않을까요? 아직 Ajax는 브라우저간 호환성 문제를 고려해야 합니다.
FireFox와 같은 모질라 기반의 브라우저는 자바 스크립트 엔진이 따로 존재하므로 각 자바 스크립트 엔진에 맞춰 테스트를 해야 합니다. 원래 Ajax가 멀티 플랫폼을 지원하는 의도로 개발되었지만 그 멀티 플랫폼이라는 의미가 브라우저에서는 아직 한계가 있어 보입니다.
Amazon의 A9
지금 Mashup 사이트들은 비슷한 영역을 다루는 듯 합니다. Google Maps와 같은 지리 정보와 결합한 서비스 들이었죠. 그러나 Mashup이 지도 서비스에 국한하지 않고 다른 영역으로의 확장해 가는 것 같습니다. 바로 Yahoo, Amazon 그리고 Google과 같은 웹의 리더들이 Mashup 사이트들에 대한 지원 폭을 확대하고 있기 때문입니다. 한 예로 Amazon은 A9이라는 웹사이틀 개발했습니다. 이 웹사이트는 이용자들이 자신의 Mashup 사이트를 개발 할 수 있도록 지원합니다.
Mashup은 분명 인터넷 비즈니스에 많은 변화를 가져올 것 같습니다. 갈수록 많은 인터넷 회사들이 그들의 콘텐츠가 Mashup 사이트에서 이용되게 할 것인지에 대해 고민 할 것이며 만약 그렇게 할 경우 그들은 Open API를 적용하기 쉽게 제공하여야 할 것 입니다.
이러한 흐름에 따라 Mashup 개발자들의 개발 패턴 역시 표준화와 같은 문제와 함께 지속적으로 논의 될 것 입니다.