How can I prevent an application from showing on the Dock?
Modifying the Info.plist has made sandboxed applications crash on launch since 10.8.

You can for example run

lsappinfo setinfo -app TextEdit ApplicationType=UIElement


after opening TextEdit to hide TextEdit from the Dock temporarily, but I don't know how to make the change permanent.