The last couple websites I've worked on have all used remote development environments and I'm fairly convinced it's the way to go.
Running the website on your Mac will be fine at first but once you add any significant level of complexity, the inconsistencies between Macports and Ubuntu will rear its ugly head.
So really the question is, virtual machines or remote dev environments?
I think if you're in a situation where you have unreliable, flaky, or high latency Internet, virtual machines are the way to go. If you have consistently fast Internet, remote is better.
Remote is better because you don't have to keep your virtual machines in sync with the rest of your team. DB, queuing system, daemons are all in sync.