SlideShare a Scribd company logo
Always ON!
…or not?
Carsten Sandtner (@casarock)
mediaman GmbH
about:me
Carsten Sandtner
@casarock
Technical Director
mediaman GmbH
Always on! Or not?
Always on! Or not?

Recommended for you

Everything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the WebEverything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the Web

The web is awesome despite it's detractors. But we can't forget our fundamentals when we're trying to forge ahead with new tech. This talk is about how to approach the building blocks of the web in a way that takes advantage of their strengths and avoids their weaknesses.

web development
Easing offline web application development with GWT
Easing offline web application development with GWTEasing offline web application development with GWT
Easing offline web application development with GWT

At this current time, HTML5 APIs are mature enough so that the web browser can now be a very good platform for applications that were before only implemented as native applications : offline applications with locally stored data, embedded SQL engines, etc. Although there are many good Javascript frameworks out there, the Java language allows to build, maintain, debug and work with ease on really big applications (> 100,000 LOC). You'll discover in this presentation all the tools we assembled to make an application available with its data 100% of the time, even without internet!

offline gwt java web local storage application cac
Ajax ppt - 32 slides
Ajax ppt - 32 slidesAjax ppt - 32 slides
Ajax ppt - 32 slides

A presentation on Ajax suitable for college level presentations and seminars.Contains 32 slides - ideal for a 20 - 30 minutes seminar.

ajaxcollegepresentation
The Beginning
NilsPeters-https://flic.kr/p/9k2Wdp
Browser Cache
Cookies
BrettJordan-https://flic.kr/p/7ZRSzA
Ancient Times
ThomasConté-https://flic.kr/p/9dzzpc

Recommended for you

Dan Webb Presentation
Dan Webb PresentationDan Webb Presentation
Dan Webb Presentation

The document discusses unobtrusive JavaScript and the UJS plugin for Rails. It describes separating JavaScript behavior from HTML content and CSS styling. The UJS plugin allows defining behaviors via CSS selectors and keeping scripts in external files. Examples are given of attaching remote behaviors to links and forms using the UJS plugin.

Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar TechnologiesRob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies

Ajax presents a new way of developing web applications that is more event-driven like typical client-server GUI applications. While Ajax uses technologies like JavaScript, XML, and CSS to asynchronously update parts of a page without reloading, the role of backends like Caché is reduced to basic data storage and retrieval. However, Caché remains well-suited for large, high-performance enterprise applications as they grow beyond what technologies like MySQL can easily support. Frameworks like EWD that define applications independently of technologies allow easier migration between backends like MySQL and Caché as applications scale.

Instant and offline apps with Service Worker
Instant and offline apps with Service WorkerInstant and offline apps with Service Worker
Instant and offline apps with Service Worker

2 parts of talking at Google Developer Summit 2016 Seoul - How to optimize loading performance your web app - Introducing to Service Worker & Offline 101

offlinehtml5serviceworker
Application
Cache
„HTML5 provides an application caching mechanism
that lets web-based applications run offline.
Developers can use the Application Cache (AppCache)
interface to specify resources that the browser should
cache and make available to offline users.“
-MDN
https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache
The
TRUTH
• FILES ALWAYS COME FROM THE APPLICATIONCACHE, EVEN IF YOU’RE
ONLINE
• THE APPLICATIONCACHE ONLY UPDATES IF THE CONTENT OF THE
MANIFEST ITSELF HAS CHANGED
• THE APPLICATIONCACHE IS AN ADDITIONAL CACHE, NOT AT ALTERNATIVE
ONE
• NEVER EVER EVER FAR-FUTURE CACHE THE MANIFEST
• NON-CACHED RESOURCES WILL NOT LOAD ON A CACHED PAGE
• WE DON’T KNOW HOW WE GOT TO THE FALLBACK PAGE
• …

Recommended for you

Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5

20100807 OSC Nagoya での講演資料 # スライドのみで見やすいよう若干整理 P5〜 Agenda P17〜 "HTML5" って何? P56〜 HTML5 の範囲は? P67〜 ブラウザのサポートは? P94〜 IE6 はどうするの? P118〜 使用上の注意 P147〜 便利なツールは? P152〜 One Point Q&A P186〜 追加資料

whatwghtml5webgl
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 ...

Over the years developers were used to thing that web is not user-friendly, performance efficient and powerful as native apps. But things have been changed so far; now you can build offline applications with notifications, Bluetooth and camera access and so on. Web development is great again. - Quick startup - I will show how to prioritize content loading in the application to show users meaningful pixels as soon as possible - Progressive enhancement - I will encourage you to use maximum of the platform but still support earlier browsers - Offline application - here I will explain how you can easily make your web application working offline - Push Notifications - one of the best way to increase conversion of your application and now it's possible on the web. I am going to show how to do it right with few steps. - Experimental APIs - I will show how to sign in once on all your devices with Credential API, use native share menu and make payments in few clicks

mobicodemobilepwa
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

Over the past year we have seen a lot of excitement around Progressive Web Applications. Browser evangelist are selling developers and business owners on their advantages and promising future. But what is the real story? What are the details to proper execution? What do engineers need to know to make their web sites into Progressive Web Applications that not only meet the minimum criteria, but meet the sales hype? Searching the Pokedex offline is fun, what is the real experience like caching a business application? Caching application assets and data can be complex, especially for larger applications. What to cache, how long to cache and how to cache are all valid questions. Often, in an effort to just ship something, we cache nothing. When we don't cache, we disappoint the customer and miss a key promise of progressive web applications.

html5progressive web applicationsservice worker
– Jake Archibald
http://alistapart.com/article/application-cache-is-a-douchebag
„Application Cache is a Douchebag“
2016
W3C decides to remove application cache
from standard
AlexanderBoden-https://flic.kr/p/pMrQ1N
Things are getting better
Web
Storages

Recommended for you

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

On Github: http://andrewrota.github.io/complementarity-of-react-and-web-components-presentation/index.html The component driven, performance focused approach of React is a perfect complement to the modularity and portability of native HTML Web Components. At first glance, React and Web Components might seem like two radically different solutions to the same problem. But when combined properly they complement each other to create an extremely powerful, expressive framework for developing complex web applications.

reactreact.jsshadow dom
Chrome enchanted 2015
Chrome enchanted 2015Chrome enchanted 2015
Chrome enchanted 2015

This document contains slides from a presentation on Polymer and modern web APIs. The slides discuss how Polymer uses web components to build reusable custom elements, and how this allows for component-based development. They provide examples of popular elements like <paper-tabs> and <core-toolbar> that are used as building blocks. The slides also showcase several production uses of Polymer at Google scale, including the Google Santa Tracker application. They emphasize how Polymer leverages modern web platform APIs to build fast, modular, and powerful applications.

googlechromeserviceworker
Ajax Security
Ajax SecurityAjax Security
Ajax Security

The document discusses various security vulnerabilities in Ajax applications including CSRF, login CSRF, JavaScript hijacking, XSS, and history stealing. It provides examples of how these attacks can be carried out and emphasizes the importance of validating and sanitizing user input to prevent scripts from being executed maliciously on a site. The document also recommends techniques for protecting against these attacks, such as using authentication tokens and disabling client-side script evaluation for untrusted sources.

securityjavascriptajaxexperience
Web Storages
• key/value store
• localStorage
• sessionStorage
localStorage
localStorage.myCar = 'Volkswagen Beetle';
localStorage['myCar'] = 'Volkswagen Beetle';
localStorage.setItem('myCar', 'Volkswagen Beetle');
let myCar = localStorage.getItem('myCar');
window.addEventListener('storage', function(e) { ... }
localStorage.removeItem('myCar');
localStorage.clear()
let complexType = {type: 'Beetle', manufacturer: 'Volkswagen'}
localStorage.setItem('myCar', JSON.stringify(complexType));
sessionStorage
sessionStorage.myCar = 'Volkswagen Beetle';
sessionStorage['myCar'] = 'Volkswagen Beetle';
sessionStorage.setItem('myCar', 'Volkswagen Beetle');
let myCar = sessionStorage.getItem('myCar');
window.addEventListener('storage', function(e) { ... }
sessionStorage.removeItem('myCar');
sessionStorage.clear()
let complexType = {type: 'Beetle', manufacturer: 'Volkswagen'}
sessionStorage.setItem('myCar', JSON.stringify(complexType));
WebStorages
• easy to use!
• good browser support!
• But:
• http/https define different stores!
• asynchronous
• Quota?

Recommended for you

An Introduction to webOS
An Introduction to webOSAn Introduction to webOS
An Introduction to webOS

webOS is an open source mobile operating system from Palm built on HTML5, CSS, and JavaScript that uses the Mojo framework for application development and provides services through a plugin development kit and application programming interfaces, with apps distributed through an online app catalog.

webosjavascript palm mobile
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloHTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo

HTML5 introduces new semantic elements like <header>, <nav>, <article>, and <section> to provide more meaning and better accessibility. It also defines new form input types, 2D/3D graphics via Canvas and WebGL, offline applications, geolocation, audio, and video elements. While browser support continues to improve with HTML5 features through sites like caniuse.com, some features may not work identically or at all across browsers yet. However, HTML5 is the future of the open web and its standards will continue to be supported and built upon.

html5javascriptapis
Choosing a Javascript Framework
Choosing a Javascript FrameworkChoosing a Javascript Framework
Choosing a Javascript Framework

Pam Selle Co-author of Choosing a JavaScript Framework, thewebivore.com Tuesday, Oct 20th 4:20 pm - Design/UX/UI

ato2015open sourceall things open
IndexedDB
–Wikipedia
https://en.wikipedia.org/wiki/Indexed_Database_API
„The Indexed Database API, or IndexedDB (formerly
WebSimpleDB), is a W3C recommended web
browser standard interface for a transactional local
database of JSON objects collections with indices.“
IndexedDB: Open/Create
var indexedDB = window.indexedDB || window.mozIndexedDB ||
window.webkitIndexedDB || window.msIndexedDB;
var open = indexedDB.open("MyDatabase", 1);
// Create the schema
open.onupgradeneeded = function() {
var db = open.result;
var store = db.createObjectStore("FancyNamedStore", {keyPath: "id"});
var index = store.createIndex("NameIndex", ["name.last", "name.first"]);
};
open.onsuccess = function() {};
open.onfailure = function() {};
IndexedDB: Write/Read
open.onsuccess = function() {
var db = open.result;
var tx = db.transaction("FancyNamedStore", "readwrite");
var store = tx.objectStore("FancyNamedStore");
var index = store.index("NameIndex");
store.put({id: 12345, name: {first: "John", last: "Bar"}, age: 42});
store.put({id: 67890, name: {first: "Bob", last: "Foo"}, age: 35});
var getJohn = store.get(12345);
var getBob = index.get(["Foo", "Bob"]);
getJohn.onsuccess = function() {
console.log(getJohn.result.name.first); // => "John"
};
getBob.onsuccess = function() {
console.log(getBob.result.name.first); // => "Bob"
};
tx.oncomplete = function() {
db.close();
};
}

Recommended for you

WordPress and Ajax
WordPress and AjaxWordPress and Ajax
WordPress and Ajax

This document provides an overview of using WordPress and AJAX. It discusses loading scripts and styles properly, using JavaScript localization to capture dynamic PHP content, page detection techniques, the wp_ajax action for handling AJAX requests, and the WP_Ajax_Response class for returning XML responses from AJAX callbacks. It also provides an example of building an AJAX registration form plugin with classes for handling the form, scripts, and styles.

wordpressajax
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. It allows JavaScript to be run on the server-side and is well-suited for real-time, event-driven applications due to its asynchronous and non-blocking I/O model. It was created in 2009 by Ryan Dahl who was frustrated by the limitations of JavaScript in the server-side. Node.js uses an event loop that handles asynchronous callbacks and a single thread model to achieve scalable performance. Many large companies like Uber, LinkedIn, and Netflix use Node.js for applications that require real-time features or high throughput.

aaronrosenbergchromemeetup
Always on! ... or not?
Always on! ... or not?Always on! ... or not?
Always on! ... or not?

My Slides for my Talk about being Always On is a lie and how developers could add improvements to their web site to deliver a great experience even when the network is flaky!

webservice workersapi
Always on! Or not?
localForage* FTW!
* or any other library… like Store.js 

(https://github.com/marcuswestin/store.js/)
„localForage is a JavaScript library that improves the
offline experience of your web app by using an
asynchronous data store with a simple, localStorage-
like API. It allows developers to store many types of
data instead of just strings.“
–https://localforage.github.io
„localForage includes a localStorage-backed fallback
store for browsers with no IndexedDB or WebSQL
support. Asynchronous storage is available in the
current versions of all major browsers: Chrome,
Firefox, IE, and Safari (including Safari Mobile).“
–https://localforage.github.io

Recommended for you

Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla

This document summarizes the Firefox OS, an open web platform for building mobile apps and customizing the user interface using HTML5, CSS, and JavaScript. It outlines key web APIs, the process for developing and publishing open web apps, and the different types of apps including regular web apps, installed web apps, and privileged web apps with additional capabilities. Security levels and permissions for APIs are also discussed.

apiweb apiapis
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware

Learn how to build your own PWA enabled page in under 5 minutes ⚡️, what SPAs' have to do with PWA and how Shopware implements their headless commerce solution!

shopwarepwaecommerce
AFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack EncoreAFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack Encore

Introduction to Symfony Webpack Encore, demonstrating how it helps with cache busting, using SASS, LESS, Typescript and so on.

symfonywebpackwebpack encore
„localForage offers a callback API as well as support
for the ES6 Promises API, so you can use
whichever you prefer.“
–https://localforage.github.io
LocalForage
localforage.config({
driver : localforage.WEBSQL, // localforage.INDEXEDDB
// localforage.WEBSQL
// localforage.LOCALSTORAGE
name : 'carFinder',
version : 1.0,
size : 4980736, // Size of database, in bytes. WebSQL-only for now.
storeName : 'mycars', // Should be alphanumeric, with underscores.
description : 'Store all infos about my cars'
});
localforage.setItem('car', 'beetle').then(function () {
return localforage.getItem('car');
}).then(function (value) {
// Success, we've got a value
}).catch(function (err) {
// something went wrong
});
Modern Times
Image©byAppleComputerInc.
Service
Workers

Recommended for you

Rapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 PlatformRapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 Platform

This document provides an overview of a presentation by Smaisa Abeysinghe, VP of Delivery at WSO2, on rapid application development with JavaScript and data services. It includes details about the presenter and their background at WSO2, an overview of WSO2 as a company including their products and partnerships, and discusses challenges in rapid application development as well as how JavaScript can help address these challenges. The document also introduces Jaggery.js as a JavaScript framework for building multi-tier web applications, provides examples of getting started with Jaggery.js, and demonstrates RESTful URL mapping and HTTP verb mapping in sample applications.

 
by WSO2
wso2 webinars
WebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonWebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla London

Firefox OS allows developers to build apps and customize the user interface using HTML5, CSS, JavaScript, and Web APIs. Apps are developed as regular web apps, with the addition of an app manifest file. Apps can be published to the Firefox Marketplace or installed directly. The Firefox OS platform provides both regular web APIs as well as more privileged APIs that require permissions. Future plans include additional APIs for features like spell checking, peer-to-peer connectivity, and WebRTC. Developers can get help through IRC channels or mailing lists and try things out using emulators, boilerplate apps, and the Firefox OS developer preview.

javascriptmobilefirefox os
Introduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azureIntroduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azure

Slide deck from my talk on Node.js. More information is available here: http://colinmackay.scot/2014/11/29/dunddd-2014-introduction-to-node-jsfrom-hello-world-to-deploying-on-azure/

azureexpressnode.js
— https://github.com/w3c/ServiceWorker
„Service workers are a new browser feature that
provide event-driven scripts that run independently of
web pages. Unlike other workers, service workers
can be shut down at the end of events, note the lack
of retained references from documents, and they
have access to domain-wide events such as
network fetches.“
— https://github.com/w3c/ServiceWorker
„Service workers also have scriptable caches. Along
with the ability to respond to network requests from
certain web pages via script, this provides a way for
applications to “go offline”.“
Introduction
☁🖥 Internet
1
2

Recommended for you

(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us

Webpack is the fundamental building block of all modern Javascript application frameworks. While being flexible and powerful its plain configuration can be quite hard to understand if you just want things to "work like expected". Symfony's opinionated webpack wrapper "Encore" allows you to setup a flexible asset pipeline with 20 lines of code. This talk and its supporting git repo shows some of the concepts and ends up with a fully working Symfony 4.1 application utilizing a combined React, Vue.js and jQuery (sic) frontend. https://github.com/elmariachi111/encore-demo

phpsymfonyjavascript
RESTful Web Applications with Apache Sling
RESTful Web Applications with Apache SlingRESTful Web Applications with Apache Sling
RESTful Web Applications with Apache Sling

Sling is a RESTful web framework for building applications on top of Apache Jackrabbit. It allows resources like content, configurations, code, and binaries to be accessed over REST URLs. Sling maps URLs to resources rather than commands, supports various scripting languages as servlets, and has a modular OSGi-based architecture powered by Apache Felix. Examples shown include building a blog and coffee ordering application on Sling to demonstrate how it supports RESTful content creation and management.

slingjcrapache
JavaScript - Chapter 3 - Introduction
 JavaScript - Chapter 3 - Introduction JavaScript - Chapter 3 - Introduction
JavaScript - Chapter 3 - Introduction

What is JavaScript? JavaScript is a very powerful client-side scripting language. JavaScript is used mainly for enhancing the interaction of a user with the webpage. In other words, you can make your webpage more lively and interactive, with the help of JavaScript. JavaScript is also being used widely in game development and Mobile application development.

javascriptwebstack academy bangalorefullstack web developer
☁🖥 Internet
📜Service Worker
1 2
3
☁
🖥
Internet
📜Service Worker
📁Cache
1
2
3
3
☁
🖥
Internet
📜Service Worker
📁Cache
5
3
2
4
1
☁
🖥
Internet
📜Service Worker
📁Cache
❌
1
2
3
4

Recommended for you

Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moible

This document discusses how HTML5 can be used to build engaging mobile applications. Key features covered include offline storage using the Application Cache API, storing data locally using Web Storage, using a SQL database with Web SQL, advanced graphics capabilities with Canvas and SVG, real-time communications over WebSockets, and tools for developing HTML5 apps like jQuery Mobile, Sencha Touch, and Google Web Toolkit. It emphasizes testing on multiple platforms and browsers to ensure compatibility.

HTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & socketsHTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & sockets

This document provides an overview of HTML5 features including new HTML5 elements, offline capabilities through the App Cache, local storage options, multimedia additions like video and audio, cross-domain messaging, and the Canvas API. It discusses using these features across browsers through polyfills and shims, and emphasizes the importance of JavaScript knowledge for full HTML5 implementation. Web Sockets are introduced as enabling real-time two-way communication through a persistent connection.

socketshtml5canvas
Empowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsEmpowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris Mills

Empowering the “Mobile Web” with Chris Mills “Mobile web” applications are often criticised for having inferior performance and a limited feature set, compared to “native” apps. To redress the balance, browser vendors are working on a number of technologies to grant them superpowers. In this talk, Chris Mills will discuss the inherent historic problems with mobile apps and which technologies are stepping up to fill the holes. This includes device APIs such as Web Activities, Notification, Network Information and Vibration, offline apps, installable apps and performance enhancers such as asm.js and Emscripten. Presented at FITC Toronto 2014 on April 27-29, 2014 More info at www.FITC.ca

 
by FITC
mobile devicemobile webweb design and development
Code
Register Service Worker
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw-test/sw.js', {scope: '/sw-test/'})
.then(function(reg) {
// registration worked
console.log('Registration succeeded. Scope is ' + reg.scope);
}).catch(function(error) {
// registration failed
console.log('Registration failed with ' + error);
});
}
Service Worker Overview
self.addEventListener('install', function(event) {
console.log("installed");
});
self.addEventListener('activate', function(event) {
console.log("activated");
});
self.addEventListener('fetch', function(event) {
console.log("fetch");
event.respondWith(new Response("My response!!"));
});
Install
self.addEventListener('install', function(event) {
event.waitUntil(
caches.open('v1').then(function(cache) {
return cache.addAll([
'/images/myImage.png',
'/index.html'
]);
})
);
});

Recommended for you

Empowering the Mobile Web - Mills
Empowering the Mobile Web - MillsEmpowering the Mobile Web - Mills
Empowering the Mobile Web - Mills

This document discusses empowering the mobile web. It begins by defining the mobile web as the web experienced on mobile devices, with considerations for usability and responsiveness. It then addresses common arguments that native apps are better and outlines Mozilla's solutions, including their Firefox OS mobile platform, installable web apps, and APIs that allow access to device capabilities from the web. The document discusses the developer experience and tools provided by Mozilla and techniques like Web Workers, asm.js, and Emscripten that can improve web performance.

mobile webcodemotion roma 2014chris mills
Empowering the "mobile web"
Empowering the "mobile web"Empowering the "mobile web"
Empowering the "mobile web"

This document discusses empowering the mobile web. It begins by defining the mobile web as the web experienced on mobile devices, with considerations for usability and responsiveness. It then addresses concerns about the web versus native apps, and outlines Mozilla's solutions including their app ecosystem with installable apps, the Firefox OS mobile platform, and APIs that allow web apps to access device capabilities. The document also covers developer experience tools and techniques to improve web app performance.

marketplacedeviceapp
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more

This document discusses various topics related to developing web apps, including HTML5, responsive design, touch events, offline capabilities, and debugging tools. It provides links to resources on HTML5 features like media queries, SVG, web workers, and the page visibility API. It also covers techniques for adapting content like responsive web design, progressive enhancement, and server-side adaptation. Mobile browser stats and popular devices on Douban are mentioned. Frameworks like Bootstrap and tools like Weinre for debugging mobile apps are referenced.

readermobile application developmentweb applications
Fetch
this.addEventListener('fetch', function(event) {
event.respondWith(
caches.match(event.request).then(function(response) {
return response || fetch(event.request);
})
);
});
Fetch & Update Cache
this.addEventListener('fetch', function(event) {
event.respondWith(
caches.match(event.request).then(function(resp) {
return resp || fetch(event.request).then(function(response) {
caches.open('v1').then(function(cache) {
cache.put(event.request, response.clone());
});
return response;
});
}).catch(function() {
return caches.match('/sw-test/gallery/myLittleVader.jpg');
})
);
});
Clean Up Cache
this.addEventListener('activate', function(event) {
var cacheWhitelist = ['v2'];
event.waitUntil(
caches.keys().then(function(keyList) {
return Promise.all(keyList.map(function(key) {
if (cacheWhitelist.indexOf(key) === -1) {
return caches.delete(key);
}
}));
})
);
});
Update Cache
var CACHE_NAME = 'static-v9';
self.addEventListener('install', function(event) {
event.waitUntil(
caches.open(CACHE_NAME_STATIC).then(function(cache) {
return cache.addAll(['...']);
})
)
});
self.addEventListener('activate', function(event) {
var cacheWhitelist = [CACHE_NAME_STATIC];
event.waitUntil(
caches.keys().then(function(keyList) {
return Promise.all(keyList.map(function(key) {
if (cacheWhitelist.indexOf(key) === -1) {
return caches.delete(key);
}
}));
})
);
});

Recommended for you

Web app and more
Web app and moreWeb app and more
Web app and more

This document discusses various techniques for making web applications work offline and with unreliable network connections, including: - The application cache manifest which allows specifying cached resources to work offline - Issues with the current manifest specification and potential enhancements - The window.applicationCache API for caching resources and monitoring cache status - Detecting online/offline status using the navigator.onLine property In 3 sentences or less, it summarizes approaches for offline web applications using the application cache manifest, applicationCache API, and navigator.onLine property.

web application
Apache cordova
Apache cordovaApache cordova
Apache cordova

Apache Cordova is an open-source framework that allows developers to use standard web technologies like HTML, CSS, and JavaScript to build applications that can be deployed across various mobile and desktop platforms. It works by packaging the application's code and assets into a wrapper application that loads the content into a webview. Plugins can be added to access device capabilities. The Cordova CLI provides commands for creating, building, and running Cordova projects across platforms in a consistent way. Frameworks like Angular and UI frameworks like Ionic can be used to organize larger Cordova applications.

javascriptcordova
Html5
Html5Html5
Html5

A look at some of exciting features of HTML5, a presentation given by me at Universtiy Seminar in 7th Semester.

htmlhtml5geolocation
We have the tools!
https://jakearchibald.github.io/isserviceworkerready/
GonzaloBaeza-https://flic.kr/p/dCPzuE
Now & The Future
Progressive
Web Apps

Recommended for you

Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011

This document provides an overview of techniques for developing high performance web applications. It discusses why front-end performance matters, and outlines best practices for optimizing page load times, using responsive interfaces, loading and executing JavaScript efficiently, and accessing data. The presentation recommends tools for monitoring and improving performance, such as Firebug, Page Speed, and YSlow.

codemashjavascriptperformance
State of Web APIs 2017
State of Web APIs 2017State of Web APIs 2017
State of Web APIs 2017

This document provides a summary of the state of web APIs in 2017. It begins with a brief history of web browsers and the "Browser Wars" of the 1990s. It then discusses the rise of mobile web usage, particularly in Asia and Africa, and the need for web APIs to support mobile web applications. The document proceeds to summarize several important modern web APIs, including APIs for device access, animations, games, sensors, battery status, ambient light, networking information, orientation, audio, MIDI, VR, service workers, push notifications, Bluetooth, and speech synthesis and recognition.

web apiswebvrweb audio
Headless in the CMS
Headless in the CMSHeadless in the CMS
Headless in the CMS

This document discusses mediaman's implementation of a headless architecture using Typo3 as a content management system and Magento 2 as a shop system. Some key challenges included migrating existing content, connecting different existing systems, and ensuring one user interface. The solution involved using Typo3 and Magento 2 APIs to integrate the systems while keeping the content and shop separate. Lessons learned included that being an early adopter of new technologies like Magento 2 comes with difficulties as extensions and features may not be fully developed, and going headless requires rebuilding templates and processes that rely on extensions.

magentotypo3magento 2
–Ada Rose Edwards
https://www.smashingmagazine.com/2016/09/the-building-blocks-of-progressive-web-apps/
„An ideal web app is a web page that has the best
aspects of both the web and native apps. It should
be fast and quick to interact with, fit the device’s
viewport, remain usable offline and be able to have
an icon on the home screen.“
OMG! PWA? WTF?
• Progressive
• Responsive
• Connectivity independent
• App-like
• Safe
• Discoverable
• Installable
• Linkable
PWA Architecture
„Thorsten“-https://flic.kr/p/y3ib6k
App Shell

Recommended for you

Night Watch with QA
Night Watch with QANight Watch with QA
Night Watch with QA

The document discusses Nightwatch.js, an open source end-to-end testing framework for browser-based apps and websites. It uses Selenium WebDriver to perform commands and assertions on DOM elements. Key features include a clean syntax, built-in test runner, support for CSS/XPath selectors, test grouping/filtering, and CI integration. The document provides information on installation, project structure, configuration, writing tests, using page objects, test execution, and ways to extend Nightwatch's functionality through custom commands/assertions.

qaqme2e
WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016

This document provides an overview of WebVR and its history. It discusses early VR devices from the 1960s, popular VR headsets today like Oculus Rift and HTC Vive, and frameworks for building VR experiences on the web like A-Frame. It also summarizes the WebVR API and how it allows accessing VR sensors and rendering to head-mounted displays from web content. While WebVR shows promise, the document notes it is still an editors draft and has limitations in browser support and requiring expensive hardware.

vroculuscardboard
Evolution der Web Entwicklung
Evolution der Web EntwicklungEvolution der Web Entwicklung
Evolution der Web Entwicklung

Slides of a talk I've given at FH Bingen about a short history of Web Development. Slides are in german.

historydevelopmentmediaman
Service Workers
www.audio-luci-store.it-https://flic.kr/p/hQannE
Installability
Push Notification
• Allow SW to wake up
• Works in Background, only SW is woken up
• Needs permission from user!
–W3C
https://w3c.github.io/push-api/
„The Push API enables sending of a push message
to a webapp via a push service.“

Recommended for you

WebVR - JAX 2016
WebVR -  JAX 2016WebVR -  JAX 2016
WebVR - JAX 2016

This document provides an overview of WebVR and its history. It discusses early VR devices from the 1930s through the 1990s. Modern VR head-mounted displays like the Oculus Rift and HTC Vive are described. The WebVR API allows creating VR experiences within browsers by accessing sensors and rendering to VR displays. Frameworks like A-Frame simplify development with markup. While WebVR has potential, the specification is not finalized and high-end VR hardware can be expensive.

webvrjavascriptweb
HTML5 Games for Web & Mobile
HTML5 Games for Web & MobileHTML5 Games for Web & Mobile
HTML5 Games for Web & Mobile

- HTML5 Canvas allows for drawing and animation capabilities for building games directly in browsers - It has been standardized and is supported across browsers, enabling cross-platform games - While desktop games work well with HTML5 Canvas, mobile games face challenges like lower memory limits, different screen sizes and resolutions, and performance issues - Frameworks like Phaser, Impact and libraries like CocoonJS aim to address these challenges and allow building games using HTML5 that run cross-platform on desktop and mobile browsers

developmentiosandroid
What is responsive - and do I need it?
What is responsive - and do I need it?What is responsive - and do I need it?
What is responsive - and do I need it?

Responsive design allows webpages to adapt to different screen sizes and devices by using fluid widths, images, and CSS media queries. It began in 2010 with a combination of flexible layouts, media queries, and using the viewport to optimize content for varied screens. While responsive design improves the user experience across devices, developers must address challenges like conditionally loading appropriate images, scripts, and styles to avoid delivering unnecessary content.

rwdwebresponsive
And Webpages?
–Slightly modified by me…
„An ideal web page is a web page that has the best
aspects of both the web and native apps. It should
be fast and quick to interact with, fit the device’s
viewport and remain usable offline and be able to
have an icon on the home screen.“
Cache Data from APIs
• localStorage
• sessionStorage
• IndexedDB
Are you online?
var online = navigator.onLine;
if (!online) {
// Fallback -> Get Data from Storage!
}
else {
// Use network....
}

Recommended for you

Web apis JAX 2015 - Mainz
Web apis JAX 2015 - MainzWeb apis JAX 2015 - Mainz
Web apis JAX 2015 - Mainz

The document discusses the evolution of web APIs and browsers. It describes how in the early days of the web, browser vendors competed by adding proprietary features without regard to standards, which led to inconsistent support across browsers. It then explains how modern browsers now prioritize standards compliance and collaboration to ensure features work across all browsers, and how new web APIs are enabling richer mobile web experiences through access to device capabilities.

standardsopen webweb development
Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015

The document summarizes the history of web browsers and standards. It describes how early browsers competed by adding proprietary features without regard to standards, resulting in developer headaches. It then discusses how modern browsers have embraced standards-based development and cooperate on new technologies and APIs. The talk outlines how web APIs are helping make the web more "native" and powerful on mobile devices.

apisopen webweb development
Web APIs – expand what the Web can do
Web APIs – expand what the Web can doWeb APIs – expand what the Web can do
Web APIs – expand what the Web can do

Expand what a web application can do with Web APIs. Make your applications more "native". Slides of my talk at code.talks 2014 in Hamburg/Germany

mobileweb developmentjavascript
That’s easy!
Always on! Or not?
Wait?
• Slow network? (Edge, GPRS etc.)
• mobile networks are not reliable…
• „Lie“-Fi
Use Service Workers
• Provide offline fallback
• Cache static files
• Controll the network ;)

Recommended for you

Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14

My slides from Developer Week 2014 in Nuremberg. Original Slides: http://casarock.github.io/dwx14 (Quality of uploaded slides is not good as slideshare has problem converting the used backgorund)

mobileweb developmentfirefox os
Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014

Firefox OS is a fully open source, HTML5-based mobile operating system developed by Mozilla. Apps for Firefox OS are written as regular web apps using HTML5, CSS, and JavaScript. The OS provides web APIs to access device hardware and services. App development does not require an SDK - apps are just web apps that can be hosted, privileged with permissions, or certified for distribution. The Gecko rendering engine displays HTML5-based apps and the Gaia UI provides access to the underlying OS. Developers can test apps using simulators, remote debugging tools, and UI component libraries. Apps can be distributed by hosting them online or submitting them to the Firefox OS marketplace.

mozillajavascriptfirefox os
Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014

This document discusses modern web UI components and frameworks. It introduces templates, custom elements, and HTML imports that allow developers to build reusable components. It then summarizes the Brick library from Mozilla, which includes common UI elements like calendars, sliders, and tabs. Developers can also build their own custom elements. The document encourages using these techniques and libraries to rapidly develop cross-browser web apps.

web componentsjavascriptmozilla
Demo
https://github.com/casarock/service-worker-demo
GPRS
GPRS + SW
Considerations
• Don't abuse offline caches.
• How to deal with sensitive information?
• Are my assets permanently stored?
• Think about your use case!

Recommended for you

Traceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14thTraceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14th

The document discusses Traceur, a compiler that allows developers to write JavaScript code using ECMAScript 6 features while targeting browsers that do not yet support these features natively. It provides an overview of Traceur's capabilities, how to use it through command line, Grunt, or Gulp builds, and the benefits of using a compiler like Traceur to write ES6 code now while targeting older browsers through compilation to ES5. However, it also notes that Traceur does not support all ES6 features and requires a runtime, so developers must carefully consider if their projects truly need ES6 features.

javascripttraceurrheinmainjs
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理

特殊工艺完全按照原版制作【微信:A575476】【(uom毕业证)曼彻斯特大学毕业证成绩单offer】【微信:A575476】(留信学历认证永久存档查询)采用学校原版纸张(包括:隐形水印,阴影底纹,钢印LOGO烫金烫银,LOGO烫金烫银复合重叠,文字图案浮雕,激光镭射,紫外荧光,温感,复印防伪)行业标杆!精益求精,诚心合作,真诚制作!多年品质 ,按需精细制作,24小时接单,全套进口原装设备,十五年致力于帮助留学生解决难题,业务范围有加拿大、英国、澳洲、韩国、美国、新加坡,新西兰等学历材料,包您满意。 【业务选择办理准则】 一、工作未确定,回国需先给父母、亲戚朋友看下文凭的情况,办理一份就读学校的毕业证【微信:A575476】文凭即可 二、回国进私企、外企、自己做生意的情况,这些单位是不查询毕业证真伪的,而且国内没有渠道去查询国外文凭的真假,也不需要提供真实教育部认证。鉴于此,办理一份毕业证【微信:A575476】即可 三、进国企,银行,事业单位,考公务员等等,这些单位是必需要提供真实教育部认证的,办理教育部认证所需资料众多且烦琐,所有材料您都必须提供原件,我们凭借丰富的经验,快捷的绿色通道帮您快速整合材料,让您少走弯路。 留信网认证的作用: 1:该专业认证可证明留学生真实身份【微信:A575476】 2:同时对留学生所学专业登记给予评定 3:国家专业人才认证中��颁发入库证书 4:这个认证书并且可以归档倒地方 5:凡事获得留信网入网的信息将会逐步更新到个人身份内,将在公安局网内查询个人身份证信息后,同步读取人才网入库信息 6:个人职称评审加20分 7:个人信誉贷款加10分 8:在国家人才网主办的国家网络招聘大会中纳入资料,供国家高端企业选择人才 → 【关于价格问题(保证一手价格) 我们所定的价格是非常合理的,而且我们现在做得单子大多数都是代理和回头客户介绍的所以一般现在有新的单子 我给客户的都是第一手的代理价格,因为我想坦诚对待大家 不想跟大家在价格方面浪费时间 对于老客户或者被老客户介绍过来的朋友,我们都会适当给一些优惠。 选择实体注册公司办理,更放心,更安全!我们的承诺:可来公司面谈,可签订合同,会陪同客户一起到教育部认证窗口递交认证材料,客户在教育部官方认证查询网站查询到认证通过结果后付款,不成功不收费! 办理(uom毕业证)曼彻斯特大学毕业证【微信:A575476】外观非常精致,由特殊纸质材料制成,上面印有校徽、校名、毕业生姓名、专业等信息。 办理(uom毕业证)曼彻斯特大学毕业证【微信:A575476】格式相对统一,各专业都有相应的模板。通常包括以下部分: 校徽:象征着学校的荣誉和传承。 校名:学校英文全称 授予学位:本部分将注明获得的具体学位名称。 毕业生姓名:这是最重要的信息之一,标志着该证书是由特定人员获得的。 颁发日期:这是毕业正式生效的时间,也代表着毕业生学业的结束。 其他信息:根据不同的专业和学位,可能会有一些特定的信息或章节。 办理(uom毕业证)曼彻斯特大学毕业证【微信:A575476】价值很高,需要妥善保管。一般来说,应放置在安全、干燥、防潮的地方,避免长时间暴露在阳光下。如需使用,最好使用复印件而不是���件,以免丢失。 综上所述,办理(uom毕业证)曼彻斯特大学毕业证【微信:A575476 】是证明身份和学历的高价值文件。外观简单庄重,格式统一,包括重要的个人信息和发布日期。对持有人来说,妥善保管是非常重要的。

特拉利理工学院毕业证沃特福德理工学院毕业证邓莱里文艺理工学院毕业证
cyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.pptcyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.ppt

Cyber Security training

Always on
is a lie.
Carsten Sandtner
@casarock
sandtner@mediaman.de
https://github.com/casarock
¯_(ツ)_/¯

More Related Content

What's hot

[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
DrupalDay
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas
 
Going Offline with Gears And GWT
Going Offline with Gears And GWTGoing Offline with Gears And GWT
Going Offline with Gears And GWT
tom.peck
 
Everything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the WebEverything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the Web
James Rakich
 
Easing offline web application development with GWT
Easing offline web application development with GWTEasing offline web application development with GWT
Easing offline web application development with GWT
Arnaud Tournier
 
Ajax ppt - 32 slides
Ajax ppt - 32 slidesAjax ppt - 32 slides
Ajax ppt - 32 slides
Smithss25
 
Dan Webb Presentation
Dan Webb PresentationDan Webb Presentation
Dan Webb Presentation
RubyOnRails_dude
 
Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar TechnologiesRob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies
george.james
 
Instant and offline apps with Service Worker
Instant and offline apps with Service WorkerInstant and offline apps with Service Worker
Instant and offline apps with Service Worker
Chang W. Doh
 
Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5
dynamis
 
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 ...
IT Event
 
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
Chris Love
 
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
Andrew Rota
 
Chrome enchanted 2015
Chrome enchanted 2015Chrome enchanted 2015
Chrome enchanted 2015
Chang W. Doh
 
Ajax Security
Ajax SecurityAjax Security
Ajax Security
Joe Walker
 
An Introduction to webOS
An Introduction to webOSAn Introduction to webOS
An Introduction to webOS
Kevin Decker
 
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloHTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
Robert Nyman
 
Choosing a Javascript Framework
Choosing a Javascript FrameworkChoosing a Javascript Framework
Choosing a Javascript Framework
All Things Open
 
WordPress and Ajax
WordPress and AjaxWordPress and Ajax
WordPress and Ajax
Ronald Huereca
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
Aaron Rosenberg
 

What's hot (20)

[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
[drupalday2017] - Drupal come frontend che consuma servizi: HTTP Client Manager
 
High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
 
Going Offline with Gears And GWT
Going Offline with Gears And GWTGoing Offline with Gears And GWT
Going Offline with Gears And GWT
 
Everything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the WebEverything is Awesome - Cutting the Corners off the Web
Everything is Awesome - Cutting the Corners off the Web
 
Easing offline web application development with GWT
Easing offline web application development with GWTEasing offline web application development with GWT
Easing offline web application development with GWT
 
Ajax ppt - 32 slides
Ajax ppt - 32 slidesAjax ppt - 32 slides
Ajax ppt - 32 slides
 
Dan Webb Presentation
Dan Webb PresentationDan Webb Presentation
Dan Webb Presentation
 
Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar TechnologiesRob Tweed :: Ajax and the Impact on Caché and Similar Technologies
Rob Tweed :: Ajax and the Impact on Caché and Similar Technologies
 
Instant and offline apps with Service Worker
Instant and offline apps with Service WorkerInstant and offline apps with Service Worker
Instant and offline apps with Service Worker
 
Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5
 
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 ...
 
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 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
 
Chrome enchanted 2015
Chrome enchanted 2015Chrome enchanted 2015
Chrome enchanted 2015
 
Ajax Security
Ajax SecurityAjax Security
Ajax Security
 
An Introduction to webOS
An Introduction to webOSAn Introduction to webOS
An Introduction to webOS
 
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloHTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
 
Choosing a Javascript Framework
Choosing a Javascript FrameworkChoosing a Javascript Framework
Choosing a Javascript Framework
 
WordPress and Ajax
WordPress and AjaxWordPress and Ajax
WordPress and Ajax
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 

Similar to Always on! Or not?

Always on! ... or not?
Always on! ... or not?Always on! ... or not?
Always on! ... or not?
Carsten Sandtner
 
Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla
Robert Nyman
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
Sander Mangel
 
AFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack EncoreAFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack Encore
Engineor
 
Rapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 PlatformRapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 Platform
WSO2
 
WebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonWebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla London
Robert Nyman
 
Introduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azureIntroduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azure
Colin Mackay
 
(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us
Stefan Adolf
 
RESTful Web Applications with Apache Sling
RESTful Web Applications with Apache SlingRESTful Web Applications with Apache Sling
RESTful Web Applications with Apache Sling
Bertrand Delacretaz
 
JavaScript - Chapter 3 - Introduction
 JavaScript - Chapter 3 - Introduction JavaScript - Chapter 3 - Introduction
JavaScript - Chapter 3 - Introduction
WebStackAcademy
 
Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moible
markuskobler
 
HTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & socketsHTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & sockets
Remy Sharp
 
Empowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsEmpowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris Mills
FITC
 
Empowering the Mobile Web - Mills
Empowering the Mobile Web - MillsEmpowering the Mobile Web - Mills
Empowering the Mobile Web - Mills
Codemotion
 
Empowering the "mobile web"
Empowering the "mobile web"Empowering the "mobile web"
Empowering the "mobile web"
Chris Mills
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more
Yan Shi
 
Web app and more
Web app and moreWeb app and more
Web app and more
faming su
 
Apache cordova
Apache cordovaApache cordova
Apache cordova
Carlo Bernaschina
 
Html5
Html5Html5
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
Timothy Fisher
 

Similar to Always on! Or not? (20)

Always on! ... or not?
Always on! ... or not?Always on! ... or not?
Always on! ... or not?
 
Web APIs & Apps - Mozilla
Web APIs & Apps - MozillaWeb APIs & Apps - Mozilla
Web APIs & Apps - Mozilla
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
 
AFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack EncoreAFUP Lorraine - Symfony Webpack Encore
AFUP Lorraine - Symfony Webpack Encore
 
Rapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 PlatformRapid Application Development with WSO2 Platform
Rapid Application Development with WSO2 Platform
 
WebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla LondonWebAPIs & Apps - Mozilla London
WebAPIs & Apps - Mozilla London
 
Introduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azureIntroduction to node js - From "hello world" to deploying on azure
Introduction to node js - From "hello world" to deploying on azure
 
(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us(2018) Webpack Encore - Asset Management for the rest of us
(2018) Webpack Encore - Asset Management for the rest of us
 
RESTful Web Applications with Apache Sling
RESTful Web Applications with Apache SlingRESTful Web Applications with Apache Sling
RESTful Web Applications with Apache Sling
 
JavaScript - Chapter 3 - Introduction
 JavaScript - Chapter 3 - Introduction JavaScript - Chapter 3 - Introduction
JavaScript - Chapter 3 - Introduction
 
Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moible
 
HTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & socketsHTML5 tutorial: canvas, offfline & sockets
HTML5 tutorial: canvas, offfline & sockets
 
Empowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsEmpowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris Mills
 
Empowering the Mobile Web - Mills
Empowering the Mobile Web - MillsEmpowering the Mobile Web - Mills
Empowering the Mobile Web - Mills
 
Empowering the "mobile web"
Empowering the "mobile web"Empowering the "mobile web"
Empowering the "mobile web"
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more
 
Web app and more
Web app and moreWeb app and more
Web app and more
 
Apache cordova
Apache cordovaApache cordova
Apache cordova
 
Html5
Html5Html5
Html5
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
 

More from Carsten Sandtner

State of Web APIs 2017
State of Web APIs 2017State of Web APIs 2017
State of Web APIs 2017
Carsten Sandtner
 
Headless in the CMS
Headless in the CMSHeadless in the CMS
Headless in the CMS
Carsten Sandtner
 
Night Watch with QA
Night Watch with QANight Watch with QA
Night Watch with QA
Carsten Sandtner
 
WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016
Carsten Sandtner
 
Evolution der Web Entwicklung
Evolution der Web EntwicklungEvolution der Web Entwicklung
Evolution der Web Entwicklung
Carsten Sandtner
 
WebVR - JAX 2016
WebVR -  JAX 2016WebVR -  JAX 2016
WebVR - JAX 2016
Carsten Sandtner
 
HTML5 Games for Web & Mobile
HTML5 Games for Web & MobileHTML5 Games for Web & Mobile
HTML5 Games for Web & Mobile
Carsten Sandtner
 
What is responsive - and do I need it?
What is responsive - and do I need it?What is responsive - and do I need it?
What is responsive - and do I need it?
Carsten Sandtner
 
Web apis JAX 2015 - Mainz
Web apis JAX 2015 - MainzWeb apis JAX 2015 - Mainz
Web apis JAX 2015 - Mainz
Carsten Sandtner
 
Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015
Carsten Sandtner
 
Web APIs – expand what the Web can do
Web APIs – expand what the Web can doWeb APIs – expand what the Web can do
Web APIs – expand what the Web can do
Carsten Sandtner
 
Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14
Carsten Sandtner
 
Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014
Carsten Sandtner
 
Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014
Carsten Sandtner
 
Traceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14thTraceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14th
Carsten Sandtner
 

More from Carsten Sandtner (15)

State of Web APIs 2017
State of Web APIs 2017State of Web APIs 2017
State of Web APIs 2017
 
Headless in the CMS
Headless in the CMSHeadless in the CMS
Headless in the CMS
 
Night Watch with QA
Night Watch with QANight Watch with QA
Night Watch with QA
 
WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016WebVR - MobileTechCon Berlin 2016
WebVR - MobileTechCon Berlin 2016
 
Evolution der Web Entwicklung
Evolution der Web EntwicklungEvolution der Web Entwicklung
Evolution der Web Entwicklung
 
WebVR - JAX 2016
WebVR -  JAX 2016WebVR -  JAX 2016
WebVR - JAX 2016
 
HTML5 Games for Web & Mobile
HTML5 Games for Web & MobileHTML5 Games for Web & Mobile
HTML5 Games for Web & Mobile
 
What is responsive - and do I need it?
What is responsive - and do I need it?What is responsive - and do I need it?
What is responsive - and do I need it?
 
Web apis JAX 2015 - Mainz
Web apis JAX 2015 - MainzWeb apis JAX 2015 - Mainz
Web apis JAX 2015 - Mainz
 
Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015Web APIs - Mobiletech Conference 2015
Web APIs - Mobiletech Conference 2015
 
Web APIs – expand what the Web can do
Web APIs – expand what the Web can doWeb APIs – expand what the Web can do
Web APIs – expand what the Web can do
 
Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14Firefox OS - A (mobile) Web Developers dream - DWX14
Firefox OS - A (mobile) Web Developers dream - DWX14
 
Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014Firefox OS - A (web) developers dream - muxCamp 2014
Firefox OS - A (web) developers dream - muxCamp 2014
 
Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014Mozilla Brick - Frontend Rhein-Main June 2014
Mozilla Brick - Frontend Rhein-Main June 2014
 
Traceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14thTraceur - Javascript.next - Now! RheinmainJS April 14th
Traceur - Javascript.next - Now! RheinmainJS April 14th
 

Recently uploaded

一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
taqyea
 
cyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.pptcyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.ppt
LiamOConnor52
 
PSD to Wordpress Service Providers in 2024
PSD to Wordpress Service Providers in 2024PSD to Wordpress Service Providers in 2024
PSD to Wordpress Service Providers in 2024
Bestdesign2hub
 
Founders Of Digital World Social Media..
Founders Of Digital World Social Media..Founders Of Digital World Social Media..
Founders Of Digital World Social Media..
jom pom
 
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
taqyea
 
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
taqyea
 
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
taqyea
 
10th International Conference on Networks, Mobile Communications and Telema...
10th International Conference on Networks, Mobile Communications and   Telema...10th International Conference on Networks, Mobile Communications and   Telema...
10th International Conference on Networks, Mobile Communications and Telema...
ijp2p
 
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
taqyea
 
Book dating , international dating phgra
Book dating , international dating phgraBook dating , international dating phgra
Book dating , international dating phgra
thomaskurtha9
 
very nice project on internet class 10.pptx
very nice project on internet class 10.pptxvery nice project on internet class 10.pptx
very nice project on internet class 10.pptx
bazukagaming6
 
Corporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptxCorporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptx
byubyu7
 
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
taqyea
 
About Alibaba company and brief general information regarding how to trade on...
About Alibaba company and brief general information regarding how to trade on...About Alibaba company and brief general information regarding how to trade on...
About Alibaba company and brief general information regarding how to trade on...
Erkinjon Erkinov
 
Megalive99 Situs Betting Online Gacor Terpercaya
Megalive99 Situs Betting Online Gacor TerpercayaMegalive99 Situs Betting Online Gacor Terpercaya
Megalive99 Situs Betting Online Gacor Terpercaya
Megalive99
 
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
taqyea
 
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
taqyea
 
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
taqyea
 
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
taqyea
 
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
taqyea
 

Recently uploaded (20)

一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
 
cyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.pptcyber-security-training-presentation-q320.ppt
cyber-security-training-presentation-q320.ppt
 
PSD to Wordpress Service Providers in 2024
PSD to Wordpress Service Providers in 2024PSD to Wordpress Service Providers in 2024
PSD to Wordpress Service Providers in 2024
 
Founders Of Digital World Social Media..
Founders Of Digital World Social Media..Founders Of Digital World Social Media..
Founders Of Digital World Social Media..
 
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
 
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
 
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
 
10th International Conference on Networks, Mobile Communications and Telema...
10th International Conference on Networks, Mobile Communications and   Telema...10th International Conference on Networks, Mobile Communications and   Telema...
10th International Conference on Networks, Mobile Communications and Telema...
 
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
 
Book dating , international dating phgra
Book dating , international dating phgraBook dating , international dating phgra
Book dating , international dating phgra
 
very nice project on internet class 10.pptx
very nice project on internet class 10.pptxvery nice project on internet class 10.pptx
very nice project on internet class 10.pptx
 
Corporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptxCorporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptx
 
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
一比一原版(ic毕业证书)英国帝国理工学院毕业证如何办理
 
About Alibaba company and brief general information regarding how to trade on...
About Alibaba company and brief general information regarding how to trade on...About Alibaba company and brief general information regarding how to trade on...
About Alibaba company and brief general information regarding how to trade on...
 
Megalive99 Situs Betting Online Gacor Terpercaya
Megalive99 Situs Betting Online Gacor TerpercayaMegalive99 Situs Betting Online Gacor Terpercaya
Megalive99 Situs Betting Online Gacor Terpercaya
 
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
 
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
一比一原版(oregon毕业证书)俄勒冈大学毕业证如何办理
 
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
 
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
 
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
 

Always on! Or not?