
Deck.gl: Large-Scale WebGL-Powered Data Visualization - pouwerkerk
https://uber.github.io/deck.gl/#/
======
ndesaulniers
I can't help but roll my eyes whenever I see more WebGL visualizations from
Uber. I had interviewed there maybe a year ago for the visualizations team,
but didn't get an offer because I "had too much WebGL experience and not
enough d3 experience." I think this is now the second or third webgl based
library since released by Uber.

~~~
malandrew
About a year ago would have been around the time Twitter's head of
visualization joined Uber to become Uber's head of visualization. The team has
grown massively since he joined. You should probably apply again.

~~~
ndesaulniers
I know...I coauthored a book on WebGL with them...

------
ztratar
I get 14 fps on their top example. New macbook pro. And this is supposed to be
ready?

~~~
TD-Linux
Their shader is doing software 64 bit float emulation, including trignometric
functions.

That city graphic is _really_ precise.

(edit: it looks like the 64 bit math is used only for the map projection part
of the shader... so it's not quite as ridiculous as it might seem, my haswell
system is limited by CPU, not by vertex shader performance)

~~~
rawnlq
What should I google to find out more on this topic? Why do they need double
precision if they aren't doing computation? Is it actually visible to the
human eye?

~~~
TD-Linux
They are feeding in lat/long coordinates to the shader, and then doing the map
projection there. Effectively they want lots of precision, but also the
ability to represent coordinates anywhere in the world, in their shader. The
alternative is to precompute the projection before putting it into the shader.

------
voltagex_
Crashes both IE11 and Chrome 54 for me.

~~~
ndesaulniers
Doesn't crash FF 48, but damn it locks up the system for maybe 20s.

~~~
TD-Linux
They have a megashader with an entire 64 bit float emulation library, which
takes a good while to compile.

------
est
Page turned 404. Anybody knew why?

------
hughes
The examples are pretty, but all of them are basically just population density
maps[1]. I'm not sure what additional understanding I can take away from the
examples.

[1] [https://xkcd.com/1138/](https://xkcd.com/1138/)

~~~
dahart
> The examples are pretty ... I'm not sure

You got some of it, pretty is part of the point here. You can do nicer looking
things with WebGL than with an HTML canvas.

High performance and interactivity is another side of what to look for here.
Spend some time rotating and zooming these examples to see the kinds of
interactions you don't get in other data visualizations. You can (potentially)
visualize a lot more data at interactive rates with a WebGL view than you can
with other techniques.

The laying/compositing tech is a third piece of what is interesting here,
allowing different data slices to be rendered and included separately. This is
useful as it's common to put everything in single WebGL view for ease of
implementation initially, but can get complicated and may not scale as well as
this layering approach.

------
DasIch
Opening this site in Safari froze my entire machine. Granted it's a 5 year old
Macbook Air but still this should never happen.

Generally it seems to me that whenever something involves WebGL, performance
and UX goes out the window.

~~~
fulafel
Sounds like a security bug in Safari and/or OS X, anyone know if Apple offers
bounties like Chrome and Mozilla?

~~~
DasIch
Apple started a bounty program at this years WWDC.

------
msimpson
Even on a GTX 670 these examples crawl. They seriously need to optimize.

------
btbuildem
Looks like you need a top-of-the-line gaming rig to run these..

Hardly interesting from a data viz perspective, but I guess good on them for
trying to push the tech envelope?

------
nrjames
Doesn't work in any browser for me right now and also doesn't appear to be
linked from the main Uber github page. Not ready for release?

------
piggybox
Examples crashed the WebGL component in Chrome 54...

