Lingue disponibili:

L’unico modo corretto per restituire dati da un’API

Viviamo in un’era di eccesso digitale in cui agli sviluppatori viene insegnato a credere che l’obiettivo di un’API sia servire dati. Questa è una fallacia fondamentale che è costata miliardi in infrastrutture e sicurezza in tutto il mondo. Abbiamo passato anni a dibattere REST contro GraphQL o gRPC contro WebSocket e ci siamo dimenticati di guardare alla soluzione più elegante e performante che esista. Sto parlando del concetto di No as a Service o NaaS (https://github.com/hotheadhacker/no-as-a-service).

Read More

Il Kobayashi Maru di Java: Gestione Globale delle Eccezioni

Per chi ha saltato le lezioni dell’Accademia della Flotta Stellare, il Kobayashi Maru è un’esercitazione progettata come uno “scenario senza vittoria”. L’obiettivo non è vincere, ma vedere come gestisci un fallimento inevitabile. Nel mondo dell’Ingegneria Backend, il nostro scenario senza vittoria è l’Eccezione Non Gestita.

Passi settimane ad architettare un servizio bellissimo e pulito. Usi i Record, ottimizzi le query SQL, applichi i principi SOLID. E poi, il giorno del rilascio in produzione, un utente invia un JSON malformato e la tua API vomita una Stack Trace di 50 righe direttamente nella console del suo browser. È brutto, è poco professionale ed espone la tua logica interna al mondo.

Read More

File a Lunghezza Fissa con Spring Batch 6.0: La “Gioia” dei Dati Legacy

Se sei uno sviluppatore che ha gestito elaborazione di buste paga o riconciliazione bancaria/finanziaria in un’azienda che utilizza Spring, probabilmente hai lavorato con Spring Batch. Confesso di non esserne un grande fan; ha quella caratteristica verbosità e overhead dell’ecosistema Java, che fa sembrare che anche il lavoro più semplice richieda molta più struttura del necessario. Ma a cosa serve lamentarsi? La tecnologia che la tua azienda utilizza è ciò che garantisce la tua sopravvivenza (casa, cibo, vestiti). Quindi, lamentarsi non è l’argomento di oggi.

Read More