Il problema
Le domande che contano se le fa chi decide, e chi decide non scrive query. Prima doveva chiedere a qualcuno che le sapesse scrivere, oppure usare un sistema di supporto alle decisioni classico.
In tutti e due i casi la domanda passa da un intermediario, e succede la stessa cosa: le domande piccole non si fanno. Non perché non siano importanti — perché non valgono il disturbo di chiederle a qualcuno.
Il vincolo
Un modello che genera SQL su un database di produzione è un problema di sicurezza prima che di intelligenza. La risposta non è chiedergli di comportarsi bene: sono tre barriere che stanno fuori dal modello.
- Solo le tabelle autorizzate, non tutto il database.
- Connessione in sola lettura.
- Ogni query validata prima di essere eseguita.
La sicurezza sta nel database, non nella buona fede del modello.
Come l’ho risolto
Domanda in italiano, poi SQL, poi i dati in tabella e in grafico. Costruito in due-tre mesi, e poi rifatto una seconda volta in un settore diverso — che è il modo migliore per scoprire quali pezzi erano davvero generali e quali erano solo abitudini del primo cliente.
Una nota che non si legge nei dépliant: la calibrazione iniziale conta molto. Un sistema così non si accende e funziona. Si accende, si guarda dove sbaglia, e si stringe. Chi non ve lo dice non ne ha ancora messo uno in produzione.