Sviluppo software con l’AI: l’opinione di Torvalds

Linus Torvalds, il geniale creatore del sistema operativo Linux, qualche giorno fa ha pubblicato una delle risposte più sensate che abbia mai letto sull’utilizzo dell’AI nell’ambito dello sviluppo software.

In una discussione sull’utilizzo dell’intelligenza artificiale nei contributi al kernel Linux, ha fatto un paragone tanto semplice quanto efficace: vietare l’AI perché uno sviluppatore deve dimostrare di saper programmare sarebbe come vietare i compilatori, pretendendo che tutti sappiano scrivere codice direttamente in Assembly. O come vietare gli editor di testo per dimostrare di saper scrivere senza strumenti che correggano gli errori.

Il punto non è quale strumento utilizzi, ma se comprendi davvero quello che stai facendo… e aggiunge una riflessione che condivido pienamente: “Le persone che rispetto e considero intelligenti non sono quelle che evitano di utilizzare strumenti nuovi e interessanti.”

Credo sia questo il vero fattore chiave per quanto riguarda lo sviluppo software nell’era dell’AI: non tra chi la usa e chi no, ma tra chi sa usarla con competenza tecnica e spirito critico e chi invece si limita a delegarle compiti senza comprenderne i risultati.

La competenza non si misura dagli strumenti a cui rinunciamo, ma dai risultati che siamo in grado di raggiungere e dalla capacità di governarli.

Post originale e pubblico di Torvalds reperibile dalla Mailing list ufficiale del Kernel Linux

Regex (espressioni regolari)

Appunti utili per velocizzare l’utilizzo delle regex, sia in bash che in altri ambienti. Dedicato ai miei studenti, a me stesso, ma anche a te, lettore capitato qui sul blog per curiosità, per svago o semplicemente per sbaglio.

‘cat log.txt | grep -oE ‘\b([0-9]{1,3}\.){3}[0-9]{1,3}\b’ | sort -u > miofile.txt’ –> elabora in modo efficiente un file di log, dapprima visualizzandone il contenuto, poi estraendone univocamente eventuali indirizzi IP presenti al suo interno, successivamente ordinando e rimuovendo i duplicati attraverso “sort -u”, infine salvando i risultati nel file denominato “miofile.txt”

Indirizzi IPv6, Regex per identificare
(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))

MAC Address, Regex per identificare
^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$

Email, Regex per identificare
(([a-zA-Z0-9_-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([a-zA-Z0-9-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)(\s;\s|\s$))

Ne aggiungerò via via altre prossimamente.

Risorse di approfondimento:
– Link1
– Link2
– Link3
– Link4 (SANS)