In general it is not a best practice to perform SHRINK database operation on a production server, atleast regularly! Sometimes it may be compulsory to keep them sized in order to ensure the disk storage is not compromised for any sudden changes to databases ETL processes, coming to the point by design...
As a DBA you should now how locking works with tables and how best you can make use of indexing enhancements within SQL Server 2005 version. Until SQL 2000 there was a limited availability of documentation on the guidelines even in the Books online and most of the times we have to depend upon the web...