Categoria

Pagina 1 di 2

Backend Development: la metà invisibile che fa funzionare tutto

Il backend è il livello che il cliente finale non vede ma che determina se il sistema regge il carico, protegge i dati, integra correttamente con i partner, e resta mantenibile nei prossimi dieci anni. Sviluppo backend PHP/Laravel/Symfony da oltre vent'anni, con taglio ingegneristico.

In questa categoria scrivo di backend development applicato: architetture, persistenza, API, gestione asincrona, sicurezza, testing. Scrivimi se hai un progetto backend serio da avviare, scopri il mio percorso.

Domain-Driven Design con Laravel: implementare bounded contexts in un progetto reale

Domain-Driven Design con Laravel: implementare bounded contexts in un progetto reale DDD viene spesso presentato come una soluzione per tutti i problemi architetturali, ma in pratica richiede una comprensione profonda del dominio di business. Vi racconto come l'ho applicato a un'applicazione assicurativa PHP, quali parti del pattern hanno funzionato e quali ho abbandonato come over-engineering. Continua a leggere
Ultima modifica:

GraphQL con Laravel Lighthouse: quando conviene rispetto a REST e come implementarlo

GraphQL con Laravel Lighthouse: quando conviene rispetto a REST e come implementarlo Ho valutato GraphQL per il refactoring dell'API di un'applicazione mobile Laravel usata da 10.000 utenti. La promessa del 'un endpoint per tutto' si scontra con la complessità di N+1 problem, autorizzazione fine-grained e caching. Vi racconto l'analisi completa e quando la scelta è giustificata. Continua a leggere
Ultima modifica:

FastAPI con Python per microservizi ad alte prestazioni: integrazione con Laravel

FastAPI con Python per microservizi ad alte prestazioni: integrazione con Laravel Il motore di raccomandazione di un cliente e-commerce richiedeva librerie Python di ML che non esistono in PHP. Ho estratto quella funzionalità in un microservizio FastAPI che Laravel consulta via HTTP con JWT. Latenza p95 di 40ms, deployment Docker su Hetzner. Vi mostro l'architettura e i pattern di integrazione. Continua a leggere
Ultima modifica:

TypeScript per sviluppatori PHP: guida alla transizione senza traumi

TypeScript per sviluppatori PHP: guida alla transizione senza traumi Ho iniziato a scrivere TypeScript seriamente due anni fa dopo vent'anni di PHP. La curva di apprendimento è stata più breve di quanto pensassi, ma i punti di attrito erano diversi da quelli che mi aspettavo. Vi racconto il percorso con le analogie che mi hanno aiutato e gli errori che ho fatto all'inizio. Continua a leggere
Ultima modifica:

Symfony Messenger: code asincroni robusti per processi di business critici

Symfony Messenger: code asincroni robusti per processi di business critici L'invio di 50.000 email mensili da un giro promozionale bloccava la UX dell'applicazione per ore. Con Symfony Messenger e un transport RabbitMQ, ho separato il processo di business dalla sua esecuzione: le email partono in background, la UI risponde istantaneamente, i fallimenti vengono riprocessati automaticamente. Continua a leggere
Ultima modifica:

PHP 8.3 match expression e named arguments: modernizzare codice legacy senza rischi

PHP 8.3 match expression e named arguments: modernizzare codice legacy senza rischi Modernizzare un'applicazione PHP 7.4 a PHP 8.3 non significa riscrivere tutto - significa sfruttare le nuove feature dove migliorano la leggibilità e la sicurezza. Vi mostro il processo che uso: identificare i candidati giusti per match expression e named arguments, refactoring sicuro con test a tappeto. Continua a leggere
Ultima modifica:

Laravel Reverb: WebSocket nativi per notifiche real-time senza dipendenze esterne

Laravel Reverb: WebSocket nativi per notifiche real-time senza dipendenze esterne Prima di Reverb, ogni progetto con WebSocket richiedeva Pusher (costoso) o un server Node.js separato da mantenere. Ho messo in produzione Reverb su un VPS Hetzner da 4 CPU per un'applicazione di collaborazione con 200 utenti simultanei. Zero problemi, zero costi aggiuntivi. Vi mostro il setup completo. Continua a leggere
Ultima modifica:

Redis in Laravel: beyond caching - code, pub/sub e session management avanzato

Redis in Laravel: beyond caching - code, pub/sub e session management avanzato Molti usano Redis in Laravel solo come cache di secondo livello. Su un'applicazione di prenotazioni con picchi di 500 richieste al secondo, ho sfruttato Redis Sorted Sets per la gestione delle priority queue, Pub/Sub per le notifiche real-time e un layer di session management con persistenza distribuita. Continua a leggere
Ultima modifica:

API versioning in Laravel: strategie pratiche per API pubbliche che evolvono senza rotture

API versioning in Laravel: strategie pratiche per API pubbliche che evolvono senza rotture Ho ereditato un'API Laravel usata da 40 integratori terzi senza versioning. Aggiungere un campo obbligatorio era un problema diplomatico prima che tecnico. Vi mostro le strategie di versioning che ho adottato, come ho introdotto il versioning retroattivamente e il contratto di deprecation che uso con i clienti API. Continua a leggere
Ultima modifica:

Symfony 7.2: le novità degli attributes e del DI container che semplificano tutto

Symfony 7.2: le novità degli attributes e del DI container che semplificano tutto Symfony 7.2 porta un utilizzo ancora più estensivo degli attributes PHP 8 che elimina gran parte della configurazione YAML che ho sempre trovato verbosa. Ho migrato un'applicazione da Symfony 6.4 a 7.2 e vi racconto i cambiamenti concreti nel codice, i friction point e i benefici netti in manutenibilità. Continua a leggere
Ultima modifica: