SlideShare una empresa de Scribd logo
1 de 90
Descargar para leer sin conexión
+ChangwookDoh
@cwdoh
Google I/O extended 2015 SEOUL
Chrome enchanted 2015
Chang W. Doh
Developer at SKPlanet
Organizer of
● GDG Korea WebTech
Contributor of
● HTML5Rocks/KO
● Web Fundamentals/KO
Permission query
Check before do something.
Chrome version 43
// Check for Geolocation API permissions
navigator
.permissions.query({name:’geolocation’})
.then(function(permissionStatus)
{
console.log('permission status is ',
permissionStatus.status);
permissionStatus.onchange = function() {
console.log('permission has changed to ',
this.status);
};
});
Theme color
<meta

IIIIname="themeKcolor"

IIIIcontent="#40bd9e">
App install banner
manifest.json
ServiceWorker
Served over HTTPS
Visit frequency heuristics
Requirements
{
"short_name": "Kinlan's Amaze App",
"name": "Kinlan's Amazing Application ++",
"icons": [
{
"src": "launcherKiconK3x.png",
"sizes": "144x144",
"type": "image/png"
}
],
"start_url": "index.html",
"display": "standalone"
}
manifest.json
<link
rel=“manifest"
href="manifest.json">
HTML
Cancelling installation
window.addEventListener(‘beforeinstallprompt',
function(e) {
e.preventDefault();
return false;
});
Checking installation
window.addEventListener(‘beforeinstallprompt',
function(e) {
e.userChoice.then(function(choiceResult) {
if(choiceResult.outcome == 'dismissed') {
console.log('User cancelled install');
}
else {
console.log('User added to homescreen');
}
});
});
Are you Android
developer?!?
Chrome custom tabs
When showing web contents in native app…
Launching the browser
Embedding WebView
One more thing!
Chrome Custom Tabs
Chrome Custom Tabs
Share all contexts with Chrome
Customize how Chrome L&F
Pre-start and pre-fetch content
Easy to implement
Available on
Chrome 45 dev channel
Visit for samples:
https://github.com/GoogleChrome/custom-tabs-client
“If your app directs people to
URLs outside your domain”
When I use Chrome custom tabs?
Native app install banner
{

IIII"short_name":I"Kinlan'sIAmazeIApp",

IIII"name":I"Kinlan'sIAmazingIApplicationI++",

IIII"icons":I[…],

IIII"start_url":I"index.html",

IIII"display":I“standalone”,I


}
manifest.json
"prefer_related_applications": true,
"related_applications": [
{
"platform": "play",
"id": "com.google.samples.apps.iosched"
}
],
…
“The user has visited your site
twice over 2 separate days
during the course of 2 weeks.”
When can my user see that banner?
Rule of 2-2-2
Are you Android
developer?!?
“이제 다른 세션으로 가셔도 좋습니다.”
Service Worker
Yay, ServiceWorker!!
● Caching/offiline
● Push notification
● Background sync
● Intercept request
● Offline google analytics
WEB PAGE
Web Page are running on single thread(UI)
WEB PAGE
WebWorker
WebPage has spawned new thread(Worker)
On UI thread On Background
thread
WebPage install new service module on the browser
Service Worker
JS
Event NetworkBROWSER
Cache
App. Cache!!
App. Cache!!Offline!!
Offline!!
Image: ‘Mission Impossible 4’ Movie
“Now, you can use notification
for your web app like native app”
https://simple-push-demo.appspot.com/
manifest.json
{II
IIII"
IIII"
IIII"
IIIIIIII"
IIIIIIII"
IIIIIIII"
IIII}],II
IIII"
IIII"
}


IIII"gcm_sender_id":I"123456789012",II

IIII"gcm_user_visible_only":ItrueII

javascript - serviceworker code
self.addEventListener('push',Ifunction(event)I{III

IIIIconsole.log('ReceivedIaIpushImessage',Ievent);



IIIIvarItitleI=I'YayIaImessage.';II

IIIIvarIbodyI=I'WeIhaveIreceivedIaIpushImessage.';II

IIIIvarIiconI=I'/images/iconK192x192.png';II

IIIIvarItagI=I'simpleKpushKdemoKnotificationKtag';



IIIIevent.waitUntil(II

IIIIIIIIself.registration.showNotification(title,I{II

IIIIIIIIIIIIbody:Ibody,

IIIIIIIIIIIIicon:Iicon,II

IIIIIIIIIIIItag:ItagII

IIIIIIII})II

IIII);II

});
Slide from “Polymer and modern web APIs: In production at Google scale"
READY
FOR
PRODUCTION
“Existing HTML is a set of tools
useful 20 years ago for building
documents, not applications.”
Slide from “Polymer and modern web APIs: In production at Google scale"
Image:
Slide from “Polymer and modern web APIs: In production at Google scale"
Web Components
HTML Imports
Custom elements
Template
Shadow DOM
컴포넌트 로딩
엘리먼트 등록
마크업 구조화/생성
스타일과 DOM을 보호
Visit to read in detail: http://goo.gl/aiEI6F
Why Polymer?
Step 1
Slide from “Polymer and modern web APIs: In production at Google scale"
Step 2
https://goo.gl/Y77E43
Slide from “Polymer and modern web APIs: In production at Google scale"
We wanted to do better.
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Learnings from Web Starter Kit, IO 2015 and Santa Tracker
Slide from “Polymer and modern web APIs: In production at Google scale"
Polymer 1.0
REALLY Quick reviewREALLY
Slide from “Polymer and modern web APIs: In production at Google scale"
0
150
300
450
600
Time
0
750
1500
2250
3000
Time
mobile safari
4x FASTER
Chrome
3x FASTER
Slide from “Polymer and modern web APIs: In production at Google scale"
0.51.0
35% LESS CODE
42kb19kb -
Slide from “Polymer and modern web APIs: In production at Google scale"
1.0 Features
Shady DOM
Theming with CSS custom prop.
Slide from “Polymer and modern web APIs: In production at Google scale"
Existing Frameworks
Applications
Web Platform
Web Components Built with Polymer (or not)
core paper
Slide from “Polymer and modern web APIs: In production at Google scale"
core paper
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
<google-drive>
<google-calendar>
<google-hangout-button>
<google-cloud>
<google-castable-video>
<google-analytics>
<google-map>
<google-sheets>
<google-translate>
<google-youtube>
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
<platinum-sw>
<platinum-sw-fetch>
<platinum-sw-cache>
<platinum-sw-register>
<platinum-push-
messaging>
…
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
<gold-cc-input>
<gold-zip-input>
<gold-cc-expiration-
input>
<gold-cc-cvc-input>
<gold-phone-input>
<gold-email-input>
…
Slide from “Polymer and modern web APIs: In production at Google scale"
elements.polymer-project.org
Slide from “Polymer and modern web APIs: In production at Google scale"
There’s an element
for that!
Slide from “Polymer and modern web APIs: In production at Google scale"
Featured cases
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
+
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
Google Santa
santatracker.googl
Slide from “Polymer and modern web APIs: In production at Google scale"
Slide from “Polymer and modern web APIs: In production at Google scale"
<santa-app> </santa-app>
github.com/google/santa-tracker-web
Slide from “Polymer and modern web APIs: In production at Google scale"
<santa-app>
</santa-app>
github.com/google/santa-tracker-web
Slide from “Polymer and modern web APIs: In production at Google scale"
<!-- route controller -->
<santa-router route="{{route}}" autoHash></santa-router>
<!-- scenes elements are upgraded on demand -->
<lazy-pages selected=“{{route}}” selectedItem=“{{selectedScene}}”
valueattr=“route”>
<!-- scenes elements inherit from base-scene.html -->
<village-scene route=“village" path=“scenes/village_{{lang}}.html” hidden>…
<!-- scenes can specify their own loading image & background -->
<santaselfie-scene route="santaselfie"
path=“scenes/santaselfie-{{lang}}.html”
loadingBgColor="#83D7F5"
loadingSrc=“scenes/selfie_loading.svg” hidden>…
</lazy-pages>
<santa-app>
</santa-app>
Slide from “Polymer and modern web APIs: In production at Google scale"
<!-- route controller -->
<santa-router route="{{route}}" autoHash></santa-router>
<!-- scenes elements are upgraded on demand -->
<lazy-pages selected=“{{route}}” selectedItem=“{{selectedScene}}”
valueattr=“route”>
<!-- scenes elements inherit from base-scene.html -->
<village-scene route=“village" path=“scenes/village_{{lang}}.html” hidden>…
<!-- scenes can specify their own loading image & background -->
<santaselfie-scene route="santaselfie"
path=“scenes/santaselfie-{{lang}}.html”
loadingBgColor="#83D7F5"
loadingSrc=“scenes/selfie_loading.svg” hidden>…
</lazy-pages>
<santa-app>
</santa-app>
Slide from “Polymer and modern web APIs: In production at Google scale"
ANY QUESTION?
ROCK YOU!

Más contenido relacionado

La actualidad más candente

High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)
Nicholas Zakas
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas
 

La actualidad más candente (20)

Web Components
Web ComponentsWeb Components
Web Components
 
High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)
 
Real World Lessons in Progressive Web Application & Service Worker Caching
Real World Lessons in Progressive Web Application & Service Worker CachingReal World Lessons in Progressive Web Application & Service Worker Caching
Real World Lessons in Progressive Web Application & Service Worker Caching
 
The Point of Vue - Intro to Vue.js
The Point of Vue - Intro to Vue.jsThe Point of Vue - Intro to Vue.js
The Point of Vue - Intro to Vue.js
 
What is HTML 5?
What is HTML 5?What is HTML 5?
What is HTML 5?
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
 
Oleh Zasadnyy "Progressive Web Apps: line between web and native apps become ...
Oleh Zasadnyy "Progressive Web Apps: line between web and native apps become ...Oleh Zasadnyy "Progressive Web Apps: line between web and native apps become ...
Oleh Zasadnyy "Progressive Web Apps: line between web and native apps become ...
 
Enjoy the vue.js
Enjoy the vue.jsEnjoy the vue.js
Enjoy the vue.js
 
Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)Web Components & Polymer 1.0 (Webinale Berlin)
Web Components & Polymer 1.0 (Webinale Berlin)
 
The Complementarity of React and Web Components
The Complementarity of React and Web ComponentsThe Complementarity of React and Web Components
The Complementarity of React and Web Components
 
Building and deploying React applications
Building and deploying React applicationsBuilding and deploying React applications
Building and deploying React applications
 
High Performance JavaScript - jQuery Conference SF Bay Area 2010
High Performance JavaScript - jQuery Conference SF Bay Area 2010High Performance JavaScript - jQuery Conference SF Bay Area 2010
High Performance JavaScript - jQuery Conference SF Bay Area 2010
 
What Web Developers Need to Know to Develop Windows 8 Apps
What Web Developers Need to Know to Develop Windows 8 AppsWhat Web Developers Need to Know to Develop Windows 8 Apps
What Web Developers Need to Know to Develop Windows 8 Apps
 
Nodejs.meetup
Nodejs.meetupNodejs.meetup
Nodejs.meetup
 
Our application got popular and now it breaks
Our application got popular and now it breaksOur application got popular and now it breaks
Our application got popular and now it breaks
 
Learning from the Best jQuery Plugins
Learning from the Best jQuery PluginsLearning from the Best jQuery Plugins
Learning from the Best jQuery Plugins
 
Node.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash CourseNode.js & Twitter Bootstrap Crash Course
Node.js & Twitter Bootstrap Crash Course
 
High Performance JavaScript - WebDirections USA 2010
High Performance JavaScript - WebDirections USA 2010High Performance JavaScript - WebDirections USA 2010
High Performance JavaScript - WebDirections USA 2010
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
 

Destacado

안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들
Sewon Ann
 

Destacado (20)

테크 컨퍼런스에서 사람들과 친해지는 방법
테크 컨퍼런스에서 사람들과 친해지는 방법테크 컨퍼런스에서 사람들과 친해지는 방법
테크 컨퍼런스에서 사람들과 친해지는 방법
 
마세라티의 비밀
마세라티의 비밀마세라티의 비밀
마세라티의 비밀
 
안드로이드 M의 주요 변경 사항
안드로이드 M의 주요 변경 사항안드로이드 M의 주요 변경 사항
안드로이드 M의 주요 변경 사항
 
고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화고성능 애니메이션 개발 기법 및 성능 최적화
고성능 애니메이션 개발 기법 및 성능 최적화
 
Material Design with Support Design Library
Material Design with Support Design LibraryMaterial Design with Support Design Library
Material Design with Support Design Library
 
Service Worker 101 (한국어)
Service Worker 101 (한국어)Service Worker 101 (한국어)
Service Worker 101 (한국어)
 
Developing webapp using Polymer : is it ready for production? or not?
Developing webapp using Polymer : is it ready for production? or not?Developing webapp using Polymer : is it ready for production? or not?
Developing webapp using Polymer : is it ready for production? or not?
 
(안드로이드 개발자를 위한) 오픈소스 라이브러리 사용 가이드
(안드로이드 개발자를 위한) 오픈소스 라이브러리 사용 가이드(안드로이드 개발자를 위한) 오픈소스 라이브러리 사용 가이드
(안드로이드 개발자를 위한) 오픈소스 라이브러리 사용 가이드
 
Why realm?
Why realm?Why realm?
Why realm?
 
How_to_choose_the_right_framework
How_to_choose_the_right_frameworkHow_to_choose_the_right_framework
How_to_choose_the_right_framework
 
같은 유저수, 다른 수익? 모바일 앱의 수익을 높이는 방법
같은 유저수, 다른 수익? 모바일 앱의 수익을 높이는 방법같은 유저수, 다른 수익? 모바일 앱의 수익을 높이는 방법
같은 유저수, 다른 수익? 모바일 앱의 수익을 높이는 방법
 
안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들
 
Support Design Library
Support Design LibrarySupport Design Library
Support Design Library
 
Android n preview
Android n previewAndroid n preview
Android n preview
 
디자이너 없어도 괜찮아! (feat.Material Design Guide)
디자이너 없어도 괜찮아! (feat.Material Design Guide)디자이너 없어도 괜찮아! (feat.Material Design Guide)
디자이너 없어도 괜찮아! (feat.Material Design Guide)
 
안드로이드 MediaPlayer & VideoView
안드로이드 MediaPlayer & VideoView안드로이드 MediaPlayer & VideoView
안드로이드 MediaPlayer & VideoView
 
접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드접근성(Accessibility)과 안드로이드
접근성(Accessibility)과 안드로이드
 
Android Studio 2.2 - What's new in Android development tools
Android Studio 2.2 - What's new in Android development toolsAndroid Studio 2.2 - What's new in Android development tools
Android Studio 2.2 - What's new in Android development tools
 
Google Firebase로 레고블럭 조립하기 - IO Extended 2016
Google Firebase로 레고블럭 조립하기 - IO Extended 2016Google Firebase로 레고블럭 조립하기 - IO Extended 2016
Google Firebase로 레고블럭 조립하기 - IO Extended 2016
 
3D Graphics 101
3D Graphics 1013D Graphics 101
3D Graphics 101
 

Similar a Chrome enchanted 2015

Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla
Robert Nyman
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
Christopher Schmitt
 
[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design
Christopher Schmitt
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
KMS Technology
 

Similar a Chrome enchanted 2015 (20)

Android
AndroidAndroid
Android
 
Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)Mobile backends with Google Cloud Platform (MBLTDev'14)
Mobile backends with Google Cloud Platform (MBLTDev'14)
 
e-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
e-KTP Information Extraction with Google Cloud Function & Google Cloud Visione-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
e-KTP Information Extraction with Google Cloud Function & Google Cloud Vision
 
Structure your Play application with the cake pattern (and test it)
Structure your Play application with the cake pattern (and test it)Structure your Play application with the cake pattern (and test it)
Structure your Play application with the cake pattern (and test it)
 
web push notifications for your webapp
web push notifications for your webappweb push notifications for your webapp
web push notifications for your webapp
 
VizEx View HTML5 Workshop
VizEx View HTML5 WorkshopVizEx View HTML5 Workshop
VizEx View HTML5 Workshop
 
VizEx View HTML5 Workshop
VizEx View HTML5 WorkshopVizEx View HTML5 Workshop
VizEx View HTML5 Workshop
 
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
 
Vered Flis: Because performance matters! Architecture Next 20
Vered Flis: Because performance matters! Architecture Next 20Vered Flis: Because performance matters! Architecture Next 20
Vered Flis: Because performance matters! Architecture Next 20
 
Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla
 
[Public] between two worlds native&no-native experiences
[Public] between two worlds  native&no-native experiences[Public] between two worlds  native&no-native experiences
[Public] between two worlds native&no-native experiences
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
Desenvolvimento Mobile Híbrido
Desenvolvimento Mobile HíbridoDesenvolvimento Mobile Híbrido
Desenvolvimento Mobile Híbrido
 
[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design
 
Быстрый старт в gDrive API
Быстрый старт в gDrive APIБыстрый старт в gDrive API
Быстрый старт в gDrive API
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
以 Kotlin 快速打造 Mobile Backend
以 Kotlin 快速打造 Mobile Backend以 Kotlin 快速打造 Mobile Backend
以 Kotlin 快速打造 Mobile Backend
 
HTML5
HTML5HTML5
HTML5
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
A web perf dashboard up & running in 90 minutes presentation
A web perf dashboard up & running in 90 minutes presentationA web perf dashboard up & running in 90 minutes presentation
A web perf dashboard up & running in 90 minutes presentation
 

Más de Chang W. Doh

Kotlin, 어떻게 동작하나요
Kotlin, 어떻게 동작하나요Kotlin, 어떻게 동작하나요
Kotlin, 어떻게 동작하나요
Chang W. Doh
 

Más de Chang W. Doh (20)

Exploring what're new in Web for the Natively app
Exploring what're new in Web for the Natively appExploring what're new in Web for the Natively app
Exploring what're new in Web for the Natively app
 
Kotlin의 코루틴은 어떻게 동작하는가
Kotlin의 코루틴은 어떻게 동작하는가Kotlin의 코루틴은 어떻게 동작하는가
Kotlin의 코루틴은 어떻게 동작하는가
 
Hey Kotlin, How it works?
Hey Kotlin, How it works?Hey Kotlin, How it works?
Hey Kotlin, How it works?
 
Kotlin, 어떻게 동작하나요
Kotlin, 어떻게 동작하나요Kotlin, 어떻게 동작하나요
Kotlin, 어떻게 동작하나요
 
introduction to Web Assembly
introduction to Web Assembly introduction to Web Assembly
introduction to Web Assembly
 
PWA Roadshow Seoul - Keynote
PWA Roadshow Seoul - KeynotePWA Roadshow Seoul - Keynote
PWA Roadshow Seoul - Keynote
 
PWA Roadshow Seoul - HTTPS
PWA Roadshow Seoul - HTTPSPWA Roadshow Seoul - HTTPS
PWA Roadshow Seoul - HTTPS
 
CSS 다시 파서 어디에 쓰나
CSS 다시 파서 어디에 쓰나CSS 다시 파서 어디에 쓰나
CSS 다시 파서 어디에 쓰나
 
Natively Web App & Service Worker
Natively Web App & Service WorkerNatively Web App & Service Worker
Natively Web App & Service Worker
 
초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101초보 개발자를 위한 웹 프론트엔드 개발 101
초보 개발자를 위한 웹 프론트엔드 개발 101
 
Service Worker 201 (한국어)
Service Worker 201 (한국어)Service Worker 201 (한국어)
Service Worker 201 (한국어)
 
Service Worker 101 (en)
Service Worker 101 (en)Service Worker 101 (en)
Service Worker 101 (en)
 
What is next for the web
What is next for the webWhat is next for the web
What is next for the web
 
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
프론트엔드 개발자를 위한 크롬 렌더링 성능인자 이해하기
 
Polymer Codelab: Before diving into polymer
Polymer Codelab: Before diving into polymerPolymer Codelab: Before diving into polymer
Polymer Codelab: Before diving into polymer
 
알아봅시다, Polymer: Web Components & Web Animations
알아봅시다, Polymer: Web Components & Web Animations알아봅시다, Polymer: Web Components & Web Animations
알아봅시다, Polymer: Web Components & Web Animations
 
SOSCON 2014: 문서 기반의 오픈소스 기여하기
SOSCON 2014: 문서 기반의 오픈소스 기여하기SOSCON 2014: 문서 기반의 오픈소스 기여하기
SOSCON 2014: 문서 기반의 오픈소스 기여하기
 
Chromium: NaCl and Pepper API
Chromium: NaCl and Pepper APIChromium: NaCl and Pepper API
Chromium: NaCl and Pepper API
 
Cache in Chromium: Disk Cache
Cache in Chromium: Disk CacheCache in Chromium: Disk Cache
Cache in Chromium: Disk Cache
 
Ninja Build: Simple Guide for Beginners
Ninja Build: Simple Guide for BeginnersNinja Build: Simple Guide for Beginners
Ninja Build: Simple Guide for Beginners
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Último (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Chrome enchanted 2015