prototyping with data at nokia

Post on 24-May-2015

6.678 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presented at Strata 2011http://strataconf.com/strata2011/public/schedule/detail/16901

TRANSCRIPT

Prototyping with dataMatt Biddulph, Nokia

Today I’ll be talking about how we do new product development for Ovi at Nokia, by building prototypes that use real data as early as possible in the design process.

Photo by Joe Shlabotnik - http://flic.kr/p/6DAwoT

Whether you're a new startup looking for investment, or a team at a large company who wants the green light for a new product, nothing convinces like real running code. But how do you solve the chicken-and-egg problem of filling your early prototype with real data?

Traffic Photo by TheTruthAbout - http://flic.kr/p/59kPoKMoney Photo by borman818 - http://flic.kr/p/61LYTT

As experts in processing large datasets and interpreting charts and graphs, we may think of our data in the same way that a Bloomberg terminal presents financial information. But information visualisation alone does not make a product.

http://www.flickr.com/photos/financemuseum/2200062668/

We need to communicate our understanding of the data to the rest of our product team. We need to be their eyes and ears in the data - translating human questions into code, and query results into human answers.

prototypes areboundary objects

Instead of communicating across disciplines using language from our own specialisms, we show what we mean in real running code and designs. We prototype as early as possible, so that we can talk in the language of the product.

http://en.wikipedia.org/wiki/Boundary_object - “allow coordination without consensus as they can allow an actor's local understanding to be reframed in the context of a some wider collective activity”

http://www.flickr.com/photos/orinrobertjohn/159744546/

no morelorem ipsum

By incorporating analysis and data-science into product design during the prototyping phase, we avoid “lorem ipsum”, the fake text and made-up data that is often used as a placeholder in design sketches. This helps us understand real-world product use and find problems earlier.

Photo by R.B. - http://flic.kr/p/8APoN4

data problem 1: how do you use it?

Prototyping has many potential benefits. We use this triangle to think about how to structure our work and make it clear what insights we are looking for in a particular project.

Nov

elty

Prototyping has many potential benefits. We use this triangle to think about how to structure our work and make it clear what insights we are looking for in a particular project.

FidelityN

ovel

ty

Prototyping has many potential benefits. We use this triangle to think about how to structure our work and make it clear what insights we are looking for in a particular project.

FidelityN

ovel

tyDesirability

Prototyping has many potential benefits. We use this triangle to think about how to structure our work and make it clear what insights we are looking for in a particular project.

FidelityN

ovel

tyDesirability

Prototyping has many potential benefits. We use this triangle to think about how to structure our work and make it clear what insights we are looking for in a particular project.

FidelityN

ovel

tyDesirability

“Novelty” is when we are prototyping because we want to know if something is possible. Perhaps we’re prototyping a new kind of algorithm, or a new kind of user experience.

FidelityN

ovel

tyDesirability

“Novelty” is when we are prototyping because we want to know if something is possible. Perhaps we’re prototyping a new kind of algorithm, or a new kind of user experience.

FidelityN

ovel

tyDesirability

“Fidelity” is when we are prototyping to get an in-depth feel for the quality of a finished product, and to see exactly how it should work.

FidelityN

ovel

tyDesirability

“Desirability” is when we are prototyping to see if a product is actually something a user would want. Even if we find that a product is undesirable, that is still a positive result as it allows us to “fail fast” and cancel a project before wasting time on fully implementing it.

FidelityN

ovel

tyDesirability

Most prototypes are testing a mix of these three factors. But just like the classic “easy/fast/cheap” triangle of software quality, we find it’s hard to build a prototype that tests all three points of the triangle. This is why we discuss the triangle in advance, so that we know what we’re working towards.

FidelityN

ovel

tyDesirability

Most prototypes are testing a mix of these three factors. But just like the classic “easy/fast/cheap” triangle of software quality, we find it’s hard to build a prototype that tests all three points of the triangle. This is why we discuss the triangle in advance, so that we know what we’re working towards.

helping designers explore data

One of the first things we do when working with a new dataset is create internal toys - “data explorers” - to help us understand it.

explorers & data toys

For example, we have been investigating the possibilities of analysing the server logs of Ovi Maps, our mobile and web mapping app, to create a data-driven view of cities.

This is a section of Ovi Maps centred on Los Angeles, California.

LA attention heatmap

We built a tool that could calculate metrics for every grid-square of the map of the world, and present heatmaps of that data on a city level. This view shows which map-tiles are viewed most often in LA using Ovi Maps. It’s calculated from the server logs of our map-tile servers. You could think of it as a map of the attention our users give to each tile of LA.

LA driving heatmap

This is the same area of California, but instead of map-tile attention it shows the relative number of cars on the road that are using our navigation features. This gives a whole different view on the city. We can see that it highlights major roads, and it’s much harder to see where the US coastline occurs. By comparing these two heatmaps we start to understand the meaning and the potential of these two datasets.

But of course a heatmap alone isn’t a product. This is one of the visualisation sketches produced by designer Tom Coates after investigating the data using the heatmap explorer. It’s much closer to something that could go into a real product.

Philip Kromer, Infochimps

Flip Kromer of Infochimps describes this process as “hitting the data with the Insight Stick.”

As data scientists, one of our common tasks is to take data from almost any source and apply standard structural techniques to it without worrying too much about the domain of the data.

Dmitriy Ryaboy reminds us that the Insight Stick doesn’t have to be made solely of exciting, complex technologies. With enough data, basic grouping and counting can give massive insight.

He continues, “I can't tell you how many times I've seen people get excited about doing K-means and random graph walks only to discover that actually what they want is a group-by, count, and standard deviation.”

“With enough data you can

discover patterns and facts

using simple counting that you

can't discover in small data

using sophisticated statistical

and ML approaches.” –Dmitriy Ryaboy paraphrasing Peter Novig on Quora

http://b.qr.ae/ijdb2G

Dmitriy Ryaboy reminds us that the Insight Stick doesn’t have to be made solely of exciting, complex technologies. With enough data, basic grouping and counting can give massive insight.

He continues, “I can't tell you how many times I've seen people get excited about doing K-means and random graph walks only to discover that actually what they want is a group-by, count, and standard deviation.”

questionsand

answersOnce you start to understand what the data is made of, it’s great to get into a fast cycle of questions and answers between designers and developers. This is where familiarity with both your software tools and the data itself becomes critical. It’s important to focus on creative thinking around the potential products that come from the data, and not get caught up in technology.

“Rather than burn time debating possible scenarios - work together to !nd the real answers.”

—Pete Skomoroch, LinkedInhttp://qr.ae/vYLr

“Listen to the data.”

When we started to explore the city data, we wanted ways of communicating the “feel” of a city using everyday language and products. Tom Coates asked, “can we calculate a Starbucks index? A metric that indicates how many Starbucks cafes there are per square mile?”

Using Apache Pig, I was able to answer that question with a few lines of script and a ten-minute Hadoop job. Quick answers like this mean that the creative process isn’t interrupted by the constraints of the technology.

“Products that are built from data are often constrained in ways you didn't initially expect.”

—Pete Skomoroch, LinkedInhttp://qr.ae/vYLr

from explorers to products

LinkedIn’s Maps product - http://inmaps.linkedinlabs.com - is a lovely example of a company using its core data, some smart algorithms and info-visualisation to communicate product possibilities. Posted on their LinkedIn Labs site, this isn’t a mainstream consumer product, but has done a great job of building buzz in the geek segment of their audience. The real challenge is to take great data-processing like this and use it to power a feature on the main LinkedIn site that doesn’t confuse normal people with dots-and-arrows overload.

data problem 2: where do you get it?

!nding it

If your company already has large datasets that you can use to create new products, how do you find it? It might be a dataset they’ve licensed from a partner. It might be the logs of an existing product that can be analysed to extract user activity. It might be buried in a business-reporting data warehouse.

At Nokia in Berlin we’ve been working hard to improve our understanding of what data we already own. Josh Devins, who is in charge of data gathering and analytics, started simple by creating a data matrix on a wiki. Each line lists a source of data - an appserver log, a mysql database, a partner datadump - and catalogues attributes such as “is it timestamped? does it have user IDs? how frequently is it collected? what date did we start collecting it? who is the responsible team? can I find it on the Hadoop filesystem yet?”

faking it

If you’re working on a new product, you need a way to envisage what it’s going to feel like when it’s got a million users and the data is flowing through it. In this case, you probably don’t have the datasets you need already available in your organisation.

In this case, we turn to open web APIs and datasets. Working on an app with a social graph? Create dummy users from a crawl of the Facebook or Twitter social graph APIs. Need to fill it with fake user content? Use real blog posts via RSS feeds to seed the CMS.

http://www.blogperfume.com/new-27-circular-social-media-icons-in-3-sizes/

In this case, we turn to open web APIs and datasets. Working on an app with a social graph? Create dummy users from a crawl of the Facebook or Twitter social graph APIs. Need to fill it with fake user content? Use real blog posts via RSS feeds to seed the CMS.

http://www.blogperfume.com/new-27-circular-social-media-icons-in-3-sizes/

In this case, we turn to open web APIs and datasets. Working on an app with a social graph? Create dummy users from a crawl of the Facebook or Twitter social graph APIs. Need to fill it with fake user content? Use real blog posts via RSS feeds to seed the CMS.

http://www.blogperfume.com/new-27-circular-social-media-icons-in-3-sizes/

When we worked on a prototype of improving a mobile photo gallery with social and data intelligence features, we realised that the demo would be more powerful if it was full of your own pictures. So we made a prototype that starts by asking you to log into your Flickr account, and then populates itself with your own photos.

“just because the ‘grain’ isn’t always as obvious as with wood doesn’t mean it’s not there, it just takes different skills to !nd it.”

—Dan Catt, The Guardian

Everything we’ve talked about in this presentation brings a data way of thinking to existing processes and skills. Working with real data takes practice and experience.

“We threw out custom non-hadoop code that was faster.”

—Jay Kreps, LinkedIn

Think about how you use your data-processing tools when you prototype. Don’t let them slow you down. Optimise for creativity and speed, not technical perfection.

http://www.flickr.com/photos/russss/3630698158/

summing up...

all points of the triangle helped by dataknow what data is available to you, inside and outside your teamuse real data to unite design and tech, contextualise prototypes, answer questions, find problems early

FidelityN

ovel

tyDesirability

FidelityN

ovel

tyDesirability

real data helps all points of the triangle

look for analogues in existing datasets

explore the data together

Thank you@mattb | matthew.bidduph@nokia.com

Please email me if this is the kind of work you’d like to be doing.

Photo by Joe Shlabotnik - http://flic.kr/p/6DAwoT

Thank you@mattb | matthew.bidduph@nokia.com

Nokiais

hiring!

Please email me if this is the kind of work you’d like to be doing.

Photo by Joe Shlabotnik - http://flic.kr/p/6DAwoT

top related