ottobre 2008 - Posts
In questa keynote è stato dato enorme rilievo a WPF, giustamente perché si investe ancora troppo poco su una tecnologia che è invece dotata di un notevole potenziale.
In sintesi, come al solito, ecco i messaggi chiave secondo quella che è la mia visione (da developer):
- Visual Studio 2010
- Tutto l'editor sia di codice che visuale/designer sarà realizzato in WPF
- WPF Code Editor
- Estendibile da noi come layout e come logica di funzionamento (molto interessante!)
- Designer WPF e Silverlight integrati nell'ambiente di VS2008
- Office 14
- Office OnLine (supporto per IE e FireFox realizzato con Silverlight e AJAX)
- Hanno mostrato
- OneNote OnLine
- Word OnLine
- Excel OnLine
- Si è trattato di una demo veramente efficace ... davvero "impressive" come dicono in US
- Accesso concorrente ai documenti (anche online via Office Live Workspace)
- Anche questo è un aspetto molto interessante per la collaborazione
- Windows 7 Desktop
- Kernel in comune con Windows Server 2008 R2 (bit in arrivo ...)
- Surface development: supporto nativo in WPF per lo sviluppo di applicazioni Surface (non solo il Microsoft Surface ma anche il nuovo multi-touch di Windows 7)
- Ribbon everywhere: controlli WPF nativi per creare ribbon
- WordPad e Paint: rifatti con ribbon e supporto OpenXML
- Support nativo ai dischi VHD sia come mounting in Windows, sia come device di boot nativo (fico!)
- N mila altre cose che secondo me sono di minore importanza per i DEV ma che aiuteranno gli utenti finali, come:
- Gestione automatica delle reti "Home"
- Aggancio e sharing di risorse (foto, video, musica) tra PC in una stessa rete domestica
- Supporto migliorato ai proiettori e al multi-monitor
- My Documents distribuito e dinamico
- Encryption del contenuto delle chiavette USB (chi non ha mai perso una chiavetta con sopra documenti magari riservati scagli la prima pietra ...)
- Rilascio ipotizzato per fine 2009 (se ho fatto bene i conti, ha detto 3 anni dopo il rilascio di Windows Vista)
Una sessione come sempre interessante presentata da Anders Hejlsberg. Ecco in sintesi le novità previste per C# 4.0, in forma grezza, torneremo poi sull'argomento con maggiore dettaglio:
- Dynamically typed objects
- Dynamic keyword
- Dynamic method invocation
- Dynamic conversion
- Optional and named parameters
- Default value to parameters of methods
- Named arguments while calling methods
- Improved COM interop
- Automatic object -> dynamic mapping
- Optional and named parameters
- Indexed properties
- Optional ref modifier
- Interop type embedding ("no PIA")
- Co- and Contra-variance
- out = Co-variant (cannot be a parameter, so less-derived)
- in = Contra-variant (can only be used as method parameters or write only properties, so more-derived)
Nella prima giornata di PDC Geneva è stato sicuramente l'argomento per me più interessante. Sono stati annunciati/rilasciati:
- Geneva Framework (aka Zermat): la parte di framework per interfacciarsi da .NET con Geneva e la identity federation in generale
- Geneva Server: la parte di server STS in grado di ricevere e trasformare Claim
- Windows CardSpace Geneva: il nuovo CardSpace (più leggero come caricamento e gestione)
- Microsoft Service Connector: per federare (in due click, e non è uno slogan) un dominio AD con la gestione delle identità "in the cloud"
Note importanti:
- Microsoft ha già un Gateway in produzione per federare servizi e consumer. i servizi possono essere quelli di Microsoft Cloud o servizi terzi, ad esempio di ISV. I consumer possono essere utenti di domini tramite Microsoft Service Connector (per federare domini AD) oppure utenti della rete che usano Live ID per autenticarsi.
- Il rilascio di tutta la piattaforma per ora è stato annunciato per H2 Y2009 (seconda metà 2009).
- C'è il supporto per SAML 2.0
- Ci sarà il supporto nativo per OpenID
Ho in particolare seguito un'ottima sessione erogata da Kim Cameron e il "nostro" :-) Vittorio Bertocci dove hanno mostrato a livello generale l'idea di Geneva, seguita poi da un paio di sessioni di dettaglio sulla parte di MSC (Microsoft Service Connector) e sull'uso di Geneva Framework da applicazioni web ASP.NET.
Maggiori dettagli e il download di Geneva sono disponibili qui.
La novità della keynote di oggi è stata sicuramente l'annuncio di Windows Azure: in sintesi un servizio di hosting geograficamente distribuito, proposto e gestito da Microsoft per le aziende che vogliono avere servizi quali .NET Services, SQL Services, SharePoint Online, Dynamic CRM Online e Identity Federation, oltre a potenziali N altri servizi implementati e/o forniti da realtà terze (tutti noi compresi, se lo vogliamo), nella stessa ottica.
La keynote in quanto tale è stata un po' "moscia" più per IT Manager, secondo me, che non per Developers, benché fossimo a PDC (Professional Developers Conference).
Tuttavia l'idea in sé di Windows Azure è buona ed è una naturale conseguenza di quanto sta accadendo con l'evoluzione del mondo nell'ottica dei Software + Services.
Chiave di volta di tutto il discorso è la possibilità di utilizzare servizi di Federation Identity, senza i quali sarebbe impossibile offrire servizi in outsorcing e hosting a qualsiasi realtà terza. Proprio in quest'ottica è stata "impressive" (come dicono gli americani) la demo su Active Directory e le Federated Identity: con 2 click (nel vero senso della parola) si può federare un AD e i relativi account verso dei servizi esterni.
Entro 15/20gg dovremmo avere accesso, come partecipanti a PDC, al primo giro di CTP di Azure, da quel momento potremo provarlo sul campo e vederne la stabilità e solidità.
Intanto mi vengono alcuni dubbi:
- Dal punto di vista commerciale
- Quali costi avrà la soluzione finale?
- Sarà solo per i grandi attori o ci saranno profili di accesso per realtà più piccole? Penso a piccoli ISV o alle PMI italiane, per esempio, che vogliono sfruttare Azure non per raggiungere milioni di utenti, ma semplicemente per dare in outsourcing determinati servizi critici e troppo costosi da gestire internamente.
- Dal punto di vista tecnico
- Come posso gestire dati che per varie ragioni non possono risiedere in SQL Services? Interfaccio il tutto con dei servizi locali? Così però mi creerei un single point of failure a meno che poi non ridondi anche i data services ...
- Come viene gestita la parte di configurazione dei DNS e il deployment/maintenance rispetto alla geo-clusterizzazione?
- Si prevede un sistema di staging del codice per fare testing e poi rilascio delle soluzioni quando si ritengono stabili? Come si concretizza?
- Come avviene il deployment di soluzioni "complesse" diverse dagli "Hello, PDC!" e "Hello, World!" che hanno mostrato in plenaria? Sono interessato alle dinamiche per curiosità e per capire ...
In questi giorni cercherò di approfondire questi ed altri temi ...
Dopo un lungo periodo di astinenza dal blog, causato dai troppi impegni, prima fra tutti l'organizzazione di Microsoft SharePoint Conference 2008, ma anche N progetti SharePoint e .NET sicuramente stimolanti ma anche molto impegnativi, che mi hanno assorbito giorno (e spesso notte!) negli ultimi 4/5 mesi, ora torno alla vita :-) !
Vorrei quindi da oggi riprendere a postare con un pochino più di regolarità e quale occasione migliore del bloggare da PDC 2008? Da domani inizia la vera conferenza, oggi i pre-conference non li ho seguiti perché ho preferito ambientarmi a Los Angeles, tanto di solito i pre-conference non sono poi così utili.
Ci sentiamo da domani ...