This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
There is a reason that the general practice is to first "tar" all the small files into a "tar" file and then use gzip (or bzip2) to compress the tar file. Both of these programs use the basic technique of looking at the input and finding common strings. With all of the small files bundled into the tar file, there are more chances to identify common strings. With the windows-style 'zip' approach, each file is compressed independently, so common strings between files are not used to improve the compression ratio.