Quanto emerge dagli annunci fatti ieri a New York da Microsoft ha un effetto dirompente sulla visione e sulla strategia che l’azienda di Redmond ha avuto negli ultimi 15 o 20 anni: sotto la guida del nuovo CEO Satya Nadella e seguendo la sua visione “cloud first, mobile first”, Big M fa un passo enorme per la sua storia e decide di puntare seriamente su un approccio open source . La strategia sembra davvero convinta e sincera, tanto da attirare il plauso della Linux Foundation per lo sforzo. È senza dubbio una mossa ben ponderata, ma guai a pensare si tratti di una mossa disperata: quel che serve a Microsoft è aggiungere nuovi ecosistemi a quelli che già controlla saldamente da tempo, e le scelte fatte potrebbero essere davvero quelle giuste.
L’assunto base da cui partire è il riconoscimento di un mercato profondamente cambiato dal 2000 , anno in cui Microsoft controllava solidamente il 98 per cento degli schermi in circolazione sulle scrivanie di tutto il mondo: l’esplosione del mercato mobile (che Microsoft non è riuscita a cavalcare nonostante la presenza in casa di un prodotto come Windows Mobile e la sua reincarnazione Windows Phone), la diffusione di terminali dotati di sistemi operativi altrui e la crescita di offerta di servizi offerti attraverso il browser, sono tutti fattori che incidono sulla rilevanza delle tecnologie Microsoft e la loro centralità nel panorama ICT. Quello che ha deciso di fare Microsoft per non rischiare la sua progressiva marginalizzazione è di cambiare decisamente il modo in cui offre i suoi prodotti al mercato: open source, freemium, tutte le formule che per altri ecosistemi e vendor hanno funzionato saranno le stesse armi che Redmond proverà a usare per riguadagnare la fiducia e l’attenzione del pubblico.
Bando ai proclami, le principali novità di Connect() sono tre : il rilascio con licenza open source dei componenti core di dot.NET e la sua conseguente apertura allo sviluppo interpiattaforma (un componente chiave che rimane closed source è WPF , ma per il resto si tratta di una grossa porzione di codice che cambia licenza ), l’anteprima di Visual Studio 2015 e della piattaforma dot.NET 2015 (compreso ASP.NET 5.0), il rilascio di una nuova versione gratuita di Visual Studio denominata Community e pensata per allargare a studenti, piccoli sviluppatori, non profit e molti altri settori il bacino potenziale di professionisti che investono e creano prodotti basati sulle tecnologie Microsoft. Ci sarebbe anche una quarta novità, ovvero l’update numero 4 di Visual Studio 2013 : si tratta però in questo caso di una release minore, che migliora quasi ogni componente della piattaforma ma che funge più da manutenzione che da rivoluzione in attesa delle principali novità che vedranno la luce nel corso del 2015.
Prima di tutto, la svolta open source : “È una vera e propria rivoluzione nel pensiero: anche se Microsoft ha già rilasciato codice con licenza open source qui parliamo di qualcosa di nuovo” spiega a Punto Informatico Fabio Santini , direttore della divisione Developer Experience and Evangelism di Microsoft Italia. “Il cuore di dot.NET diventa open source, parliamo di compilatore, runtime, garbage collector e altri componenti fondamentali della piattaforma. Questo equivale a dire che ora è possibile portare dot.NET ovunque, dai server Linux con ASP.NET ai Mac con Mono. Microsoft si presterà a un lavoro di guidance, tenendo d’occhio le submission fatte dalla community, validandole, integrandole quando possibile in dot.NET. In questo modo cercheremo di rendere il più possibile uniforme tutto quanto può e deve essere multipiattaforma”.
L’idea di fondo è senza dubbio lungimirante: garantire una buona dose di interoperabilità ai prodotti sviluppati con dot.NET significa di fatto rendere il framework più appetibile per gli sviluppatori e aprire a chi ci lavora già nuovi fronti su nuovi mercati in crescita. Microsoft vuole aumentare il volume di professionisti e progetti che nascono, crescono e arrivano a conclusione nel proprio ecosistema : invece di contrapporsi ad altre piattaforme prova ad abbracciarle e offre in cambio molti strumenti fino a questo punto un’esclusiva di Windows. È anche un modo per riconoscere che fenomeni come Linux o le piattaforme mobile non sono passeggeri: se davvero si vuole mettere in pratica il dettato di Nadella, ovvero raggiungere con gli strumenti Microsoft i clienti ovunque si trovino e qualunque dispositivo usano, è indispensabile fare delle concessioni e aprirsi a dinamiche di collaborazione inedite per Redmond. Sulla stessa linea si basa il secondo annuncio importante fatto a Connect() : Visual Studio Community è la nuova versione gratuita dell’IDE Microsoft , che andrà gradualmente a rimpiazzare le versioni Express allargandone la portata. VS Community è in tutto e per tutto una versione completa di Visual Studio, che fa a meno soltanto di alcuni componenti enterprise (come quelli per Office 365) ma che può essere espanso e completato tramite l’aggiunta di add-in e ogni altro strumento realizzato per Visual Studio. L’unica differenza tangibile tra la release completa e a pagamento e quella Community è il pubblico a cui è destinata : il suo uso è libero se nei team che comprendono al massimo 5 sviluppatori e nelle aziende con meno di 250 PC, ma anche per studenti, hobbysti, piccoli professionisti e piccole aziende. Mancano all’appello ad esempio gli strumenti professionali per il life cycle management , ma per il resto Microsoft mette nelle mani di chiunque un IDE completo nella speranza che divenga l’ambiente di sviluppo prescelto per sviluppare non solo su Windows ma anche su Linux, Mac, iOS e Android.
“Si tratta di un’opportunità per offrire a una nuova platea di sviluppatori o aspiranti tali uno strumento privo di limitazioni tecniche – prosegue Santini – Nelle scuole e nelle università, nella ricerca e nel training questo può diventare uno strumento importante, anche perché si porta dietro in dote tutte le novità: Cordova, l’integrazione di Xamarin, quindi la possibilità di sviluppare un app destinata ad Android, iOS o Windows Phone anche da mettere in vendita a pagamento nei marketplace, con uno strumento del tutto gratuito. Vogliamo offrire con Visual Studio Community, in cui si integra gratuitamente Xamarin Starter Kit o con l’ausilio di Cordova e le funzionalità di backend gratuite su Azure, un pacchetto per sviluppare software multipiattaforma a costo zero”. In tal senso, la partnership con Xamarin si fa sempre più stretta : “La collaborazione con Xamarin ci garantisce anche credibilità in aree relative allo sviluppo su Linux o iOS, e dunque è importante per noi che questa collaborazione sia salda e forte nel tempo”.
Visual Studio 2015 è figlio in un certo senso di queste due novità appena elencate. La nuova versione, disponibile come preview e che sarà rilasciata in via definitiva il prossimo anno , è a tutti gli effetti un tentativo di rendere l’IDE Microsoft un vero e proprio strumento crossplatform : “Puntiamo a creare un unico ambiente di sviluppo per realizzare app che giri su tutti i sistemi operativi mobile: con gli strumenti che offriamo sarà possibile riutilizzare l’80-85 per cento del codice già scritto, e il restante 15 per cento serve unicamente per differenziare la user-experience e l’interfaccia per approfittare delle caratteristiche di ciascun OS” afferma Santini. In pratica l’idea alla base delle novità di Visual Studio è la nascita di progetti che diano vita a vere e proprie universal app , da cui ricavare versioni che differiscano unicamente per l’adozione di strumenti specifici presenti sulle piattaforme destinazione (ad esempio Cortana su Windows Phone e Siri su iOS).
L’obiettivo è permettere a uno sviluppatore di utilizzare Visual Studio senza dover tenere altri IDE a portata di mano: c’è persino un nuovo emulatore Android già presente nella preview , e di nuovo l’integrazione di Xamarin nonché il perfezionamento degli strumenti Cordova del pacchetto, dovrebbe rendere pressoché indolore ipotizzare di realizzare un app che abbia come obiettivo la distribuzione contemporanea su Windows Phone e Android (iOS fa storia a parte, visto che comunque agli sviluppatori in quel caso è richiesto un Mac per svolgere alcuni test e alcune procedure di creazione delle build).
Ovviamente non si tratta delle uniche novità presenti su Visual Studio 2015. Una delle più interessanti riguarda la possibilità, tramite ASP.NET 5.0, di creare progetti che girano sul server direttamente con il framework dedicato integrato nel nugget che contiene l’eseguibile. Microsoft dice basta ai conflitti tra diverse versione dei framework sul server : le versioni più recenti di IIS sono compatibili con questa funzionalità e questa possibilità cambierà anche le modalità di aggiornamento di Windows Server, sollevando gli admin dal preoccuparsi dell’impatto degli update sul funzionamento dei servizi che girano sul server di cui sono responsabili.
Ci sono poi aggiunte e aggiornamenti che puntano direttamente alle richieste e alle aspettative degli sviluppatori: il profiler è stato integrato direttamente nel debugger, in modo tale da poter intervenire in tempo reale per individuare le eventuali cause del rallentamento di un applicazione (con un meccanismo dedicato anche alle performance della GPU); i breakpoint nel codice possono essere eseguiti in modalità condizionale, ovvero possono essere distribuiti con relativa libertà nel codice e regolare il loro funzionamento secondo delle regole stabilite dallo sviluppatore; l’integrazione tra compiler ed editor offre per ciascun errore o warning segnalato l’opportunità di consultare delle possibili soluzioni proposte direttamente dall’IDE per correggere il codice al volo (naturalmente i suggerimenti si limitano alla correttezza del codice, non alla logica impiegata); aggiornamento di C# soprattutto lato async , con il supporto in tutte le finestre in cui è possibile editare il codice dei costrutti del linguaggio: in questo modo è possibile aggiungere una riga anche in fase di debug e vederla eseguita in tempo reale.
Anche l’integrazione di Azure e in generale del cloud va avanti : rispetto alla versione 2013, con Visual Studio 2015 è di fatto possibile controllare tutti gli strumenti disponibili nel cloud di Microsoft direttamente dall’interfaccia dell’IDE sfruttando il principio dei connected service . Azure, ma ogni altro SAAS come Office 365 o Salesforce e Active Directory (questi tre sono subito disponibili nella preview di VS2015) può essere configurato e collegato direttamente all’IDE: qualunque vendor che esponga i propri servizi con delle caratteristiche compatibili con quelle dei connected service potrà essere collegato a Visual Studio e completamente sfruttato dall’interno dell’ambiente di sviluppo.
Per quanto riguarda infine Windows 10 , nella preview di Visual Studio 2015 si vedono i primi passi di un percorso che conduce fino alle universal app che in prospettiva potranno girare su tutti i device basati su un sistema operativo Microsoft: un progetto può contenere codice condiviso e un core che contiene la logica di base comune a tutte le piattaforme, da cui lo sviluppatore può partire per realizzare app specifiche in grado di girare su tutti i device dell’ecosistema, personalizzando l’interfaccia per garantire la miglior esperienza su ciascun form-factor e OS. Anche Blend, altro componente chiave dello sviluppo su Windows, sarà migliorato per integrare i due mondi e WPF verrà aggiornato per ottimizzare questo processo.
“Il nuovo mondo dell’informatica e le nuove applicazioni sono app multidevice, spesso profondamente connesse al cloud: il mercato va in questa direzione, e gli strumenti che consentono la creazione di questo tipo di applicazioni erano già presenti in Visual Studio 2013 ma sono stati ampliati e potenziati in Visual Studio 2015” continua Santini nella sua conversazione con Punto Informatico : “È possibile portare avanti il proprio lavoro in un unico ambiente senza abbandonarlo, con compilatore, servizi e tutto quanto occorre per portare a termine il progetto: si può costruire un backend in OBJS e il frontend in Xamarin, unendo funzioni mobile e cloud tutto in un solo ambiente. Con Visual Studio 2015 è possibile creare un’app multipiattaforma, che incorpori notifiche PUSH, single-signon, un backend con funzioni async senza mai abbandonare l’IDE”.
Tirando le somme, quindi, Microsoft prova a rimettersi al centro del panorama dell’IT partendo da una delle categorie essenziali di questo mondo: gli sviluppatori. L’apertura di dot.NET con il rilascio di componenti fondamentali della piattaforma con licenze open source punta a creare attorno al framework di Redmond una community più ampia dell’attuale : “Utilizzeremo la Foundation per promuovere la community, riconoscendo che ciascun approccio allo sviluppo del software ha i suoi vantaggi e svantaggi – spiega ancora Santini – L’open source è un grandissimo paradigma ma non sempre può risolvere tutti i problemi, e noi intendiamo mantenere una posizione precisa rispetto alle nostre intenzioni e obiettivi: allo stesso tempo intendiamo abbracciare realtà diverse dalla nostra, siamo sempre dei venditori di software ma non intendiamo per questo svilire altre filosofie di approccio del mercato”. C’è una parola chiave che anima l’intero spirito degli annunci, che incarnano più che mai l’approccio di Nadella alla rifondazione di Microsoft dopo oltre un decennio di gestione Ballmer: “Il messaggio chiaro che vogliamo trasmettere è: interoperabilità – conclude Santini – In queste mosse c’è una grande apertura”.
a cura di Luca Annunziata