Zipping a directory or file is really really easy. You can use a number of compression folders out there. It is even easier for Mac users. Ubuntu make it easy when you are working on the GUI side. However, most web developers would be working on the command line.

Whether to Zip an entire folder or file, you can use the same formula

Install zip

apt-get install zip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 262 kB of archives.
After this operation, 603 kB of additional disk space will be used.
Get:1 trusty/main zip amd64 3.0-8 [262 kB]
Fetched 262 kB in 0s (25.1 MB/s)
Selecting previously unselected package zip.
(Reading database ... 66776 files and directories currently installed.)
Preparing to unpack .../archives/zip_3.0-8_amd64.deb ...
Unpacking zip (3.0-8) ...
Processing triggers for man-db ( ...
Setting up zip (3.0-8) ...

Zip a folder

zip -r your_folder
zip your_folder
  adding: test.txt (stored 0%)
  adding: a_large_file.csv (stored 49%)

You will have your compressed file name as