measuring the mobile experience at sxsw 2016

Post on 14-Apr-2017

1.193 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The Analytics of Handheld UXEXPERIENCE

MEASURING THE MOBILE

KEN TABOR at SXSW 2016

Use analytics to discover how your

users are interacting with your native and web apps.

@KENTABOR

BUILD!

MEASURE|LEARN#

@KENTABOR

Activate the product development virtuous cycle to empower you.

@KENTABOR

WHAT?

Analytics is the discovery and communication of meaningful patterns in data. Analytics often favors data visualization to communicate insight.

en.wikipedia.org/wiki/Analytics

@KENTABOR

@KENTABOR

WHY?

how people are using your software.

No Analytics?NO IDEA

@KENTABOR

STARTprojects validating hypotheses with dashboards.

projects with data-driven decisions.

FINISH@KENTABOR

Foster a transparent team with shared understanding.

Build deep context to inform everyone’s choices.

@KENTABOR

Traditional analytics measuring page hits and visitor counts is nearly obsolete for modern, single-page, webapps.

VANITY METRICS

@KENTABOR

Pages are becoming programs.

@KENTABOR

@KENTABOR

Pages are becoming programs.

HOW TO DO

MODERN METRICS

?@KENTABOR

track events as people interact with components on your app’s UI.

ACTIVELY

@KENTABOR

ACTIVE MEASUREMENTevent('ingredient','select','coffee', 3);

event('Flight','Add','BigAir', 1024);

event('User','Language','spanish');

@KENTABOR

event('ingredient','select','coffee', 3);

category(string)

action(string)

detail(string)

detail(number)

ACTIVE MEASUREMENT

@KENTABOR

var AnalyticsFacade = (function() { return { init: function() { // SEE: Google docs for the tracking code snippet },

event: function(category, action, label, value) { ga('send', 'event', category, action, label, value); } }})();

TS.analytics = AnalyticsFacade;

Tuck analytics into a module. Hide complexity. Future-proof

against platform changes.

@KENTABOR

function initialize() { TS.analytics.init(); TS.analytics.event('App', 'Load');

appView = new TS.view.Application(); appView.render();}

Your app sets up analytics from the start.

@KENTABOR

TS.view.ProgramInfo = Backbone.View.extend({ events: { 'click': 'onSelectChoice' },

onSelectChoice: function(event) { var parent = $(event.target.parentElement); var cid = parent.data('cid'); var userModel = this.collection.get(cid); var serviceName = userModel.getServiceKey(); TS.analytics.event('Program', 'Select', serviceName); } });

@KENTABOR

Track an event in the DOM element click handler of your app’s views.

Create custom dashboards reporting your UX events.

@KENTABOR

@KENTABOR

Idea Prototype Usability

Development Ship It

ANALYTICS@KENTABOR

Who on your team benefits from Analytics?

EVERYONE!@KENTABOR

TESTERSDecide what devices to use for

quality assurance.

@KENTABOR

ENGINEERSDecide when to support new

system features.

@KENTABOR

DESIGNERSDecide at what screen sizes they lay

out UI and create art assets.

@KENTABOR

PRODUCT MANAGERS

Stop guessing at consumer acceptance & engagement.

@KENTABOR

Device model, O/S version, screen resolution, geo-location, browser

type, visitor behavior. Comes “free” from the analytics system.

PASSIVE MEASUREMENT

@KENTABOR

The default dashboards can feel like big data overload.

@KENTABOR

@KENTABOR

Create custom dashboards reporting the passive data.

@KENTABOR

@KENTABOR

Get my mobile first dashboard.

www.google.com/analytics/web/template?uid=iLTPIL89SP-RVF-A59HhWA

@KENTABOR

#CODERLIFE

@KENTABOR

#CODERLIFE

<script src="www.google-analytics.com/analytics.js"

type="text/javascript"></script>

@KENTABOR

WEB SDK

developers.google.com/analytics/devguides/collection/analyticsjs

Native app SDKs available for

iOS & Android

@KENTABOR

developers.google.com/analytics/devguides/collection/ios/v3

developers.google.com/analytics/devguides/collection/android/v4

Hybrid App JavaScript App + Cordova Lib +

Plugin + [iOS, Android] SDKgithub.com/danwilson/google-analytics-plugin

cordova.apache.org

@KENTABOR

POST www.google-analytics.com/collect

{payload data}

RESTful API

developers.google.com/analytics/devguides/collection/protocol/v1

@KENTABOR

Google Tag Manager let’s anybody define track events in a dashboard UI after your tech team adds a snippet.

Missing Coders?@KENTABOR

Takeaways

@KENTABOR

Report outcomes. Invest time & talent into underperforming features.

IMPROVE OR REMOVE

@KENTABOR

Talk with people. Let analytics increase your reach as you grow.

SCALE UP &LISTEN

@KENTABOR

Ensure everyone understands the debate and speaks to the numbers.

DATA WINS ARGUMENTS

@KENTABOR

@KenTabor

www.katworksgames.com

speaking@katworksgames.com

My projects, blog, slides, and more

Tweets on code, UX, and leadership

Reach out to me with an email

I wrote this book for designers who have accidentally (on purpose) become developers.

They are talented and tenacious, but not well equipped to code, test, and debug responsive and mobile-first sites.

An entire history of tools exists stuck in the domain of software engineers. My book collects them into a single box of awesome within your reach.

@KENTABOR

Get My Book

top related