At the moment I am doing a resize of our uniData database files using a program that I wrote that reads through a stats file that is generated each night and follows it's recomendations for resizing.
Resizing our database files used to take us 4 to 6 hours per server, with this program I wrote it brings that time down to less than 2 hours (depending on the size of the files that need to be resized).