inspire and enable transformative user experiences for retrieving and exploring content regardless...

24
Managing Development to Inspire Innovation and Create Great User Experiences Bill Crow Seadragon Group Manager, Live Labs Microsoft Corporation PDC09-VTL30

Upload: may-merritt

Post on 28-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Managing Development toInspire Innovation and Create Great User ExperiencesBill CrowSeadragon Group Manager, Live LabsMicrosoft Corporation

PDC09-VTL30

Page 2: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Reintroducing Live Labs

> Our Mission:> Advance the state-of-the-art of the

Internet, creating transformative user experiences.

> You may already know our work:> Silverlight Deep Zoom, Photosynth, Deepfish, …

> Everything we do starts with experiments:> Some experiments fail (but we learn.)> Some experiments succeed

(and make our products better.)> In addition to experiments, we ship

code.

Page 3: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Seadragon

Inspire and enabletransformative user experiences

for retrieving and exploring content

regardless of location.

Page 4: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Seadragon

> Silverlight Deep Zoom> Photosynth rendering engine> Seadragon.com> Seadragon Ajax> DeepZoomTools library> Various mobile experiments> Seadragon on Surface> … and more to come.

Page 5: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Deep Zoom in 2010 Winter Olympics

Scott StanfieldCEOVertigo

partner

Page 6: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

2010 Winter Olympics

> Feb 12, 2010 in Vancouver, Canada> Photo Gallery experience in Silverlight> Planning for ~50,000 images over 12

days> Custom Silverlight 3 Deep Zoom

“player”> Integration with advertising logic> Support for image attribution> Ratings> Slideshow and Grid mode

Page 7: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Deep Zoom in 2010 Winter Olympics

demo

www.NBCOlympics.com/photos

Page 8: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

demo

The Many Faces of Seadragon

> Silverlight Deep Zoom> Seadragon.com> Seadragon Ajax> Photosynth

Page 9: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Creating a Transformative User Experience> The user never waits for the application.

> Retrieve only the content that’s needed.

> Optimize for large data collections.

> Visual illusions to create a “magical”

interface.

> Continuous zoom navigation to never get

lost.

> Interact with the content, not the application.

Page 10: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Retrieve Only the Content That’s Needed

> Each tile is an image file> Each level is a set of

image files in a folder> Each pyramid is a set of

folders with image tiles for each level

> A simple XML file describes the size of the image

> Images can have only some tiles (sparse images)

> Pyramid is 1.4x original size

> 10Mpixels converts in 0.5s

Deep Zoom Image (DZI)

Pyramid, levels, tiles, images

Page 11: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

0 1

2 3

5

6 7

4

8 9

10 11

12

Optimize for Large Content Collections

> Thumbnails are packed into shared tiles

> Loading 100’s of images requires loading few tiles

> Patented Morton layout makes adding items O(1)

> No more than one tile per level is not full

> Optimizes rendering by sharing textures

> Storage is roughly one thumbnail per image

Deep Zoom Collections (DZC)Pyramid, levels, tiles, files

Page 12: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

The User Never WaitsSoftware should wait for users, not the other way around

> Retrieve content entirely off the main thread.> Use background worker threads.> Download asynchronously when possible.

> Decode images entirely off the main thread.> Use multiple threads whenever possible

> Throttle any required main thread work.> Texture creation, etc.

> Use all the system resources available.

Page 13: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Illusions, Misdirection, and PreparationLike a good magic trick, software should amaze & delight> Introduce new content in gradually.

> Animate with “springs”.> Accelerate decelerate all animation

moves.

> Update the center of the screen first.> Blend across borders where quality

differs.> Anti-alias high contrast edges.> Focus on performance. > Don’t compromise. Ever.

Page 14: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Inspiring InnovationIf you want different results, try something new

> Listen to your users.

> Understand how stuff gets done.

> Make an investment.

> Try some ideas from Live Labs.

Page 15: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Listen to Your UsersThey will lead you, and they will mislead you

> Hear what they say> They are the experts in their requirements.> They have the most experience.> They are motivated to see improvements.

> Hear what they don’t say> Their frame of reference is the current

solution.> They typically are not experts in what’s

possible.> Big innovations or incremental

improvements> Either option may be right … or wrong.

Page 16: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

How Stuff Gets DoneThe best laid plans ...

> <Stuff Done> = <Resources> x <Time> x <Efficiency>

> Einstein was right. Everything is relative.

> <Expected Stuff Done> = <All Resources> x <Maximum Available Time> x <Maximum Efficiency>

> <Actual Stuff Done> << <Expected Stuff Done>

> <Stuff Not Done> is often the innovative stuff we had the most passion about doing.

Page 17: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Give Innovation a Helping HandIf you’re not surprised, it’s probably not innovation

> Accept that the stuff you do will invariably be less than what you planned to do.

> Make time in the schedule to work on the stuff you would otherwise never do.

> Innovation comes from passion.> Passion comes from people. > Empower people with goals, resources,

time.> Discover and adapt. Don’t be afraid to

change based on what you discover.

Page 18: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Some Things We Do at Live LabsInspiring innovation isn’t just for research and experiments

> We’re not just “research”. > Our small team delivers production code for

multiple product teams on tight schedules.> SCRUM based Agile development process

> Small teams, clear objectives, short cycles, daily meetings

> We aspire for a 50/50 balance to inspire & enable.> “Out of the Box Week” once a quarter> Work on “new ideas” is scheduled as regular sprint

tasks> We encourage ideas from all team members.

> Most new Seadragon ideas came from individual developers, testers and program managers.

Page 19: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

demo

Some New Seadragon Ideas

> Snapdragon> Zoom Panel Prototypes> On Demand Collections> Photo Explorer Investigation

Page 20: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Call to ActionTake these ideas, and put them to work for you

> Try out our applications, services and demos.> Seadragon.com, Seadragon Showcase, Snapdragon,

Photosynth

> Use Seadragon to add some magic to your project.> Silverlight Deep Zoom, Ajax Control Toolkit, Deep Zoom Tools,

> Apply Seadragon principles to your own application.> Never block the UI, load progressively, navigate with zoom, …

> Create your own plan to inspire innovation.> Make it an investment priority, create the time and involve

your team.

> Visit our booth; talk with us and take a deeper look.

Page 21: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

YOUR FEEDBACK IS IMPORTANT TO US!

Please fill out session evaluation

forms online atMicrosoftPDC.com

Page 22: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

Learn More On Channel 9

> Expand your PDC experience through Channel 9

> Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses

channel9.msdn.com/learnBuilt by Developers for Developers….

Page 23: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 24: Inspire and enable transformative user experiences for retrieving and exploring content regardless of location