Chi sono

Sviluppatore per vocazione, Designer per formazione

La mia storia, dal Commodore 64 alle architetture software robuste

“La vera passione non ha scadenza. La mia carriera da sviluppatore è iniziata davvero a 40 anni, dimostrando che non è mai troppo tardi per seguire la logica del codice.”

Sono Fabio Gulotta. Se sei qui, probabilmente cerchi un approccio allo sviluppo che vada oltre il semplice “far funzionare le cose”. Cerchi metodo, pulizia e sostenibilità.

Il mio legame con l’informatica è antico, quasi anagrafico: inizia circa 45 anni fa con il mio Commodore 64. Ricordo ancora l’emozione delle prime connessioni alle BBS, con i modem “stile WarGames” che erano un ponte verso il futuro. Tuttavia, il mio percorso non è stato lineare, ed è proprio questo il mio punto di forza.

La Svolta: Reinventarsi a 40 anni

Dopo una vita da imprenditore in altri settori, ho fatto una scelta radicale: ho trasformato la mia passione in professione.

La verità è che non ho mai smesso di programmare: dagli anni dell’imprenditoria ho creato piccoli software in VB/Access, per poi passare all’era web utilizzando JavaScript, jQuery, e l’evoluzione dei framework da AngularJS, ad Angular, fino all’attuale React.

Parallelamente alla programmazione, ero affascinato dalla bellezza estetica dei siti web e dai pionieri come Apple, che per primi hanno dimostrato il potere di un design curato e della tipografia nei personal computer. Per questo, la scelta di conseguire la laurea in Graphic Design all’Accademia di Belle Arti a 43 anni è stata una mossa strategica per formalizzare e raffinare la mia comprensione dell’interfaccia utente e dell’usabilità. Questo percorso “non convenzionale” mi ha insegnato una lezione cruciale che applico ogni giorno al codice. Come diceva Paul Rand:

“Design is simple. That’s why it’s so complicated.” (Il design è semplice. Ecco perché è così complicato.)

La semplicità non è banalità, ma il risultato di un complesso processo di sintesi. Nel software vale la stessa regola: scrivere codice complesso è facile, scrivere codice semplice e leggibile richiede maestria. È da qui che nasce il mio fascino per la difficoltà nel semplificare un’interfaccia o una pagina web, principio che applico poi all’architettura software interna. Questa mentalità mi permette oggi di unire due mondi apparentemente distanti:

  • La logica ferrea dello sviluppatore backend, che cerca l’eleganza strutturale.
  • L’attenzione all’usabilità del designer, che sa che la complessità va gestita, non inflitta all’utente (o al collega che leggerà il codice).

L’Esperienza sul Campo: Dove l’errore non è ammesso

Per 10 anni ho lavorato come sviluppatore full stack per un’azienda leader nel settore della Fatturazione e dei Pagamenti Elettronici.

Qui, ho gestito l’intero ciclo di vita delle nuove funzionalità di un applicativo dove l’affidabilità è vitale, operando in un rigoroso flusso CI/CD con ambienti dedicati (Dev, Test, Prod) gestiti tramite repository Git. Il mio ruolo era end-to-end:

  • Front-end & UX: Partivo dal briefing per creare l’interfaccia grafica e i componenti, assicurando semplicità d’uso.
  • Logica Applicativa: Mi occupavo di connettere la pagina web ai dati tramite chiamate AJAX e di sviluppare le nuove funzioni API (utilizzando framework come CodeIgniter).
  • Database: Spesso era necessario modificare o aggiungere nuove tabelle e campi sul database (PostgreSQL).

In questo ambiente ad alta criticità, un bug non è solo un fastidio: è un potenziale danno economico. Lì ho imparato lezioni che nessun corso può insegnare:

  1. L’affidabilità è non negoziabile.
  2. La robustezza del codice batte sempre l’hype del momento.
  3. La manutenibilità è ciò che distingue un progetto amatoriale da uno professionale.

Cosa faccio oggi e la missione di fabiogulotta.it

Attualmente opero come tecnico informatico in una società pubblica in Sicilia, ma la mia fame di codice pulito, architetture e best practice non si spegne mai.

Ho creato fabiogulotta.it per condividere la mia esperienza. Il mio obiettivo è offrire un approccio metodico e consapevole, indispensabile per chiunque – dallo studente allo sviluppatore junior – voglia scrivere codice che sia solido oggi e manutenibile domani.

Il Mio Stack Tecnologico

  • Linguaggi Core: PHP (Backend), JavaScript (Frontend), SQL (Database)
  • Framework & Tools: CodeIgniter, AJAX, PostgreSQL, Git, CI/CD, Docker
  • Focus: Clean Architecture, Refactoring di codice legacy, Database Design, Usabilità (UX/UI)