If you're a regular New York City bus rider, you probably know of the MTA program "Bus Time" which let's you find out -either by web or by text- of the approximate location of buses on a particular line.
Recently, I happened on an improvement for iOS called NYC Bus Time. Though the app has some design flaws, it has one feature that really makes it worthwhile for me. You can set up a few bus stops for specific lines and directions as "favorites". So if you have several options for getting home, you can make all the options your favorite and then based on current conditions choose the bus that's going to arrive soonest.
Below is a snapshot near my home on 135th street showing my 3 options (M11, M4, and M5). We can see that the M4 is the best option as it is only 1 minute away. Armed with this new knowledge I decided to wait at Broadway and 135th instead of Amsterdam and 135th.