How to use a compressor
There are many different types of compression that you can use. Each has its own list of pros and cons. Here is a quick and dirty explanation of and how to use them.
Dean Edwards Packer
This is an awesome packer to use if you are unable to use gzip or deflate on your server. Many web server companies do not allow you to use deflate or gzip because of the strain it puts on their server (compression = cpu time). So if you're like me, you pack your site because it's the only thing you can do. Note that using packer is smaller than Minify (as long as deflate or gzip is not being used).
Using Packer is easy, just head to Dean Edwards Packer and paste the code you want packed in the top section of the compress page, then click pack. It'll pop your newly packed code out in the bottom.
This is jQuery 1.2.6 being put through the packer
Check the results page to see how well the packer works :)
JSMin/Minify
This is an easy to use compression utility that is one of the perfect tools to use when you do have gzip or deflate enabled. While it lacks the nice web interface, it is a command line tool (stand-alone executable), so you can take it anywhere. It's even simple to run. Just crack open your command line type the following.
jsmin < fulljslint.js > jslint.js
This will take your uncompressed js file (fulljsline.js) and kick out your compressed file (jslint.js). Note that you must have either the .exe file in your folder with the js you want to compress, or in your filesystem path. To see how jsmin does compared to the other compressors, check the results page.
YUI
My new all time favorite compressor. This is like JSMin, only possibly better. At first I wasn't all that impressed with YUI, but then I started to play with it a little more. It is my prefered compression utility now. YUI is semi-intelligent with whitespace handling, it checks for ascii characters before and after whitespace to know whether or not to remove it. You can also use the YUI compressor to compress your css files. It's a versatile tool that is very handy to have in your toolkit. The one draw back (and some people on the inter-web find this to be the biggest flaw) is that you must have java installed to use this. While I think that's a good thing (cross-platform being the aim here) people still whine about it. Here's how you use it.
java -jar yuicompressor-1.0.jar infile.js > outfile.js
java -jar yuicompressor-1.0.jar infile.css > outfile.css
infile.js is your uncompressed file, and outfile.js is your YUI compressed file (same idea for css ;) ). I do strongly recommend that you adopt a naming convention for your files, mine is scriptname.compressionstyle.js. For example I would use scripts.yui.js, scripts.pack.js, or scripts.min.js. For libraries I compress I use jquery.1.2.6.yui.js, jquery.1.2.6.pack.js, or jquery.1.2.6.min.js. While that sure is a lot of periods, this is really rather helpful as I know what I used to compress the library and which version number the library was.
Honorable Mentions
If you were going to go out and grab a css compressor (not using YUI), I would recommend the Robson CSS compressor. It has a ton of options and does a pretty fantastic job at shrinking your css files. Just remember that when you compress css you need to keep two copies on hand so you can make changes when you need to :).
JSLint - run your js through this to make sure that it will survive compression. If it fails, you may want to tweak it until it runs right. Why? well compression can break your functions, so use this and be careful out there.
General Warning
ShrinkSafe (by dojo) may sound awesome, but I didn't include it in our training because it broke every single script I threw at it to compress. The results were pretty good (30% to 60% compression ratio), but useless since it busted most of my functions. So use it at your own risk (and yes, I may have written some crappy functions... that worked in every other compressor).