Topic: Ports and following -stable

The FAQ seems to indicate that it is a good idea to follow -stable so you can pickup patches, but it also recommends using packages instead of ports. Is that a contradiction?

After the first time that I've built -stable and userland, so that I'm running -stable, if I update /usr/src and there are changes, should I still start by deleting /usr/obj, i.e. build the entire userland every time?

Is there a way to show what ports are newer than packages that I have installed, i.e. which of my packages is outdated?

Is there a way to do the equivalent of pkg_add -u, in the ports tree, i.e. so it builds dependencies from the ports tree if they are newer?