SlideShare a Scribd company logo
WELCOME
TO MOBILE
NORTH
PROGRESSIVE
WEB APPS
THE FUTURE….
SERVICE WORKERS ARE
TO PROGRESSIVE WEB
APPS AS
XMLHTTPREQUEST WAS
TO AJAX
Progressive Web Apps London
PROGRESSIVE WEB APPS
SECURITY
PROGRESSIVE WEB APPS

Recommended for you

WP-CLI For The Win
WP-CLI For The WinWP-CLI For The Win
WP-CLI For The Win

WP-CLI stands for WordPress Command-Line Interface. It is a tool for managing a WordPress site from the terminal as opposed to your web browser. Learn how to install WordPress, install or update plugins, check for hacked files, create a new user, perform a search and replace, manage data, execute custom scripts and more; all from the command-line!

wordpresswpscholarwpcli
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...

This document provides an introduction to progressive web apps (PWAs). It discusses the history of web technologies from HTML and HTTP in the early 1990s to more recent developments like service workers, push notifications, and web app manifests that enable PWAs. Features of PWAs are described like reliability, performance, engagement, and integration with the operating system. Case studies are presented showing the benefits some companies have seen from implementing PWAs.

Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...

I gave my first webinar for Codemotion about Progressive Web Apps (PWAs), the future of web development.  Video (soon in my youtube): https://www.youtube.com/watch?v=de1xiqz-BTE  Twitter: https://twitter.com/JGFerreiro  Linkedin: https://www.linkedin.com/in/jgferreiro/ - - - I think Progressive Web Apps (PWAs) are the next revolution in web development. This practical workshop will explain the basics about PWAs as well as how to integrate it into your own application. What we will cover: • Caching requests and caching strategies. • Setting up your PWA (manifest and progressive metadata) • Payments Api, Local Web Notifications • Other PWA functionalities. - - - Subscribe: https://www.ferreiro.me/newsletter on https://www.twitter.com/jgferreiro on https://www.linkedin.com/in/jgferreiro/ on https://www.instagram.com/jgferreiro/

pwaweb developmentwebinar
PROGRESSIVE WEB APPS
SECURITY
▸ When developing, there is no needs
to do anything different Localhost is
treat as a secure environment.
▸ letsencrypt.org a group of people
trying to get HTTPS as wide spread
as possible on the web. Offer a
command line tool that will help you
generate your SSL certs and
encourage you to automate the
process.
PROGRESSIVE WEB APPS
SECURITY
▸Mozilla SSL Config Generator (bit.ly/ssl-config-gen)
▸Should be your first stop when seeing up secure servers.
▸Tool that gives you example configurations with all the
best practices that is constantly kept up to date so you
know your server will be secure.
▸Chrome DevTools provides an in-depth look at the security
of your site, if you haven't been already you should definitely
take advantage of this free tool.
PROGRESSIVE WEB APPS
SECURITY
▸SSL Labs
▸Analysis tool to help pain point problems in your servers
security and help you rectify them.
▸bit.ly/ssl-labs
▸Lastly some “Light” reading and watching on the subject of
security.
▸Google Developers Security: bit.ly/security-docs
▸HTTPS The green lock and beyond: bit.ly/green-lock-beyond
PROGRESSIVE WEB APPS
USEFUL LINKS
▸paul.kinlan.me/detecting-injected-content/
▸letsencrypt.org/
▸mozilla.github.io/server-side-tls/ssl-config-generator/
▸www.ssllabs.com/ssltest/
▸developers.google.com/web/fundamentals/security/
▸www.youtube.com/watch?v=9WuP4KcDBpI (Deploying HTTPS:
The Green Lock and Beyond (Chrome Dev Summit 2015)

Recommended for you

Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace

This document summarizes the history and evolution of web browsers and internet technologies from the early 1990s to the late 1990s. It traces the development of key browsers like Netscape Navigator and Internet Explorer. It also outlines the introduction of important web standards like HTML, CSS, JavaScript and XML. Major events included the commercialization of the web in the mid-1990s, the browser wars between Netscape and Microsoft in the late 90s, and the consolidation of online services providers toward the end of the decade.

wwwinternetjavascript
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...

Raiders of the Fast Start: Frontend Performance Archeology There are a lot of books, articles, and online tutorials out there with fantastic advice on how to make your websites performant. It all seems easy in theory, but applying best practices to real-world code is anything but straightforward. Diagnosing and fixing frontend performance issues on a large legacy codebase is like being an archaeologist excavating the remains of a lost civilization. You don’t know what you will find until you start digging! Pick up your trowels and come along with Etsy’s Frontend Systems team as we become archaeologists digging into frontend performance on our large, legacy mobile codebase. I’ll share real-life lessons you can use to guide your own excavations into legacy code: What tools and metrics we used to diagnose issues and track progress. How we went beyond server-driven best practices to focus on the client. Which fixes successfully increased conversion, and which didn’t. Our work, like all good archaeology, went beyond artifacts and unearthed new insights into our culture. We at Etsy pride ourselves on our culture of performance, but, like all cultures, it needs to adapt and reinvent itself to account for changes to the landscape. Based on what we’ve learned, we are making the case for a new, organization-wide, frontend-focused performance culture that will solve the problems we face today.

[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design

This document summarizes Christopher Schmitt's presentation on adaptive images in responsive web design. It discusses using feature testing versus browser sniffing to determine the appropriate image to serve, including testing browser width, screen resolution, and bandwidth. It then covers various techniques for serving adaptive images, such as using .htaccess files, the <picture> element, srcset attributes, and JavaScript libraries. It emphasizes using a mobile-first approach and progressive enhancement to provide the best experience for all devices.

html5cssresponsive web design
INSTANT
PROGRESSIVE WEB APPS
EVERY STEP YOU MAKE A
USER PERFORM BEFORE
THEY GET VALUE OUT OF
YOUR APP WILL COST YOU
20% OF USERS
http://blog.gaborcselle.com/2012/10/every-step-costs-you-20-of-users.html
PROGRESSIVE WEB APPS
PROGRESSIVE WEB APPS
WEB APPS VS NATIVE
▸One thing Web apps have over Native is that they are always available so already
you have retained 20% of your users.
▸Golden Rules
▸Don't be big
▸ Minify everything, .webp image format (compatibility!), <picture> element tag
▸Only download what you need
▸ Simple enough don't try to load everything in your web app your user will be left waiting and slowly
but surely hating your app.
▸Only download whats changed
▸ Use file headers to see if the file has changed or not to reduce round trip time
PROGRESSIVE WEB APPS
CACHING & OTHER TRICKS
▸Defer the loading of scripts and some one Critical CSS files until the
HMTL has been parsed.
▸Defer iframe loading.
▸Reduce Round trips
▸As we all know caching allows for us to display web pages without having
to make calls to servers making the over all experience for the user
better. Having a robust caching strategy can shave seconds off your
loading time.
▸We can now do so much more with caching using Service Workers (more
on this later on).

Recommended for you

The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...

The document discusses the current state and future of the web. It notes that while native apps have gained popularity, especially on mobile, the web remains strong with over 1 billion active users. It outlines tools from Google like Service Workers that help the web compete with capabilities previously only available to native apps like push notifications, offline access, and background processing. The document advocates for continued progress to simplify the web development process and ensure the longevity of technologies, arguing this will help the web remain diverse and accessible across all platforms.

webjavascriptservice workers
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps

Alex Russell Software Engineer, Google at Fastly Altitude 2016 New browser technologies are arriving that are poised to change user and developer expectations of what’s possible on the web; particularly on slow mobile devices with flaky connections. This talk discusses how these new technologies – Service Workers, Progressive Web Apps, HTTP/2, Push, Notifications, and Web Components are being combined, e.g. in the new PRPL pattern, to transform user experiences while improving business results.

web appsmobilegoogle
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)

In the beginning, progressive enhancement was simple: HTML layered with CSS layered with JavaScript. That worked fine when there were two browsers, but in today's world of multiple devices and multiple browsers, it's time for a progressive enhancement reboot. At the core is the understanding that the web is not print - the same rules don't apply. As developers and consumers we've been fooled into thinking about print paradigms for too long. In this talk, you'll learn just how different the web is and how the evolution of progressive enhancement can lead to better user experiences as well as happier developers and users. This deck is a conference-agnostic one, suitable to be shown anywhere without site-specific jokes!

htmlcssprogressive enhancement
PROGRESSIVE WEB APPS
HTTP/2
▸Instead of 6 simultaneous connections HTTP/2 uses only
one.
▸HTTP/2 tackles the issue of heads blocking on the protocol
level, by changing HTTP/1.1 connections into streams
allowing connections to share a single connection splitting
things up into streams.
▸Once one set of frames is finished sending the stream is
freed up for the next set not needing to wait for a response.
PROGRESSIVE WEB APPS
USEFUL LINKS
▸Gulp-Serv https://github.com/sindresorhus/gulp-rev
▸Async CSS Loading github.com/filamentgroup/loadCSS
▸Sample Web App aerotwist.com/blog/guitar-tuner/
▸HTTP/2 github.com/GoogleChrome/simplehttp2server
OFFLINE AND
AVAILABLE
PROGRESSIVE WEB APPS
PROGRESSIVE WEB APPS
SERVICE WORKERS
▸Service workers are the future of web apps, they provide a
tremendous amount of power and control for a small amount
of effort.
▸We can take control of what we show and how the user
interacts with our web apps when we have no connection or
a slow connection.
▸The aim is to never again see the Chrome No connection
Dinosaur, or keep our users in a state of limbo.

Recommended for you

Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017

New internet users are coming online around the world and are facing very different constraints to accessing the internet. In this talk, we'll cover what we've learned from building experiences for new internet users and walk through how you can build great experiences that work well for billions of users around the world. This is a presentation from Google I/O 2017, the video is available at https://www.youtube.com/watch?v=wD3rpdiLMyY Speakers: Tal Oppenheimer, Mariya Moeva, Robert Nyman https://twitter.com/taloppenheimer https://twitter.com/marrrr https://twitter.com/robertnyman

accelerated mobile pagesampio17
Faster web pages
Faster web pagesFaster web pages
Faster web pages

Have fast, performant, and successful web pages is a great Challenge. There are many layers involved and all of them have to work together. In this talk I presented at FIBAlumni with collaboration of COEINF and the video recording is at http://media.fib.upc.edu/fibtv/streamingmedia/view/22/1400 (in Catalan). It shows how all parts are involved in the success of web pages from the server up to the human brain and perception. It introduces metrics and ways to effectively calculate and measure objectively the impact of the actions taken in the optimisation and also some ways to detect ways to optimise websites.

performancesuccessweb
The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...

The document discusses the current state and future of the web. It notes that while native apps have gained popularity, especially on mobile, the web still accounts for a large portion of usage. It outlines tools from Google like service workers, push notifications, and app install banners that aim to close capabilities gaps between the web and native apps. The document advocates for progressive web apps that are accessible like websites but also feel like native apps to users. The future of the web, it argues, depends on continuing to match and surpass native platforms while keeping the web open, accessible, and long-lasting.

PROGRESSIVE WEB APPS
NO CONNECTION
▸Service workers can be used to load cached web pages and
assets when a user has no connection to the internet.
▸Instead of seeing a web page telling the user they are at
fault cause their device is not connected to the internet. They
see their favourite app and what they were doing last
allowing them to interact with the app despite having no
internet connection.
PROGRESSIVE WEB APPS
SLOW CONNECTION / LIE-FI
▸What happens when a users device is reporting they have a
connection but its so slow it might as well be non existent?
They are left in limbo staring at a blank screen, slowly
getting frustrated by your app.
▸Using the service worker API you can do the same as if the
user wasn't connected to the internet and display their
application and allow them to interact with it communicating
their interactions when the connection is strong enough.
PROGRESSIVE WEB APPS
SPEEDING UP LOADING
▸Even when users have a strong internet connection service
workers can reduce the time it takes load your applications
up.
▸Caching and service workers can actually make a web app
load up faster than some native applications.
▸(only after the first loading that is)
PROGRESSIVE WEB APPS
USEFUL LINKS
▸Service Worker Specification
github.com/slightlyoff/ServiceWorker
▸Free Service Worker Udacity course
www.udacity.com/course/offline-web-applications--ud899
▸ The Network layer is yours to own.
www.youtube.com/watch?v=4uQMl7mFB6g

Recommended for you

Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014

People often consider that creating a web application is done by creating a bunch of HTML, Javascript and CSS files together in a text editor and uploading them on the web. Well, things have changed and in this presentation, you will see how the workflow used to deliver web applications has evolved over the past few years! We will start by seeing how you can use Yeoman and its generators to kickstart your project. Then you will see how Bower let you manage the dependencies of your project. Downloading the JavaScript and CSS frameworks that you are using for you. After that we will have a look at Chrome Devtools in order to debug and edit our application. We will also see how to use remote debugging to inspect a web application running on a phone or a tablet. Finally we will see how you can set up your whole continuous integration workflow with Grunt. Compilation, static code analysis, unit tests, integration tests, minification, code coverage, you name it. This talk has been presented during EclipseCon North America 2014 in San Francisco

gulpboweryeoman
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App

Presented at Web Directions Code, Melbourne If you have a website—particularly one that generates revenue for your organization—you need a Progressive Web App. So where do you begin? How do you decide which features of a Progressive Web App make sense for your users? What tools can make the process easier (or harder)? In this practical session, Jason will guide you through the key design decisions you’ll need to make about your Progressive Web App and how those decisions impact the scope of your project. He'll also teach you how to avoid common pitfalls and help you take full advantage of Progressive Web App technology.

progressive web appswebdesign
Advanced workflows for mobile web design and development
Advanced workflows for mobile web design and developmentAdvanced workflows for mobile web design and development
Advanced workflows for mobile web design and development

The document is a presentation about advanced workflows for mobile web design and development using Edge Inspect and other tools. It discusses installing and configuring Edge Inspect, testing on real devices, integrating Edge Inspect with other Adobe tools, and workflows for local and remote development. Tips are provided for issues like authentication, virtual hosts, web fonts, and using tools like JS Bin and LiveReload with Edge Inspect.

mobile webweb design and developmentmobile testing
HIGH PERFORMANCE
ANIMATIONS
PROGRESSIVE WEB APPS
PROGRESSIVE WEB APPS
JS ANIMATIONS VS CSS ANIMATIONS
▸Many people discuss the merits and draw backs of both
ways of defining and executing animations.
▸Largely it doesn't matter which method you use as they all
use the same render pipeline.
PROGRESSIVE WEB APPS
THINKING OUT OF THE BOX
▸Animations can be expensive and fitting them in 8ms cycles
is very hard and can lead to a lot of “janking”
▸Introducing FLIP Animations
▸F - First: First positions of the animation
▸L - Last: Ending position of the animation
▸I - Invert: Transformation of objects
▸P - Play: Play the animation
PROGRESSIVE WEB APPS
FLIP ANIMATIONS
▸May sound like average animations but in fact it is different.
▸The animation actually plays out in reverse, instead of
transitioning between the first and ending positions of the
animation the object actually starts off in the ending state
with a transform to make it look like it is in its starting
position.
▸Once the transformation is removed the object will animate to
its ending position creating the illusion of an animation that is
more likely to play out at 60fps.

Recommended for you

Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App

Growth of mobile web traffic has been outpacing desktop web traffic for years, and data reveals that users are likely to abandon experiences that too long to load. Progressive web apps aim to be reliable, fast and engaging, regardless of form factor or quality of internet connection. We'll walk through several key aspects of PWAs, illustrating performance and usability improvements by showing quantitative comparisons to an equivalent "classic SPA".

programmingjavascriptmobile web
Building performance into the new yahoo homepage presentation
Building performance into the new yahoo  homepage presentationBuilding performance into the new yahoo  homepage presentation
Building performance into the new yahoo homepage presentation

Nicholas Zakas presented on optimizing the performance of the Yahoo homepage redesign from 2010. The new design added significant functionality but also increased page size and complexity, threatening performance. Areas of focus included reducing time to interactivity, improving Ajax responsiveness, and managing perceived performance. Through techniques like progressive rendering, non-blocking JavaScript loading, and indicating loading states, performance was improved and maintained users' perception of speed. The redesign achieved onload times of ~2.5 seconds, down from ~5 previously, while perceived performance matched the previous version.

yahooo home pagefront-endnicholas czakas
Aslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec BddAslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec Bdd

Behaviour-Driven Development (BDD) is an agile software development process that encourages collaboration between developers, quality assurance teams, and customers. It involves writing user stories to define desired functionality and writing automated tests to validate stories. BDD tests are written in a language that business stakeholders can understand. It works in an "outside-in" approach where tests are written before code to ensure business needs are met. BDD aims to deliver working, tested software frequently in short iterations to provide business value.

PROGRESSIVE WEB APPS
USEFUL LINKS
▸bit.ly/aerocharged
▸bit.ly/anatomy-of-a-frame
▸csstriggers.com
▸voice-memos.appspot.com
▸bit.ly/flip-anims
▸bit.ly/flipjs
▸bit.ly/rail-udacity
INSTALLABLE
AND ENGAGING
PROGRESSIVE WEB APPS
PROGRESSIVE WEB APPS
INSTALLABLE AND
ENGAGING
▸ Giving the user the option to access
the web app without the need for a
browser.
▸ Creates a better mobile experience
that is normally only found in native
applications.
▸ Keeps users engaged with your web
app as they can have instant
access.
iPhone (2007) Chrome (2013)Android (2012)

Recommended for you

FOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication UpdateFOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication Update

Introudction to Kamailio - the Open Source SIP Server - and WebRTC for the Free and Open Source Stockholm user's group Dec 5th 2012.

asteriskkamailiowebrtc
Presentation Part III
Presentation Part IIIPresentation Part III
Presentation Part III

This document provides information about various fruit juices and extracts available for purchase, including orange, lemon, mango, and pineapple juices available in bottles or pouches. It also details a marketing campaign to promote the products through in-store displays, tie-ups with retailers, and direct marketing to 100,000 homes across India from an Indian company focused on providing quality fruit drinks at affordable prices.

2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP

What's the state of SIP and IPv6? - An update I gave at the Netnod spring Meeting 2015. Nothing much is happening, despite the fact that we have proven real issues with dual stacks in SIP.

ipv6voipsip forum
NOT VERY
GOOD!▸ Pretty much glorified bookmarks
▸ No real standardisation
▸ Needed to use <meta> tags
▸ No control of what is launched
THREE
RULES!▸ Offer an offline experience
▸ Have a manifest
▸ Keep user engaged
PROGRESSIVE WEB APPS
WORKING OFFLINE
▸ Already discussed in the previous
section but applies here also.
▸ Anything that is intended to be
saved on the users home screen
should always be available
▸ Either have the app cache previous
data to show or gracefully inform the
user that they need internet
▸ No Offline-O-Saurus!
PROGRESSIVE WEB APPS
USING MANIFEST
▸ Defines how your app will look on
the mobiles home screen.
▸ How the web app looks when it is
opened.
▸ What the app will launch when it is
opened.
▸ How the app launches.
▸ Don’t have the app launch in a leaf
page!

Recommended for you

Social Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social MediaSocial Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social Media

The document summarizes tips and strategies for small businesses to use social media for marketing purposes. It discusses using platforms like Facebook, Twitter, blogs and more to connect with customers, share content and drive traffic to websites. Specific tips include setting up profiles, engaging with followers, sharing content regularly and measuring the results of social media efforts.

small business ideas
This Transliterate Life
This Transliterate LifeThis Transliterate Life
This Transliterate Life

keynote, All Tech Considered: Navigating through multiliteracies, Houston Community College Faculty Conference, February 2, 2013

TV lecture: Technology
TV lecture: TechnologyTV lecture: Technology
TV lecture: Technology

This document discusses the history and technology of television from the post-World War II era of broadcast television to the 21st century transition to digital television. It examines how television has evolved as a medium influenced by both technological advances and social forces over time. The document also considers different perspectives on defining television as a medium from various scholars and explores how the technology has been portrayed in science fiction and video art.

television
PROGRESSIVE WEB APPS
THE MANIFEST
▸ manifest.json
{
"name": "The Air Horner",
"short_name": "Air Horner",
"icons": [
{
"src": "images/Airhorner_192.png",
"type": "image/png",
"sizes": "192x192"
}
],
"start_url": "index.html",
"display": “standalone" || “window”,
"theme_color": "#2196F3",
"background_color": "#2196F3"
}
PROGRESSIVE WEB APPS
KEEPING USER
ENGAGED
▸ Inform the user that they can install
the web application.
▸ Make the request simple and un-
intrusive.
▸ Be able to handle the users choice
and remove the prompt without
issue.
▸ Don’t spam the user!
PROGRESSIVE WEB APPS
THE OLD WAY
PROGRESSIVE WEB APPS
PROMPTING THE
USER

Recommended for you

Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010

I launched my not-yet-written book, Ragtag Leadership, at BarCamp Auckland on July 17, 2010. Got some great feedback from some smart people that will help shape the book. You can do so too at www.ragtagleadership.com.

doctor whobarcampragtag leadership
Academic research
Academic researchAcademic research
Academic research

Academic research involves thoroughly studying a topic to present facts and information in a detailed and accurate manner through systematic investigation and inquiry. It differs from high school research in that college requires more frequent and longer writing assignments, more thorough research using a larger library system with various sources, and less feedback from teachers as students must self-monitor their own progress.

library researchcollegeacademic research
Reaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social WebReaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social Web

The document discusses how libraries can use social media platforms like blogs, wikis, Flickr, YouTube, Twitter, and FriendFeed to connect with and engage patrons. It explains that libraries have traditionally waited for patrons to come to them, but now they can connect with patrons where they are online through these various social media channels. The document provides examples of how different platforms can be used, such as using blogs to start conversations, wikis for subject guides and instructions, and Flickr for photos of new materials and events. It encourages libraries to build a presence on these social media sites to engage patrons in new ways.

connectinglibrarianspatrons
PROGRESSIVE WEB APPS
USEFUL LINKS
▸https://w3c.github.io/manifest/
▸https://developers.google.com/web/fundamentals/engage-
and-retain/app-install-banners/
▸https://developer.mozilla.org/en-
US/docs/Web/API/Window/onbeforeinstallprompt
▸https://github.com/GoogleChrome/samples/tree/gh-
pages/app-install-banner
INCREASING
ENGAGEMENT
PROGRESSIVE WEB APPS
PROGRESSIVE WEB APPS
INCREASING ENGAGEMENT WITH
PUSH NOTIFICATIONS
26%increase in average spend
per visit by members arriving
via a push notification
72%increase in time spent for users
visiting via a push notification
+50%repeat visits within 3 months
PROGRESSIVE WEB APPS
NOTIFICATIONS
SHOULD BE
▸ Personal
▸ Timely
▸ Relevant
▸ Actionable
▸ Concise
▸ Work offline
▸ Don’t advertise

Recommended for you

SXSW How Companies Created Buzz
SXSW How Companies Created Buzz SXSW How Companies Created Buzz
SXSW How Companies Created Buzz

SXSW is a large technology conference held annually in Austin, Texas that attracts tens of thousands of attendees from various industries including brand managers, engineers, Hollywood agents, developers, entrepreneurs and venture capitalists. A leading theme at SXSW 2011 was connection and collaboration rather than competition. Many new apps and technologies were introduced focused on areas like mobile messaging, photos, games, location-based check-ins and APIs/platforms. Companies spent heavily on promotions and branding activities at SXSW to connect with influential attendees.

guerilla marketingmarketingsxsw
Survey 2016 acimit-blumine
Survey 2016 acimit-blumineSurvey 2016 acimit-blumine
Survey 2016 acimit-blumine

The competitive edge for today’s playing field in the textile machinery industry is environmental and social sustainability. Pinpointing which technical performances are deemed crucial to achieving their customer’s goals allows manufacturers to properly direct their research and development efforts, in order to anticipate market demands. The survey by Blumine/sustainability-lab for ACIMIT is based on interviews with Italian textile manufacturers committed to improving their environmental impact in relation to production processes provided the groundwork for the research, describing their sustainability programmes, as well as their requirements and expectations in terms of machinery and production systems. The study involved 31 Italian textile manufacturers, renowned for their commitment to sustainability, divided by sector as follows: 7 in the spinning sector, 9 weaving and knitting mills, 5 in the finishing sector, and 10 integrated businesses.

manufacturinginnovationspinning
Portfolio Feb08 r2
Portfolio Feb08 r2Portfolio Feb08 r2
Portfolio Feb08 r2

The document provides summaries of various graphic design projects completed by Elbowroom Design, including postcards, brochures, flyers, signage, websites, logos and more. A wide range of clients and industries are represented across print, digital and branding projects. The portfolio demonstrates Elbowroom Design's ability to create custom visual solutions for different types of businesses and organizations.

PROGRESSIVE WEB APPS
BAD EXAMPLES
Google Plus
Fred just posted a new message
Document Saved
Your document is now saved.
Files Have Been Synced
7 files have now been synced
Super Cool App
Install my native app, it’s cool!
Thanks
Thanks for installing my app
Super Cool App
Error: Lost network connection
PROGRESSIVE WEB APPS
GOOD EXAMPLES
Questn
Fred answered your questn
Flight Delayed
New departure time is 7:35pm.
Payment due
Your payment is due today
HTTP203 Podcast
A new episode is now available
Goober
Your self driving car has arrived
Credit card alert
Did you try to make a purchase?
HOW
NOTIFICATIONS
WORK!
(THE ABRIDGED VERSION)
(TOO MUCH CODE, SO LITTLE TIME)
PROGRESSIVE WEB APPS
SUBSCRIBING USERS
Ask User to
Subscribe
User Subscribes
Send End Point
Details
Check If User Is Subscribed
Save End Point
Details
Browser Server

Recommended for you

What's A CMS?
What's A CMS?What's A CMS?
What's A CMS?

Basic intro to the concepts of a CMS, what's available, how to choose. Some focus on Drupal as a CMS of choice.

Verdad Absoluta
Verdad AbsolutaVerdad Absoluta
Verdad Absoluta

El documento habla sobre las personas que entran en nuestras vidas y las razones por las cuales lo hacen. Algunas personas están por una razón, otras por una temporada y otras por toda la vida. Explica que debemos apreciar el tiempo con cada persona y aprender las lecciones que nos enseñan.

amigosamoramistad
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...
Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...

This document discusses escaping from professional silos in libraries. It defines silos as separate professional universes that limit perspectives. It argues that silos are problematic and can be dangerous, forming unconsciously through homogenous networks and confirmation bias. The document provides tips for escaping silos, including seeking out diverse contacts and ideas, learning continuously, and contributing more than criticizing. The overall message is that librarians should break out of isolated mindsets by interacting with others outside their normal circles in order to stay informed and bring new perspectives to their work.

echo chambersprofessional silosecho chamber
PROGRESSIVE WEB APPS
SENDING MESSAGES
Send to End Point Send To Browser Received by BrowserGenerate Message
Server End Point Client
PROGRESSIVE WEB APPS
RECEIVING MESSAGES
SW Starts Handle Message Show NotificationPush Arrives
Client
PROGRESSIVE WEB APPS
PROMPTING, SUBSCRIBING AND
NOTIFYING
PROGRESSIVE WEB APPS
USEFUL LINKS
▸https://developers.google.com/web/fundamentals/engage-
and-retain/push-notifications/
▸https://w3c.github.io/push-api/
▸https://developers.google.com/web/updates/2016/03/web-
push-encryption
▸https://github.com/GoogleChrome/propel (A library
developed by Google for web push notifications)

Recommended for you

User Experience Top 10
User Experience Top 10User Experience Top 10
User Experience Top 10

These are the slides I presented at the the August 09 Charlotte SEO Meetup. It's a very high-level overview of user experience design, with links to some great sources of further reading.

usabilityuser experienceux
Emerging Media Kick-off
Emerging Media Kick-offEmerging Media Kick-off
Emerging Media Kick-off

Kick-off presentation "Emerging Media" on Rotterdam University of Applied Sciences, 2009

tamtamhrocmi
Culturismo Al Extremo
Culturismo Al ExtremoCulturismo Al Extremo
Culturismo Al Extremo
PROGRESSIVE WEB APPS
GOOGLE LINKS
▸Progressive web apps london slides
https://docs.google.com/presentation/d/1sUKnfSHsnu4dS2o
K-
NyAqpTDkL2iY25zTzxTrSSnTTY/edit#slide=id.g10dfcf3c05_
0_4660
▸Jake Archibalds Slides
https://speakerdeck.com/jaffathecake/offline-first-
progressive-apps

More Related Content

What's hot

Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
Jason Grigsby
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016
Robert Nyman
 
The Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for IndonesiaThe Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for Indonesia
Robert Nyman
 
WP-CLI For The Win
WP-CLI For The WinWP-CLI For The Win
WP-CLI For The Win
Micah Wood
 
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Robert Nyman
 
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Jorge Ferreiro
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas
 
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Katie Sylor-Miller
 
[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design
Christopher Schmitt
 
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
Robert Nyman
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
Fastly
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas
 
Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017
Robert Nyman
 
Faster web pages
Faster web pagesFaster web pages
Faster web pages
David Rodenas
 
The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...
Robert Nyman
 
Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014
Stéphane Bégaudeau
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
Jason Grigsby
 
Advanced workflows for mobile web design and development
Advanced workflows for mobile web design and developmentAdvanced workflows for mobile web design and development
Advanced workflows for mobile web design and development
brucebowman
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
Mike North
 
Building performance into the new yahoo homepage presentation
Building performance into the new yahoo  homepage presentationBuilding performance into the new yahoo  homepage presentation
Building performance into the new yahoo homepage presentation
masudakram
 

What's hot (20)

Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016
 
The Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for IndonesiaThe Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for Indonesia
 
WP-CLI For The Win
WP-CLI For The WinWP-CLI For The Win
WP-CLI For The Win
 
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
 
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
Codemotion Progressive Web Applications Pwa Webinar - Jorge Ferreiro - @jgfer...
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
 
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
 
[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design
 
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
 
Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017Building for Your Next Billion - Google I/O 2017
Building for Your Next Billion - Google I/O 2017
 
Faster web pages
Faster web pagesFaster web pages
Faster web pages
 
The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...
 
Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014Modern Web Application Development Workflow - EclipseCon US 2014
Modern Web Application Development Workflow - EclipseCon US 2014
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
 
Advanced workflows for mobile web design and development
Advanced workflows for mobile web design and developmentAdvanced workflows for mobile web design and development
Advanced workflows for mobile web design and development
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
 
Building performance into the new yahoo homepage presentation
Building performance into the new yahoo  homepage presentationBuilding performance into the new yahoo  homepage presentation
Building performance into the new yahoo homepage presentation
 

Viewers also liked

Aslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec BddAslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec Bdd
deimos
 
FOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication UpdateFOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication Update
Olle E Johansson
 
Presentation Part III
Presentation Part IIIPresentation Part III
Presentation Part III
maverickrathore
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP
Olle E Johansson
 
Social Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social MediaSocial Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social Media
Shashi Bellamkonda
 
This Transliterate Life
This Transliterate LifeThis Transliterate Life
This Transliterate Life
Bobbi Newman
 
TV lecture: Technology
TV lecture: TechnologyTV lecture: Technology
TV lecture: Technology
Julie Levin Russo
 
Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010
Simon Young
 
Academic research
Academic researchAcademic research
Academic research
librfun
 
Reaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social WebReaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social Web
Bobbi Newman
 
SXSW How Companies Created Buzz
SXSW How Companies Created Buzz SXSW How Companies Created Buzz
SXSW How Companies Created Buzz
Shashi Bellamkonda
 
Survey 2016 acimit-blumine
Survey 2016 acimit-blumineSurvey 2016 acimit-blumine
Survey 2016 acimit-blumine
franztunda
 
Portfolio Feb08 r2
Portfolio Feb08 r2Portfolio Feb08 r2
Portfolio Feb08 r2
guestf10f38
 
What's A CMS?
What's A CMS?What's A CMS?
What's A CMS?
circusplexus
 
Verdad Absoluta
Verdad AbsolutaVerdad Absoluta
Verdad Absoluta
joanvinpa
 
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...
Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...
Bobbi Newman
 
User Experience Top 10
User Experience Top 10User Experience Top 10
User Experience Top 10
Ben Ullman
 
Emerging Media Kick-off
Emerging Media Kick-offEmerging Media Kick-off
Emerging Media Kick-off
Atticus
 
Culturismo Al Extremo
Culturismo Al ExtremoCulturismo Al Extremo
Culturismo Al Extremo
Descojonate
 
TRANSICION TERRENO
TRANSICION TERRENOTRANSICION TERRENO
TRANSICION TERRENO
guest0ea344
 

Viewers also liked (20)

Aslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec BddAslak Hellesoy Executable User Stories R Spec Bdd
Aslak Hellesoy Executable User Stories R Spec Bdd
 
FOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication UpdateFOSS Sthlm: Realtime Communication Update
FOSS Sthlm: Realtime Communication Update
 
Presentation Part III
Presentation Part IIIPresentation Part III
Presentation Part III
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP
 
Social Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social MediaSocial Media & Small Business : Taking your first steps in Social Media
Social Media & Small Business : Taking your first steps in Social Media
 
This Transliterate Life
This Transliterate LifeThis Transliterate Life
This Transliterate Life
 
TV lecture: Technology
TV lecture: TechnologyTV lecture: Technology
TV lecture: Technology
 
Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010Ragtag leadership presentation - BarCamp Auckland 2010
Ragtag leadership presentation - BarCamp Auckland 2010
 
Academic research
Academic researchAcademic research
Academic research
 
Reaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social WebReaching Your Patrons in the Brave New World of the Social Web
Reaching Your Patrons in the Brave New World of the Social Web
 
SXSW How Companies Created Buzz
SXSW How Companies Created Buzz SXSW How Companies Created Buzz
SXSW How Companies Created Buzz
 
Survey 2016 acimit-blumine
Survey 2016 acimit-blumineSurvey 2016 acimit-blumine
Survey 2016 acimit-blumine
 
Portfolio Feb08 r2
Portfolio Feb08 r2Portfolio Feb08 r2
Portfolio Feb08 r2
 
What's A CMS?
What's A CMS?What's A CMS?
What's A CMS?
 
Verdad Absoluta
Verdad AbsolutaVerdad Absoluta
Verdad Absoluta
 
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...
Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...Escape The Silo:  Why and How to Escape  Your Professional Silo - ILA/ACRL ke...
Escape The Silo: Why and How to Escape Your Professional Silo - ILA/ACRL ke...
 
User Experience Top 10
User Experience Top 10User Experience Top 10
User Experience Top 10
 
Emerging Media Kick-off
Emerging Media Kick-offEmerging Media Kick-off
Emerging Media Kick-off
 
Culturismo Al Extremo
Culturismo Al ExtremoCulturismo Al Extremo
Culturismo Al Extremo
 
TRANSICION TERRENO
TRANSICION TERRENOTRANSICION TERRENO
TRANSICION TERRENO
 

Similar to Future of web development

Offline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and ReactOffline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and React
Ilia Idakiev
 
Progressive Web Apps - deep dive
Progressive Web Apps - deep diveProgressive Web Apps - deep dive
Progressive Web Apps - deep dive
Kenneth Rohde Christiansen
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Unfold UI
 
Introduction to Offline Progressive Web Applications
Introduction to Offline Progressive Web ApplicationsIntroduction to Offline Progressive Web Applications
Introduction to Offline Progressive Web Applications
Ilia Idakiev
 
Progressive Web Apps - NPD Meet
Progressive Web Apps - NPD MeetProgressive Web Apps - NPD Meet
Progressive Web Apps - NPD Meet
Vaideeswaran Sethuraman
 
Progressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsProgressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & Learnings
Johannes Weber
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
SaleemMalik52
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 may
Luciano Amodio
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
WebGuru Infosystems Pvt. Ltd.
 
PWAs overview
PWAs overview PWAs overview
PWAs overview
TejinderMakkar
 
Responsive Web Design: Tips and Tricks
Responsive Web Design: Tips and TricksResponsive Web Design: Tips and Tricks
Responsive Web Design: Tips and Tricks
Gautam Krishnan
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
R. Caner Yıldırım
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
Antonio Peric-Mazar
 
Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
AnjaliTanpure1
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Software Infrastructure
 
Google Glass Mirror API Setup
Google Glass Mirror API SetupGoogle Glass Mirror API Setup
Google Glass Mirror API Setup
Diana Michelle
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
Sankalp Khandelwal
 
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptxHow to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
BOSC Tech Labs
 
Technology stack behind Airbnb
Technology stack behind Airbnb Technology stack behind Airbnb
Technology stack behind Airbnb
Rohan Khude
 
Angular Offline Progressive Web Apps With NodeJS
Angular Offline Progressive Web Apps With NodeJSAngular Offline Progressive Web Apps With NodeJS
Angular Offline Progressive Web Apps With NodeJS
Ilia Idakiev
 

Similar to Future of web development (20)

Offline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and ReactOffline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and React
 
Progressive Web Apps - deep dive
Progressive Web Apps - deep diveProgressive Web Apps - deep dive
Progressive Web Apps - deep dive
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Introduction to Offline Progressive Web Applications
Introduction to Offline Progressive Web ApplicationsIntroduction to Offline Progressive Web Applications
Introduction to Offline Progressive Web Applications
 
Progressive Web Apps - NPD Meet
Progressive Web Apps - NPD MeetProgressive Web Apps - NPD Meet
Progressive Web Apps - NPD Meet
 
Progressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsProgressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & Learnings
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 may
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
 
PWAs overview
PWAs overview PWAs overview
PWAs overview
 
Responsive Web Design: Tips and Tricks
Responsive Web Design: Tips and TricksResponsive Web Design: Tips and Tricks
Responsive Web Design: Tips and Tricks
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
 
Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Google Glass Mirror API Setup
Google Glass Mirror API SetupGoogle Glass Mirror API Setup
Google Glass Mirror API Setup
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
 
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptxHow to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
How to Develop Progressive Web Apps in Flutter – Step by Step Guide.pptx
 
Technology stack behind Airbnb
Technology stack behind Airbnb Technology stack behind Airbnb
Technology stack behind Airbnb
 
Angular Offline Progressive Web Apps With NodeJS
Angular Offline Progressive Web Apps With NodeJSAngular Offline Progressive Web Apps With NodeJS
Angular Offline Progressive Web Apps With NodeJS
 

Recently uploaded

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
Sally Laouacheria
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
Enterprise Wired
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Mydbops
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
Matthew Sinclair
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
SynapseIndia
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
Larry Smarr
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
UiPathCommunity
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
Awais Yaseen
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 

Recently uploaded (20)

WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 

Future of web development

  • 3. SERVICE WORKERS ARE TO PROGRESSIVE WEB APPS AS XMLHTTPREQUEST WAS TO AJAX Progressive Web Apps London PROGRESSIVE WEB APPS
  • 5. PROGRESSIVE WEB APPS SECURITY ▸ When developing, there is no needs to do anything different Localhost is treat as a secure environment. ▸ letsencrypt.org a group of people trying to get HTTPS as wide spread as possible on the web. Offer a command line tool that will help you generate your SSL certs and encourage you to automate the process.
  • 6. PROGRESSIVE WEB APPS SECURITY ▸Mozilla SSL Config Generator (bit.ly/ssl-config-gen) ▸Should be your first stop when seeing up secure servers. ▸Tool that gives you example configurations with all the best practices that is constantly kept up to date so you know your server will be secure. ▸Chrome DevTools provides an in-depth look at the security of your site, if you haven't been already you should definitely take advantage of this free tool.
  • 7. PROGRESSIVE WEB APPS SECURITY ▸SSL Labs ▸Analysis tool to help pain point problems in your servers security and help you rectify them. ▸bit.ly/ssl-labs ▸Lastly some “Light” reading and watching on the subject of security. ▸Google Developers Security: bit.ly/security-docs ▸HTTPS The green lock and beyond: bit.ly/green-lock-beyond
  • 8. PROGRESSIVE WEB APPS USEFUL LINKS ▸paul.kinlan.me/detecting-injected-content/ ▸letsencrypt.org/ ▸mozilla.github.io/server-side-tls/ssl-config-generator/ ▸www.ssllabs.com/ssltest/ ▸developers.google.com/web/fundamentals/security/ ▸www.youtube.com/watch?v=9WuP4KcDBpI (Deploying HTTPS: The Green Lock and Beyond (Chrome Dev Summit 2015)
  • 10. EVERY STEP YOU MAKE A USER PERFORM BEFORE THEY GET VALUE OUT OF YOUR APP WILL COST YOU 20% OF USERS http://blog.gaborcselle.com/2012/10/every-step-costs-you-20-of-users.html PROGRESSIVE WEB APPS
  • 11. PROGRESSIVE WEB APPS WEB APPS VS NATIVE ▸One thing Web apps have over Native is that they are always available so already you have retained 20% of your users. ▸Golden Rules ▸Don't be big ▸ Minify everything, .webp image format (compatibility!), <picture> element tag ▸Only download what you need ▸ Simple enough don't try to load everything in your web app your user will be left waiting and slowly but surely hating your app. ▸Only download whats changed ▸ Use file headers to see if the file has changed or not to reduce round trip time
  • 12. PROGRESSIVE WEB APPS CACHING & OTHER TRICKS ▸Defer the loading of scripts and some one Critical CSS files until the HMTL has been parsed. ▸Defer iframe loading. ▸Reduce Round trips ▸As we all know caching allows for us to display web pages without having to make calls to servers making the over all experience for the user better. Having a robust caching strategy can shave seconds off your loading time. ▸We can now do so much more with caching using Service Workers (more on this later on).
  • 13. PROGRESSIVE WEB APPS HTTP/2 ▸Instead of 6 simultaneous connections HTTP/2 uses only one. ▸HTTP/2 tackles the issue of heads blocking on the protocol level, by changing HTTP/1.1 connections into streams allowing connections to share a single connection splitting things up into streams. ▸Once one set of frames is finished sending the stream is freed up for the next set not needing to wait for a response.
  • 14. PROGRESSIVE WEB APPS USEFUL LINKS ▸Gulp-Serv https://github.com/sindresorhus/gulp-rev ▸Async CSS Loading github.com/filamentgroup/loadCSS ▸Sample Web App aerotwist.com/blog/guitar-tuner/ ▸HTTP/2 github.com/GoogleChrome/simplehttp2server
  • 16. PROGRESSIVE WEB APPS SERVICE WORKERS ▸Service workers are the future of web apps, they provide a tremendous amount of power and control for a small amount of effort. ▸We can take control of what we show and how the user interacts with our web apps when we have no connection or a slow connection. ▸The aim is to never again see the Chrome No connection Dinosaur, or keep our users in a state of limbo.
  • 17. PROGRESSIVE WEB APPS NO CONNECTION ▸Service workers can be used to load cached web pages and assets when a user has no connection to the internet. ▸Instead of seeing a web page telling the user they are at fault cause their device is not connected to the internet. They see their favourite app and what they were doing last allowing them to interact with the app despite having no internet connection.
  • 18. PROGRESSIVE WEB APPS SLOW CONNECTION / LIE-FI ▸What happens when a users device is reporting they have a connection but its so slow it might as well be non existent? They are left in limbo staring at a blank screen, slowly getting frustrated by your app. ▸Using the service worker API you can do the same as if the user wasn't connected to the internet and display their application and allow them to interact with it communicating their interactions when the connection is strong enough.
  • 19. PROGRESSIVE WEB APPS SPEEDING UP LOADING ▸Even when users have a strong internet connection service workers can reduce the time it takes load your applications up. ▸Caching and service workers can actually make a web app load up faster than some native applications. ▸(only after the first loading that is)
  • 20. PROGRESSIVE WEB APPS USEFUL LINKS ▸Service Worker Specification github.com/slightlyoff/ServiceWorker ▸Free Service Worker Udacity course www.udacity.com/course/offline-web-applications--ud899 ▸ The Network layer is yours to own. www.youtube.com/watch?v=4uQMl7mFB6g
  • 22. PROGRESSIVE WEB APPS JS ANIMATIONS VS CSS ANIMATIONS ▸Many people discuss the merits and draw backs of both ways of defining and executing animations. ▸Largely it doesn't matter which method you use as they all use the same render pipeline.
  • 23. PROGRESSIVE WEB APPS THINKING OUT OF THE BOX ▸Animations can be expensive and fitting them in 8ms cycles is very hard and can lead to a lot of “janking” ▸Introducing FLIP Animations ▸F - First: First positions of the animation ▸L - Last: Ending position of the animation ▸I - Invert: Transformation of objects ▸P - Play: Play the animation
  • 24. PROGRESSIVE WEB APPS FLIP ANIMATIONS ▸May sound like average animations but in fact it is different. ▸The animation actually plays out in reverse, instead of transitioning between the first and ending positions of the animation the object actually starts off in the ending state with a transform to make it look like it is in its starting position. ▸Once the transformation is removed the object will animate to its ending position creating the illusion of an animation that is more likely to play out at 60fps.
  • 25. PROGRESSIVE WEB APPS USEFUL LINKS ▸bit.ly/aerocharged ▸bit.ly/anatomy-of-a-frame ▸csstriggers.com ▸voice-memos.appspot.com ▸bit.ly/flip-anims ▸bit.ly/flipjs ▸bit.ly/rail-udacity
  • 27. PROGRESSIVE WEB APPS INSTALLABLE AND ENGAGING ▸ Giving the user the option to access the web app without the need for a browser. ▸ Creates a better mobile experience that is normally only found in native applications. ▸ Keeps users engaged with your web app as they can have instant access.
  • 28. iPhone (2007) Chrome (2013)Android (2012)
  • 29. NOT VERY GOOD!▸ Pretty much glorified bookmarks ▸ No real standardisation ▸ Needed to use <meta> tags ▸ No control of what is launched
  • 30. THREE RULES!▸ Offer an offline experience ▸ Have a manifest ▸ Keep user engaged
  • 31. PROGRESSIVE WEB APPS WORKING OFFLINE ▸ Already discussed in the previous section but applies here also. ▸ Anything that is intended to be saved on the users home screen should always be available ▸ Either have the app cache previous data to show or gracefully inform the user that they need internet ▸ No Offline-O-Saurus!
  • 32. PROGRESSIVE WEB APPS USING MANIFEST ▸ Defines how your app will look on the mobiles home screen. ▸ How the web app looks when it is opened. ▸ What the app will launch when it is opened. ▸ How the app launches. ▸ Don’t have the app launch in a leaf page!
  • 33. PROGRESSIVE WEB APPS THE MANIFEST ▸ manifest.json { "name": "The Air Horner", "short_name": "Air Horner", "icons": [ { "src": "images/Airhorner_192.png", "type": "image/png", "sizes": "192x192" } ], "start_url": "index.html", "display": “standalone" || “window”, "theme_color": "#2196F3", "background_color": "#2196F3" }
  • 34. PROGRESSIVE WEB APPS KEEPING USER ENGAGED ▸ Inform the user that they can install the web application. ▸ Make the request simple and un- intrusive. ▸ Be able to handle the users choice and remove the prompt without issue. ▸ Don’t spam the user!
  • 37. PROGRESSIVE WEB APPS USEFUL LINKS ▸https://w3c.github.io/manifest/ ▸https://developers.google.com/web/fundamentals/engage- and-retain/app-install-banners/ ▸https://developer.mozilla.org/en- US/docs/Web/API/Window/onbeforeinstallprompt ▸https://github.com/GoogleChrome/samples/tree/gh- pages/app-install-banner
  • 39. PROGRESSIVE WEB APPS INCREASING ENGAGEMENT WITH PUSH NOTIFICATIONS 26%increase in average spend per visit by members arriving via a push notification 72%increase in time spent for users visiting via a push notification +50%repeat visits within 3 months
  • 40. PROGRESSIVE WEB APPS NOTIFICATIONS SHOULD BE ▸ Personal ▸ Timely ▸ Relevant ▸ Actionable ▸ Concise ▸ Work offline ▸ Don’t advertise
  • 41. PROGRESSIVE WEB APPS BAD EXAMPLES Google Plus Fred just posted a new message Document Saved Your document is now saved. Files Have Been Synced 7 files have now been synced Super Cool App Install my native app, it’s cool! Thanks Thanks for installing my app Super Cool App Error: Lost network connection
  • 42. PROGRESSIVE WEB APPS GOOD EXAMPLES Questn Fred answered your questn Flight Delayed New departure time is 7:35pm. Payment due Your payment is due today HTTP203 Podcast A new episode is now available Goober Your self driving car has arrived Credit card alert Did you try to make a purchase?
  • 44. PROGRESSIVE WEB APPS SUBSCRIBING USERS Ask User to Subscribe User Subscribes Send End Point Details Check If User Is Subscribed Save End Point Details Browser Server
  • 45. PROGRESSIVE WEB APPS SENDING MESSAGES Send to End Point Send To Browser Received by BrowserGenerate Message Server End Point Client
  • 46. PROGRESSIVE WEB APPS RECEIVING MESSAGES SW Starts Handle Message Show NotificationPush Arrives Client
  • 47. PROGRESSIVE WEB APPS PROMPTING, SUBSCRIBING AND NOTIFYING
  • 48. PROGRESSIVE WEB APPS USEFUL LINKS ▸https://developers.google.com/web/fundamentals/engage- and-retain/push-notifications/ ▸https://w3c.github.io/push-api/ ▸https://developers.google.com/web/updates/2016/03/web- push-encryption ▸https://github.com/GoogleChrome/propel (A library developed by Google for web push notifications)
  • 49. PROGRESSIVE WEB APPS GOOGLE LINKS ▸Progressive web apps london slides https://docs.google.com/presentation/d/1sUKnfSHsnu4dS2o K- NyAqpTDkL2iY25zTzxTrSSnTTY/edit#slide=id.g10dfcf3c05_ 0_4660 ▸Jake Archibalds Slides https://speakerdeck.com/jaffathecake/offline-first- progressive-apps

Editor's Notes

  1. - Defer waits for other files to be parsed before they are parsed.
  2. - Http/2 is new and currently being worked on by the guys are Chromium may not be available on Safari and firefox for a a while.
  3. Names: Full name and short name (Used for app drawer and Homescreen) Icons: Again for app drawer and home screen Start URL: Where the app will open up too Display: Either standalone or window which will show the URL Colours for the bordering and the background of the app
  4. Hid away in the browser options, may not be obvious to casual users
  5. A install button or have it prompt the user at a appropriate time
  6. 72% increase in time spent by users on the website 26% increase in average spend per visit by members 50% repeat visits within 3 months of implementation
  7. No need for success states No need for notifications not related to you Shouldn’t advertise anything Notifications should have a point
  8. Directly relate to you Important updates changes or due dates Informing the user of failure states
  9. Far too much code to show so will use nice diagrams instead
  10. Check if user is subscribed and update any UI we have Prompt user the user to subscribe - but only at an appropriate time The user then subscribes, and our app sends the subscription details to our server Our server saves the subscription details, typically an endpoint that refers to that unique browser.
  11. Some event fires on our server indicating we should create a message That message is then send to a central end point based on the subscription details we saved earlier. Then, the end point is responsible for getting the actual message to the client
  12. The browser fires a push event to our service worker... Which then handles the message and shows the notification.
  13. Prompt the user Send permissions Notify them when appropriate