How to learn compression almost from scratch, i.e. for a student with good research abilities? What books, online courses, videos or any other ways you can recommend? Chinese ones are especially welcomed.

Another question is sources which can be used to learn compression algorithms. I.e. well-commented, optimized for simplicity and readability rather than efficiency.

Books:

- Colt McAnlis “Understanding Compression: Data Compression for Modern Developers” is just 240 pages, looks easiest to comprehend
- Khalid Sayood “Introduction to Data Compression” (2017) - first 4 chapters looks good, just enough for practical knowledge about data models and huf/ari coding
- David Solomon “Handbook of Data Compression” (2010) is the most comprehensive book around

Online books:

- Matt Mahoney "Data Compression Explained" (2013) looks terse and comitted to practical compression methods
- Gary Linscott "Modern LZ Compression" is great practical book teaching how to develop gzip-class compressor and providing dozens of links into more advanced topics

Blogs:

- Yann Collet "RealTime Data Compression" - lots of info on developement of xxHash, LZ4, FSE/Huff0 and ZSTD
- Charles Bloom "cbloom rants" - hundreds of posts about complex compression topics, mainly *LZ and entropy coding
- Fabien Giesen "The ryg blog" - great technical blog, but not much compression-related posts