4 ms·
This is a demonstration of a simplified LZ77 algorithm, not Gzip. Gzip is a unix utility, LZ77 is an algorithm, this distinction is not pedantic. This is what
by aortega 13y ago
This is a demonstration of a simplified LZ77 algorithm, not Gzip.
Gzip is a unix utility, LZ77 is an algorithm, this distinction is not pedantic.
This is what happens when you go to "hacker school" before regular CS school.
- zackbloom 13y agoThat last line was not necessary, there are plenty of people with CS degrees who wouldn't know the difference between different versions of LZW.
- aortega 13y agoYet the basic premise of the video is still wrong. Gzip uses many algorithms internally, among them LZ77 and huffman. It's like doing a video about "this is how mysql works" and showing the quicksort algorithm.
- nbevans 13y agoI agree with you. Gzip is merely a container format, just like AVI, MKV are for video/audio content. Gzip supports several compression encodings with Deflate being the the most common one I believe.
- shawabawa3 13y ago> Gzip is a unix utility, LZ77 is an algorithm, this distinction is not pedantic. It's basically the definition of pedantic. Gzip uses the LZ77 algorithm, so it's a simplified demonstration of what gzip does. It's also a simplified demonstration of LZ77.
- jvns 13y agoThe video title is in fact not quite accurate -- I chose to err in the direction of "cool soundbyte", since "LZ77 + poetry = awesome" doesn't have quite the same ring. aortega is quite right that this video actually explains LZ77, which is only one part of how gzip compresses. gzip (or the DEFLATE algorithm) also uses Huffman coding to compress the alphabet and pointers after LZ77 compression. I explain a bit more about the phases at http://jvns.ca/blog/2013/10/23/day-15-how-gzip-works http://jvns.ca/blog/2013/10/23/day-15-how-gzip-works And if you really want to know how it works, you should read http://www.infinitepartitions.com/art001.html http://www.infinitepartitions.com/art001.html, which is the reference I used for writing my implementation of gunzip. It includes C source code. The dig at hacker schoolers was unnecessary, though :)
- aortega 13y agoWell this is a much better description, thanks you. Actually I like dumbed-down explanations as an introduction to something, but also I believe they should include a description like this one at the end, for the people that want to know more. Sorry if the hacker school bashing sounded too harsh, but I believe that a little constructive criticism once in a while helps. Also, consider it a part of becoming a hacker :)
- wil421 13y agoWho says you need to be CS?