Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson...

54
Data Visualization from a Developer’s Perspective Will Robertson Principal Consultant [email protected]

Transcript of Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson...

Page 1: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Data Visualization from a Developer’s Perspective Will Robertson Principal Consultant [email protected]

Page 2: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Warning…

!

Page 3: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Will Robertson

• .NET/iOS/Java/Web/?? Developer

• Software & Parallel Architecture

• 10 years in software/IT.

• Technologically Agnostic.

• ….Australian

Page 4: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Questions

• Who are developers/is writing code?

• What types of applications are being developed?

• What is the audience for these applications?

• Who is visualizing data? How?

Page 5: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

??

What are you talking about?!?

Information Architecture & User

Experience

Software Development

Page 6: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

In the beginning…

Page 7: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

clarify

construe

deliver

demystify

explicate

elaborate

get across

illuminate

simplify

spell out

depict

demonstrate

clear up

portray

illustrate

Page 8: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

in·ter·pret verb \in-ˈtər-prət, -pət\

Page 9: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

?? -2

0

2

4

6

8

10

1 2 3 4 5 6

Delta

Value

Cost

Page 10: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Delivery

Page 11: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Where am I?

• Real Estate

• Time Capture

• Purpose

• Interaction paradigms

• Bandwidth

• Processing

Page 12: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 13: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 14: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 15: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 16: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Analysis vs. Actuality

Page 17: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 18: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 19: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Thinking about it as food.

Page 20: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 21: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 22: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 23: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 24: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 25: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 26: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 27: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 28: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 29: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 30: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 31: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

What can we learn from this?

Page 32: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Calculation vs. Storage

• Need to make a cost comparison

• Various levels of ‘baking’ through pre-calc and storage

• Considerations of Big O

Page 33: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Data Hot Zones

Page 34: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Equipment is important

• Scale for calculations

• Equipment intelligence

• Where is the visualization going to?

• N + 1 scale

Page 35: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Thinking about code.

Page 36: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

The evil of occlusion.

• Lose the value of the visualization

• Cannot be avoided

• Can be mitigated

Page 37: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 38: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 39: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 40: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Simple DV code wins

• Proxy objects

• Ordering of data

• Baking visualization data

• Laziness can be a good thing

Page 41: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Removing cost

Page 42: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Enforce relationships

• Create relationships with the world.

• Incorrect relationships create the wrong story.

• Correlation does not imply causation.

• Enforced relationships can reduce calculative complexity.

Page 43: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Credit: Brian Cardarella

Page 44: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Credit: XKCD

Page 45: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 46: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 47: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Create Understanding

• Give data detail

• Show significance

• Change is important

Page 48: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 49: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

-2

0

2

4

6

8

10

1 2 3 4 5 6

Value

Cost

Delta

Page 50: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

-2

0

2

4

6

8

10

1 2 3 4 5 6

Delta

Value

Cost

Page 51: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Beyond the Visualization

• Informational Context

• High value complimentary information

• Potentially cheap cost of information

Page 52: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10
Page 53: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10

Focus Points

• What is my input cost? What is my output cost? (Analysis vs. Actuality)

• How long have I got?

• What is the true cost of visualization?

Page 54: Data Visualization from a Developer’s Perspective Day/World IA Day - Data Vi… · Will Robertson • .NET/iOS/Java/Web/?? Developer • Software & Parallel Architecture • 10