📘 Documentação para Obsidian — Context-Driven Development (CDD.dev)

URL: https://cdd.dev/
Tema: Context-Driven Development — um conjunto de ensaios e ideias sobre desenvolvimento de software orientado por contexto, com foco em documentação, workflows e engenharia acelerada por IA.


🧠 Introdução

O site CDD.dev (“Context-Driven Development”) é uma coleção de textos e ensaios que exploram práticas de desenvolvimento de software centradas em contexto, especialmente em um mundo com assistentes de programação baseados em IA. Ele propõe ver documentação e contexto como elementos centrais no processo de engenharia, ao invés de meros artefatos auxiliares.


📚 O que é Context-Driven Development?

Context-Driven Development não é uma metodologia formal como TDD ou Agile, mas sim um conjunto de ideias e ensaios que:

  • Colocam documentação como primeira classe no processo de desenvolvimento;
  • Defendem que o contexto — conhecimen- to sobre requisitos, motivação, ambiente e metas — deve guiar decisões técnicas;
  • Exploram como assistentes de programação baseados em IA podem ser integrados de forma eficaz na engenharia de software;
  • Apresentam uma visão crítica sobre abordagens tradicionais como Agile e outras práticas dominantes.

Nota: CDD nesse contexto é específico à filosofia do CDD.dev e não deve ser confundido com outras siglas CDD (como Component-Driven Development ou Customer Due Diligence) que existem no mundo de software e negócios. (Ver Seção Outras Interpretações de CDD abaixo)


📝 Seções e Ensaios Principais

O site apresenta diversos textos (ensaios) que geralmente abordam temas como:

  • The Recipe, Not the Cake — a importância de ver prompts como “receita” para sistemas inteligentes, e não apenas como partes do código;
  • The General-Purpose Agent Has Arrived — análise de assistentes de IA como motores de raciocínio;
  • Agile Considered Harmful 2.0 — crítica à aplicação tradicional de Agile frente a sistemas orientados por contexto;
  • Context-Driven Development Manifesto — uma visão articulada do que significa desenvolver com foco em contexto e clareza;

Esses artigos exploram tanto conceitos filosóficos quanto implicações práticas para times que trabalham com sistemas complexos ou que utilizam IA generativa no desenvolvimento.


📊 Exemplo de Aplicação

Embora não ofereça ferramentas ou frameworks específicos, CDD.dev serve como guia de pensamento para equipes de engenharia que desejam:

  • Melhorar a documentação contextual para fluxos de trabalho automatizados;
  • Repensar a maneira como a IA é utilizada na escrita de código e na engenharia de requisitos;
  • Romper com paradigmas rígidos e adotar práticas mais flexíveis, orientadas à situação real do projeto.

📌 Outras Interpretações de “CDD”

CDD é uma sigla usada em vários contextos — importante distinguir conforme o domínio:

  • Context-Driven Development — foco em documentação e IA (tema principal deste site).
  • Component-Driven Development — abordagem que constrói apps por meio de componentes reutilizáveis (diferente, ligado a UI/arquitetura de software).
  • Customer Due Diligence — processo de avaliação de risco de clientes em negócios/finanças (CDD em compliance).
  • Configuration-Driven Development — abordagem que usa arquivos de configuração para dirigir a lógica da aplicação.

Cada significado tem aplicação distinta, portanto sempre verifique o contexto em que CDD é usado.


📌 Referências

  • CDD.dev — Context-Driven Development — site com ensaios sobre desenvolvimento orientado a contexto e IA.
  • Artigos e definições sobre outros usos de CDD (componentes, diligência de clientes, etc.).