Andrea Sodomaco - divagazioni ICT

010101010111001101100101001000000111010001101000011001010010000001110011011011110111010101110010011000110110010100101100001000000100110001110101011010110110010100100001

Parliamo di Java, Linux e informatica

contenuti

Vorrei pubblicare riflessioni sparse su vari argomenti tecnici in ambito web e informatico, soprattutto relativi ai seguenti settori:

  • programmazione, algoritmi, performance e concurrency in linguaggio Java
  • sviluppo siti web, in particolare considerazione sulle soluzioni tecniche
  • linux e sysadmin

Ho inoltre intenzione di utilizzare il sito per pubblicare alcune piccole librerie Java, utility o frammenti di codice che ho realizzato nel tempo.

chi sono

Andrea Sodomaco

Andrea Sodomaco

Mi occupo di informatica dagli anni ’80 quando ho iniziato da hobbista e non ho mai perso la passione e l'amore per la materia che è diventata il mio lavoro.

Per maggiori informazioni vedi la mia pagina linkedIn.

A volte intervengo su stack overflow.

filosofia e filo conduttore

Il filo conduttore dei contenuti è "Make it, don't buy it!".

Se doveste aver bisogno di un parser Json o HTML, un server SMTP integrato nella vostra applicazione, un Connection Pool per le connessioni al db, un tool per gestire la configurazione di nginx per un numero molto elevato di virtual server, andreste a cercare una soluzione pronta da integrare o sviluppereste una soluzione ex-novo?

immagine tratta dal sito facciabuco.com

Scoprire l'acqua calda ha i suoi vantaggi, soprattutto se si sa farlo bene.

La mia scelta è stata spesso quella di sviluppare soluzioni originali nonostante esistessero già sul mercato tools o librerie. Raramente mi sono pentito di questa scelta da molti considerata controcorrente. Ci sono dei vantaggi come ad esempio codice molto compatto e tailor made, indipendenza nel bug fixing, ottimizzazione rispetto alle esigenze specifiche. Inoltre si evitano alcune controindicazioni come ad esempio l'adozione di librerie che poi non vengono mantenute, problemi di incompatibilità nel tempo con le versioni dei vari software dell'ecosistema, l'adozione di sistemi molto più complessi del necessario in quanto nati per essere general purpose.

Oltre a voler convincere tutti delle mie idee ☺, il mio proposito è di portare esempi di come si possono affrontare alcuni problemi di sviluppo software o sistemistici con la speranza di innescare un confronto tecnico sui vari argomenti sia con chi condivide le mie posizioni che con chi ha posizioni opposte.

passodo.sh - un password manager da linea di comando

passodo.sh è un gestore di password da riga di comando che memorizza password o piccoli testi in file crittografati utilizzando una password principale per proteggerli. È pensato per essere multipiattaforma, senza dipendenze e molto semplice da installare e utilizzare. Può essere utilizzato su qualsiasi sistema operativo con bash e openssl installati (ad es. Linux, macOS, Windows con cygwin) senza altre dipendenze. passodo.sh può facilmente gestire molte decine di password che possono essere organizzate in cartelle.

passodo.sh - un password manager da linea di comando

10 aprile 2023

Comparare due stringhe ignorando gli spazi ripetuti

La domanda per niente scontata che mi pongo è "cosa dovrebbe fare un programmatore posto di fronte al problema di confrontare due stringhe ignorando gli spazi ripetuti"?

Comparare due stringhe ignorando gli spazi ripetuti

30 dicembre 2022

Bloccare ip ostili su server linux

Come bloccare rapidamente con un semplicissimo firewall l'accesso ad alcuni ip su sistema linux utilizzando iptables e il kernel network filtering, in maniera facile, sicura e gratuita. Esempi pratici relativi ad un web server.

Bloccare ip ostili su server linux: un semplice firewall con iptables

6 novembre 2022