on
WWDC 2018 Review
6월 4일 부터 8일까지 San Jose 에서 열린 Apple Developer Conference , WWDC 2018 에 다녀왔습니다! 매우 의미 있었던 제 인생의 커다란 이벤트를 마무리하고, 글을 남기지 않으면 나중에 후회가 될 것 같아 스케치를 공유합니다. :)
Networking
전세계에서 모인 개발자들과 함께하고, 특히 국내의 iOS 개발자 분들과 네트워킹 하는 시간을 가질 수 있었던 것이 이번 행사에서 가장 좋았던 부분입니다. 이런 기회가 아니라면 절대 만나지 못했을! 시애틀 AWS, 캐나다 Rogers, pooq, NAVER, Line, MBC, Korbit, Hyundai, Brandi, kakaopay, HyperConnect, 코드스쿼드, styleshare, apple korea 등등 다양한 필드에서 일하시고 계신 iOS 개발자 분들과 소통할 수 있었습니다.
특히 요즘 개발 문화 및 일하는 방식에 대한 관심이 많았었는데, 점심을 먹으면서, 끝나고 맥주 한 잔 하면서 - 속한 기업 또는 환경에서 일하는 방식과 관심있는 분야에 대해 캐주얼하게 같이 이야기 나누면서 인사이트를 얻을 수 있었습니다.
Leading Company
사촌 오빠의 소개로, 페이스북 HQ에 방문해서 데이터 엔지니어분의 가이드를 받아 본사 내부를 둘러볼 수 있었습니다. 사원 식당에서 저녁도 같이 먹고, 오피스 여러 곳을 둘러봤는데요. 전세계인의 커뮤니케이션 플랫폼이라는 컨셉에 걸맞게, 오피스 건물들이 하나 하나의 페이스북 페이지 플래그쉽 같아보였습니다. 노는 곳, 먹는 곳, 쉬는 곳, 일하는 곳, 디저트 상점, 배우는 곳 등등 :) Bay Area 엔지니어 분들의 업무 방식에서 가장 놀라웠던 점은, 안되는 것은 웹 표준을 바꿔서라도 해내게 한다는 마인드를 갖고 있다는 것입니다. 오프라인이 안되면 웹워커를 만들자거나, 웹에서 네이티브 기능이 지원되지 않는다면 웹 푸시를 만드는 등 스펙을 바꿔가며 일하는 점이 기술을 리딩하는 회사 다웠습니다.
Sessions
WWDC에서는 5일 동안 100여 개의 세션과 랩이 있었고, 개발자들의 상상력을 자극하고 동기를 부여하는 멋진 프레젠테이션 시간이었습니다. 신규 기술에 대한 내용도 있었고, 과거의 기술에 대한 팁과 업그레이드에 관한 내용도 있었는데요. 현재와 미래를 넘나드는 세션들이 있었습니다.
Future
신규 기술 소개 세션 - 앞으로 어떤 경험들이 가능할까?
CreateML
스위프트를 통해 머신러닝 Model 만들기
머신러닝 전문가가 아닌 클라이언트 개발자도 간단한 아이디어로 트레이닝된 모델을 만들 수 있다는 점이 놀라웠습니다. 라벨링 된 이미지 파일 폴더 Set을 가지고, Image Classifier를 만들 수도 있었고, 라벨링된 텍스트 파일을 트레이닝해서 감정 분석, 스팸 분석, 토픽(키워드) 분석이 가능함을 보여주었습니다. 데모로 보여준 사용자가 입력한 텍스트가 Positive한지 Negative한지 Prediction을 통해 Positive한 텍스트만 Post 가능하게 하는 아이디어성 데모 앱은 접근이 매우 신선했습니다. 얼마나 유효하게 라벨링된 이미지 Set, 텍스트 Set, 데이터 Set을 가지고 모델에게 학습시키느냐에 따라 예측의 품질이 결정될 것 같습니다.
ARKit
흥미로운 증강 현실 기술들로 어떤 경험을 만들어낼 수 있을까?
World Mapping, Realistic Rendering(USDZ), Image Tracking, AR in PhotoFrame 등등 평소에 접하지 못한 새로운 기술에 대한 소개가 있었습니다. 당장 제가 만드는 서비스에는 접목할 수 없겠지만, 교육과 여행, 박물관, 미디어 방송, 기획사, 게임 분야에서 응용할 수 있는 재밌는 아이디어들이 떠오르는 시간이었습니다. 그리고 이 모든 기술들을 스위프트로 만들 수 있다니 감동입니다. —- AR Kit documentation
AirBnb + # Trip
Philz 카페에서 VR Game 만들기
이번 WWDC의 핵심 키워드가 AR이었던 만큼, 이런 경험들을 미국에서 좀 더 확장 해볼 수 없을까? - 하는 생각에 이것 저것 검색을 하던 도중. 에어비앤비에 VR게임을 만드는 코딩 Trip이 있었고, 바로 신청했습니다! 미국에서 대학원을 다니고 있는 Alvin과 함께 커피숍에서 직접 라이브 코딩을 하는 경험 이었는데요. 직접 어떤 게임을 만들지 상상하고 스케치하는 시간을 갖고, 실제로 A-Frame을 통해 코딩 + 시뮬레이팅을 하는 시간이었습니다. 가상 공간에 큐브 건물들을 세우고, 특정 건물을 쳐다보면 해당 건물의 색상이 변하고, 문이 열리면서 퀘스트를 깨는 간단한 게임을 만들었는데, x,y 축도 어려운데 z축이 들어가니 공간 감각이 상실되면서도… ㅎㅎ 구현하고 나면 정말 입체적이어서 뿌듯한! 유니크한 경험이었습니다. :)
Traditional
팁과 성능 개선
전통적인 기술에 대한 세션을 통해서는 유용한 개발 팁들을 배워갈 수 있었습니다. Collection View, Auto Layout 성능, 디버깅 테크닉 과 같은 전통적인 프레임워크에 대한 팁 제공은 기초적인 부분도 있을 수 있겠지만, 저와 같은 주니어 개발자에게는 매우 매우 유익한 부분이었습니다. 아래는 제가 들었던 세션 중에서 좋았던 세션 링크입니다. 아직 못들은 세션이 너무 많지만, 그래도 기억에 남는 세션 링크를 공유해봅니다. :) 애플은 발표한 기술 세션들을 꾸준히 웹 사이트에 아카이빙하고 도큐멘테이션 한다는 것이 놀라운 것 같습니다. 이런 문서들은 정말 도움이 되는 매뉴얼이 되고 정책이 됩니다.
- Xcode Debugging
- Crashes + logs
- Memory Deep dive
- A Tour of UICollectionView
- In App Purchases + Store Kit
- WEB Kit - Securing WEB Content
- Playground
- Swift Generics
- Using Collections Effectively
- Embracing Algorithms
- High Performance Auto Layout
- What’s New in Cocoa Touch
Lab
SDK를 만드는 애플 엔지니어들에게 직접 1:1로 질문할 수 있는 기회
Auto Layout Lab, Crash Log Lab, UIKit Lab, Swift Lab 에서 총 4분의 애플 엔지니어를 만나 1:1로 질문할 수 있는 기회가 있었습니다. 선배들이 보내준 질문 + 제가 평소에 궁금했던 것들을 차근 차근 물어볼 수 있었는데요. 화이트보드에 직접 그림을 그려가며 설명해주시기도 하고, 제 코드를 직접 수정해주시기도 했습니다. 아직 경험이 짧아서 질문이 많지 않았던 것이 아쉽습니다. 제 경험 안에서 할 수 있었던 질문들은 다 하고 온 것 같은데요. 좀 더 지식과 경험이 많이 쌓였을 때 랩에서 코어한 질문들을 할 수 있는 날이 오길 기대해 봅니다! 다음 기회에는 ML, AR Kit 같이 새로운 프레임워크에 대한 Try를 제 스스로 많이 해본 상태에서 해당 분야의 엔지니어와 대화하는 것이 목표입니다. :)
// 덧. 인기가 많은 랩들은 1시간 이상씩 대기를 해야했던 것은 매우 아쉽습니다. 대기 시간에 체험할 수 있는 대체재(?)들이 있다면 (AR 레고게임 같은!) 기다리는 시간이 좀 더 행복했을 것 같습니다. ㅎㅎ
BeyondWWDC
#Uber + #Yelp + #GoogleMap + #AppleMap + #Messenger
미국 여행을 편리하게 해주었던 앱들입니다. 특히 누군가를 만날 때 페이스북 메신저의 실시간 위치 공유 덕을 많이 봤습니다. 우버는 너무너무 편해서 8일 동안 무려 18번을 타게 되었는데요. 교통비가 조금 오버 됐지만, 일부러 앞에 앉아서 기사분들에게 말을 걸어보며 1:1 영어 회화 수업을 했다고 생각하며 합리화를 했습니다. 우버 Eats도 사용해보고 싶었는데 이건 다음 미국 여행때 해보는 것으로 미룹니다. :)
HomePod + AppleTV
산호세 WestField에서 홈팟과 애플TV를 구매했습니다. 홈팟은 사운드 품질도 좋고, 애플 뮤직 가족 공유를 통해 집 안에서 언제나 + 가족 구성원 누구나 음악과 함께할 수 있다는 점이 좋습니다. Hey Siri - 하며 강제로 영어도 사용하게 되는 장점(?)이 있습니다. 애플 TV는 국내에서 실용적일까? 하는 고민이 있었는데, 집 안의 모든 iOS 기기들이 (아이폰과 아이패드) Remote Control 이 되어 TV 를 조종할 수 있다는 게 생각보다 굉장히 편합니다. 아이폰에서 찍은 사진과 동영상들을 airPlay를 통해 TV에 미러링 해서 가족들과 경험을 나누는 것도 좋고, 엄마는 유튜브 VLog, 아빠는 넷플릭스, 저는 WWDC 를 애플 TV로 다시 챙겨봅니다.
Retail + Experience
주말에 쇼핑몰을 열심히 찾아다녔습니다. 미국의 백화점들은 브랜드 간의 경계가 없이, 여러 매장에서 원하는 옷을 골라서 통합 피팅룸에서 믹스매치로 입어볼 수 있다는 점이 가장 좋았습니다. 국내 백화점에서는 아직까지 피팅룸을 통합한 곳은 보지 못했는데요. 온라인 쇼핑이 쉽게 커버할 수 없는 단점인 - 옷을 직접 입어보고 산다는 - 오프라인의 장점을 확실하게 수행하고 있다는 생각이 들었습니다.
Philz
커피가 정말 맛있었습니다. 필즈 커피와 매일 함께할 수 있다면 좀 더 많은 코딩을 할 수 있을 것 같습니다. ☕️
Recap
iOS 개발을 하고 있는 이유에 대한 스스로의 미션을 정리해보게 되고, 앞으로 내가 무엇을 더 하면 좋을까에 대해 고민해보고 동기 부여 받는 멋진 시간이었습니다. 앞으로도 기회가 된다면 매년 참석하고 싶어요! 🌴