Dev Box, la nuova virtualizzazione targata Microsoft

Virtualizzare le workstation di un team di sviluppatori aumentando la produttività e la sicurezza e diminuendo problemi di riconfigurazione, costi per l'hardware e l'impatto per l'ambiente.

il
Sviluppatore / Ingegnere informatico / Funzionario, Collaboratore di IProgrammatori

Ormai la virtualizzazione nei nostri computer o nel cloud è diventata realtà e quasi più nessuno si meraviglia del fatto che possiamo utilizzare “un PC dentro il nostro PC” con il suo Windows o Linux, oppure possiamo utilizzare un PC virtualizzato nel cloud (per esempio su Azure) o, ancora, possiamo utilizzare Word o Excel nel browser Internet, con una licenza a basso costo mensile di Office 365.

Chi ha creato delle Virtual Machine su Azure ricorderà senz’altro che oltre alla scelta delle risorse desiderate per la VM e alla scelta del tipo di installazione di Windows, è stato possibile anche scegliere di installare una delle versioni di Visual Studio, in modo da avere a disposizione una macchina (seppure virtuale), potenzialmente molto potente, con cui sviluppare le applicazioni in remoto, da qualsiasi postazione si desideri (anche da una spiaggia delle Maldive, seppure non molto comoda come soluzione, a causa della eccessiva illuminazione solare sullo schermo), collegandosi con Desktop Remoto.

La nuova soluzione

Le possibilità sono aumentate esponenzialmente, prima con l’introduzione di Windows 365, una soluzione comprendente Windows 10/11 su cloud, e ora con una ulteriore possibilità dedicata e ottimizzata esclusivamente per gli sviluppatori: Microsoft Dev Box.

In questo caso lo sviluppatore avrà a disposizione una workstation virtuale (o anche più di una) perfettamente funzionante, con la possibilità di creare, compilare ed eseguire le proprie applicazioni, sfruttando anche tutte le tecnologie di debug disponibili in Visual Studio. Con una opportuna configurazione sarà possibile anche collegarsi a delle risorse locali esterne alla Dev Box.

Il team di sviluppo, di cui fa parte lo sviluppatore, che avesse la necessità di modificare le caratteristiche della workstation per adattarle ai requisiti del singolo progetto su cui sta lavorando il team, potrà adattare direttamente e centralmente tutte le workstation del team, con la massima flessibilità e senza “disturbare” lo sviluppatore che potrà restare concentrato sul suo lavoro senza doversi occupare di modifiche o adattamenti dell’ambiente di sviluppo e del sistema operativo. Questa, tra l’altro, è una delle situazioni che, nelle workstation fisiche comportano la maggiore perdita di tempo per lo sviluppatore che, a seguito di anche un minimo cambiamento della configurazione del sistema, potrebbe riscontrare dei malfunzionamenti che lo costringerebbero a buttare via delle ore per ripristinare la situazione precedente.

Con Microsoft Dev Box, invece, tutta la gestione della configurazione della workstation virtuale, compresa la gestione della sicurezza, resta in carico ai tecnici dell’IT, liberando lo sviluppatore da tali incombenze e dai rischi connessi a errori di configurazione. Nel caso di “rottura” dell’ambiente, per qualsiasi motivo connesso a una errata configurazione o a un pacchetto di installazione non corretto che danneggia anche parzialmente il sistema, può intervenire il reparto IT aiutando lo sviluppatore a spostarsi su una nuova unità di Microsoft Dev Box e limitando così il “fermo macchina”, con il risultato di un maggiore tempo di attività produttiva.

L’aspetto più interessante diventa evidente quando dobbiamo lavorare su più progetti, ciascuno con requisiti di sistema diversi: in questo caso sarà possibile creare unità diverse in Microsoft Dev Box, nelle quali lo sviluppatore potrà accedere separatamente, senza il rischio di interferenze tra configurazioni diverse.

Se invece non facciamo parte di un team di sviluppo, ma siamo sviluppatori indipendenti, un altro vantaggio si vede immediatamente: non abbiamo la necessità di acquistare computer pieni di risorse (processore performante, RAM estesa, memorie di massa veloci ecc.) e quindi molto costosi, ma possiamo avere un normale PC o un portatile o anche un tablet e lavorare in remoto su macchine virtuali molto potenti, tanto potenti quanto ci serve per i nostri progetti.

Non è da trascurare nemmeno il fatto che la possibilità di lavorare su potenti macchine virtuali viene in soccorso soprattutto ora che è diventato difficile procurarsi strumenti elettronici di qualsiasi genere, a causa delle difficoltà di disponibilità e di distribuzione di prodotti elettronici. In questo modo, tra l’altro, si riduce anche l’impatto sull’ambiente, dato che diventa meno necessario sostituire troppo spesso le macchine fisiche e quindi si riducono le montagne di rifiuti tecnologici.

Quando poi il lavoro sul progetto è terminato, si può buttare via definitivamente l’immagine della Dev Box e creare una nuova Dev Box per il successivo progetto.

Valutazione in anteprima

Al momento Microsoft Dev Box è in anteprima privata, ma nei prossimi mesi sarà possibile provarlo in anteprima pubblica.

Se siete interessati alla prova, iscrivetevi subito per entrare nell’elenco dei valutatori di Microsoft Dev Box: visitate la pagina http://aka.ms/devbox-signup e lasciate i vostri dati, nonché una descrizione del motivo per cui siete interessati a provare il prodotto.

Conclusione

Con i nuovi Dev Box, Microsoft alza ancora l’asticella della virtualizzazione delle workstation in un ambito tra i più critici di tutte le tipologie di utente: quella degli sviluppatori che tipicamente necessitano di una macchina molto potente. Anzi, gli sviluppatori sono solitamente portati ad acquistare macchine sovradimensionate per poter far fronte anche alle necessità di maggiore potenza di calcolo che potrebbero emergere in futuro.

L’adozione di Dev Box porterà a molteplici vantaggi:

  • possibilità di utilizzo con il desktop remoto da una macchina leggera, trasportabile ovunque (portatile, tablet ecc.);
  • minore necessità di sostituzione della macchina fisica e quindi minori costi, oltre che minore necessità di acquisire nuovo hardware in un contesto internazionale di crisi degli approvvigionamenti di dispositivi elettronici;
  • minore impatto sull’ambiente per la riduzione dei rifiuti tecnologici;
  • maggiore flessibilità, per la possibilità di lavorare su progetti che hanno requisiti hardware e di risorse molto diversi tra loro;
  • possibilità di una gestione centralizzata delle configurazioni di tutti i dispositivi virtuali del team di sviluppo da parte del reparto IT, con facilità di transizione da una macchina all’altra in caso di malfunzionamenti;
  • gestione centralizzata e robusta della sicurezza, quando si gestiscono dati o sorgenti sensibili;
  • facilità nell’introduzione di un nuovo collaboratore del team che in pochissimo tempo (minuti!) può essere messo in condizione di lavorare sul codice senza dover attendere molto per la preparazione della workstation da utilizzare.