Building Data Visualization Applications with the Windows Presentation Foundation…and Silverlight...

30
Building Data Visualization Applications with the Windows Presentation Foundation…and Silverlight and Surface Tim Huckaby CEO/Founder, InterKnowlogy Microsoft RD & MVP

Transcript of Building Data Visualization Applications with the Windows Presentation Foundation…and Silverlight...

Building Data Visualization Applications with the Windows Presentation Foundation…and

Silverlight and Surface

Tim Huckaby

CEO/Founder, InterKnowlogy

Microsoft RD & MVP

About…

• InterKnowlogy (www.InterKnowlogy.com)• Tim Huckaby, CEO ([email protected])

● Custom Application Development / Consulting / Software & Systems Engineering Firm headquartered in Carlsbad, CA

● Design, Architect, Build and Deploy Enterprise Class Applications ● Industry Experts:

•Most of the employees are published, MVPs, RD, Speakers, etc.•Microsoft .NET Application development since 2000•Microsoft .NET Rich Client /RIA Pioneers: Industry Leaders•Microsoft Multi-Touch App Development Leaders (Surface / Windows 7 / Silverlight )•Information Worker Solutions (VSTO & SharePoint)•Integration / Messaging, B2B / B2C, Wireless / Mobility •Leading Edge: Surface, WPF, Silverlight, Win7 touch, SharePoint, VSTO•Cutting Edge Solutions on emerging Microsoft technologies•Largest Client: Microsoft

Data Visualization & Touch: WPF & XAML…and Silverlight…and Surface…and Windows 7 WPF Touch

Session Objective: To get you excited by showing you “what you can do” so that you start doing it.

Why you need Rich Client and RIA Applications

Rich Client & RIA Technology Roadmap & Guidance

Session Objectives And Agenda

Demos, demos, demos!...

WPF 3D:The Scripps Research InstituteVitruViewAutoCad – dwf Viewer

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

demo

History of Surface

2003The first prototype is presented to Bill Gates

2004A dedicated group is formed,

and more than 85 prototypes are developed

2007Microsoft Surface is unveiled to the world 

2001The concept of an interactive table is born

2005The look and feel of Surface is finalized

Surface WPF 3D:The Scripps Research InstituteVitruView

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

video

What the heck is XAML?

• Separates the front-end from the back-end• Simple declarative programming language

suitable for constructing and initializing .NET Objects

• Usually the most concise way to represent user interfaces (or other hierarchies of objects)

• Doesn’t need a compile to render• The language that almost all WPF related tools

emit

Sample XAMLRuns in a WPF Application:

Runs in the Browser:

WPF and Declarative Programming

• XAML replaces code• Attributes control Layout and Style• Event handlers wired-up in XAML• Declarative Data Binding

WPF (Windows XP and above)SilverlightSurfaceWPF 4.0 Touch (Windows 7)

The Big 4 “XAML-based” Technologies

WPF, Surface, & Silverlight

Library of CongressWin7 WPF multi-touchSilverlight

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

demo

Silverlight… “WPF Light”

• Interactive experiences for devices, PC, & Mac platforms (and others…)

• Strict subset of Windows Presentation Foundation• Lightweight download (4.2mbs)• Programming model uses XAML + Jscript + WPF• Access to WPF tooling

Lightweight WPF runtime

<XAML> <Button Width="100px"> OK <Button.Background> LightBlue </Button.Background> </Button></XAML>

WPF-based Tools

Silverlight

43Things.comInterKnowlogy Wish 43

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

demo

Eclipsys CorporationSilverlight 3 - Enterprise Visibility Real-time Hospital Operations

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

customer

Silverlight

WPF – how does it work?

• Built on Top of Direct 3D● Converted to 3D triangles, textures and other Direct3D

objects & then rendered by hardware● Benefits of hardware acceleration & performance due to work

being off-loaded to GPUs (unlike GDI based systems)● Ensures the maximum benefit of new hardware

and drivers● Software rendering pipeline as fallback

demoTim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

WPF Emn8

from our Marketing VP Madeline Pantalone: “It's okay for you to use application for demonstration as long as you are sure to preface it with the phrase: "This is test data only.  Products you see may have been created for testing purposes only."

EMN8 & REZN8customer

Why WPF?

• The GDI & USER subsystems were introduced in Windows 1.0 in 1985

• OpenGL – Early 90s• DirectX – 1995

• Goal: Overcome the limits of GDI+ & USER with the productivity of .NET

WPF Audience Participation Time1. Does WPF enable me to do something I couldn’t

have done before?● No. Unless you factor in time & money…● And would like to do more with less…

2. Is DirectX dead?● No. It is more applicable to advanced 3D developers writing hard-core “twitch” games.

3. Are Winforms dead?● No. …but it will not be advanced; the last version was 2.0 in .NET 2005.● WPF / Winforms Integration is simple● Windows 98 Supports WinForms

4. Does WPF run better on Vista & Win 7 than on XP?● Yes.● 3D objects only get anti-aliasing on Windows Vista or Later● Non-rectangular windows only get hardware acceleration on Vista. ● Vista has a driver model that helps with resource contention

5. Does Silverlight trump all this other WPF Stuff?● One would think so with all the marketing dollars that are being thrown at it….● But, in Reality the answer is “No” and it makes solution architecture more difficult than ever.

True Distributed Multi-Touch ComputingPeer-to-Peer Object ManipulationWindows 7 WPF & Microsoft Surface

• Unified Multi-Touch UX● Surface ScatterView ● WPF Multi-Touch Manipulations

• Simulated Spatial Data Transfer● Duplex WCF web service● Spatial awareness between clients● Transfer annotations, scale, orientation, etc.

WCF Service

Client(s) Service Host Client(s)

WCF Service

Windows 7 Touch, WCF, Surface Integration

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

video

Try Multi-Touch in Silverlight Now!

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

demo

The InterKnowlogy Multi-Touch Enabled ScatterView Control

http://firebrick.interknowlogy.com/scatterviewdemo/

WPF: Where to go Next Free Resources

• WindowsClient.net - this is the official Microsoft community portal for WPF development, and is chock full of great resources such as the...

• Learn WPF page - this page links to podcasts, labs, and the very popular "how do I?" videos

• MIX University's WPF Bootcamp - this is a full 3-day video training course on WPF, in which expert instructors guide you from the surface into the depths of the technology stack

Where to go nextThe InterKnowlogy WPF & Silverlight Reference Applications

Where to go…soon…• Windows Presentation

Foundation A Scenario-Based Approach

by Billy Hollis

• “Early April…I hope…”B. Hollis, 12/7/07

• “October…”B. Hollis, 6/3/08

• “It’s not going to be done in April.”B. Hollis, 2/24/09

• “I took a .NET 4.0 dependency. Projected date now Jan 2010, because it can’t come out until VS2010 is released.”

• B. Hollis, 4/29/09

• Windows Client Guidance Microsoft Platform Solution Architecture for the Application Developer

by Tim Huckaby

• The “anchor document” to a ton of Rich Client Guidance

http://WindowsClientGuidance.InterKnowlogy.com

Summary• We are at the Cusp of the NUI revolution• Using Natural User Interface (NUI) Technologies Improve

The User Experience• Multi-Touch enabled applications can be used to improve

the communication, education and experience overall across the application platform continuum. 

• The Tools, Plumbing and platforms for Rich Client, touch based computing are powerful and available

• Within a short time frame computers with touch capability will be the norm.

• The .NET stack for Rich Client & Touch Based Software (Surface, WPF & Silverlight 3.0) is elegant and powerful

• The Concepts of NUI change the way we design and build software

Tim Huckaby, InterKnowlogy• More info on InterKnowlogy:

● www.InterKnowlogy.com• Contact me: Tim Huckaby

● E-mail: [email protected]● Phone: 760-444-8640● Blog: http://team.interknowlogy.com/blogs/timhuckaby

• About Tim Huckaby…● CEO / Founder, InterKnowlogy● Microsoft® Regional Director – Southern California● Microsoft® .NET Partner Advisory Council Founder / Member● Microsoft® MVP - .NET ● Microsoft® Surface Partner Advisory Council● INETA Speaker – International .NET Users Group Association● Windows and .NET Magazine Advisory Board Member● .NET Developers Journal Magazine Advisory Board Member● Author / Speaker

Your Feedback is Important

Please fill out a session evaluation form and either put them in the basket near the exit

or drop them off at the conference registration desk.

Thank you!