Internals for Interns

¡Bienvenido! Este es un blog sobre cómo funcionan las cosas por dentro. Si alguna vez te has preguntado qué sucede cuando tu código se ejecuta, cómo las bases de datos ejecutan consultas, o qué hacen los compiladores con tu código fuente, estás en el lugar correcto.

Escribo análisis profundos sobre los internals del software—cubriendo lenguajes de programación, compiladores, bases de datos, sistemas de archivos y más—pero con un giro: mi objetivo es hacer que los comportamientos internos complicados parezcan simples. Estas no son referencias exhaustivas; son descripciones accesibles que te dan la comprensión suficiente para apreciar la ingeniería inteligente detrás de las herramientas que usas todos los días.

Qué esperar: Los artículos aquí exploran temas como las fases del compilador de Go (lexer, parser, SSA), el modelo de objetos y la recolección de basura de Python, la ejecución de consultas en bases de datos, estructuras de sistemas de archivos y comportamientos en tiempo de ejecución como la asignación de memoria y las goroutines. Cada artículo toma un ejemplo concreto (como un programa “hello world”) y recorre lo que sucede internamente.

Cadencia de publicación: Publico un nuevo artículo cada semana, profundizando en un aspecto diferente de los internals del software con cada artículo.

Ya seas estudiante, becario o desarrollador experimentado curioso sobre los internals en los que normalmente no necesitas pensar, espero que estos artículos te den esos momentos “¡ajá!” que hacen que la programación sea aún más fascinante.

El Viaje de la Consulta SQL: Los Índices

Los Índices

Cuando creas un índice en PostgreSQL, podrías pensar que solo hay un tipo de estructura de índice funcionando entre bastidores. Pero PostgreSQL en realidad proporciona seis tipos diferentes de índices …