Come l’AI ha spinto un ingegnere TypeScript a imparare Python

2026-09-10

Per la maggior parte della mia carriera TypeScript è bastato. React e Next.js sul frontend, NestJS o Express sul backend, un solo linguaggio dal database al pulsante. Poi l’AI è passata da una singola chiamata API a una parte vera del prodotto e continuavo a scontrarmi con lo stesso ostacolo: il codice più interessante era in Python.

Le API LLM hanno buoni SDK JavaScript e continuo a integrare OpenAI e Anthropic da Node.js. Ma quando il lavoro va oltre l’API — eseguire un modello in proprio, gestire embedding su larga scala, lavorare con l’audio — l’ecosistema è Python: PyTorch, Hugging Face, NumPy, notebook Jupyter e repository di ricerca con requirements.txt e senza alternativa npm. Il text-to-speech con StyleTTS2 e le pipeline per audiolibri sono stati il punto in cui leggere Python ha smesso di essere facoltativo.

Imparare un linguaggio da ingegnere senior è diverso dall’imparare il primo. Non serve imparare che cos’è un ciclo; serve capire la cultura: ambienti virtuali e dipendenze bloccate, perché un repository di modelli che funzionava il mese scorso può rompersi con una nuova versione di torch. Type hints e Pydantic ricordano TypeScript e Zod. async in FastAPI si mappa bene su ciò che già conosco di Node. E c’è l’abitudine ai notebook: esplorare in Jupyter e spostare ciò che funziona in un modulo vero con i test.

L’AI stessa ha accelerato l’apprendimento. Uso i modelli come pair programmer per il linguaggio in cui sono meno forte: spiegami questa espressione, riscrivi in stile Python questa abitudine JavaScript, perché questo tensore ha la forma sbagliata? La regola è trattare ogni risposta come una pull request di un junior: leggerla, eseguirla e capirla prima di integrarla. L’AI accelera l’apprendimento, non lo sostituisce.

In produzione mantengo semplice la divisione. Node.js e TypeScript gestiscono il prodotto: autenticazione, API, pagamenti e UI. Python gestisce il lavoro sui modelli: inferenza, audio, elaborazione dati, di solito come servizio separato o worker dietro una coda, collegato al prodotto via HTTP o con job dotati di un contratto tipizzato. Ogni linguaggio fa ciò che il proprio ecosistema sa fare meglio, senza sconfinare nell’altro.

Python non ha sostituito TypeScript: ha ampliato ciò che posso fare. Qualche anno fa “full-stack” significava arrivare dal database al browser. Nell’era dell’AI significa anche aprire il repository del modello, leggere cosa fa davvero ed eseguirlo in proprio. Se il tuo prodotto ha bisogno di uno step con un modello e di una vera applicazione web intorno, è proprio su quel confine che mi piace lavorare.

Dai al prossimo prodotto qualcuno che resti.

Pronto a iniziare? Scrivimi: posso cominciare subito e restare. Collaborazioni a lungo termine, non passaggi di consegne dopo due settimane. Parliamo del progetto, dei requisiti e del modo migliore per procedere.

Chiedi informazioni su esperienza o servizi