Designing Physical Experiences

The Web in the Age of Room-Scale Computing

MDN Roadshow - Kuala Lumpur, 2017

Dietrich Ayala / @dietrich / Mozilla.org

ZERO

"One download for every one thousand web views."


Ryan Sheffer, Nobody Wants Your App.

Open or Install?

URL or App?

transient
computing

SPEECH

NOISE!

PATTERNS
& FLOW

➡️
  ➡️ URL
    ➡️ app

➡️
  ➡️ URL
    ➡️

➡️
  ➡️ URL
    ➡️

➡️
  ➡️ URL
    ➡️ ...
      ➡️ ???

BUYING
THINGS

➡️
  ➡️ URL
    ➡️ Payment Request API
      ➡️ 💰💰💰

PaymentRequest Example

      
var request = new PaymentRequest(  
  supportedPaymentMethods,  
  paymentDetails,  
  options  
);

request.show();
      
    

➡️
  ➡️ URL
    ➡️ AR / VR

CASUAL
AUGMENTED
REALITY

PROGRESSIVE
WEB APPS
(AKA PWA)

Homescreen Native

Offline & Sync

Push Notifications

getUserMedia()

      
        navigator.mediaDevices.getUserMedia({
           audio: true,
           video: true
        }).then(function (stream) {
          // do something with the stream
        })
      
    

A-Frame Example

      
        <a-scene>
          <a-sphere radius="1.25"></a-sphere>
          <a-box width="1" height="1" depth="1"></a-box>
          <a-cylinder radius="0.5" height="1.5"></a-cylinder>
          <a-plane rotation="-90 0 0" width="4" height="4"></a-plane>
        </a-scene>
      
    

PRIVACY

SECURITY




Dietrich Ayala

@dietrich