Run the following command to start collecting data about network usage (-P makes it work per process instead of per connection, -d makes it output deltas instead of absolute numbers, which is good because I want this script to start all processes at 0, -x makes it output raw numbers instead of human readable byte counts, and -L 0 makes it continuously run):
nettop -PdxL 0 | ./collect.py
Then, while that's running, you can run print_top_10_network_users.sh to see the current top processes in terms of network usage.
At some point in the future I'm planning to make this whole thing more professional, less hacky, and maybe offer it as an installable Mac App or something, but for now, this works!