Regarding paging... The only three situations in which I consider paging acceptable nowadays on workstations and servers, when a handful of dollars buys you a few GB RAM:
1. For resilience in exceptional/emergency situations, when the alternative would be an OOM kill or a crash.
2. When an application with massive memory requirements was designed/tuned specifically to work well with OS's virtual memory behavior.
3. Cloud and shared-hosting servers that don't care if performance blows.
None of my personal machines even have swap partitions, and I don't recall using even half of my RAM. In this screenshot of lower-right corner of my screen, it tells me I'm using 16% of 3GB RAM on this workstation that's running Linux, X, XMonad, PostgreSQL server, Apache, and several different Racket SCGI servers, in addition to my bloated email client: http://i.imgur.com/fCBBR.png