Charla · 2026
Data-first or Contract-first?
Jochen Christ (CTO y Co-Founder, Entropy Data) · 11 de junio de 2026
Cuando construyes un producto de datos, ¿por dónde empiezas? Jochen recorre dos rutas hacia el mismo destino. El camino tradicional data-first se trae los datos de producción, los explora y publica lo que hay. El camino contract-first arranca con una conversación, escribe el contrato antes de que existan los datos y deja que un coding agent construya el producto a partir de él. Por el camino: Data Contracts, el Open Data Contract Standard, la Data Contract CLI y una construcción en vivo del producto shelf warmers que tarda unos diez minutos.
Notas anotadas de las diapositivas de la charla de Jochen Christ. El texto de abajo es un resumen editado.
Preguntas del público
Una selección de preguntas del público después de la charla.
P: Si el agente genera los modelos dbt, ¿quién los mantiene después? ¿Edito el código dbt o vuelvo al contrato y lo regenero?
Depende de tu cultura y de la madurez de tu ingeniería, pero personalmente ya casi no me metería en el código dbt. Yo cambiaría los requisitos en el contrato y, si la salida no es correcta, mejoraría las skills. Monta un bucle de feedback en tu repositorio de skills y optimiza desde ahí, en vez de ir parcheando a mano el código generado.
P: ¿Distinguís un marketplace de un catálogo de datos, o los tratáis como lo mismo?
Los distinguimos. Un catálogo es un índice técnico de todos los datasets que existen, a menudo millones de activos. Un marketplace solo contiene productos de datos pensados para compartirse y consumirse por otros equipos, normalmente unos pocos cientos. El marketplace es donde vive la información contextual, la del nivel del contrato.
P: El data-first suele sacar a la luz hallazgos que nadie pidió. Ir siempre por contract-first, ¿no significa responder solo a lo que la gente ya sabe preguntar?
Es un buen punto, y sí quieres conservar la capacidad de explorar. La clave está en la frontera: dentro de tu propio dominio, donde ya entiendes qué significan los datos, mantén un acceso explorativo sencillo, al estilo data-first. Los Data Contracts importan cuando cruzas una frontera organizativa, porque ahí empieza un nuevo bounded context y los datos compartidos necesitan una interfaz acordada y documentada.
P: ¿El contrato debería especificar el esquema físico desde el principio, o solo el propósito y el modelo conceptual, y dejar que el agente resuelva el esquema físico?
En el contrato yo definiría el modelo conceptual y lógico y dejaría la implementación física y técnica a la skill o a la plataforma de datos destino. El conocimiento de negocio va en el modelo; el detalle específico de la plataforma va en las skills.
P: Vemos Data Contracts en los extremos del flujo de datos, en las fuentes y justo antes del consumo. ¿Los ves también en el medio, en cada paso del linaje?
Mi visión es que un Data Contract aporta una nueva frontera de confianza. Probablemente no necesitas un contrato que llegue hasta la primerísima fuente en cada salto; necesitas linaje hasta el último Data Contract del que dependes. Entre contratos puedes usar linaje técnico, que es el cableado interno del pipeline de un producto de datos. La confianza está anclada en el contrato de origen.