SCREENCAST: Improving perceived WPF app startup performance with MEF and a Splash Screen

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/04/05/screencast-improving-perceived-wpf-app-startup-performance-with-mef-and-a-splash-screen.aspx”;digg_title = “SCREENCAST: Improving perceived WPF app startup performance with MEF and a Splash Screen”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

I’ve been meaning to record this screencast for a LONG time.  Well, I have a presentation on MEF tomorrow.  I was originally planning on demonstrating this sample, but realized that I won’t have enough time.  However, I needed to be able to point the audience to an explanation of this sample as a follow on.  Nothing like a forcing function to get you to do something you’ve been planning on for ages;)!

In this screencast, I highlight some tips and tricks for improving perceived startup performance of Windows Presentation Foundation (WPF) applications using the Managed Extensibility Framework (MEF) and a Splash Screen.  The walkthrough focuses on using the .NET Framework 4.0.  However, MEF is available for WPF 3.5 SP1 as well at http://mef.codeplex.com

Direct link to Ch. 9 post:

https://channel9.msdn.com/posts/keydet/Improving-perceived-WPF-app-startup-performance-with-MEF-and-a-Splash-Screen/

Sample download:

http://tinyurl.com/WpfMefStartupTipsTricks

DevDinner: A Lap around Visual Studio 2010 and Team Foundation Server

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/03/19/devdinner-a-lap-around-visual-studio-2010-and-team-foundation-server.aspx”;digg_title = “DevDinner: A Lap around Visual Studio 2010 and Team Foundation Server”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

Details are on my team’s blog:

http://tinyurl.com/MAR2010DevDinner

“Microsoft Visual Studio 2010 introduces a whole host of new design and modeling tools to help enterprises and teams build software. UML Diagrams and the Layer Diagram can be used to plan and design the assets your team will produce, and communicate effectively about those designs during the entire development lifecycle. The Architecture Explorer and Graphs help you investigate and better understand the assets you have to enable more effective planning and decision making. Visual Studio also advances developer productivity with new tools for application debugging to collect more detailed diagnostic data during a test run leading to higher quality bugs that provide more insight to the developers on what actually went wrong when the bug occurred. We’ll show how Test Impact Analysis helps developers test the right automated tests from within Visual Studio, while testers know what the right set of tests to prioritize and run is given recent changes introduced by the development team. Finally, experience how the ALM tools in Team Foundation Server 2010 support agile project management and improve quality assurance efforts by facilitating great collaborations between developers and testers.”

I’m speaking at FedScoop’s Roadmap to the Cloud Summit

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/03/03/i-m-speaking-at-fedscoop-s-roadmap-to-the-cloud-summit.aspx”;digg_title = “I’m speaking at FedScoop’s Roadmap to the Cloud Summit”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

My team is participating in FedScoop’s Roadmap to the Cloud – Presented by Microsoft on March 9th at the Ronald Reagan Building’s Pavilion room in Washington DC.  I’ll be presenting as part of the Developer Track.  My session is titled “Sharing Government Data through Windows Azure using OGDI & ‘Dallas’.”  My team is responsible for OGDI.  Come check out the event and dev track if you are interested Cloud Computing.  Full details here:

http://blogs.msdn.com/publicsector/archive/2010/03/03/fedscoop-s-roadmap-to-the-cloud-summit-march-9-2010-register-today.aspx

SCREENCAST: Running Reporting Services Reports in Windows Azure


digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/24/screencast-running-reporting-services-reports-in-windows-azure.aspx”;digg_title = “SCREENCAST: Running Reporting Services Reports in Windows Azure”;digg_bgcolor = “#555555”;digg_skin = “normal”;

http://digg.com/tools/diggthis.js

digg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;


In this screencast, I show you how to run a SQL Server Reporting Services 2008 report in Windows Azure using the ReportViewer control that ships with Visual Studio 2010.  As an added bonus, I demonstrate using ReportViewer against an OData service through the use of WCF Data Services client libraries and the ObjectDataSource.


Get Microsoft Silverlight


Direct link to Ch. 9 post:


https://channel9.msdn.com/posts/keydet/Running-Reporting-Services-Reports-in-Windows-Azure/

I totally missed this… Web App Toolkits

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/23/i-totally-missed-this-web-app-toolkits.aspx”;digg_title = “I totally missed this… Web App Toolkits”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

http://www.microsoft.com/web/downloads/webapptoolkits/

“These FREE Web App Toolkits help you complete common web development tasks and quickly add new features to your apps. Whether it’s Bing Maps integration or adding social capabilities to your site, there’s a toolkit for you. Download and install them today.”

http://blogs.msdn.com/webapptoolkits/

My friend and coworker Vlad made me aware of these.  I’ve been living in the dark.  Apparently, they have been around since September.  I didn’t even know they exist until last week. 

Here’s a dump of all the toolkits available as of today:

Web App Toolkit for "Freemium" Applications
Web App Toolkit for Calendars
Web App Toolkit for Bing Maps
Web App Toolkit for IE8
Web App Toolkit for Bing Search
Web App Toolkit for REST Services
Web App Toolkit for Mobile Web Applications
Web App Toolkit for Template-Driven Email
Web App Toolkit for Making Your Website Social
Web App Toolkit for FAQs

You will find screencasts for most of the toolkits at https://channel9.msdn.com/tags/web+application+toolkit/.  I just checked out the IE8 toolkit screencast.  You basically get ASP.NET controls that simplify the building of Web Slices, Accelerators, and Visual Search Providers for IE8.  You also get a sample site that incorporates the controls. 

I will be watching the rest of the screencasts over the next week or so.  Good Stuff!

Multi-Touch Dev Dinner this week in Reston, Va

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/22/multi-touch-dev-dinner-this-week-in-reston-va.aspx”;digg_title = “Multi-Touch Dev Dinner this week in Reston, Va”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

In case you missed it through the DevDinner tag on my team blog (official place for Developer Dinner posts), MSDN Flash, or http://communitymegaphone.com

Timezone: Eastern Time

Start Time: 2/24/2010 6:00:00 PM

End Time: 2/24/2010 8:00:00 PM

Title: Microsoft Developer Dinner: Hands-on Natural User Interfaces: Multi-touch development with Silverlight and WPF 4

Description:
The Natural User Interface (NUI) is the next revolution of human-computer interaction. Microsoft Surface has shown the potential of multi-touch NUIs to uniquely engage users, and multi-touch tablets and displays are becoming more and more common. This talk is focused on how you can create multi-touch NUIs for these devices. You will learn the difference between manipulations and gestures, when to use each, and how to implement specific NUI design concepts with both Silverlight and the WPF 4 Touch API. The differences between the Silverlight and WPF 4 Touch APIs will be highlighted. You will hear about the roles of the Surface Toolkit for Windows Touch and the Microsoft Surface Manipulations and Inertia Sample for Silverlight and how you can use them to jump-start your applications. The open-source multi-touch Bing Maps 3-D WPF control, InfoStrat.VE, will also be demonstrated. If you are interested in rich, engaging multi-touch interfaces for the web or client, then you need to attend this talk!

Website: http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032440485&Culture=en-US

Event Type: Other (in-person)

Location:
12012 Sunset Hills Road
Reston, VA, 20190

Lat/Long: 38.954957, -77.358214

Audiences: Developer.

SCREENCAST: Implementing Single Touch Gestures with MouseGestureTrigger

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/15/screencast-implementing-single-touch-gestures-with-mousegesturetrigger.aspx”;digg_title = “SCREENCAST: Implementing Single Touch Gestures with MouseGestureTrigger”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

A common need for Windows 7 touch user interfaces is to react to a touch gesture.  In this screencast, I demonstrate a very simple and easy way to interpret single touch gestures using MouseGestureTrigger from the Expression Blend Samples.

To learn more about Behaviors, Triggers, and Actions mentioned in the screencast, visit http://tinyurl.com/TriggersActionsBehaviors.  If you are interested in touch/multitouch Behaviors, then have a look at http://touch.codeplex.com/.  You can download even more Triggers, Actions, Behaviors, etc. at Expression Gallery.

Get Microsoft Silverlight

Direct link to Ch. 9 post:

https://channel9.msdn.com/posts/keydet/Implementing-Single-Touch-Gestures-with-MouseGestureTrigger/ 

Sample download:

http://tinyurl.com/TestMouseGestureTrigger

Announcing touch.codeplex.com


digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/12/announcing-touch-codeplex-com.aspx”;digg_title = “Announcing touch.codeplex.com”;digg_bgcolor = “#555555”;digg_skin = “normal”;

http://digg.com/tools/diggthis.js

digg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;


UPDATE: You can follow tanagram on twitter @tanagram https://twitter.com/tanagram


One of the things I have been trying to do this year is encourage / kick start partners to create useful CodePlex projects.  I’ve been digging into Windows 7 multi-touch since it was announced at PDC08.  As the managed (.NET) APIs available for WPF 3.5 SP1, Silverlight, and WPF 4 started to materialize, it became clear that there were varying levels of developer productivity for building multi-touch solutions.  The eventual release of the WPF 4 + the Surface Toolkit for Windows Touch clearly sets the bar for developer productivity thanks to all the great SDK work that was born out of Microsoft Surface.  So I started thinking, “What about Silverlight 3/4  & WPF 3.5 SP1 developers?”  There are all sorts of reasons why people will end up choosing those platforms.  So I thought “There has to be a way to make common touch scenarios easier for them so they don’t have to write the same plumbing code over and over again.”  Enter CodePlex and Expression Blend Behaviors.  I started talking to my buddy James Chittenden who is the User Experience Evangelist (UXE) on my team.  I floated this idea of simplifying common touch scenarios when using WPF 3.5 SP1 or Silverlight 3/4.  The general idea was to start a CodePlex project that used Expression Blend Behaviors to provide a consistent way to implement common touch scenarios across WPF & Silverlight.  We both agreed we should try to make it happen.  James suggested we contact Joseph Juhnke, President & CEO of Tanagram Partners, about the idea.  Joseph loved the idea.  We all put our heads together and decided to start small with two common multi-touch scenarios that were fairly laborious to implement from scratch in both WPF 3.5 SP1 and Silverlight 3/4.  From there, Tanagram Partners cranked away at building them out.  I’m excited to announce that their CodePlex project has gone live:


http://touch.codeplex.com/


Go check it out!  They’re looking for community feedback.

SCREENCAST: Managing Browser History Using Client Script Without ScriptManager

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/09/screencast-managing-browser-history-using-client-script-without-scriptmanager.aspx”;digg_title = “SCREENCAST: Managing Browser History Using Client Script Without ScriptManager”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

ASP.NET Ajax has a great feature that helps make it easy to enable back/forward button and bookmarking support in your Ajax applications.  However, most people think you need ASP.NET WebForms and the ScriptManager control to take advantage of this feature.  Furthermore, most people think you actually have to be using ASP.NET to take advantage of these capabilities.  You don’t.  There’s a walkthrough on MSDN showing how to use this capability purely from client side JavaScript:

Managing Browser History Using Client Script

Basically, the walkthrough shows you how to use Sys.Application.navigate event and the Sys.Application.addHistoryPoint method.  Once you understand these two, it is pretty simple. 

The challenge with MSDN sample is that it leaves the reader to figure out how to accomplish the same thing without ASP.NET WebForms and the ScriptManager control.  In this screencast, I take the guesswork out of it and show you how implement the sample without the ScriptManager as well as doing it using ASP.NET MVC.

Direct link to Ch. 9 post:

https://channel9.msdn.com/posts/keydet/Managing-Browser-History-Using-Client-Script-Without-ScriptManager/

Sample Download:

http://tinyurl.com/devkeydetAjaxHistorySamples

Consuming REST services using HttpClient

digg_url = “http://blogs.msdn.com/devkeydet/archive/2010/02/08/consuming-rest-services-using-httpclient.aspx”;digg_title = “Consuming REST services using HttpClient”;digg_bgcolor = “#555555”;digg_skin = “normal”;http://digg.com/tools/diggthis.jsdigg_url = undefined;digg_title = undefined;digg_bgcolor = undefined;digg_skin = undefined;

If you have a need to consume REST Services from .NET Framework based code, then you should really have look at the WCF Rest Starter Kit.  There is a handy class called HttpClient that is, in my opinion, provides the best / cleanest way to consume REST services at the http level.  Essentially, it gives you the ability to make http calls as easy as:

image

There is so much more to HttpClient than the little snippet above, including ways to easily hydrate / deserialize the response of the REST service into a .NET types.  You have quite a bit of power / control over the common REST service consumption scenarios.  There’s a nice little blog post over at The .NET Endpoint blog which covers HttpClient.  The BEST starting point, again my opinion, for learning about HttpClient is these two Ch. 9 screencasts by Aaron Skonnard:

https://channel9.msdn.com/shows/Endpoint/endpointtv-Screencast-Consuming-REST-services-with-HttpClient/

https://channel9.msdn.com/shows/Endpoint/endpointtv-Screencast-Processing-Message-Content-using-HttpClient-class/

Once you’ve watched the screencasts and read the blog post, then you will probably want to learn a bit more about the WCF REST Starter Kit.  Here’s a great overview of the kit (also by Aaron Skonnard):

http://msdn.microsoft.com/en-us/library/ee391967.aspx