De tweede dag begint – net als de eerste – met achtduizend software developers in een enorme zaal in het Moscone Center in San Francisco. Als eerste komt Scott Guthrie het podium op, natuurlijk gekleed in een rood shirt dat zijn handelsmerk is geworden. Hij begint te vertellen hoe enorm de groei van Microsoft Azure is: veertien datacenters over de hele wereld en miljoenen servers.
Volgens Guthrie hebben ze vorig jaar meer dan driehonderd features toegevoegd, en dat zal dit jaar toenemen. Er worden nu 44 nieuwe features aangekondigd. Een paar voorbeelden komen voorbij: bij de release van Halo op Xbox draaiden er honderdduizend Azure virtual servers om de online A.I. (artificial intelligence) te verwerken. De introductie van Halo is vlekkeloos verlopen, wat bij andere populaire games met een online component wel eens anders is verlopen.
Visual Studio web development
Mats Kristensen, auteur van de Web Essentials extensie voor Visual Studio laat een indrukwekkende demo zien van nieuwe features voor web developers. Hij laat zien hoe het nu mogelijk is om tijdens ontwikkeling van een website wijzigingen in Chrome Developer tools te maken en die terug te sturen naar de broncode in Visual Studio waaruit de html of css is gegenereerd. Dat is een feature waar web developers en web designers al jaren op wachten!
Yavor Georgiev komt het podium op, om ons te vertellen over Azure Mobile Services. Op het podium bouwt hij een mobiele applicatie met een backend service voor afhandeling van facilitaire aanvragen. De applicatie gebruikt de login service Azure Active Directory. Aan de achterkant integreert hij Sharepoint online: tijdens het proces wordt een Word-document gegenereerd en opgeslagen in Sharepoint, waarin alle informatie van de aanvraag (waaronder foto’s) zijn vastgelegd. Nadat de applicatie getest is op Windows, wordt ook een versie getoond die werkt op iOS, gemaakt met Xamarin. Dezelfde applicatie, maar dan op iPad. Er zijn weinig details, maar als Xamari- gebruiker weet ik dat dit niet uit het niets is ontstaan: de business logic kan je één op één overnemen maar voor een Xamarin app moet je tot op heden de native user interface wel ontwerpen en ontwikkelen.
Open Source van Microsoft
De volgende gast op het podium is Anders Hejlsberg, verantwoordelijk voor programmeertalen bij Microsoft. Hejlsberg gaat het deze keer niet hebben over typescript, maar hij begint over het project ‘Roslyn’, het nieuwe compiler platform van Microsoft. De eerste aankondiging is dat Microsoft dit hele project open source gaat maken! Als feestelijke opening drukt Hejlsberg op het podium de ‘Publish’- button waarmee de Roslyn broncode openbaar wordt gemaakt.
Verder kondigt Hejlsberg de .net foundation aan. Dit is een stichting die het beheer krijgt over verschillende open source onderdelen van het .NET-platform. Een aantal bekende mensen in de open source .NET community zijn oprichters van deze stichting. Miguel de Icaza van Xamarin is één van de oprichters, en naast Microsoft heeft ook Xamarin verschillende libraries ingebracht. Maar helaas heeft Microsoft het niet aangedurfd om het hele .NET-framework in te brengen, wat ik eigenlijk had gehoopt. Zolang ze dat niet doen zal .NET voor open-source aanhangers en startups een no-go area blijven.
Toch is deze aankondiging misschien belangrijker dan je op het eerste gezicht zou vermoeden: de C#-compiler is nu open source, en kan dus ook gebruikt worden op niet-Microsoft platforms. Xamarin gaat hier zeker veel plezier aan beleven. Maar de aankondigingen waarop ik had gehoopt blijven uit: geen overname van Xamarin, en belangrijke delen van het .NET-framework blijven gesloten, waardoor Mono nodig blijft en niet-Windows platforms het moeten stellen met een minder goede en minder snelle implementatie van .NET.
Een uur developer demo’s
Dan gaat de keynote verder. Steve Guggenheimer komt het podium op. Guggenheimer, ofwel ‘Guggs’ is een drukke en luid sprekende presentator. Hij kondigt een nieuwe beheerportal aan voor Windows Azure. De huidige portal is er pas een jaar en werkt best goed, dus dat is een verrassing. De nieuwe portal is vooral beter uit te breiden met modulaire functionaliteit, ook door partners. Beheerpagina’s worden gepresenteerd binnen ‘Blades’, die naast elkaar verschijnen. Dat wordt onderstreept in de volgende onderdelen: er komt verbeterde resource monitoring (je kunt realtime volgen wat je applicatie-hosting kost, en hoe de kosten zijn opgebouwd) en een online versie van Visual Studio (project ‘Monaco’). Beide toepassingen zitten in een Blade in de nieuwe portal.
Guggenheimer wordt nu geflankeerd door John Shewchuk, technical fellow (een eretitel voor de belangrijkste technische denkers binnen Microsoft). Samen doorlopen ze een groot aantal demo’s. Ze migreren een oude VB6-applicatie naar C# en vervolgens html5 in de cloud. Ze tonen de app Flipboard, als Universal app voor Windows en Windows Phone, gemaakt met hyml5, en draait vloeiend ook op de goedkoopste Lumia. Dan laten ze de niewe Geo-Fencing functionaliteiten zien in de Foursquare App. Foursquare updated livetiles met nieuwe informatie als het een gegeven gebied binnentreedt, dat is een redelijk subtiel iets om te doen (ik verwacht dat andere applicaties ons al snel met messages zullen gaan spammen als iBeacons en Geofencing gemeengoed worden).
Dan laten ze de app Vesper zien, een app om notities te maken die 100 procent op iOS is gericht. Het bedrijf achter Vesper wilde eigenlijk helemaal geen bijbehorende service ontwikkelen, maar moest wel omdat gebruikers er massaal om vroegen. Vesper koos (ondanks de afkeur tegenover Microsoft die je aanvoelt in het verhaal) toch voor Azure, omdat dat hen maximaal tijd en zorgen bespaart: beheer en updates zijn altijd geregeld, een service programmeren voor Azure is eenvoudig dus de ontwikkelaar kan zich maximaal op ontwikkeling van de App richten.
Dan gaat het over games. Shewchuk laat animatie zien die zeer zware physics berekeningen vraagt. Hij laat een zware game-pc bijna vastlopen op twee frames per seconde. Dan heeft hij een versie van dezelfde animatie die het rekenwerk uitbesteedt in de cloud. Die blijft wel op maximale framerate werken. Deze technologie zouden ze volgens mij ook voor Xbox moeten gebruiken om de hardware achterstand ten opzichte van Sony te compenseren.
Java op Azure
Er is nu ook officiële ondersteuning voor Java op Azure Web Sites. Dat is welkom, want er zijn veel Java-toepassingen en het beheren van servers met Java is een flinke klus, omdat Java één van de meest onveilige webtechnologieën is. Iedere maand komen er nieuwe updates, die gaat Microsoft nu voor ons installeren. Als persoonlijk project zal ik hierbij het installeren van een Minecraft server (dat ook gebaseerd is op Java) op Azure voor mijn zoon noteren. Hij zeurt daar al maanden over, maar ik wil op mijn pc thuis die software niet beheren. Als het zou werken op een (gratis) Azure website, dan heft dat in ieder geval mijn technische bezwaren op.
Afsluiter van de keynote is een demo van App Studio, een tool waarmee je een bestaande website kunt ombouwen naar een Windows App. Dat bestaat al een tijdje, maar het geeft nauwelijks toegevoegde waarde boven de website. Een nieuwe versie van App Studio voegt een feature toe: de mogelijkheid om data lokaal op te slaan en dus ook offline te kunnen werken.
Als allerlaatste demo, en duidelijk op het allerlaatst toegevoegd, is een hele goede, ware het niet dat ik hem prominent en uitgewerkt had verwacht: het vervolg op de Universal App van gisteren, maar nu met hulp van Xamarin gebouwd voor iOS en Android. Guggenheimer laat de applicatie van gisteren zien op een iPhone. Geen broncode, dus we weten niet hoe het is gedaan. Ik vermoed dat het een ‘gewone’ Xamarin versie is, met een native user interface project. Hoe dan ook: de richting is duidelijk: Xamarin moet zijn oude Moonlight-project afstoffen en op basis daarvan de huidige Silverlight 8.1 porteren naar iOS en Android. Dat zou het mogelijk maken om een Universal App direct te targetten voor iOS (iPad/iPhone) en Android.
Conclusie
Mijn gevoel na deze keynote is gemengd. Ik had gehoopt dat Microsoft verder zou zijn met het .net-platform. Ik had gehoopt op een overname van Xamarin, integratie van iOS en Android in het Universal App model en open sourcing van het gehele .NET-framework. Ik had ook gehoopt op een openlijk eerherstel (met excuus) voor de Silverlight-technologie. En ten slotte had ik gehoopt op concrete informatie en een .NET SDK voor Xbox One. Dat laatste is er (wederom) niet gekomen, het is wel beloofd maar de komende tijd moeten we het met html5 en Javascript doen.
Ik denk dat de richting met .NET goed is, maar het tempo mag echt hoger.
Weliswaar geen San Francisco, maar desondanks thuis met veel interesse en plezier je verslag gelezen. Bedankt.