Google I/O — Day 1

extJo
6 min readMay 13, 2019

--

Google I/O를 첫 방문을 지원(I/O 티켓 및 숙박) 해준 Google Korea DevRel팀에 감사를 드리며 글을 시작하겠습니다.

Google I/O 후기 시리즈

Google I/O — Day 1

Google I/O — Day 2

Google I/O — Day 3 & 마무리

저는 주로 Machine Learning과 Flutter 위주로 글을 쓸 예정입니다.

I/O landmark

Keynote

선다 피차이의 키노트 시작

구글의 제품을 통해서 모든 사람들에게 도움이 되고자 하는 목표를 가지는 구글은, 이번 키노트에서 그 목표에 대한 명확한 Product 들을 선보여 준 것 같습니다.

Google I/O 2019 Keynote

간단히 정리 해 보자면,

  • Google Lens의 비약적인 발전 — 더치 페이 기능, AR, 이미지의 텍스트를 음성으로 들려주는 기능 등등
  • Google Assistance의 발전 — 개인정보를 미리 입력을 해 두면, 예약, 결제 및 여러 depth가 필요한 결제를 간단히 해주거나, 메일 답변에 대한 간단한 선택지를 제시 해 주는 기능 등등
  • Google AI Core의 경량화 — 100GB 에서 0.5G로 경량화 (외계인 고문급..)로 인해서 google의 모든 Product에 적용이 가능해짐
  • Privacy 강화 (Incognito Mode at Chrome, Youtube, Google Maps) — 최근 privacy에 말이 많았던 만큼, 정책 뿐만이 아니라, 이제는 기능으로써 privacy에 대한 보호를 제공
  • Android Q —Live Caption, Smart Reply, Suggested Action, On-device Learning, Dark Theme, Security&Privacy 등등 (삼성이 베타 지원에서 빠져있는… ㅠ)
  • Google Home에서 이제는 NEST라는 brand를 통해서 Smart Home제품군을 출시
  • Pixel 3a!! 파격적인 가격… (한국 미 출시)

정도로 요약 할 수 있을 것 같습니다.

keynote 에서는 너무나도 많은 이야기를 했기 때문에, 직접 보시는 것도 나쁘지 않다고 생각이 드네요.

Developer Keynote

Google I/O Developer Keynote

Developer Keynote에서는 google의 product를 통해서 더 빠르게 개발 하여, bussiness에 더 집중 할 수 있도록 많은 이야기들이 나왔는데요,

  • Android 개발에서 Kotlin First로 지정
  • Android Jetpack에서 다양한 Component들을 추가
  • Android App Bundle 꼭 쓰세요! 왜 않씀?
  • Android In-app Updates
  • Google Assistance — Markup, App Actions
  • Machine Learning — ML Kit, Google Cloud, Tensorflow — 이제 더 ML 개발에 힘들이지 않도록 Infra 제공과 더 쉽게 ML을 할 수 있도록 제공
  • Flutter — Android, iOS, Web, Desktop에서 Flutter 한번으로 같은 application을 제공 할 수 있음

정도로 요약 할 수 있을 것 같습니다.

Teaching a car to drive itself by imitation and imagination

Mayank Bansal — Waymo

이 세션을 들었던 이유는, 딥러닝 초급자 이지만, 자율주행이 어떻게 동작하는지 궁금했기 때문이었는데요,

대략적으로 RNN + CharffuerNet 통해서 학습을 진행하는 것으로 보였습니다.

자율주행에서는 굉장히 많은 변수들이 존재하는데요, 특히 output, 즉 경로를 어떻게 예측 하는가가 가장 힘든 문제였다고 이야기를 하였습니다.

경로예측을 하기위해서는 다른 외부적인 요인들도 고려를 해야 했는데 (길가에 주차되어있는 차량, stop sign, u turn 등) 어떤식으로 풀어나가는지, 그리고 어떤 문제들이 남아있는지, Waymo사의 Mayank Bansal께서 발표 해 주셨습니다.

Machine Learning on Your Device: The Options

이 세션에서는 다양한 디바이스에서 on-device 환경에서의 ML을 하는 법을 발표하였는데요, 특히 Tensorflow Lite를 이용하는것과, ML Kit을 사용하여 쉽고, 빠르게 ML을 개발하는 방법을 알려주었습니다.

Tensorflow LiteML Kit에 대한 내용은 공식 문서를 참고 해 주세요!

Flutter SandBox

Sandbox는 해당 주제의 부스 같은 곳이였는데요, 해당하는 팀의 engineer 분들이나 advocate분들이 질문에 대해서 답변을 해 주시거나, 설명해 주는 부스였습니다.

Flutter의 마스코트인 Dash
Flutter를 이용한 다양한 Application (Android, iOS, Web, Chrome OS)

저는 Flutter 팀의 engineer분께 몇가지 궁금한 점에 대해서 답변을 받았는데요

  1. PWA vs Flutter 중에 누가 살아남을 것인가

⇒ 회사성향마다 달라 질 것이다. 웹이 익숙하면 PWA, 앱이 익숙하면 Flutter로 선택 하게 될 것 같다

2. View Structure 와 view style widget이 섞여 있는것이 마음에 들지 않는다.

⇒ flutter는 웹 처럼 html과 css가 분리 되어있지 않다. 그리고, 앱은 구조와 스타일을 한번에 적용하고 나면 (예, 안드로이드 view xml), 변화가 생기면 한번에 고치게 되지, /재사용을 위한것은 widget으로 이미 빠져있을 것 이다(개인적 견해)/ 그러므로, 너무 앱을 웹 처럼 생각하지 말자. 만약 하나의 위젯 컴포넌트가 너무 길다면, 니가 공통되는 위젯을 함수로 못 뺀 것이니 설계를 잘 해라.

3. Dart 말고 다른언어를 지원 할 계획이 없냐?

⇒절대 그럴 일 없을것이다

라고 답을 얻었습니다.

Getting Started with TensorFlow 2.0

Tensorflow 2.0

Tensorflow 2.0에 대한 소개였는데요, 사실 이미 많은 분들이 Tensorflow 2.0에 대해서 알고 계시기 때문에 Tensorflow Dev Summit 2019의 영상에서 확인해보세요!

더 많은 I/O영상은 아래에서 확인하세요!

--

--

extJo

Node js, Typescript, Android, iOS, Kotlin, Dart, Flutter 😍 & Community Organizer