60

It's All About Context

Embed Size (px)

DESCRIPTION

Flash is everywhere now. On the desktop, in pockets, and even on TVs. The key to making your application uniquely valuable is to provide a consistent user experience by focusing on context. While we have the tools to create/author 80% of the code and interface, we must capitalize on the uniqueness of each device and platform to deliver an optimal experience that is mobilized, not minimized. Discover how screen resolution, portability, native interface controls, and use-case - the context of your app - dictate how the last 20% of the experience needs to be tailored. In this session, we'll explore the new range of capabilities you should consider when planning to deploy applications across a variety of contexts including web (Flash Player 10.1), mobile (Android phone) and the litl OS.

Citation preview

Page 1: It's All About Context
Page 3: It's All About Context

kevinsuttle.com | @kevinSuttle

KEVIN SUTTLE

User Experience Designer

Interaction Designer

User Interface Designer

Usability Engineer

Information Architect

Honest, people-centered, holistic approach. No nonsense.

UNOFFICIAL JOB TITLES

Page 4: It's All About Context
Page 5: It's All About Context

CONTEXT“the interrelated conditions in which something

exists or occurs”

- dictionary.com

Kind of generic.

Page 6: It's All About Context

MULTI-SCREEN is a good description, but I don’t think it’s a good definition.

There is a difference.

Page 7: It's All About Context

MULTI-SCREEN seems to infer that the screen size, screen resolution and screen density

are the main considerations.

...at least to me.

Page 8: It's All About Context

I PREFER THE TERMContextual Applications (or Contextual Experiences)

Page 9: It's All About Context

ADOBE’S DESCRIPTION”These solutions are broader in scope than a device, a

campaign, or a single service; rather, they encapsulate the

various contexts in which the end user exists, interacts, thinks, consumes, and purchases.”

Page 10: It's All About Context

WHY IT MATTERSAs developers today, we are more and more likely to

port our applications to multiple devices and runtimes

than ever before.

One-offs are becoming increasingly less common.

Page 11: It's All About Context

WHY IT MATTERSContext is much more than being aware of screen sizes.

the user’s surroundings/location

runtime/hardware capabilities

time-sensitivity

user presence

social interaction

... plus much more

Page 12: It's All About Context

FURTHER TO THE POINT”Your content is of little value to its users if it ignores

the context in which it was viewed, manipulated

and processed.”

Page 13: It's All About Context
Page 14: It's All About Context

FAMILIAR TERRITORYThe desktop has been our stomping grounds for years

Page 16: It's All About Context

MODERN RENAISSANCEThe desktop of 2000 is not the desktop of today

Page 17: It's All About Context

NEW FEATURES- Native Process API - extending AIR natively

- Mass Storage Detection

- Drag and Drop Remote Files

- P2P, UDP, Secure Sockets

- Global error handling

- Screen reader support

- IME Text

- Default ‘open-with’ settings OS-wide

Page 18: It's All About Context

THE LINE IS BLURRINGWeb experiences and desktop experiences are converging more and more.

With the advances of HTML5 and Flash, the differences between AIR, browser, and native applications are going to be a lot less noticable.

Page 19: It's All About Context
Page 20: It's All About Context

ALL OF A SUDDENBAM. We’re all mobile developers.

AIR on Android spawns a whole new set of developers

‘Full Flash’ on mobile handsets

Page 21: It's All About Context

MOBILE EDUCATIONUnless you’ve been doing mobile for a long time, it’s not as simple as you may think, and it is constantly changing.

Page 22: It's All About Context

MOBILIZEDNot minimized

The key is to leverage the device-specific advantages.

Provide immediate, relevant value with a planned, deliberately short list of interactions.

Data should be readily accessible, and meet the needs of a mobile user.

Simple != minimal.

Page 23: It's All About Context

MOBILE FIRSTMany are joining the ‘Mobile First Revolution’.

It allows a team to focus on the most important features, specifically those that add the most contextual value.

Page 25: It's All About Context

MOBILE = SOCIAL”The mobile handset is, by its own nature, a social artifact; an object made and used by people, to connect with people.”

- C. Enrique Ortiz

Page 26: It's All About Context

THE 7th MASS MEDIUM1. Printing Press

2. Recordings

3. Cinema

4. Radio

5. TV

6. The internet

7. Mobile

Page 27: It's All About Context

5 UNIQUE BENEFITS1. First truly personal mass media

2. First always-on mass media

3. First always carried mass media

4. Only mass media with a built-in payment channel

5. Offers point of thought (ability to create or consume

content whenever the mood strikes)

Page 28: It's All About Context

LOCATION IS IMPERATIVEEasy to underestimate, but locational context is crucial.

- Your application should adapt to handle many light

sources and viewing angles

- If sound is important to your application, think about

noisy public places, use more text instead

- Be prepared to handle network interruptions

- Be prepared to handle phone interruptions

- Consider privacy (user is home vs in public)

Page 29: It's All About Context

MOBILE GOTCHASScreensaver mode*Battery-life

Hardware performance limitations

Saving state upon interruptions*

* can be remedied in Flash Player 10.1

Page 30: It's All About Context
Page 31: It's All About Context

THE DIGITAL HOMEModern experiences for modern families

Page 32: It's All About Context

KNOWS THEIR AUDIENCEThe litl family computing platform is meant to be used

specifically in the home, with a focus on content.

Page 33: It's All About Context

AN ENTIRE OSPowered-by Flash, at your disposal.

This allows you to take advantage of unique, tailored hardware that has context at the forefront of it’s design.

Page 34: It's All About Context

MULTIPLE CONTEXTSWith the litl SDK, you can design channels that handle 3 different types on contexts.

1. Card view

2. Focus view

3. Channel view (a.k.a. Easel Mode)

Allows you to be creative in developing content that is

both passive and interactive; consuming and creating.

Page 35: It's All About Context

FLASH ON YOUR TVAverage American watches 4.5 hours of TV a day

65% of homes have broadband

70% want internet on TV

Page 36: It's All About Context

litl’s 4th CONTEXTThe TV

Page 37: It's All About Context

A NEW FRONTIER- Full keyboard

- Touch/Gesturing

- Accelerometer

- Microphone

Page 38: It's All About Context

FLASH ON YOUR TV!Not just widgets

You now have entire HD television screens for your full

Flash-powered games, content, and media!

Page 39: It's All About Context

WHY litlOS MAKES SENSEThe web book and upcoming set-top box are hardware

that is laser-focused on user’s context.

The SDK is straight-forward, well-documented, tested

Support is readily available

Open and clear submission guidelines for custom channels

litl is ready for your creativity (developer.litl.com)

Develop how YOU want to.

Page 40: It's All About Context

OPEN FOR SUBMISSION!Our channel store is now accepting submissions.

Visit developer.litl.com for details and to register ideas!

Page 41: It's All About Context
Page 42: It's All About Context

CONTEXT-AGNOSTICThere is no such thing as ”write once, deploy everywhere,” unless you want your application to suck.

However, there are many aspects of contextual application development that will be the same no matter where you choose to deploy.

Page 43: It's All About Context

PERFORMANCEPerformance is no longer an option.

No matter where you deploy, your application needs to perform exceedingly well.

Page 44: It's All About Context

RESPONSIBILITIES “With great power comes great CPU usage” - ME

Page 45: It's All About Context

SERIOUSLY THOUGHIt’s very easy to forget about, but performance is a lynchpin across all contexts.

Optimization MUST be a part

of your iterations/sprints.

Page 46: It's All About Context

GOOD NEWSAIR 2+ and Flash Player 10.1 rescind control back to you.

Dynamic Framerates

Flash Player Throttling

- SWF is in a hidden tab

- SWF is scrolled out of the viewing area

- GPU Video acceleration

Page 47: It's All About Context

GOOD NEWSSupport for many types of hardware rendering

- Vector graphics

- Bitmaps

- 3D effects

- Filters/Shaders

- Color transforms

- Alpha transparency

- Device/embedded text fonts

- Bitmap caching

Page 48: It's All About Context

BAD NEWSSome performance tuning methods are dependent on

browser support, though it shouldn’t hurt to include them.

Progressively enhanced Flash will become common soon.

You should check each browser/device

for support details.

Page 49: It's All About Context

ARCHITECTUREIn a typical MVC(S) architecture, the view is the only thing that should have to significantly change.

Page 50: It's All About Context

MODEL and CONTROLLERYour data structure and value objects should already

be scalable enough to not impact performance on

mobile and other non-desktop devices.

Page 51: It's All About Context

SERVICESTread carefully here.

Server calls can be costly in terms of memory, battery and even actual money in the case of mobile. Not everyone has unlimited data plans.

Make good use of push, or asynchronous calls when it makes sense to.

Page 52: It's All About Context

SHARED OBJECTSYou can minimize server calls

SQLLite is not available in all cases

SharedObjects seem to ‘just work’

On litlOS, SharedObjects are available, but it makes more sense to explore the shared properties model in litlOS.

Page 53: It's All About Context

LAYOUTOne of the most fun objectives to handle.

- Stage.Scalemode

- Stage.Resize (best option)

- Stage.OrientationChange (flash.sensors)*

*Limited to accelerometer, doesn’t always behave how

you’d expect.

Page 54: It's All About Context

IT’S ALL RELATIVEOr at least it used to be.

- Pixels are a relative unit of measurement.

- Screen density and PPI/DPI are the most crucial and is

the property that will change the most

(Capabilities.ScreenDPI)

Christian Cantrell suggests investing in a ruler to make sure your measurements are consistent

Page 55: It's All About Context

GET PHYSICALMany of your users will only be using one hand to interact with your mobile application (typically the right hand).

When you’re designing assets, use your own hand as a guide on the screen to judge how accessible and

ergonomic your application is, as well as what might be covered up by a user’s hand.

Rule of finger: 10mm (44px) for finger touch, but that’s an average. Never hurts to make it bigger.

Page 56: It's All About Context

DON’T GET TOUCHYunless you have to.

Multitouch is great, but not always necessary.

Unless you need specific multitouch gesture support,mouse events ‘just work’ on multiple devices.

Page 57: It's All About Context

GET VIRTUALMany mobile devices have native keyboards, some have physical keyboards only, and some have both.

Be sure to account for this when designing your

application, as it could easily go awry.

You don’t want a native keyboard covering up your screen assets.

Page 58: It's All About Context

GO GLOBALGlobalization API in Flash Player 10.1

- Text language/orientation (RTL)

- Date/Time

- Currency formatting/parsing

- Number formatting/parsing

- String comparison for sorting or searching for text

- Upper and lower case conversions

Page 59: It's All About Context

TAKE CONTROLWith AIR on Android, you can control your desktop client with a controller app.

With the litl OS, you’ll be able to control a channel on the

web book with an iPhone or native Android device.*

*See more about this in October, at the litl-sponsored

FITC Unconference at MAX + (Free beer!) as well as

RIAUnleashed Boston in November