Chrome Dev Summit 2015의 Developing for Billions 를 요약해봅니다.
====
발표자: Tal Oppenheimer, Product Manager for Chrome
- 전세계를 대상으로 하는 웹 경험 만들기
- 2014년 말
- 32억명의 인터넷 유저
- 미국과 인도가 비슷한 규모
- 인도의 경우 2014년에 3천만의 사용자가 인터넷을 처음 사용하기 시작
- 인도와 중국의 사용자는 아직 온라인이 아닌 사람이 많음
- 인도만 10억 이상
- 도전꺼리
- 처음 인터넷을 사용하게 되는 경험이 다르다.
- 남편의 전화기를 빌려 처음으로 인터넷을 경험.
- 인도에 처음 인터넷을 쓰는 사람들이 쓰는 기기는...
- Samsung Galaxy J1
- 2015 발매
- 4.3인치, 512 램, 4GB 저장공간
- 우리가 쓰는 기기와는 다르다.
- 웹은 이런 이런 차이에서 발생하는 문제를 많이 해결할 수 있다.
- 저장 공간이 한정된 기기에서 인스톨이 필요 없다는 점
- APK 크기의 제약이 없음
- 항상 최신의 프로그램
- 하지만 다른 제약 조건들도 있다.
- 연결 품질: 2G가 대부분
- 전세계의 62%가 2G
- 인디아의 경우 87%가 2G
- 1초가 지연되면
- PV는 11%가 줄어듬
- 사용자의 만족도는 16%가 감소
- 4G나 Wifi에 비해 2G에서는 지연이 10배? 100배?가 될 수 있다.
- 가능한 빨라지도록 만드는 것이 중요
- 연결 비용이 비쌈
- 500MB 데이터 요금제를 쓰려면 최저 시급으로 17시간을 일해야 함
- 1시간의 급료로는 15페이지를 볼 수 있다. (사이트가 아님)
- 이런 이유로 사용자가 폰으로 인터넷을 사용하는 경험은 (우리와는) 다르다.
- 주기적으로 트레이드 오프를 하게 됨
- 하나의 사용자 경험을 선택하는 것은 다른 경험을 포기하는 것임
- 나중에는 인터넷 연결을 못할 수도 있고
- 그 날 혹은 그 달의 데이터를 다 쓰게 될 수도 있다.
- 브라질의 학생의 경우
- 하루를 시작할 때는 브라우즈를 많이 하지 않음
- 만나기로 한 친구에게 메시지를 보낼 때 등 꼭 필요한 경우에만 사용
- 그날 늦게, 남은 데이터 상태를 알고 나면 더 많이 탐색하고
- 집에 도착하면 브라우즈를 함
- 정말 데이터를 써야 할 때 데이터가 끊어지지 않을 것이라는 것을 알게 됐기 때문임.
- 매일 데이터를 끄고 켠다.
- 인도에서 하루에 14번 비행 모드로 옮겨가는 경우가 있었음
- 데이터 사용에 대한 우려로 간헐적으로 접속하는 것과 더불어
- 데이터 사용을 잘 관리하고자 하고
- 비행 모드 전환이 데이터를 조금씩 쓰게 될거라는 믿음이 있음
- 그래서 알지 못하고 필요하지 않을 때 데이터가 소진되지 않도록 데이터를 끔
- 추가적인 것을 할 때는 시간과 돈이 듬
- 페이지를 이동하면 데이터가 필요하고 충분한 데이터 요금제를 사용하기 위해서는 일을 더 해야 함.
- 그럼 뭘 해야 할까..?
- re-engagement에 필요한 단계를 없애라.
- 검색을 해서 원하는 페이지에 갈 때까지 여러 단계를 거치는데 add to homescreen 과 같은 것을 제공해서 중간 단계를 없앨 수 있다.
- 앱에서 사용자에게 가장 중요하고 필수적인 경험을 바로 제공한다.
- 웹 노티피케이션이라면 딥 링크를 제공
- 빠르고 데이터를 조금쓰도록
- Chrome data saver
- 60%까지 데이터를 줄일 수 있음
- 전세계 10%의 사용자가 사용 중
- 이미지를 플레이스홀더로 바꿔서 필요한 이미지만 로드하도록
- pagespeed module
- 한 줄의 코드로도 데이터를 줄일 수 있다.
- WebP를 지원하는 기기의 경우 이것만으로도 37%의 데이터를 아낄 수 있다. 사용자에게 보여지는 것은 동일.
- M46 이후의 버전에서는 클라이언트에 대한 정보를 더 많이 얻을 수 있다.
- DPR, Width, Viewport-Width
- 사용자의 기기에 맞게 경험을 최적화 할 수 있다.
- 화면이 작은 사용자의 경우 큰 이미지 전체를 보내지 않고 적절한 이미지를 보낼 수 있다.
- Save-Data
- M49
- 사용자가 Data Saver를 사용하는지 알 수 있다.
- save-data를 키면
- 꼭 필요한 이미지만 로드
- 비디오 해상도를 변경
- 동영상 자동 플레이 끔
- 이를 통해 사용자에게 주도권을 줌으로써 데이터에 민감한 사용자를 만족시킬 수 있다.
- downlinkMax
- M48
- actual navigation connection type뿐 아니라 connection type의 maximum expected throughput을 알 수 있음
- 개발자 도구에서 속도를 시뮬레이트 할 수 있음
- offline experience
- 사용자가 재방문을 하려 할 때 오프라인 공룡 페이지를 만나게 될 수 있다.
- Service worker를 사용하면 오프라인일때도 사용자 경험을 제공할 수 있다.
- 온라인이 되면 자연스럽게 이어질 수 있다.
- 이런 작업을 하면
- 모든 기기에 최적화할 수 있고
- 쉽게 재방문하도록 할 수 있고
- 사용자의 시간과 돈을 배려할 수 있고
- 어떤 종류의 네트워크라도 대응할 수 있다.
- 이런 방법을 적용하면 모든 사람에게 경험을 제공하는 결과물을 만들게 될 것이다.
====
동영상을 보고 가볍게 정리한 것이므로 내용을 빠뜨렸거나 잘못된 내용이 있을 수 있습니다. 발견하시는 분은 댓글로 내용을 남겨주시면 반영하겠습니다.