building data visualization applications with the windows presentation foundation…and silverlight...
TRANSCRIPT
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
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
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."
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
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 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
• “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