Building Data Visualization Applications with the Windows Presentation Foundation and SilverLight...and Surface Tim Huckaby CEO, InterKnowlogy Microsoft RD & MVP About… • InterKnowlogy (www.InterKnowlogy.com) • Tim Huckaby, CEO (TimHuck@InterKnowlogy.com) ● 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, Speakers, etc. •Microsoft .NET Application development since 2000! •Microsoft .NET Rich Client Pioneers / industry leaders •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 Session Objectives And Agenda Data Visualization: WPF & XAML…and Silverlight…and Surface Session Objective: To get you excited by showing you “what you can do” so that you start doing it. Why you need Rich Client Applications Rich Client Technology Roadmap Demos, demos, demos!... The Scripps Research Institute: C-ME Tim Huckaby CEO, InterKnowlogy Microsoft RD & MVP 5 The Scripps Research Institute: C-ME • WPF Smart Client for SharePoint 2007 ● ● ● ● Collaborative Client 2D & 3D views at a molecular level Leverage the collaborate environment of SharePoint 2007 Provide data in the context of the project not in the context of it’s storage • Allow users to drag and drop data into the context of the project ● ● Smart client then handles the display & annotations of the underlying storage Allow user’s to add ad-hoc information 3D with WPF Check out the method level support for Rotation This is why you should have paid attention in high school calculus.. Lightweight WPF runtime • 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 WPF-based Tools <XAML> <Button Width="100px"> OK <Button.Background> LightBlue </Button.Background> </Button> </XAML> Silverlight 43Things.com & InterKnowlogy Wish 43 Tim Huckaby CEO, InterKnowlogy Microsoft RD & MVP 10 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 XAML Demos 12 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 Simulating the “Design to Dev" WPF experience with VS 2008, Expression Designer, XAML Cruncher, and Expression Blend 15 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 Windows Forms WPF 3D Tim Huckaby CEO, InterKnowlogy Microsoft RD & MVP 17 WPF FAQ 1. Does WPF enable me to do something I couldn’t have done before? ● No. Unless you factor in time & money… 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 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 Surface! 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 3day video training course on WPF, in which expert instructors guide you from the surface into the depths of the technology stack Where to go next • Windows Presentation Foundation Unleashed (WPF) • by Adam Nathan, Daniel Lehenbauer • Essential Windows Presentation Foundation (WPF) • by Chris Anderson 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 Tim Huckaby, InterKnowlogy • More info on InterKnowlogy: ● www.InterKnowlogy.com • Contact me: Tim Huckaby ● E-mail: TimHuck@InterKnowlogy.com ● Phone: ● 760-444-8640 Blog: http://team.interknowlogy.com/blogs/timhuckaby • About Tim Huckaby… ● ● ● ● ● ● ● ● ● CEO, 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 InterKnowlogy Surface Highlights 33