Feed on
Posts
Comments

Here’s a list of the Windows 7 and DirectX specific talks next week at PDC 09. 

Windows 7 and Graphics

Windows Touch Deep Dive

Windows provides applications a default experience for gestures and touch interaction. Applications that want to go beyond that basic experience have a powerful platform to build on top of. This session is targeted at developers interested in building touch-optimized experiences. We look closely at some of the more powerful portions of the Touch platform, like manipulation and inertia processors, as well as cover real-world problems that developers have encountered and overcome. Come help build the next generation of user experiences!

Windows Ribbon Technical Deep Dive

This talk covers some of the more subtle and complex aspects of designing and implementing a ribbon. Explore how to build a great gallery (a critical task for any ribbon), how to make use of contextual tabs and application modes, etc. We draw from specific experiences gained by the Windows Live team, by examining some lessons learned from these early Windows Ribbon adopters.

Modern 3D Graphics Using Windows 7 and Direct3D 11 Hardware

Dig deep into the capabilities of Direct3D and Windows 7. With the onset of new Direct3D 11 hardware, gain practical knowledge to help you push graphics to the limit. Learn about the new tessellation stage in Direct3D 11, which enables an unprecedented level of rendering quality by dynamically generating geometry on the GPU. In addition, see how the multi-core improvements in the Direct3D 11 runtime can help you scale your application to take full advantage of all of the cores on a machine. Finally, take a peek at using the power of DirectCompute (the hardware accelerated general purpose computing technology) in a graphics application context.

Developing with the Windows API Code Pack for Microsoft .NET Framework

The Windows API Code Pack for Microsoft .NET Framework provides a source code library that can be used to access some new Windows 7 features (and some existing features of older versions of Windows operating system) from managed code. These Windows features are not available to developers today in the .NET Framework. This session will show you how to access features like taskbar integration, jumplists, libraries, sensor platform, Direct2D, and more.

Building Sensor- and Location-Aware Applications with Windows 7 and .Net Framework 4

How many times have you thought to yourself, “My application would be so much better if it knew where the user was?” With Windows 7 and the .NET Framework 4.0, you now have the tools at your fingertips to location-enable your applications. Based on the new Location platform for Windows 7, the location API in .NET Framework 4.0 provides a single, consistent API to get you your latitude and longitude regardless of the underlying technology that acquired it—allowing you to focus on creating exciting, differentiated location-aware applications.

Advanced Graphics Functionality Using DirectX

The number of PC configurations is exploding. With the onset of netbooks as well as high-end desktop systems using the latest in graphics hardware, creating an application that can target all of these systems is getting harder every year. Join us as we explore the many options available in Windows 7 to facilitate graphics development across all different hardware configurations, from low-end integrated to top of the line discrete GPUs. Learn about Direct3D 10 Level 9, which enables Direct3D 10 applications to run on pretty much every computer in the market today. Check out WARP, our new software rasterizer that lets your application use high-quality graphics even when there’s no graphics card. Finally, learn about Direct2D, DirectWrite and WIC, and the interoperability of Windows 7 technologies for making slick, high-quality graphics for your applications of the future.

DirectX11 DirectCompute

DirectX 11 introduces DirectCompute as a way to access the computational capability of the GPU in a more flexible way. It opens the door to operations on more general data-structures beyond just arrays, and to new classes of algorithms as well. This talk covers the key features of DirectCompute’s compute shader, and how they can be used by developers in their applications. These features include: explicit thread dispatch, communication of data between threads, and a rich set of primitives for random access and streaming I/O operations. These features enable faster and simpler implementations of techniques already in use on the CPU.

Here’s a list of the Silverlight specific talks next week at PDC 09. 

Silverlight

Getting the Most out of Microsoft Silverlight 3

This is an all day workshop on Monday.  It promises to be full of great content from developers working in the Silverlight trenches.

Come learn how the robust features of Silverlight 3 help developers to create innovative, compelling cross-platform Internet applications without being limited by HTML and Javascript. In addition, hear some of the best practices and patterns for building Silverlight applications, and find out how to use Microsoft Expression Blend to get the best productivity between designers and developers using them. Want to learn more about this workshop, check out the Channel9 Knowledge Chamber interview here.

Microsoft Silverlight Roadmap and Futures

With Silverlight 3 shipped earlier this year, the team is working on what comes next. In this session, we give you an early preview of the roadmap for Silverlight, and offer a sneak peek at some of the features that we’re considering as part of the next release.

Developing Testable Silverlight Applications

Learn how to keep your customers, management, and quality assurance team happy by building testable Silverlight applications. Explore how the Model-View-ViewModel (MVVM) and Inversion of Control principles can be used with .Net RIA Services to create Silverlight applications with high testability across multiple tiers. Hear guidance from the Silverlight team on how to best use the available testing tools and technologies to take full advantage of your improved application designs to boost quality.

Building Amazing Business Applications with Microsoft Silverlight and Microsoft .NET RIA Services

Learn how to build n-tier Rich Internet Applications (RIA) on Silverlight by tapping the power of .NET RIA Services. Walk through an example of building an application from scratch using the pattern run-time components and tools provided by .NET RIA Services. See how it helps you write application logic to expose data and operations in a carefully controlled fashion using tools integrated into Visual Studio with support for validation, authentication, authorization and handling units of work.

Advanced Topics for Building Large-Scale Applications with Microsoft Silverlight

Come learn about Silverlight application development patterns such as composite applications with Prism, developing using the Model-View-ViewModel (MVVM) pattern, and methods of implementing large, modular, multi-page applications within your team. Hear about frameworks created to help assist in rapid development using these patterns without sacrificing good application development patterns.

Building Extensible Rich Internet Applications with the Managed Extensibility Framework

Learn how the Microsoft .NET Framework 4 introduces the Managed Extensibility Framework (MEF) for building customizable applications that can easily be extended by third parties. Whether you are building an extensible data grid, a custom rules engine, a pluggable editor, or a composite application such as a pluggable CRM system, you want to learn about MEF. Hear how to use MEF to decouple your applications into more maintainable and testable pieces, and partition your application into dynamically deployable chunks that download on-demand.

Mastering Microsoft .NET RIA Services

This advanced-level .NET RIA Services session provides an "under-the-covers" view of how the technology works. Come learn about common architectural patterns, key design principles, and tools to work with a variety of data access layers, application logic patterns and client-usage scenarios. Examine query and unit of work patterns, custom methods, validation, authentication and authorization metadata, authoring custom validations, and using asynchronous operations effectively on the client. Hear tips and tricks to help you get the most out of .NET RIA Services in advanced scenarios. This session assumes existing experience with .NET RIA Services.

Custom Behaviors for Advanced Microsoft Silverlight UI Effects

Learn how to light up your Silverlight application by using behaviors to add physics-based animation and rich interactivity. Hear tips and tricks on how to create advanced behaviors, techniques to make them extensible, and how they can be integrated to create immersive applications and enhance interactive games.

Networking and Web Services in Microsoft Silverlight

This session presents an overview of how to expose data to a Silverlight application by accessing SOAP Windows Communication Foundation (WCF) services and REST services. In the WCF space, we cover Silverlight 3 approaches for securing services and improving their performance and maintainability. We also cover a specific message pattern called server push, which allows you to implement scenarios such as email clients and real-time chat. In the REST space, we walk through the Silverlight 3 client HTTP stack and new functionality it offers around HTTP verbs, headers, responses, and cross-domain access and talk about future plans for networking and Web services in Silverlight.

Microsoft Silverlight 3: Advanced Performance and Profiling Techniques

Learn how to leverage the Silverlight stack to optimize your managed code with a focus on the common bottlenecks in writing large Silverlight applications and complex data controls. Also learn how to profile your application, and how to use the results to optimize startup and reaction time.

Developer Patterns to Integrate Microsoft Silverlight 3.0 with Microsoft SharePoint 2010

Learn how Silverlight 3 can be used to integrate rich, powerful applications into SharePoint, both at the Web part level of integration and at the site level. Walk through a set of key developer patterns and cover topics that include "in-box" support, leveraging the client object model, service integration, site-level customizations, and more.

See you at PDC - Walt

A common dilemma while attending big conferences is choosing which sessions to attend.  Look around you at break time and you’ll see scores of attendees analyzing the conference schedule and making pencil marks next to the talks they find interesting.  Once they’ve settled on a plan they scurry off to the session, grabbing a few cookies for the trip, hoping there is still seats available in their desired room.

The problem comes when there are two or more interesting talks that are scheduled at the same time.  If so, you have to choose which one is most important, a decision that can be painful at times.  Of course now that Microsoft releases videos for all of the talks it is less of an issue, you can always watch the other sessions later.

PDC09 is packed with content, as usual.  If you are looking for UI/Design related talks I’ve culled through the giant catalog and narrowed the list down to the following talks.  I’ve left out the ASP.NET UI talks from this list, as I tend to focus on Silverlight and WPF topics on this blog.

As I see the landscape when looking at the topics planned for the week.  I see these areas of interest for the UI aficionado.

  • WPF
  • Silverlight
  • Expression
  • Windows 7
  • Surface
  • DirectX

Since this is the WPF Wonderland blog I’ll start with WPF.

WPF

Mastering WPF Graphics and Beyond

Learn how to take advantage of the latest graphics features in WPF to build polished, responsive applications. See examples of how to boost the visual sharpness of your applications, how to take full advantage of new layout rounding capabilities, how to make everything from transitions to huge element trees snappy and responsive, and how to integrate organic animations into your applications. Learn to push the bar for desktop application experiences up a notch – all with the latest that WPF 4 has to offer!

XAML Futures in Microsoft .NET Framework, Microsoft Silverlight and Tools

Dive into advances in XAML happening in future versions of .NET, Silverlight, Microsoft Visual Studio, and Microsoft Expresssion Blend. Hear about XAML parsers, markup compilers, analysis, transformations, localization, and tools. Dig even deeper into performance optimizations possible in .NET, and explore possibilities with a XAML DOM and DLR based scripting.

Windows Presentation Foundation 4 Plumbing and Internals

Come get the inside scoop on how Windows Presentation Foundation (WPF) powers all its rich services – like layout, databinding, and animation. There is a lot of heavy lifting done for you under the hood; in this session, we crack open these system components, including the trees (visual, logical, and inheritance), the property system and its change notification, and a few of the routing systems that all messages go through. Bring your hard-hat for this one!

How Microsoft Visual Studio 2010 Was Built with Windows Presentation Foundation 4

Get an insider’s look at how Microsoft created the next-generation, large-scale integrated development environment experience using Windows Presentation Foundation (WPF) 4. Learn best practices and hear real-world experiences in developing mixed Win32-WPF applications that combine WPF content with Win32 HWNDs. Discover how Visual Studio 2010 uses the new WPF text-rendering stack that utilizes DWrite.

Advanced Windows Presentation Foundation Application Performance Tuning and Analysis

Come walk through the top performance and coding pitfalls in large-scale, complex Windows Presentation Foundation (WPF) applications. Learn to use the performance analysis tools and methodologies to find problems in real application scenarios, and discuss solutions to optimize your WPF application for maximum performance. Understand how to tackle a non-performing app and transform it into a quality application that runs as well as it looks.

Microsoft Surface: Multi-touch Development Integration with Windows 7 and WPF 4

Hear how Windows 7 adds support in native code for accelerating media transcoding and specific playback experiences through the new asynchronous Media Foundation transform (MFT) model. Learn how to write and use accelerated MFTs, and how to license for preference in Windows Media Player and portable device operations with Windows Shell. See a managed sample using the transcoding API, and how the new Device Proxy simplifies AVStream driver based video capture in Media Foundation. Also learn about in-box support for high-definition UVC webcams and the new extensibility model, along with how the new native Source Reader object allows easy capture integration into existing applications. Finally, explore new tools for developing and debugging in Media Foundation.

See you at PDC.

You probably don’t need me to tell you that the Microsoft Professional Developer Conference (affectionately known as PDC) is coming up soon.    There are still plenty of tickets left for the event.  Come on down, I’ll buy you a mocha.

The February 2009 release of the Composite WPF supported WPF and Silverlight 2.   Since that time Microsoft released Silverlight 3 which contains plenty of great new features. Last week, Microsoft released a version (October 2009) of Composite WPF that supports Silverlight 3.  There are only a few minor changes in this release; here is a partial list.

  • Updated Visual Studio projects:  All of the quick starts and other reference applications now use Silverlight 3.
  • Commands:  There has been a lot of talk in the MVVM community about the using Weak Event pattern in delegates to reduce memory leaks.  In this release of Composite WPF both the DelegateCommand and the CompositeCommand’s CanExecuteChanged event are re-written to use the Weak Event pattern.
  • ControlAdapters: In Silverlight 3  the TabControl went through a few changes.  The TabRegionControlAdapter is fixed in this release to work correctly with both Silverlight 2 and Sliverlight 3.

I’ve mentioned MSDN Code Gallery in the past but let me call it out once again.  Microsoft maintains two sites for sharing content.

CodePlex (http://www.codeplex.com/)

Codeplex is intended to be the home for your open source code project. As such it sports a number of project level enhancements: a version control system (which supports Team System and Subversion), bug tracking and feature requests database, and a contributor management system.

This is not a good place for your code samples and whitepapers however.  It’s overkill when you just want a public place to share some downloadable content.

MSDN CodeGallery (http://code.msdn.microsoft.com/ )

This is the place for sharing assets.  It’s simple and convenient.   I’ve used it to share code for some of my articles.

WPF SDK Samples

I’m pleased to see that Microsoft is using Code Gallery more frequently.  The SDK team, for example, is beginning to put SDK samples there.

http://blogs.msdn.com/wpfsdk/archive/2009/10/23/wpf-samples-now-available-at-code-gallery.aspx

In past versions of our Visual Studio and .NET Framework documentation, you may have experienced frustration when you tried to access our WPF sample code.

No more. We’ve picked the best samples, hoisted them out of the docs, updated them for Visual Studio 2010, and uploaded them to Code Gallery: WPF Documentation Samples.

You’ll see example code for creating custom controls, 3D graphics, data binding, and lots of other stuff. Almost all samples have Visual Basic parity with C#. Go install Visual Studio Beta 2 and then check them out.

Composite Application Guidance (Prism) has been out for over a year and is currently at version 2.0.  There are a handful of articles out on the web showing how to create a simple Prism application. Be aware that many of these refer to version 1.0 of Prism and have outdated advice and syntax.  As always, on the web, pay attention to the date of the article and the version of the software being shown.

ModuleCatalogs

In Prism v2, Microsoft added guidance for Silverlight.  Version 2 simplifies finding modules in Silverlight XAP files by replacing the UnityBootstrapper.IModuleEnumerator method with the new UnityBootstrapper.GetModuleCatalog method.

 

     // The correct way to get modules in Prism v2.(February 2009)
     protected override IModuleCatalog GetModuleCatalog()
     {
        var catalog = new ConfigurationModuleCatalog();
        return catalog;
    }

     // The old way to get modules in Prism v1 (June 2008)
     protected override IModuleEnumerator GetModuleEnumerator()
     {
         var store = new ConfigurationStore();
         return new ConfigurationModuleEnumerator(store);
     }

 

Microsoft has other tips on migrating to Prism v2.

Just in case I need this for future updates to Wordpress.

http://ardentdev.com/fix-for-wordpress-xmlrpc-500-internal-server-error/

One of my WordPress-based sites  was not working when I tried to publish posts containing images from Windows Live Writer.  I was getting a 500 Internal Server Error.  I ran the new latest version of Web Platform Installer.   I think there is a mismatch in the MySQl database with the old sites and the new site.

 

Fortunately the workaround is easy.  Just run the following database query to change the data type on the post_parent column:

ALTER TABLE wp_posts CHANGE post_parent post_parent BIGINT;

I’ve been posting about Shazzam for over a year  on my WpfWonderland blog.  Now that Shazzam version 1.1 is about to be released I figure that it is time to setup a dedicated blog. http://blog.shazzam-tool.com  

News and discussion regarding the Shazzam Pixel Shader Utility.

Yes, that’s the goal.  To have a place to describe upcoming changes, new features, bug fixes, etc and keep you up to date on the happenings in the  Shazzam world.

Shazzam development is moving again

Shazzam is changing. There hasn’t been much improvement to Shazzam this year and that’s a shame.  Especially since there is an influx of Silverlight developers exploring the benefits that pixel shaders bring to their projects.

Many of you have discovered Shazzam via enthusiastic support from the WPF and  Silverlight community.  Thank you Laurent Bugnion, Josh Smith, daneshmandi, Karl Shifflett, Adam Kinney, Craig Shoemaker and Polymorphic Podcast, Channel9, Andy Beaulieu, Bill Reiss, René Schulte, the Silverlight 3 Programmer’s Reference crew,  Dave Campbell (WynApse and Silverlight Cream) , Tim Heuer, Jeff Prosise, Matt Castro and many more that I don’t have links for.

I’m flattered that my little utility is finding a home on so many desktops. It’s nice to hear about the projects you’ve created with Shazzam’s help.  For example, check out daneshmandis Face Maker application for an superb example of WPF in action.  Being developers you’ve not been shy about expressing your desire for new features either. Which brings me to Eric.

Agent of Change

Say hello to Eric Stollnitz.s

Eric has worked at Microsoft for seven years, first helping to create the Expression Blend user-interface design tool, and more recently helping the Interactive Visual Media group of Microsoft Research develop innovative ideas into shipping software.

Some of you might know his work.  He was on the Expression Blend team and also did some work on Peter Blois’s Snoop utility. 

Eric has been a great help in getting development on Shazzam moving again.  It all started when he wanted to make a couple changes to improve Shazzam’s ability to generate Silverlight shaders.   Here’s Eric explaining how he got involved, “Yeah, at first I just wanted two features: remembering default values for shader registers, and generating Silverlight-compatible C# code.  Then it kind of snowballed…”

Snowballed is an understatement.  Eric has done some great work on the project.  I will be chronicling improvements in the next release (many of which are from him) over the next couple days but first let me give you glimpse one of Eric’s contributions.

image

You can specify minValue, maxValue and defaultValue for values for registers using triple-slash comments in the shader code.  The generated C#-VB class gets these values supplied for the defaults.  Plus the testing UI is initialized with these settings too.  No more reentering values every time you compile the shader!

image

There’s plenty of other changes.  Stay tuned.

As always, you can install Shazzam from the shazzam-tool.com site.   The new version will be available by next week.

Older Posts »