Data First [FutureStack16]

Preview:

Citation preview

Data FirstJosh Lind, Team Lead, Marketing & Web Development, TableauEric Peterson, Marketing Manager Systems Engineer, Tableau

Data First@tableau - @doublejosh - @iameap

the first first

Mobile firstMobile first

Fail first

Docs first

Dependency first

German first

Ugly first

i18n first

Offline first

Cloud first

Data firstData first

DX first

Config first

CLI first

Derp first

Deploy first

Name first

Problem first

Collaboration first

Search first

Support first

Personalize first

Splash first

Blob first

Co-branded first

Sound first

Squeaky wheel first

Data firstData first

Data first

Being Data Driven - culture, objectivity, shared success

Tactical Examples

Signup clicks

Language lost

Confirmation recommend

Data Strategies - be scalable, decouple

Data driven

MVP/MLP

Steer UX/system direction

Data supported perspective/opinions

Halt gut-based choices, define questions not assert beliefs.

Avoid “religious debates” (Steve Krug “Don’t Make Me Think”).

Win email/office battles. Have you sent/received this email…

#putachartonit

Designer to Developer -- bad UX for aesthetic reasons

Designer to Business -- elegance, consistency

Developer to Business -- scope/time, understanding $ value

Developer to Designer -- technical preference, difficulty/complexity

Business to Developer -- conversions, hunch design

Business to Designer -- bottlenecks, conversion focus

Tactical examples

Signup clicks

Meeting about website signup links

UX complaints

Conversion metric accuracy distrust

Internal arguments

Stuck

Language lost

Confirmation recommend

Tactical: Signup click

// Signup link clicked.

$(‘a.signup’).on(‘click’, function(e) {

if (cookie.customer) {

// User sent to account.

location.href = ‘/account’;

e.preventDefault();

Tactical: Signup click

$(‘a.signup’).on(‘click’, function(e) {

logit(‘Signup link clicked’);

if (cookie.customer) {

logit(‘User sent to account’);

location.href = ‘/account’;

e.preventDefault();

Tactical: Signup click

$(‘a.signup’).on(‘click’, function(e) {

logit(‘Signup link clicked’);

if (cookie.customer) {

data.customer = cookie.customer;

logit(‘User sent to account’, data);

location.href = ‘/account’;

e.preventDefault();

Tactical: Signup click

$(document).ready(function() {

logit(‘User sent to account’, {

customer: cookie.customer,

referrer: document.referrer

});

});

Tactical examples

Signup clicks

Comments as logging

More ubiquitous collection

NEXT: Language lost...

Business value of data/metrics. So what?

Viable prioritization/debug strategy via data.

Cross-team buy-in: design, development, localization, execs, etc.

Confirmation recommend

Tactical: Language lost

var priorPrefix = parseUrl(document.referrer).segments[0],

priorLang = _.contains(prefixList, priorPrefix),

pageIsEnglish = pageSettings.langPrefix === '';

if (priorLang && pageIsEnglish) {

data = {referrer: document.referrer};

logit('Language was lost via link', data);

};

Tactical: Language lost

$(document).ready(function() {

logit(‘User sent to account’, {

referrer: document.referrer,

language: pageSettings.langPrefix

});

});

Tactical examples

Signup clicks

Language lost

NEXT: Confirmation recommend...

Explore your data

Access dynamic smarts via configuration

Drop into the UX

Data Strategy

Instrument everywhere

Scalable scenario coverage

Disconnect data gathering from analysis

Speed to insight

Find your sweet spot of data gathering, meaningful. Know what you need yet?

Avoid noise costs

Data Strategy

Passive: Page meta data, User details

Active: Form values/modes, Events/interactions

Team: optimization, demand gen, localization, design asking questions

Use in meetings

Watch for anomalies

Data Strategy

Breadth - Don’t just log events you care about today. Log it all.

Depth - Don’t just log properties you think matter today. Add them all.

Nirvana - Don’t just decide with data, let the application use the data.

Data first!

Being Data Driven - culture, objectivity, shared success

Tactical Examples - Signup clicks, language lost, confirmation recommend

Data Strategies - be scalable, decouple

End firstEnd first@tableau

@doublejosh@iameap

The phrase "Mobile First" was coined in 2009 by Luke Wroblewski, inspiring a generation of app developers to simplify and focus on what matters most to users. But the Firsts didn‘t stop there: "Cloud First" emerged as cloud service providers began commoditizing scalability; as developers have come to terms with real-world network conditions, even web apps have become "Offline First."

In their years at Tableau, Josh and Eric have been compiling a list of things to consider "first" when architecting new apps, sites, systems, and features. In this talk they‘ll quickly expound on all the "firsts" you should be considering, and dive deeper into what it means to be "Data First."

Recommended