Termine

Code centric

Info

Scritto originalmente in francese. Tradotto dall'IA — il significato è stato preservato, non la prosa.

Definizione breve

Organizzazione del lavoro di prodotto in cui il repository del codice ha il rango di fonte di verità, e in cui gli altri artefatti — specifica, changelog, documentazione di supporto, design system — vengono ricostruiti a partire da esso invece di essere mantenuti a parte.

Definizione dettagliata

L'espressione circola nel vocabolario dei team tecnici per indicare pratiche in cui il repository centralizza ciò che prima stava altrove: documentation as code, infrastructure as code, configurazione versionata. Lì descrive una scelta di strumenti, interna all'ingegneria.

Negli articoli di questo blog, designa un modo di lavorare e non un'architettura tecnica. Ciò che la caratterizza non è che i file stiano nel repository, ma il senso della produzione: si parte dal codice reale per ottenere gli artefatti di prodotto, invece di partire dagli artefatti per ottenere il codice. Il Product Manager è il primo interessato, perché sono i suoi deliverable a cambiare modo di fabbricazione.

Il termine presuppone due condizioni, e viene usato a sproposito quando mancano: un repository abbastanza leggibile da poterne estrarre qualcosa di più del comportamento, e un accesso effettivo a quel repository da parte di chi produce gli artefatti.

Uso nel dominio

Si usa per qualificare una catena di produzione di artefatti, e per individuare che cosa cambia nel lavoro di un Product Manager quando il codice diventa la materia prima invece che il punto d'arrivo.

Sinonimi e varianti

«Il codice come fonte di verità», usato quando l'accento cade sul rango più che sull'organizzazione del lavoro.

Da non confondere con

  • Fonte di verità — Fonte di verità — artefatto che fa fede in caso di disaccordo. Il code centric è l'organizzazione che deriva dalla scelta del codice come fonte di verità; il rango può essere riconosciuto senza che nulla venga organizzato attorno a esso.
  • Documentation as code — pratica che consiste nel conservare e versionare la documentazione nel repository, sotto lo stesso controllo del codice. La documentazione resta scritta a mano, cambia soltanto posto.
  • Code is Law — formula di Lawrence Lessig sul modo in cui l'architettura tecnica impone regole agli usi. Riguarda il potere normativo del codice, non la fabbricazione degli artefatti.

Esempi

«Il codice non è più solo l'artefatto finale: diventa l'elemento centrale, la fonte di verità attorno alla quale gravitano e si ricostruiscono gli altri artefatti di prodotto, in una logica veramente code centric.»

«Il code centric non è un concetto tecnico — è un modo di lavorare che ridefinisce il ruolo del product manager nella catena del valore.»

Ambiguità / dibattiti

La parola suggerisce una centralizzazione totale, che non è l'obiettivo: Figma e Zendesk restano pertinenti nel loro ambito, l'approccio cambia la loro posizione nella catena senza sostituirli. Il disaccordo riguarda l'estensione: fino a che punto un artefatto può essere rigenerato prima di perdere ciò che il repository non contiene, cioè l'intenzione.