Lecturas obligatorias de Carl: complejidad, ORMs y frontends simples
Carl's Required Reading

El ingeniero Carl Kolon compila una lista de artículos que considera esenciales para su equipo, con anotaciones y estrellas para sus favoritos. La selección cubre prácticas de codificación, plataformas, frontends, bases de datos, programación asíncrona y codificación, además de libros influyentes. Destacan críticas a los ORMs y a la complejidad innecesaria, así como la defensa de principios como HATEOAS y la pureza en React.
Si pudiera recomendar un solo artículo a programadores nuevos y experimentados por igual, sería este. La complejidad es mala.
- pragmatic
Buena lista, pero lo de los ORM me hace sospechar.
Enlaza aquí como una especie de prueba contundente de que los ORM son malos por defecto.
https://openai.com/index/scaling-postgresql/
"Es un mal artesano el que culpa a sus herramientas."
Mi regla general para los ORM:
ORM para CRUD, no para informes.
Si estás uniendo 12 tablas para datos operativos, tienes un defecto de diseño. Ese es un patrón de consulta de informes.
A menudo, las tablas temporales, los CTE, etc. son necesarios como solución inmediata, con un rediseño como solución a largo plazo. El planificador de consultas simplemente no puede optimizar eso en un tiempo razonable, o está más allá de su alcance si es lo que puede optimizar. Además, su solución de "unir en memoria" es común.
Mi regla general para consultas de base de datos:
Si la consulta es difícil de entender para ti, es difícil de entender para el planificador.
Por defecto, usa consultas pequeñas, rápidas y simples, y encadénalas.
- drunkboxer
Tengo una lista similar que me gusta compartir, tenía algunas de la lista de Carl, probablemente añadiré algunas de la suya.
http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom... https://www.parsonsmatt.org/2017/10/11/type_safety_back_and_...
https://lwn.net/Articles/336262/
https://tomasp.net/blog/2015/library-frameworks/
https://ratfactor.com/cards/not-quite-the-same
https://matklad.github.io/2023/11/15/push-ifs-up-and-fors-do...
- olives
Microservicios
grug se pregunta por qué el gran cerebro toma el problema más difícil, factorizar el sistema correctamente, e introduce una llamada de red también
parece muy confuso para grug
^ Este es el mejor y más divertido párrafo de texto que he leído este año
- kristianp
Es agradable escuchar sobre el Desajuste de Impedancia Objeto-Relacional [1], no había oído ese concepto desde hace mucho tiempo, ¡quizás una década! La razón por la que me gusta Dapper [2] es que te obliga a usar tu propio SQL.
Edito: "permite" por "obliga".
[1] https://en.wikipedia.org/wiki/Object%E2%80%93relational_impe...
- niko323
El artículo de Grug Brain es fantástico, y aún mejor si lo pasas por un LLM para convertirlo del lenguaje cavernícola. Esta cosa es una joya.