Xbox One Development

Je kunt nu ook Windows 10 apps bouwen voor en deployen naar je eigen Xbox One. In de Xbox One app store moet je zoeken op Developer Activation en je krijgt een app. Nadat deze geïnstalleerd is, krijg je een code. Deze moet je dan op de aangegeven URL invoeren; https://developer.microsoft.com/en-us/XboxDevices. Je Xbox wordt dan ingesteld (zie NB).

xbox_06

Meer informatie is hier te vinden. https://developer.microsoft.com/en-us/windows/windows-apps/uwp-on-xbox

Daarna is het ontwikkelen net zo gemakkelijk als voor Windows Core IoT. In Visual Studio doe je File –> New –> Project en vervolgens Windows –> Universal. Bij Run kies je voor Remote Machine en vind je de Xbox One in je netwerk. De Xbox en je ontwikkel PC moeten wel in hetzelfde netwerk zitten.

xbox_01

Daarna Runnen! Het duurt even en dan zal de app op je Xbox openen. De cursor kun je met de Xbox controller.

IMG-20160712-WA0007

Ik vond het erg gaaf!

xbox_02

Op de knop drukken gebeurd dan gewoon met de X button op je controller.

xbox_03

De code is normale .NET Universal App code.

xbox_05

Notabene: Als je de app geïnstalleerd hebt, dan kun je je Xbox niet meer als normale Xbox gebruiken. Spelletjes spelen gaat dan niet meer lukken. Je moet de Developer mode uitzetten om het als normale Xbox te gebruiken.

Happy programming!

Microsoft Hardware

In oktober Microsoft kondigde veel nieuwe hardware aan. Uiteraard was daar de vierde opvolger van de Surface Pro, maar ook een Surfacebook, Band 2 en nieuwe telefoons. De laatste twee werden verwacht en iedereen keek er reikhalzend naar uit. Nu zijn alle aangekondigde devices verkrijgbaar en heb ik ze de afgelopen weken veelvuldig gebruikt. Laten we ze een voor een aflopen.

Surface Pro 4

Surface Pro 4 is het enige device dat ik niet gekocht heb. De grootste verschillen ten opzichte van de Pro 3 zijn niet al te groot. De webcam bevat nu ook een infrarood camera waardoor deze te gebruiken is met Windows Hello. Ze hebben uiteraard de CPU geüpgraded, maar ook het scherm iets opgerekt zonder het apparaat groter te maken. Dat is handig, want nu is de docking-station van de Pro 3 nog steeds bruikbaar.

Met deze nieuwe versie is er wel een upgrade gekomen van de Typecover. Het typevermogen op de vorige type cover kwam al redelijk overeen met een normaal toetsenbord, maar daar is nu een extra stapje gemaakt. Tussen de toetsen zit nu iets meer ruimte en de toetsen lijken iets hoger. Het mouse pad is breder. Er is ook een variant met een fingerprint reader. Deze is er vooralsnog alleen in het zwart en niet verkrijgbaar in Nederland.

Handig aan dit toetsenbord is de FN toets. Daarmee kun je aangeven of de toetsen aan de bovenkant zicht moeten gedragen als Functie toetsen of de Windows 10 functies moeten uitvoeren (geluid harder zachter etc). En deze knop kun je locken, dus je hoeft nooit meer verschillende toetsen gelijktijdig ingedrukt te houden.

Deze upgrade van de type cover kan ook gewoon gebruikt worden op de Pro 3.

clip_image002

Windows Phone 950 XL

clip_image004

Lang is er uitgekeken naar het vlaggenschip telefoon van Microsoft, de Lumia 950. Deze is er in twee varianten een gewone (5.2 inch) en een XL (5.7 inch). Deze telefoon zijn standaard uitgerust met Windows 10. Als je al gespeeld hebt met de previews van Windows 10 Mobile, dan ken je de verschillen al. Mocht je nog niet zover gekomen zijn of je daar nog niet aan gewaagd te hebben, dan hier een paar. Bij Windows 8.1 was bijna alles gedaan vanuit het oog van de telefoon eigenaar. De people hub was ver geïntegreerd met de verschillende social networks. Als je een contact selecteerde dan kon je (mits aanwezig) ook zijn activiteiten op de social networks zien. Dit is geen onderdeel meer van de contact lijst van Windows 10. De Mail client is gewijzigd en is nu de Universal app die we ook op andere platformen kennen. Persoonlijk vind ik het erg prettig werken, maar als je veel gebruikt maakte van de linked mailboxes dan ga je dat missen. Je kunt de verschillende mailboxen wel apart pinnen op je startscherm. In een vergelijking tussen de 950 en 950XL hebben we gezien dat de mail app zich wel anders gedraagt bij de hogere resolutie van de XL.

clip_image006

En zo zijn er nog wel een paar dingetjes. De vierkante plaatjes zijn nu rond en we hebben de beschikking over de Edge browser. Hier en daar is het even wennen, maar over het algemeen kan ik er prettig mee werken zowel zakelijk als prive.

Een grappige gimmick is de integratie met Windows Hello. De camera ondersteunt nu ook deze functie. Dat doet hij redelijk goed, ook in het licht en in het donker. Het staat wel een beetje raar om je gezicht zo dicht bij het scherm te houden.

Ander gave gimmick is Continuum. Het is al veel gezegd, maar onze telefoons van tegenwoordig zijn krachtiger dan de computers van bijvoorbeeld de Spaceshuttle. Dus waarom zouden we een telefoon niet op een scherm kunnen aansluiten voor de meest voorkomende zaken zoals browsen, mail of documentverwerking. Tegenwoordig zijn al onze zakelijke toepassingen als webapplicatie beschikbaar en dus kunnen we met een thin client prima uit de voeten.

Met de los verkrijgbare Display dock kun je Lumia 950 aansluiten op een HDMI scherm. Op de dock zitten USB poorten voor bijvoorbeeld een toetsenbord of muis. Uiteraard kunnen deze ook via Bluetooth aangesloten worden.

clip_image008

Het koppelen aan een scherm kan ook via de Microsoft Wireless Display adapter. Dat scheelt nog meer kabels.

clip_image010

De applicaties die nog niet beschikbaar zijn, zie je als donker in het Start menu. Dit lijkt mij een goede toekomst te hebben, zeker voor sales presentaties etc. Nu nog een high definitie handzame beamer of een beam functionaliteit op een telefoon.

Microsoft Band

Twee jaar geleden kwam ineens de Microsoft band in beeld. Niemand was er op voorbereid en zag het ding aankomen. De voorraad was beperkt en de belangstelling was erg groot. De band was een Fitness band met Smart watch functionaliteit (daar komt nog een artikel over). Na de eerste opwinding kwamen natuurlijk de minpunten naar boven. Het apparaatje is nogal vierkant en het laadpunt zat op een ongelukkige plek, daar was hij onderhevig aan corrosie. Maar over de functionaliteit was iedereen het eens, een mooie apparaat.

Veel van de commentaren heeft Microsoft gehoord en een oplossing voor bedacht. Met de nieuwe versie is hij minder vierkant en is het aansluitpunt verplaatst naar de sluiting weg van zweet en vocht. Hij is ook meer gestyled met een gebogen scherm en een premium uitstraling. Aan de functionaliteit is niet veel gedaan, want dat zat redelijk snor.

clip_image012

Surfacebook

De grote verrassing bij de presentatie van de nieuwe hardware was de Surfacebook. Hoe goed de Surface Pro 3/4 ook is, door het toetsenbord wiebelt het als het in je schoot ligt. De meeste laptop liggen en werken dan gewoon beter. De Surface Pro is ook eerst een tablet en dan een laptop. De Surfacebook heeft een vast en stevig toetsenbord. Het toetsenbord heeft dezelfde indeling als de nieuwe Typecover.

Met behulp van een knop kan het scherm losgekoppeld worden en heb je alsnog een tablet.

clip_image014

De Surfacebook is ruim groter dan een Surface Pro. Maar valt absoluut niet in het niets bij de andere normale laptops. Ik heb hem kunnen vergelijken met een Lenovo Yoga Pro 3. De Yoga heeft een breder scherm, maar voor de rest doet hij niet onder.

clip_image016

Surface Pro 3, Samsung, Surfacebook

In het begin was ik niet heel erg tevreden. De hardware en software waren niet goed op elkaar afgestemd, waardoor het ding regelmatig hing of niets meer wilde doen. Dat is nu heel anders, er zijn twee firmware updates geweest en die hebben veel pijnpunten opgelost. Mijn Surfacebook doet wat ik er van verwacht en ligt lekker in mijn schoot als ik aan het werk ben op de bank.

Conclusie

Microsoft heeft met hun nieuwe Windows 10 hardware laten zien dat ze terug zijn waar ze ooit begonnen zijn. De hardware begint er steeds mooier en gestyled uit te zien. Ze luisteren ook naar de op en aanmerkingen uit de markt/community. Helaas geven ze weinig feedback via deze kanalen terug. Leuke spullen voor onder de boom of in de Sinterklaaszak.

Windows 10 on Raspberry PI 2

Het mooie van Windows 10 op zowel je Raspberry PI 2 als op je computer/laptop is dat je op een manier kunt te ontwikkelen. Een Universal Windows App voor je laptop Windows zal zonder veel aanpassingen kunnen draaien op een Raspberry PI 2.

Het is heel eenvoudig. In Visual Studio maak je een Universal Windows App. Door F5 kun je hem op je computer testen. Dat duurt even, maar dan zul je zien dat deze app gewoon start.

Om dezelfde app op de Raspberry PI te starten moet een aantal stappen doorlopen. Je normale computer is een x86/x64 solution Platform. Een Raspberry PI is gebaseerd op ARM technologie net als vele mobile devices.

image

Als je het solution Platform ARM gekozen hebt, dan zal Visual Studio kiezen voor Device. Dat klopt als je een Universal Windows App maakt voor een Windows 10 Phone of Tablet. Voor een Raspberry PI moet je kiezen voor Remote Machine.

Daarna moet je wat gegevens van de Raspberry PI opgeven. Vaak zal de Raspberry PI ook automatisch gedetecteerd worden.

image image

Dan weer F5. Visual Studio gaat builden, packagen en Deployen.

image

Zonder enige aanpassingen aan de code kun je dezelfde app draaien op een Raspberry PI 2. Leuk he. One OS voor alle devices.

In onderstaande filmpje demonstreer ik het live.

Windows10 XBox ONE streaming

Als je in het bezit bent van een Xbox One en je computer geupdated hebt naar Windows 10, dan behoort dit ook tot de mogelijkheden.

In het startmenu is een tile beschikbaar met de naam Xbox. Als je hier op klikt, dan log je met je Xbox account (wat overeenkomt met je Microsoft Account). Je kunt dan je status zijn, je vrienden, je achievements etc zien, zoals je dat ook op je Xbox One zou zien.

image

Maar als je hier klikt, dan kun je ook alle Xbox One’s in je netwerk vinden. Je kunt je Xbox One zelf remote aanzetten.

SNAGHTML4fdefdb

Als je de juiste selecteert, dan klikt op Stream. Dan maak je een soort van RDP connectie met je Xbox. Je PC moet dan wel een Xbox controller hebben. Zit je dicht bij je Xbox, dan kun je wel streamen op je laptop en gebruik maken van je Xbox controller.

Je kunt niet alles, bijv Netflix streamen gaat niet, maar een spel spelen gaat prima.

Wil je weer terug, dan druk je op ESC.

Gaaf he.

Windows 10: Hello Windows

Met Windows 10 komt er een nieuwe manier van inloggen bij. Kon je in Windows 8 al inloggen met je Microsoft Account, een PIN code of (vooral handig voor Tablets) een Picture wachtwoord. Met een vingerafdruklezer kon je ook inloggen met je vingerafdruk.

Nu komt daar ook het inloggen met je gezicht bij. Daarvoor heb je een Real Sense camera nodig. Er zijn al een aantal laptops verkrijgbaar met deze camera ingebouwd. Het moet straks ook mogelijk zijn om met een Kinect Sensor v2 in te loggen.

In dit filmpje een korte impressie.

 

Gaaf he!

WP_20150727_11_14_44_Pro

.NET on Raspberry PI 2

In een vorige blogpost heb ik verteld over Windows 10 IoT Core. Grote voordeel is, dat je in C# kunt programmeren en er een grafische schil om heen hebt. Maar het gros van de IoT devices zullen niet aan een monitor hangen of interactie van de gebruiker verwachten. De meeste IoT devicesverzamelen data en geven deze af of controleren een omgeving en verwachten stuurinformatie.

Ondanks dat er verschillende goede redenen zijn om gebruik te maken van Windows 10 IoT Core, het is voor een Microsoft omgeving niet perse nodig. Ook op een NOOBS (New Out of the Box Software) OS kun je prima .NET gebruiken.

Al enige jaren is het Mono project gaande en daar ligt de key van multi platform.

Op je Raspberry PI 2 kun je dan: sudo apt-get install Mono-complete doen. Daarmee wordt Mono op je Rasp gezet.

Met het krachtige Owin mechanisme kun je een ASP.NET website hosten op je Rasp.

6-14-2015 12-45-22 PM

Het resultaat:

6-14-2015 12-23-21 PM

Het is een Webserver waarin je ook een WebApi kunt hosten.

6-14-2015 12-46-19 PM

Het resultaat:

6-14-2015 12-44-29 PM

Best handig. Ik heb ook een voorbeeld waarbij een Raspberry PI 2 informatie in een Azure Storage queue zet. Daarover later meer, want hier horen meerdere bedenkingen bij.

Project Oxford

Tijdens de //Build/ Conference lieten ze hele gave demo zien; de foto herkenningssite (http://how-old.net/).

image

Project Oxford (http://www.projectoxford.ai/) is basis van deze app. Deze API biedt heel veel mogelijkheden. En het mooiste is, je kunt hem ook zelf gebruiken.

image

Er is een hele volledige en goed gedocumenteerde API beschikbaar. Voorlopig zijn de API’s nog gratis, maar erg leuk om mee te spelen.

image

De basis achter deze API is Azure Machine Learning. Er is een gratis e-book over Machine Learning. Deze is erg leesbaar en geeft je de basis van Machine learning.

Tijdens de afgelopen Ignite Conference was er een erg leuke tweede keynote. Deze werd gedaan door de Technology and Research afdeling. Ze vertelde hoe zij al jaren bezig waren met research voor producten die nu beschikbaar kwamen. Zoals bijvoorbeeld PowerBI en de vertaalmachine van Skype etc. Grappige demo over Data analyse en historische data.

Als je in de Big Data zit of daar affiniteit mee hebt, dan zou ik zeker naar deze sessie kijken (Ignite KEY02   The Next Era of Computing: Seeing the Future Before It Happens).

Tijdens een IoT Hackaton hebben we een Raspberry PI 2 gekoppeld aan een camera en de gemaakte foto’s door deze API gehaald. Het werkte erg leuk. Helaas konden we niet gebruik maken van Windows 10 IoT Core.

Windows 10 Development: Small and Big Screens

Met de komst van Windows 10 en het feit dat deze op alle devices aanwezig is, is de Universal app zoals we die kennen in Windows 8.1 weg. Dat maakt het weer een stuk eenvoudiger, maar gelijktijdig ook lastiger.

image image

Voorheen had je een project voor Windows Phone en de schermen van je applicatie in dit project waren alleen voor mobile devices. Als alles in een project zit, dan moet je daar toch anders mee omgaan.

Gelukkig biedt het Windows 10 development SDK een aantal krachtige middelen. Zoals bijvoorbeeld een RelativePanel. Op een RelativePanel kun je van controls vertellen wat hun relatieve positie is ten opzichte van andere controls. Veel handiger dan voorheen, daar zat je te knoeien met margins of absolute posities. Waardoor je raar gedrag kreeg bij andere schermen etc.

image

Nog een mooie is een SplitView, waarbij je een Content en een Pane gedeelte hebt. Tenslotte hebben we al gauw een menu en een detail gedeelte op het scherm staan.

image

Maar hier heb je allemaal niets aan, als er niet een eenvoudige manier is om ze te manipuleren. Tenslotte is het in de XAML / MVVM wereld niet meer gebruikelijk dat je Events afvangt in Code. Daar is dan ook een mooie oplossing voor.

De VisualStateManager, die bestaat uit VisualStates met een StateTrigger en StateSetters.

image

Van de VisualState geef je dan aan wat de MinimalWidth of Height is en met de Setters geef je aan wat er dan moet gebeuren.

image

In mijn SDN evaluatie app voorbeeld ziet dat er dan als volgt uit. De eerste is bij een minimale breedte van 720 en de tweede is het alternatief. Dit werkt ook zo op een Windows Phone met Windows 10, waarbij het toestel in landscape of portrait gehouden wordt.

image  image

Zoals je ziet hebt ik een hamburger menu toegevoegd, wat ik jammer vind dat dit geen control is. Het is een toggle button met een Font (Segoe MDL2 Assets) en een Glyph.

image

Het werkt wel aardig en ik hoop dat ze het nog iets mooier maken.

Leuke sessie op Ignite: BRK2310 From the Small Screen to the Big Screen: Building Universal App Experiences with XAML

(disclaimer ik ben geen XAML goeroe, ik kan er een beetje mee omgaan)

Windows 10 IoT Core

Sinds de //Build/ conference is een technical preview van Windows 10 for Raspberry PI 2 beschikbaar. Daarmee komt de belofte van Microsoft (Windows op alle devices) een heel stuk dichterbij.

Uiteindelijk zullen er drie versies van Windows 10 IoT beschikbaar zijn: For Industry Devices, Mobile Devices en Core. Het installeren van de Windows 10 IoT Core op een Raspberry PI 2 is heel eenvoudig.

Meer informatie op http://windowsondevices.com en demo’s http://ms-iot.github.io/content/win10/StartCoding.htm.

win10_core_01

Als je deze richtlijnen volgt, dan zie deze schermen langs komen. De eerste opstarten van Windows 10 IoT Core kan iets langer duren, er worden dan allerlei instellingen gedaan. No worries daarna gaat het echt veel sneller.

WP_20150516_17_33_01_ProWP_20150516_17_33_21_ProWP_20150516_17_35_13_Pro

Als het allemaal klaar is, dan zie je dit.

win10_core_02

In deze vroege versie zijn er aantal dingen nog niet op orde, maar dat zal wel gauw veranderen.

Op een Windows 10 machine met Visual Studio 2015 kun je dan een ‘normale’ Windows Universal App maken. Deze kun je dan deployen naar je Raspberry PI 2 en standaard debug F5 experience werkt dan gewoon.

 win10_core_03

Er zijn in de IoT makers world allerhande componentjes te krijgen en een aantal werken ook gewoon op de Raspberry PI 2 met Windows 10 IoT Core. Kijk goed naar de voorbeelden op http://windowsondevices.com.

WP_20150522_11_21_17_ProWP_20150522_11_25_41_Pro

Inmiddels heb ik een aantal componentjes in bestelling staan en zal ik in een latere blogpost terug komen met uitgebreidere voorbeelden. Dit is leuk Knipogende emoticon

Consume Modern SaaS EndPoints with Visual Studio 2015

We kennen allemaal de functionaliteit van Visual Studio om een Service reference te doen. Hiermee kun je een beschikbare Services eenvoudig in je applicatie consumeren. Vanuit je code kun je dan redelijk eenvoudig bij de methode van de service komen etc. Het gaat voor hier te ver, meer informatie kun je hier vinden.

Service Reference is lastig als de service credentials nodig heeft. De credentials waarmee je de reference maakt, is vaak niet de gewenste voor je toepassing. Daarnaast zijn er vaak services waar je nog enige configuratie aan moet/wilt doen. Via de configuratie bestanden is het niet onmogelijk, maar zonder de juiste documentatie niet eenvoudig.

Soms hebt voor een Service Reference ook nog verschillende componenten/libraries of zo nodig. Daarvoor is de handige toevoeging Visual Studio NuGet toegevoegd. NuGet is anoniem en heel generiek; je kunt als aanbieder componenten aanbieden aan anderen, maar je kunt niet veel zeggen over de configuratie.

Eigenlijk is er behoefte aan een combinatie tussen deze componenten.

In VS2015 zit nu Connected Services. Met Connected Services krijg je een Wizard ter beschikking waarbij je de juiste parameters kunt invullen en de juiste componenten kunt toevoegen aan je eigen project.

Het aantal Connected Services is nog niet groot, maar App Insight, Mobile Services, Storage en Salesforce zijn aanwezig.

Het is een open systeem. Iedereen kan zijn/haar eigen connected services aanbieden en invoegen. Hierbij kan een derde partij een wizard toevoegen.

connectedservices

Wil je de sessie terug kijken, zoek dan naar Ignite sessie BRK3706 op Channel 9 (https://channel9.msdn.com/Events/Ignite/2015/BRK3706).