[트렌드 그림 한 장] 서비스 워커와 PWA
해마다 정초가 되면 올해의 테크놀로지 트렌드 같은 것을 발표하곤 한다. 그런데 그 트렌드라는 것들은 인공지능이니 사물인터넷이니 클라우드니 아무래도 두루뭉술하고 추상적인 개념을 벗어나지 못해 수박 겉핥기로 끝나기 쉬운데, 다 이유가 있다. 정작 중요한 변화란 선언되는 것이 아니라, 시장 참여자들에 의해 극적으로 선택되고 조율되는 것이라서다. 올해도 그러한 극적인 선택과 조율의 면모가 드러나는 트렌드가 앱과 웹을 둘러싸고 벌어졌다.
앱과 웹은 분리된 세계였다. 앱은 앱스토어나 구글플레이에서 내려받아 설치하는 것으로, 보통은 기종별로 특화된 개발 방법으로 만들어진다. 아이폰용과 안드로이드용을 두 벌 만드는 일은 두 개의 전혀 다른 프로그램을 만들어야 하는 일이었다. 하지만 기종마다 특징과 구조를 잘 살려 개발하는 만큼(그래서 네이티브 앱이라 부른다) 손에 착 감기는 손맛과 빠릿빠릿한 반응이 특징이었다. 스토어를 통해 배포하기에 유료화도 쉬웠다. 고예산·고효율의 세계였다. 게다가 레드오션이라 신참이 자신을 다운 받게 하는 것은 고역이었다.
한편 웹은 웹브라우저를 열고 주소를 입력하거나 즐겨찾기를 해 둔 곳을 지정하여 방문하는 곳. 스마트폰이든 PC든 태블릿이든 심지어 자동차든 웹브라우저만 있다면 언제 어디서나 어떠한 제약 없이 접근할 수 있다. 웹 기술의 진보 덕에 웹으로 할 수 있는 일은 점점 늘어나고는 있지만, 아무래도 웹은 전통적으로 정보를 보여주고 약간의 피드백을 받는 일을 하는데 편했다. 저예산으로 보편적인 서비스를 제공하는데 탁월했던 것. 보편적인 만큼 주로 무료 모델이나 나 광고 수익 모델에 적합했고, 앱을 설치하는 것보다 웹사이트를 방문하게 하는 것은 비교적 쉬운 일이었다. 반면에 앱처럼 자주 쓰게 만드는 것은 어려웠다.
이처럼 성격이 다른 두 세계였기에 어찌어찌 공존해 왔지만, 늘 충돌은 일어났다. 웹브라우저 주소가 아닌 홈 스크린의 아이콘을 차지하고 싶은 욕망은 웹사이트들이 앱을 만들게 했다. 자주 쓰게 만들고 싶어서다. 그러나 빠듯한 예산으로 웹사이트 운영도 벅찰 텐데 양질의 앱까지 만들기란 쉬운 일이 아니다. 웹사이트를 앱으로 그냥 급한 대로 감싸 포장한 앱들이 양산되어 스토어에 올라가곤 했지만, 만족스러울 리 없었다. 하이브리드 웹 앱이라 불리는 것들이었다.
그러던 2015년. 이 웹 앱의 영역에서 새로운 ‘진보’가 선언된다. 구글 크롬 진영에서 등장한 PWA(Progressive Web App)라는 개발방식인데, 웹사이트를 만드는 바로 그 표준 기술로 앱을 만들되 이를 위해 필요한 기반을 미리 충분히 제공받자는 것. 그 덕에 이미 안드로이드의 경우 PWA 방식으로 웹 앱을 만들어 스토어를 통하지 않고도 설치를 하고, 네트워크가 끊긴 상태에서도 그냥 앱처럼 쓸 수 있게 되었다. 푸시 알림이라든가 백그라운드 실행, 업데이트 같은 일들이 ‘서비스 워커’라는 플랫폼 기간 기술로 기본 제공되기 시작한다. 카메라나 위치 정보 등이 이미 HTML5로 가능해진 마당, 앱에서 할 수 있는 일은 모두 다 웹에서도 가능해진다.
그간 이에 적극적으로 동조한 이들은 구글 이외에 모질라 파이어폭스 정도였으나, 2018년 마이크로소프트와 애플이 올해 로드맵을 구체적으로 제시하면서 새로운 가능성이 펼쳐지게 되었다. 이 네 곳의 합의는 지구상 모든 PC와 폰 기종을 한없이 100%에 가깝게 커버할 수 있음을 뜻한다.
윈도우 10에 있어 PWA는 올 4월 릴리스인 레드스톤 4부터 엣지 브라우저를 통해 제공이 될 예정이다(마이크로소프트는 프로젝트 웨스트민스터라는 이름으로 비슷한 꿈을 꿔오기는 했으니 무리는 없다.) 궁금한 쪽은 애플이다. 애플은 앱스토어의 앱생태계를 지키고 싶은 마음이 워낙 커서 가장 소극적일 것으로 여겨져 왔기 때문이다. 그런데 애플도 드디어 사파리 11.1(iOS 11.3과 macOS 10.13.4)에서부터 ‘서비스 워커’ 탑재 예정을 공식화했다. 단, 구글이 이끌어 온 PWA에 어느 정도까지 이들이 합의해 구현할지는 명쾌하지 않다. 하지만 4대 브라우저와 웬만한 OS에서 돌아갈 앱이 공통 기반 위에서 프로그래밍될 희망이 보였다는 점이 중요하다.
PWA에 미래를 건 구글은 배수의 진을 치고 데스크탑에 깔리는 스타일의 구형 웹 앱인, 크롬앱은 아예 포기하고, PWA로 유도하고 있다. 물론 엄연히 웹 기술인 만큼, 그 한계 또한 명확하다. 하지만 비싼 비용을 지불해 만든 네이티브 앱의 다운로드 수가 두자리인 일이 일상다반사인 요즈음. 웹사이트 홍보도 벅찬데, 스토어마다 앱 홍보 하는 일 또한 쉽지 않다. 차라리 웹사이트에서 바로 앱이 설치되도록 하는 방식인 PWA에 관심이 몰리는 이유 또한 바로 이와 같은 현실적 실용성 덕이다.
심지어 트위터 클라이언트도 라이트(Lite) 버전이 훌륭히 PWA로 제공되고 있으니, 호텔예약 등과 같이 꽤 상호작용이 필요한 웹사이트들도 충분히 쓸모 있을 터이다.
특히 관공서들, 홍보 이외에는 별 의미 없어 보이는 앱들을 앱 개수를 채우듯 세금으로 두벌 씩 만들곤 하는데, 많은 경우 PWA로 충분히 대체할 수 있어 보인다. 앱을 만들고 싶은 웹사이트들은 이제 pwa.rocks 등의 예제 사이트에서 어떤 일들이 가능한지 알아보고, 각자의 웹사이트에서 저예산으로 제공할만한 구석은 없을지 올해는 한 번 고민해 보도록 하자.