
Understanding Compression
Haecky, McAnlis
- Editorial
- O'Reilly
- Año
- 2016
- Páginas
- ~242
- Nivel
- Intermedio
De qué trata
Guía conceptual y técnica publicada por O'Reilly Media en 2016, obra de Colt McAnlis y Aleks Haecky, orientada a explicar los principios y algoritmos fundamentales de compresión de datos de forma clara y accesible. Está pensada para ingenieros de software y desarrolladores de nivel intermedio (web, móvil y backend) que buscan reducir el consumo de ancho de banda, la latencia de transferencia de red y los costes de almacenamiento, sin requerir formación matemática avanzada ni especialización previa en teoría de señales.
El texto descompone metódicamente las principales familias de compresión mediante explicaciones intuitivas y ejemplos ilustrativos. Aborda la teoría de la información de Shannon, el concepto de entropía, la codificación por longitud de series (RLE) y los códigos de longitud variable. Enseña métodos estadísticos como la codificación Huffman y la codificación aritmética, transformaciones basadas en diccionarios como LZ77, LZ78 y LZW, y técnicas de modelado de contexto. Además, analiza los compromisos entre compresión con pérdidas (lossy) y sin pérdidas (lossless), el impacto del empaquetado de formatos serializados (JSON, Protocol Buffers, FlatBuffers) y las peculiaridades del tratamiento de imágenes en formatos como JPEG, PNG y WebP.
El libro no propone la construcción de un compresor completo de software ni un repositorio de ejercicios guiados de programación; su enfoque es fundamentalmente explicativo, empleando tablas, diagramas y analogías para comprender qué sucede a nivel de bits en cada etapa. Su gran valor reside en eliminar el misterio detrás de librerías como zlib, gzip o Brotli, brindando el criterio arquitectónico necesario para decidir qué técnica aplicar o cómo preparar y limpiar los datos antes de comprimirlos. Queda fuera la implementación de código en producción optimizado a bajo nivel, por lo que resulta ideal como base teórica antes de configurar middlewares o pipelines de transporte de datos.
- Compresión de datos
- Teoría de la información
- Codificación Huffman
- Algoritmo LZ77
- Algoritmo LZ78
- Codificación aritmética
- Compresión con y sin pérdidas
- Formatos de imagen
- Serialización de datos
- Optimización de ancho de banda
¿Cómo enseña?
Teórico
- ✗ Sin ejercicios
- ✗ Sin proyectos

