본문 바로가기
[Memories]/GDG

Google I/O 2019 참관기 (2)

by 해피빈이 2019. 5. 28.

Google I/O 2019에 참관했던 내용에 대해 기록을 남긴다.

짧은 3일동안의 행사였지만, 너무 많은 내용들이 있었기에, 제대로 남기자면 별도의 2박3일 휴가를 내면서 기록을 하는게 맞는듯 하나, 상세한 기록은 무리일듯 싶어 간략하게 체크포인트 몇개를 집어서 기록한다.

 

특히 컨텐츠를 포함한 디테일한 내용에 대해서는, 키노트를 제외하고는 너무 방대하여, 내가 직접 경험한 부분들 중 일부만 기록하고, 대부분은 경험했던 느낌 위주로 포스팅한다.

 

 

[체크포인트 1] 키노트

1. 현장의 분위기

현장의 분위기는 흡사 월드컵 응원이라도 나온 듯 했다. 야구장 응원같다고 해야할까. 앞에서 따로 주도하는 이는 없지만, 그 자리에 있는 것만으로도 서로 힘이 되는 분위기라고 여겨졌다.

사실 나중에 듣고보니, 이 분위기는 reserved 석에서만 이랬다고 한다. GDG 및 Google과 더 깊은 연관이 있는 사람들이 앞에 있고, 그 사람들끼리 또한 그루핑이 되어있어서 서로 으쌰으쌰하는 분위기가 나지 않았나 생각이 들었다. 서로 양옆에 모르는 사람끼리 있거나, 그러한 비슷한 그룹들이 모여있다면, 그렇게 분위기 내기는 어려울 듯 싶었다.

물론 그냥 있던것은 아니었고, 앞에 간단히 preview성 영상을 틀었다가, 디제잉을 하기도 했다.

디제잉은 일반적인 디제잉이 아닌 AI와 휴먼의 결합으로 된 디제잉이었다. 휴먼은 NAO님이 진행하였다. AI는 휴대폰 하나가 위에 일련의 장치를 연결하여 그루브를 타고 있었다.

 

NAO와 AI의 디제잉

이러한 분위기는 사진보다는 영상이 좋을듯하여 영상을 올린다.

 

한참동안 디제잉이 진행되었고, 진행되는 동안 다양한 영상을 합성하여 우리의 눈에 즐거움을 안겨 주었다.

각 나라에서 오면서 국기를 준비해오기도 하였고, 여러 플랜카드를 준비하여 이 환호에 참여하였다.

그렇게 약속된 시간이 올때까지 진행이 되었고, 마무리가 되었다.

 

2. 주요 발표내용

잠시 후 카운트 다운이 진행되었고, keynote preview영상을 잠시 보여준 뒤, Sundar Pichai의 입장으로 keynote가 시작되었다.

 

Google I/O 2019 Keynote

중요한 발표들이 큰 맥락으로 이어졌고, 중요한 포인트나 웃음 포인트에서는 적절하게 환호하였다.

간단하게 요약하면 다음과 같다.

AR로 시작하였다. AR을 Google I/O 앱에 내장하였고, 이것을 활용해보라고 하면서 시작한다.

문제는 어려웠고, 그것을 해결하는게 이들에게는 흥미로운 일이라고 하였다. 사용자 프라이버시를 기반으로 한 여러 제품들을 소개한다고 하였다. 스마트 리플라이, 혹은 실행 취소. 집에 도착하면 방해금지모드로 진입할 수 있도록 할 수도 있다. 수십억의 사용자를 관리하고 있기 때문에 큰 책임을 갖고 있다고도 이야기 하였다. 그러한 것들이 중요한 방향이 될 것임을 강조하였다.

 

그리고 말했던 미션

Our mission

"Organize the world's information and make it univerally accessible and useful"

 

Knowleadge Success Health Happiness

이 네가지를 목표로 하여 사람들에게 도움이 되는 서비스를 만들고자 하였다고 이야기 한 것이 이들의 핵심인 것으로 보았다.

 

이후 여러 관련자들이 나와서 데모도 보여주고, 제품을 소개하였는데, 기억에 남는것은 역시 픽셀이었다. 조금 더 기억에 남는것은 Nest Hub Max. 이걸 집안에 들이면 상당히 도움이 될 것 같다.

 

여기에 한글이 나와서 반가움에...

 

** full 영상은 다음으로.. https://youtu.be/TQSaPsKHPqs

 

3. Developer Keynote

개발자이기에 Keynote뿐 아니라 Developer Keynote도 빼놓을 수 없었다.

Developer Keynote는 좀 더 개발자에 초점을 맞춘 키노트이다.

Keynote가 끝난 뒤 자리 정리를 좀 하고, 식사를 하러 다 내보낸 뒤에, 다시 Shoreline Amphitheatre에서 진행하였다.

Chet Haase의 이야기로 Android에 대한 관점을 들을 수 있었다.

안드로이드는 제품이자 플랫폼 관점을 둘 다 갖고 있다는 점.

Kotlin first에 대한 발표.

사실 새로울 것은 크게 없었다. 지난 기술들에 대한 확신과 정리에 대한 느낌이 더 강했다.

또한 기존 개발을 시작한 부분들에 대해 Advanced한 부분을 강화시키는 느낌이었다.

좀 더 간결하게 개발하게 함으로 더 접근성을 뛰어나게 만들기도 하였다.

 

코틀린, 안드로이드 젯팩, 뷰모델 클래스, 앱 번들, 안드로이드 스튜디오 3.5에 대한 이야기들. 등이었다.

 

물론 Developer Keynote는 안드로이드 외에도 다양한 분야에서의 이야기가 있으니 다음 영상을 참고하면 더 좋다!

 

Full 영상은 여기에서: https://youtu.be/LoLqSbV1ELU

 

[체크포인트 2] 세션

1. 구성

세션은 정말 다양하였다.

https://events.google.com/io/schedule/events/

 

Schedule - Google I/O 2019

Google I/O 2019 returns to the Shoreline Amphitheatre May 7-9. Join us for a hands-on experience with Google’s latest product and platform innovations.

events.google.com

위의 이벤트 탭의 내용을 보면, 정신이 없을 정도이다.

그래서 나름 미리 체크한다고 했는데, 당일에 관심이 바뀌었으나 자리를 맡을 수 없어서 좌절한 부분들도 많았다.

그래도 사전 예약제를 통해 어느정도는 참석인원에 대한 제한을 둔다는 것은 매우 좋았다.

이번이 처음이라 예약을 너무 엉성하게 했고, 또한 techical line up에 맞추어 예약하지 않았는데,

그러한 부분들을 잘 맞추어 하면 물 흐르듯 자연스러운 전개를 맛볼 것이라고 생각한다.

 

그리고 줄이 너무도 긴 세션도 있었는데, 미리미리 동선을 계획해서 이동해야 좋다. 그렇지 않으면 예약자라도 탈락될 수 있다...

사실 세션 부분은 이렇게 실패한 부분도 많아서, 그런것들은 라이브스트림으로 대체하였다.

와이파이는 행사장 전반에 걸쳐 빵빵한 편이라, 편하게 들을 수 있었다.

 

2. 내가 스스로 듣고 정리한 부분

세션 들은 것을 다 이곳에 정리한다는 것은 무리고

 

정리했던 방법을 기록해 본다.

 

우선 맥북이를 켜주고, 듣는다. 처음에는 듣다가 중요 포인트에서 한번씩 사진 찍고 그랬는데,

나중에는 다시 돌려보는것도 유용할 듯하여, 돌려보기도 하였다.(라이브스트림을 맥북에서 재생하면서 들으면 된다.)

뭐 대부분은 앞에서 이야기 해주는것을 기록하는것만으로 충분하기는 하였다.

 

위의 사진은 들은 세션 중 하나인 Day 1의 안드로이드 상 코루틴 이해하기 라는 세션이다.

 

기록한 걸 예시로 여기에 넣어보면 이런식이다.

6:00pm <Understanding Coroutines On Android>

UI 코드 상에서 바로 Network 코드 실행하면 exception 발생,
등록구조로 사용하여 onStop시 unsubscription하면 관리에 어려움이 있다.
Rx

2018 Developer Surveys.
Threading & Concurrency
LiveData++
Why?
9명의 전문 개발자와 깊은 인터뷰 진행함
LiveData, RxJava, Coroutines
	- LiveData
		○ 완벽한 솔루션을 해야한다.
	- RxJava
	- Coroutines
		○ 러닝커브 문제
Coroutines
예시코드 확인.
Blocking.kt

Async.kt


Coroutines.kt

코루틴 코드는 결국 subpend를 진행하고 뒤에 콜백으로 진행하는것으로 이해한다.
Dispatchers
.Default (CPU)
.IO (Network, Disk)
.Main (The Rest)
withContext()는 main safe하다.


콜백을 main-safely하게 교체하기
Practice: coroutines on android
Pioneer: WorkManager.
코루틴 코드가 아니면 중간중간 체크하고 나가도록 해야한다.
코루틴 코드는 중간중간 결과가 나오기 전 suspend 된다는 것을 인지하고 코드 작성이 가능하다. 즉 main safe 진행된다.

LiveData & Coroutines

LiveData is an observable value holder for UI.
LiveData is not designed for concurrency.


The infamous rotation problem

코루틴 leaks.
코루틴 scopes
viewModel scope는 coroutine의 leak을 피할 수 있다.

WorkManager

 

너무나도 빨라서 사실 놓치는게 더 많다. 그래서 이곳에서는 굵직한 이야기 듣고, 느끼기 정도만 할 수 있다.

(영어가 잘 된다 하여도 놓칠듯싶다..) 내용 자체가 워낙 방대하다보니!

 

여튼 이러한 세션은 첫날 오후부터 셋째날 4시까지 이어지며, 둘째날은 Full로 이루어진다.

이것을 최대한 잘 활용하면 많은 정보를 얻어갈 수 있겠지만, 어차피 라이브스트림으로도 쏴주고, Google Developers 사이트에도 정리가 될테니, 굳이 엄청 정리를 잘하려 노력해도 큰 의미가 없다고 생각이 된다.

 

대신, 기술 스택에 대한 흐름이 있는데, 이 흐름만 잘 짜서 이동하면 좋다.

 

세션에 대한 느낀점은 이정도로 마무리.

 

 

다음은 코드랩, 샌드박스, 커뮤니티 라운지에 대한 느낀점을 이어서 정리할 예정이다.

반응형

'[Memories] > GDG' 카테고리의 다른 글

Google I/O 2019 참관기 (4)  (0) 2019.06.08
Google I/O 2019 참관기 (3)  (0) 2019.05.29
Google I/O 2019 참관기 (1)  (0) 2019.05.19
Global GDG Leads Summit 2019 후기  (0) 2019.05.07

댓글