cq 5.6.1: web, mobile, app and back!

31
Web, Mobile, App and Back! CQCON 2013, Basel Gabriel Walt Product Manager Web Experience Management @GabrielWalt [email protected]

Upload: gabriel-walt

Post on 15-Jan-2015

1.583 views

Category:

Technology


1 download

DESCRIPTION

Talk hold at the CQCON 2013, Basel (http://www.cqcon.eu/)

TRANSCRIPT

Page 1: CQ 5.6.1: Web, Mobile, App and Back!

Web, Mobile, App and Back! CQCON 2013, Basel

Gabriel Walt Product Manager Web Experience Management @GabrielWalt [email protected]

Page 2: CQ 5.6.1: Web, Mobile, App and Back!

Web, Mobile, App and Back!

Page 3: CQ 5.6.1: Web, Mobile, App and Back!

What is it about? –  Making the content available for the mobile visitors –  Delivering an adapted experience (limitations & possibilities) –  Recognize the same users identically (personalization & targeting) –  Measure the same things the same way

Web, Mobile, App and Back!

Page 4: CQ 5.6.1: Web, Mobile, App and Back!

ADAPTIVE

RESPONSIVE Client adapts the layout to the browser/device

SERVER SIDE

ADAPTIVE

Server adapts the rendition to the browser/device

Set of strategies to adapt the experience to browsers/devices

Adaptive Strategy

Page 5: CQ 5.6.1: Web, Mobile, App and Back!

Responsive •  Client Side •  Continuous adaptation of the layout to the browser (e.g. !uid grid)

•  Same content served to all browsers and devices •  Single URL for all devices •  Mobile "rst Adaptive •  Server Side (in our case)

•  De"ned set of optimized experiences (e.g. desktop, tablet, touch phones, legacy)

•  Different renditions generated by server for the given set of devices •  Different URLs (because CQ is RESTful)

•  Need redirection

Adaptive VS Responsive

Page 6: CQ 5.6.1: Web, Mobile, App and Back!

Different Use-Cases  

Responsive Site Same content for all browsers Layout is adapted by the browser è Maximal Reuse

Adaptive Site Partially different experience è Partial Reuse

Separate Site Disconnected experience è No Reuse

e.g. Desktop e.g. Mobile

Page 7: CQ 5.6.1: Web, Mobile, App and Back!

Different Use-Cases  

Content

Structure

Content

Structure

Content

Structure

Responsive Site Same content for all browsers Layout is adapted by the browser è Maximal Reuse

Adaptive Site Partially different experience è Partial Reuse

Separate Site Disconnected experience è No Reuse

Page 8: CQ 5.6.1: Web, Mobile, App and Back!

Different Use-Cases – Adaptive  

Adaptive Structure Same content, optimized layout

Adaptive Content Same layout, optimized content

Content

Structure

Content

Structure

Adaptive Site Partially different experience Content

Structure

Page 9: CQ 5.6.1: Web, Mobile, App and Back!

Key Features •  Mobile Simulator •  LiveCopy – to keep content in sync •  BrowserMap – to redirect the visitor

Key Features •  Responsive Simulator •  Adaptive Image Component

Responsive Site

Adaptive Site

Separate Site

Adaptive Structure

Adaptive Content

Different Use-Cases

Page 10: CQ 5.6.1: Web, Mobile, App and Back!

Separate Content Tree / Separate Rendition

When the CONTENT needs adaptations: è Separate Content Tree (typically kept in sync using LiveCopy)

When the RENDITION needs adaptations: è Separate Selector or è Separate Content Tree

Adaptive Content

Adaptive Structure

Content

Structure

Content

Structure

Page 11: CQ 5.6.1: Web, Mobile, App and Back!

Live  Copy  

Master Content

Mobile Content

Content  

Adaptive Site Architecture

Phone Site

Tablet Site

Desktop Site

HTML  Rendi1ons  

Page 12: CQ 5.6.1: Web, Mobile, App and Back!

Live  Copy  Phone Site

Tablet Site

Desktop Site /site/news.html  

Master Content /content/site/news  

Mobile Content

Web  Path   Repository  Path  

Adaptive Site Architecture

/site-­‐mobile/news.tablet.html  

/site-­‐mobile/news.phone.html  

/content/site-­‐mobile/news  

Page 13: CQ 5.6.1: Web, Mobile, App and Back!

Apps

Page 14: CQ 5.6.1: Web, Mobile, App and Back!

Let’s keep the focus –  Making the content available for the mobile visitors –  Delivering an adapted experience (limitations & possibilities) –  Recognize the user (personalization & targeting) –  Measure the same things the same way

Apps

Web VS Native

Site App Site App

Maximal Reuse –  Of Code & Skills –  Of Content & Data –  Of Processes & Work!ows

Less Reuse –  Reuse is harder –  More maintenance –  Less agility

Page 15: CQ 5.6.1: Web, Mobile, App and Back!

Web VS Native

Maximal Reuse –  Of Code & Skills –  Of Content & Data –  Of Processes & Work!ows

Less Reuse –  Reuse is harder –  More maintenance –  Less agility

–  Needs to be compiled for each OS –  Can access device APIs –  Distributed through AppStores –  Pushed through AppStores –  Faster

Other Differences  –  Cross Platform –  Limited to the browser –  Distributed by URL –  Instant Updates –  Fast

Site App Site App

Page 16: CQ 5.6.1: Web, Mobile, App and Back!

First, Some Guidelines –  Architect for performance

•  Single Page Architecture •  Cache everything •  Don’t wait for data to display the UI •  Don’t generate UI on the server

–  Provide structure to your application •  Use Feature Detection •  Use a MV* architecture •  Use Frontend Templates

–  Abstract Non-Standard APIs e.g. Browser or PhoneGap speci"c

Web App

Page 17: CQ 5.6.1: Web, Mobile, App and Back!
Page 18: CQ 5.6.1: Web, Mobile, App and Back!

PhoneGap

Obj C Java NDK

J2ME C# C++ C++ C/C++

Na1ve  

Page 19: CQ 5.6.1: Web, Mobile, App and Back!

PhoneGap

Fully  Cross-­‐Pla>orm  

WebApp  

Page 20: CQ 5.6.1: Web, Mobile, App and Back!

PhoneGap

PhoneGap  is  a  Wrapper  

+  PhoneGap  

Build  

Page 21: CQ 5.6.1: Web, Mobile, App and Back!

PhoneGap

+  PhoneGap  has  a  vibrant  

Community  

PhoneGap  is  a  Bridge  

Page 22: CQ 5.6.1: Web, Mobile, App and Back!

Web VS Native

Maximal Reuse –  Of Code & Skills –  Of Content & Data –  Of Processes & Work!ows

Less Reuse –  Reuse is harder –  More maintenance –  Less agility

–  Needs to be compiled for each OS –  Can access device APIs –  Distributed through AppStores –  Pushed through AppStores –  Faster

Other Differences  –  Cross Platform –  Device & Browser APIs –  $rough AppStores (and URLs)

–  Pushed through AppStore –  Fast

Page 23: CQ 5.6.1: Web, Mobile, App and Back!

Mobile Content Synchronization

Page 24: CQ 5.6.1: Web, Mobile, App and Back!

Exports Content from the repository as a ZIP "le •  Client Technology Agnostic:

–  Requires HTTP client –  Requires ZIP library

•  Optimized for low bandwidth consumption –  Only diff is transferred –  Content is packaged in one compressed "le

•  Can synchronize any kind of content: –  HTML, CSS, JS –  XML, JSON, etc. –  Binaries, like images, PDFs, etc. –  Static "les or Dynamically rendered "les

Content Synchronization

Page 25: CQ 5.6.1: Web, Mobile, App and Back!

ContentSync + PhoneGap

ContentSync  

PhoneGap  Build  

PhoneGap  App  

ContentSync  Diff  Update  

Under  Progress  

PhoneGap  ContentSync  Diff  Update  Integra1on  

CQ5  

Page 26: CQ 5.6.1: Web, Mobile, App and Back!

•  Not  suited  for  Content  Synchroniza1on  –  Heavy  files  (e.g.  very  large  images)  

–  Huge  amounts  of  content    –  Content  with  high  frequency  of  change  (e.g.  forum  posts)  

–  User  specific  data  •  Strategies  for  handling  that  

–  Load  user  content  asynchronously  (e.g.  at  app  launch,  through  a  user  web  service)  –  Load  heavy  content  asynchronously  (e.g.  first  1me  user  requests  it)  

–  Load  frequently  changing  content  in  a  web  view,  or  beTer  asynchronously  too  

Content Synchronization

Page 27: CQ 5.6.1: Web, Mobile, App and Back!

✓ Making the content available for the mobile visitors ✓ Delivering an adapted experience (limitations & possibilities) ✓ Recognize the same users identically (personalization & targeting) ✓ Measure the same things the same way

Web, Mobile, App and Back!

Page 28: CQ 5.6.1: Web, Mobile, App and Back!

Ques1ons?  

Gabriel Walt Product Manager Web Experience Management @GabrielWalt [email protected]

Page 29: CQ 5.6.1: Web, Mobile, App and Back!

One More $ing…

Gabriel Walt Product Manager Web Experience Management @GabrielWalt [email protected]

Page 30: CQ 5.6.1: Web, Mobile, App and Back!

New  CQ  Components  è  1nyurl.com/cqcomponent  

Improve: •  Extensibility •  Reusability •  Separation of concerns •  Help structuring real projects

Page 31: CQ 5.6.1: Web, Mobile, App and Back!

Thanks!  

Gabriel Walt Product Manager Web Experience Management @GabrielWalt [email protected]