Yesterday I gave a talk about Windows UI Composition @ local Cancel conference. Here's the slide deck I used, along with (part of) demo code (most demos were shown through my smart home dashboard).
Cancel2016.zip (541.75 kb)
I’ve just posted slides from today’s re//build Slovenia event, where I talked about Windows Phone 8. Download the source code from here.
Voice speech/recognition demos were the fun part and they actually worked better than I had expected. What surprised me is a lot of people still haven’t heard of (or used) the MVVM pattern, which, in one form or another, can help you a XAML world of development a lot. And lately it’s getting quite popular on the HTML side as well.
Let’s change that.
Dear Slovenian developers and UI enthusiasts, mark your calendars for 8th of November 2011 as that’s the day we’re launching a new user group targeting the UI/UX professionals.
SIUX – Slovenian UX User Group – a sister user group (or a Siamese twin group as we fondly call it ) of now years-running SLODUG, Slovenian Developers User Group (SLODUG), where we’ll focus on technologies and areas like WPF, Silverlight, HTML5, Kinect, Windows Phone, Windows 8; talk through their visual and interaction design aspects; explore user interface examples, usability and related factors.
SLODUG and SIUX will share their members and meeting place. As mentioned, the first, inaugural meeting, will take place on Tuesday, 8th of November 2011, starting at 17h. Two talks are scheduled for the meeting: Developing for XBox Kinect by Sašo Zagoranski and Metro: the UI of the future? by me. The meeting will take place in Microsoft Lecture room at Šmartinska 140.
17:00: Intro & announcements
17:15 – 18:00: Developing for XBox Kinect, Sašo Zagoranski / Semantika d.o.o.
18:15 – 19:00: Metro: UI of the future?, Andrej Tozon / ANT Andrej Tozon s.p.
19:00: Discussion over pizza & beer
We’re also looking for speakers – if you’re interested or know anybody from the field, please contact me and we’re schedule your talk in one of our next meetings.
Hope to see you!
Until then, you can follow us on Twitter or join our Facebook group.
MVVM is a topic that can easily take hours of discussion. Unfortunately, I only had less then one to talk about (at least some of) its goals, parts and possible implementations. Below is my slide deck:
And the code: download
The code is structured in a way that helps you see the changes in the code while progressing through the samples. Just follow the numbers (e.g. MainPage1, MainPage2, and so on). It’s mainly Silverlight code, with the last example being example of an easy transition to Windows Phone.
The sample application is a conference app that lets you see available sessions. I removed the online data endpoint so the online samples won’t work, but you’ll get the feel using the offline data provider. Speaking of data providers, there are three (online/Ntk, using OData endpoint, Offline (loads Xml file from resources), and Json (same as Ntk, just for getting data in Json format – you know, for the phone ).
Once again, I have to stress out that code is for demo purposes only - while it’s minimized one end, it may be overly complicated on the other. Also, Silverlight Toolkit and JSON.NET libraries that were added through Nuget are not included in the zip.
Ah yes, the slides are in Slovenian language.
My “What’s new in Silverlight 5” session at NTK was mostly about showing sample code and samples, so no slide deck this time. The enclosed Visual Studio Silverlight project is configured for running Out-of-Browser, with GPU acceleration enabled, and requiring elevated permissions.
It’s basically a very basic video player application, used for playing videos from three preconfigured video sources: one’s your “My Videos” folder, one’s a custom local disk folder, and the last one is your favorite online TV show: the Silverlight TV (yes, it parses show’s feed to get the episodes list and info).
These sources play accordingly to the elevated permissions additions, made in Silverlight 5. The sample applications show off a lot of new Silverlight 5 features, some of them not so easily discoverable. Be sure to check out the source code to find them. This is a demo project and the code is somewhat unstructured. I’ll cover some of the new features in more details in the future, when Silverlight 5 fleshes out a bit more.
Download the sample project
I’m publishing the materials from my “Silverlight and NUI” talk from this year NT conference. The talk, where I took the time to dig a bit deeper into Silverlight multi-touch and web camera access capabilities, was part of the whole-day track, themed as “Building applications with NUI”.
[The slides are in Slovenian language]
During my talk, I made some references to the following applications and libraries:
And this is the source code of apps I’d shown: SilverlightNUI.zip:
TouchDemo: primary touch point are shown as blue ellipses, all secondary ones as orange. Pressing the ‘1’ key will bring floating red circles on the canvas – you can move them around if you like. The commented out code changes the behavior of touch events so the primary touch points are not propagated to mouse clicks.
TouchManipulations uses the above-referenced Multi-Touch behaviors that let you move some pictures around. Keys ‘1’ and ‘2’ will bring up two rectangles that’ll stream your web cam feed, but in different manner: VIdeoBruh vs. ImageBrush with repeated Image captures. [Note: Images included are only placeholders – with the file length of 0 – you’ll have to replace them with proper files in order to run the demo]
The annual local Microsoft conference, NT Konferenca 2011, is starting next week in Portorož, Slovenia. I’ll be pretty busy this year – you'll find me in the following talks:
Monday morning, Europa D: Building application with NUI (Natural User Interfaces). I’ll be giving a talk on building NUI applications with Silverlight.
Tuesday, 9.45, Europa C: What’s new in Silverlight 5: I’ll be demoing features that are coming in Silverlight 5 and are available in current beta. Lots of demos, few slides only.
Tuesday, 12.45, Europa A: All you wanted to know about MVVM (Model-View-ViewModel). The pattern, explained through some practical uses, shown in demos. Silverlight and Windows Phone.
Wednesday, 8.30, Europa C: Rx – Reactive Extensions: Reactive Extensions explained through demos. WPF, Silverlight, Windows Phone.
Wednesday, 14.30, Emerald 1: Data Access Strategies for Silverlight and Windows Phone: While focused on OData, this session will cover other strategies of accessing your data in Silverlight applications as well.
For latest news, follow me on twitter directly (@andrejt) or through (semi-official) conference hashtag (#ntk11)
See you there!