Please explain tarballs

So after using Linux for a few months I still do not really know what a tarball is or how to work with it. Could you explain what the function of a tarball is and how I should use it?

Thank you.

http://linux.about.com/od/linux101/a/desktop12a.htm That should give you a general idea.

Tarballs are basicly just compressed folders containing the raw code, which the user goes thru the process of building and installing.

Just to briefly touch on tarballs. I should mention that I feel that more users should go thru this process. I learned enough about programs, and how they install, that I am able to now troubleshoot other operating systems for missiong dependencies.