Category Archives: Graphics

Personal projects and the occasional bit of commentary.


Layer Selector Toolbar: Now available on aescripts

Big news, everybody! My new After Effects script, Layer Selector Toolbar, is now for sale on

It’s a compact toolbar that comes in two flavors, vertical and horizontal. CS4+, Windows and OSX.



And it — surprise! — selects layers by property:



I’m hoping it turns out to be a useful little utility. I’ve found it especially handy for navigating giant comps with a ton of layers, and I’m loving not having to hunt for the camera layer when working in 3D.

Big thanks to Tomas Sinkunas and Zack Lovatt for beta testing.

In other news, I’m going to have some work on TV later this month. Stay tuned!


An Open Transit Map for Hudson County

Is the PATH down again and you need to find another way home? Want to show how limited transit options are in your neighborhood so you can fight for better service?

I’ve been hard at work on something that might help: a reasonably complete open map of all mass transit in Hudson County, free to use and adapt for your own purposes. At the moment the data’s set up as a series of shapefile layers in QGIS, and the project’s just been updated to work with the latest version (hyperthreading = so much faster).


When I say “reasonably complete” I mean it — trains (NJT + PATH), light rail, buses, ferries (NY Waterway, Liberty Landing, Statue Cruises),  even jitneys and smaller private bus companies like A&C.


There is more work to do, however: at the moment the map is still missing the Hoboken HOP bus, NY Waterway’s shuttle buses, and one bus from Pennsylvania that stops twice a day each way at Exchange Place. It’s also possible I’ll discover some other secret buses, as that’s happened several times so far — Hudson County is full of poorly documented transportation routes largely run on word of mouth. (You know it’s bad when I’m actually excited to discover a company’s website contains maps drawn in MS Paint, because at least that means there ARE maps).

The big goal of this project is to tie everything together in a clean digital format that can be adapted for a wide variety of uses. (That includes commercial use: if the smaller bus companies want to generate their own maps for riders based on the routes I drew for them, THAT WOULD BE AWESOME.) Eventually the plan is to build some sort of slippy map you can interact with on the web, but right now we’re still on the “get everything in one place” stage.

This project started as part of OpenJC‘s Hack for Change National Day of Civic Hacking (I won!), but I’ve continued working on it for several weeks now. And I have learned A LOT about QGIS in the process. The best single tip I can offer is to use the OpenStreetMap plugin to download a dataset, but to skip the spatialite db conversion steps and just import the .osm as a vector layer. It seems a bit slower on the redraw, but no more missing streets!

I’ve also learned a lot about hierarchical design for complex maps. When I’m designing maps for television, they need to be simple and easy to interpret at a distance, so I’ve never had to fit so many different types of things on screen at once. Getting them all to harmonize in any remotely readable fashion has been a real challenge, but I think I’m getting there. I expect in the end many users will not even want all the layers enabled at once, but I’m trying to make things slightly less spaghetti-like if they do.

Also, if you randomize a bunch of settings, you can generate some neat abstract art with this thing:



Nighthawks Piip-Show

Dramatis Birdsonae: The Birds of Piip-Show

I’ve been working late a lot, and the friendly birds of NRK’s Piip-Show have been keeping me company. But the species guide is in Norwegian (obviously, it’s a Norwegian show), and the usual translation tools do a terrible job with it.

So I made a little Tumblr to help curious English speakers identify the birds. I hope someone finds it useful, or at least entertaining. The disappointed woodpecker is my current favorite.

Airmail Route Map

Mapping Plugin Roundup

Can’t be bothered with learning GIS software? Here’s a quick roundup of a few plugin options when it comes to map creation for animation. Have I missed any others? Let me know and I’ll add them to the list.

After Effects

Fabiantheblind’s AEmap and Locations plugins give you the ability to build, customize and animate a political equirectangular map, and/or  drop geolocated coordinates onto several different projections. These are great if you have country-level data to display or want to pinpoint specific locations. (He’s working on a tool for InDesign too!)

Cinema 4D

Paul Everett’s sells several tools for working with map data directly within C4D. His plugins can import both DEM files (digital elevation maps) and OpenStreetMap data automatically.

Illustrator + Photoshop

Avenza MapPublisher is a full GIS toolkit for Illustrator, and  Geographic Imager is its raster companion for Photoshop. These are serious tools for mapping professionals, and priced to match. There is a more limited “basic license” available for Geographic Imager though that’s only $199.


ESRI Shapefile Import/Export and Georaster Import are free(!) plugins for Blender that do exactly what it says on the tin: they let you import shapefiles and geolocated raster images into Blender.

VVPA Website

Before and After: A new site for the VVPA

Launched a new website for my neighborhood association this weekend. It’s pretty shiny, if I do say so myself. And a lot more functional: not only has the site data been migrated to WordPress (including everything from Word and PDF documents to an entire separate website of summer film screening info), there’s a new logo, snazzy new maps, and built-in MailChimp campaigns and social sharing. It’s getting things much closer to a “write once, publish everywhere” model, which saves everyone time and is good for the neighborhood!

And, for reference, here’s what it used to look like:


PRISM PowerPoint Redesign

So I’m not sure why anyone was really shocked by the whole PRISM thing — I can’t be the only person who just assumed this was happening all along?

But wow, those slides are terrible. Yikes. For something designed to find important information buried in a lot of nonsense, it makes doing exactly that a lot of work for the viewer.

A lot of it isn’t even about layout (though the layout’s indeed awful): Slate did their own redesign with a pretty timeline, but their version maintains many of the original presentation’s more serious information design problems: unrelated facts in boxes, logos for no reason, unreadable visualizations.

First off, let’s start with the PRISM logo:


What is this, a shareware space game for Windows 95? Come on, guys. You can do better than this! There’s obviously some powerful cutting-edge tech behind what you’re doing, so why not look like a slick web startup?

While we’re at it, let’s make them seem a little friendlier (after all, secret government data miners are people too!).

logo v 01

That’s better.

And now, the revised PowerPoint.

This slideshow requires JavaScript.

There’s no reason this had to stay the same number of slides, so I reorganized the information to make more sense. Took out a lot of extraneous details, too. Makes it so much easier to focus on the whole “spying” thing!

EDIT: Big versions of the slides are here.

Sample - Early 20th

Yearspace: Sneak Peek #2

Yearspace, my snazzy new timeline-making script for After Effects, is feature-complete and allllmost ready to go.  Check out what you can do with it:

I’ve gone kinda nuts with the era background feature in these examples — it’s really fun to play with. As the timeline moves, the era regions slide back and forth with the years they’re linked to, but they function as mattes so their image backgrounds remain static. It looks super-cool in motion.

There are a few wonky bits that still need working out (and one missing function that seems to be just plain un-scriptable, sigh), but I’m hoping to have it done soon — I’m going to be using it a ton at work in the next few months.

Interested in beta-testing? Let me know!