I'm a largely self-taught web designer (HTML/CSS/design) with fairly basic but competent enough programming skills (PHP/Javascript/Python) to do simple development and be able to understand roughly what's going on when I work with developers. What are some good things to learn (libraries, techniques, math?) in order to do more interactive and dynamic things on the web, particularly when it comes to data visualization?

To provide some more context, I'm going to be involved in a data visualization/software art project in the next few months. I'm not in a role where I'm expected to be doing complex graphics programming or anything like that, but I'd really like to be able to both better understand the code behind these sorts of things and be able to start building projects on my own. I'm very interested in the kinds of things showcased on the Chrome Experiments site, but don't know where to begin. Particularly scary to me is the math behind this kind of 3D experiment, but I feel like I could learn at least some basics given a few solid months and a plan of action.

There are lots of other fun computer graphics things you can learn for doing 3D programming, like binary space partitioning and shader languages that make the graphics card do work for you instead of the CPU.

Transformation matrices are pretty core to computer graphics though, more than any of the other things I linked to.posted by tylerkaraszewski at 1:44 PM on November 23, 2011 [2 favorites]

Protovis and its successor D3 are two Javascript libraries purpose-built for visualization, and can help you ease into graphical programming starting from data. Mike’s got the literature down pat and Protovis in particular is solidly grounded in visual communication theory. D3 by contrast is a more general toolkit and a step up to lusher, more complex interactions.

When you want to step over to something like three.js, you’ll really want to have read some of Tyler’s links above on transformation matrices.

Processing will help you get pixels on a screen, but the hand-holding ends there.posted by migurski at 9:52 PM on November 23, 2011

Tags

Share

About Ask MetaFilter

Ask MetaFilter is a question and answer site that covers nearly any question on earth, where members help each other solve problems. Ask MetaFilter is where thousands of life's little questions are answered.