Slide 1

Slide 1 text

@LukasFittl data.visualize! # FIXME: Needs paradigm shiſt.

Slide 2

Slide 2 text

Biz + UX + Dev @LukasFittl

Slide 3

Slide 3 text

Recently: pganalyze.com usercycle.com

Slide 4

Slide 4 text

Data Collection Data Storage Interface & Graphs

Slide 5

Slide 5 text

Data Collection Data Storage Interface & Graphs

Slide 6

Slide 6 text

Interface & Graphs

Slide 7

Slide 7 text

Interface & Graphs

Slide 8

Slide 8 text

Interface & Graphs !=

Slide 9

Slide 9 text

Oh, its a button/label/slider/link! Interface & Graphs

Slide 10

Slide 10 text

Forget fancy graphs, what are you displaying? Interface & Graphs

Slide 11

Slide 11 text

Interface & Graphs

Slide 12

Slide 12 text

Interface & Graphs

Slide 13

Slide 13 text

Interface & Graphs

Slide 14

Slide 14 text

Let The User Explore. Interface & Graphs

Slide 15

Slide 15 text

Interface & Graphs

Slide 16

Slide 16 text

Interface & Graphs

Slide 17

Slide 17 text

Interface & Graphs

Slide 18

Slide 18 text

Interface & Graphs d3.js —

Slide 19

Slide 19 text

Interface & Graphs d3.js

Slide 20

Slide 20 text

But, its complicated, kind of like vi(m). Interface & Graphs

Slide 21

Slide 21 text

Interface & Graphs Rickshaw

Slide 22

Slide 22 text

Interface & Graphs github.com/pganalyze/pgdatagraph

Slide 23

Slide 23 text

Data Storage Interface & Graphs Data Collection

Slide 24

Slide 24 text

Tracking Scripts Data Collection

Slide 25

Slide 25 text

Data Collection Tracking Cron Jobs

Slide 26

Slide 26 text

Its (usually) a JSON hash. Data Collection

Slide 27

Slide 27 text

Data Collection

Slide 28

Slide 28 text

Data Collection

Slide 29

Slide 29 text

Historic data? Different queue! Data Collection

Slide 30

Slide 30 text

Data Collection CreateEvent AssignCohorts PushToFrontend ApiController Data Storage Small & Fast Tasks.

Slide 31

Slide 31 text

Data Collection Interface & Graphs Data Storage

Slide 32

Slide 32 text

Data Storage Step 1: Store the Raw Data

Slide 33

Slide 33 text

Data Storage Step 2: Add Caching Tables.

Slide 34

Slide 34 text

Data Storage query_snapshots query_snapshot_hourlies

Slide 35

Slide 35 text

Specialized Data Models Data Storage Event Signed Up Revenue Buckets ....

Slide 36

Slide 36 text

@LukasFittl Thank you! pganalyze.com