Microsoft si è posta un obiettivo ambizioso: eliminare completamente C e C++ dai suoi prodotti, incluso Windows 11, entro il 2030. Sebbene possa sembrare eccessivamente ottimistico, un illustre ingegnere di Microsoft esprime la ferma convinzione della fattibilità di questa iniziativa, attribuendola in gran parte ai progressi dell’intelligenza artificiale (IA).La strategia prevede di sfruttare l’IA per riscrivere il codice C e C++ esistente in Rust, un linguaggio di programmazione moderno noto per le sue prestazioni e la sua sicurezza.
La spinta verso Rust nello sviluppo di Windows
Nell’ambito di questo impegno, Microsoft sta attivamente preparando le sue API Windows per gli sviluppatori Rust. Una risorsa degna di nota è il repository GitHub “windows-rs”, che funge da proiezione Rust delle API Windows. Ciò consente agli sviluppatori Rust di utilizzare le funzionalità Win32, COM e WinRT in modo simile alle applicazioni C++ o C#.
Inoltre, Microsoft sta ampliando la sua attenzione su Rust oltre lo sviluppo di applicazioni generali. L’azienda ha sviluppato un’iniziativa dedicata allo sviluppo di driver Rust, disponibile su GitHub all’indirizzo windows-drivers-rs. Ciò evidenzia l’impegno di Microsoft nell’integrare Rust in diverse aree del suo ecosistema.
Uno sguardo alla strategia di assunzione di Microsoft
In un recente annuncio di lavoro, Galen Hunt, un ingegnere veterano con oltre trent’anni di esperienza in Microsoft, ha rivelato un’apertura per un “IC5 Principal Software Engineer”.Questo annuncio è significativo non solo per il titolo, ma anche per l’intrigante dichiarazione inclusa nella descrizione del lavoro:
“L’obiettivo è eliminare ogni riga di C e C++ da Microsoft entro il 2030. La nostra strategia è quella di combinare l’intelligenza artificiale *e* gli algoritmi per riscrivere le più grandi basi di codice di Microsoft.”
La prospettiva di trasformare Windows, composto principalmente da codice C e C++, sembra monumentale. Eppure, Microsoft ritiene che, con l’aiuto dell’intelligenza artificiale, un ingegnere potrebbe riuscire a generare oltre un milione di righe di codice al mese.
Un ingegnere, un milione di linee
“La nostra stella polare è ‘1 ingegnere, 1 mese, 1 milione di righe di codice'”, ha scritto Hunt in un post su LinkedIn, come riportato da Windows Latest. Microsoft ha investito nella creazione di una solida “infrastruttura di elaborazione del codice”, che probabilmente prevede l’addestramento della sua intelligenza artificiale sulla sintassi di C/C++ e Rust. Questo sviluppo mira a consentire agli agenti di intelligenza artificiale di gestire modifiche al codice su larga scala.
Sebbene questo piano sembri promettente, ci sono dubbi sulla capacità dell’IA di tradurre accuratamente non solo la sintassi, ma anche l’intento sottostante al codice originale. Questo potrebbe spiegare perché i recenti aggiornamenti di Windows abbiano talvolta compromesso funzionalità essenziali, come il Task Manager o persino la schermata di ripristino di BitLocker.
Microsoft rimane ottimista sul fatto che questa infrastruttura consentirà di trasferire efficacemente molti dei suoi più grandi sistemi legacy da C e C++ a Rust, favorendo una maggiore efficienza e affidabilità.
Il futuro dell’architettura Microsoft
Come ha affermato un ingegnere della divisione CoreAI di Microsoft, “Il nostro team fa parte del gruppo Future of Scalable Software Engineering”.Solo il tempo rivelerà quanto saranno competenti questi programmatori “agentici” basati sull’intelligenza artificiale nel tradurre codice C e C++ esistente in Rust su tutti i prodotti Microsoft, incluso Windows. Inoltre, è fondamentale notare che il panorama dello sviluppo si sta evolvendo oltre i soli C e C++, con molte applicazioni moderne in Windows 11 che si affidano sempre più a framework ad alto consumo di risorse come WebView2 o Electron.
Ad esempio, la visualizzazione Agenda di Outlook nel Centro Notifiche viene generata utilizzando un componente web che apre i processi di Microsoft Edge. Questo cambiamento indica una tendenza più ampia verso l’integrazione delle tecnologie web nelle applicazioni desktop tradizionali.
Lascia un commento