SlideShare a Scribd company logo
The next Generation of

FLASH USER EXPERIENCE




                         {                   Kevin Suttle
                             Flash Platform UX Architect    }
Kevin Suttle
Flash Platform UX Architect

5 years of large-scale Flash Platform eLearning content

Featured author for InsideRIA

Tech Reviewer for O’Reilly’s Flex 4 Cookbook

Submitted close to 150 bugs/features for Flash CS5

“Most likely to break hearts” - My mom



I’m on the internet: kevinsuttle.com | @kevinSuttle
I wasn’t making that Flash thing up.
How I got into Flash:

I started out wanting to be a writer.
I changed my mind.
I got a degree in Electronic Media Communications
from the University of Cincinnati.
I loved digital art and photo manipulation, but it just kind of sat there.
I got into web design, and then met Flash.
I taught myself how to program.




I spend most of my time in
FLASH but I also know my way around FLEX.
Flash is at a crucial point
within the realm of
development technologies.


           All of a sudden there are “sides”.
The Battle for
PLATFORM SUPREMACY
I don’t know if you’ve heard:
There’s a bit of news about an new standard - HTML5

Adobe HEARTS Apple but not the other way ‘round.

Apple has their own agenda, and that’s cool. I guess.
Smoke and mirrors
It wasn’t about performance
It wasn’t about plugin-architecture
It wasn’t about ubiquity
It wasn’t about devices



                                It was about competition
               Glandul... ia... er... Apple’s JS framework
Let’s take a look
Sept 2000 - Flash Player 2 had a 95% average in USA,
CAN, EUR, ASIA, and South America
Open or closed
Flash Player is a standard. It’s been at 90+% for years.




                           Whether Steve likes it or not.
The thing is that consumers
don’t really care.



             They just want their content,
                              or do they?
Yes, and no.
Users want content, but they
also want a great experience.

      The iPhone and iPad are perfect examples.
Some users are
willing to only play Farmville
at home and have an iPhone.

         They shouldn’t have to make a choice.
You’re all developers, right?
Think of it as encapsulation.


              Push the button, watch it go.
HTML5? Flash? Obj-C?
Doesn’t matter.


             ...but of course I’m biased.
Why does there even
NEED to be a winner?


              Can’t we all just get along?
The tech tabloids don’t help
because they’re businesses.


                      They have to make money,
     and the internet is full of opinionated nerds.
Want to know who will win?
Well, good.

       Because I was going to tell you anyway.
The platform that wins,
is the one that will provide the
most content through the
best experience.
               You had to see that coming.
We’re Flash developers
Let’s make great Flash
experiences.

             Or Flex. Whatever you want.
Worst-case scenario
We go back to ALL of the massive amounts of work
we had before Section 331 PLUS MOBILE.




                          Open Screen Project FTW
I work on what I like to think
are “translatable skills”.

User Experience
  Information Architecture
  Usability Engineering
  Interaction Design
  UI Construction


                Jesse Freeman says that “Flash is dead”.
 I’m just picking out what I’m wearing to the “funeral”.
What is
USER EXPERIENCE?



            UX, IxD, IA, UI , ETC, HUH
“   User experience is the sum of
       all your users' interactions
              with your company,
                        its services,
                 and its products.
                                                       ”
                   “User Experience As Corporate Imperative”
                                        hesketh.com
The elements of
User Experience
according to Jesse James Garrett


Visual Design
Information Design
     Interface design | Navigation design
Interaction Design | Information Architecture
Functional specs | Content requirements

User Needs in parallel to Site Objectives
The Next Generation of Flash User Experience
The point is
UX spans all aspects of design
and development.

           Let’s talk about both within Flash.
Design
CONSIDERATIONS



     Pretty screens actually do require thinking.
Freedom in design is a
double-edged sword
for any platform.




                         Please use responsibly.
Let’s take a look
HTML/CSS - “Standardized” coding practices,
very loose control of display across browsers

Flash - Complete freedom of design and
development, but bad coding or lack of optimization
can lead to very poor performance
Design is
Platform Independent
Design is emotional, subconscious even.




                              Flash, HTML, Silverlight?
                                       Doesn’t matter.
What is “cute?”
Disney’s Definition of Cute
Good designers play on our
emotions, but for good.
More keys to emotional design
Rule of thirds
http://en.wikipedia.org/wiki/Rule_of_thirds



Golden Ratio
http://en.wikipedia.org/wiki/Golden_ratio



Designing on a grid
http://960.gs
Development
APPROACHES



          New APIs, tools and platforms
Freedom in development is also a
double-edged sword
for any platform.
Enter Flash Player 10.1
It’s only a dot release, right?
So much more
Geolocation              IME
Gestures and Touch       DRM
Accelerometer            Globalization
Global Error Handling    Printing
P2P/RMTFP                Sampling
Sensors

My VERY unofficial count: a few hundred new APIs.
Multi-touch
Freeing Flash from the restraints of traditional mouse
and keyboard interaction.




            Flash was always meant to be multi-touch
flash.system.Capabilities.touchscreenType
Specifies the type of touchscreen supported, if any.
There is a bit of a
misconception about
rollovers on touch screens.

                 You can TOTALLY do it.
flash.display.InteractiveObject.gesturePan
Dispatched when the user moves a point of contact
over the InteractiveObject instance on a touch-
enabled device (such as moving a fingers from left to
right over a display object on a mobile phone or
tablet with a touch screen). Some devices might
also interpret this contact as a mouseOver event and
as a touchOver event.
flash.display.InteractiveObject.gesturePressAndTap
Dispatched when the user creates a point of contact
with an InteractiveObject instance, then taps on a
touch-enabled device (such as placing several fingers
over a display object to open a menu and then taps
one finger to select a menu item on a mobile phone
or tablet with a touch screen). Some devices might
also interpret this contact as a combination of several
mouse events, as well.
flash.display.InteractiveObject.gesturePressAndTap
flash.display.InteractiveObject.gestureRotate
flash.display.InteractiveObject.gestureSwipe
flash.display.InteractiveObject.gestureTwoFingerTap
flash.display.InteractiveObject.gestureZoom
flash.display.InteractiveObject.touchBegin
flash.display.InteractiveObject.touchEnd
flash.display.InteractiveObject.touchMove
flash.display.InteractiveObject.touchOut
flash.display.InteractiveObject.touchOver
flash.display.InteractiveObject.touchRollOut
flash.display.InteractiveObject.touchRollOver
flash.display.InteractiveObject.touchTap
flash.display.Sprite.startTouchDrag
flash.display.Sprite.stopTouchDrag
flash.events.GesturePhase
flash.events.TouchEvent
flash.events.TransformGestureEvent

... and a TON more.
Accessibility
Not just a checkbox any more.
Accessibility in Flash
has pretty much been a nightmare for a long time.




                              ... but it’s getting better.
flash.accessibility.ISearchableText
The ISearchableText interface can be implemented by
objects that contain text which should be searchable
on the web.
flash.accessibility.ISimpleTextSelection
The ISimpleTextSelection class can be used to add
support for the MSAA ISimpleTextSelection interface
to an AccessibilityImplementation.

If an AccessibilityImplementation subclass
implements the two getters in this class, a
screen reader such as JAWS can determine the text
selection range by calling them.
Flash Player Throttling
Before, all SWFs ran at the max frame rate,
even when invisible.
Two main throttling techniques
Is the SWF instance in a hidden tab?
Is the SWF instance scrolled out of view?
HIDDEN TAB DETECTION
Supported Browsers as of APRIL 2010

MAC - Webkit nightly (standalone .app)
WIN - IE7-8, Firefox 3.6




                       http://blog.kaourantin.net/?p=83
OUT OF VIEW DETECTION
Supported Browsers as of APRIL 2010

MAC - Safari 4, Webkit nightly (standalone .app),
      Firefox 3.7 (standalone beta .app)
WIN - IE7-8




                         http://blog.kaourantin.net/?p=83
Supported Browsers as of APRIL 2010
Linux folks - Well, you’re going to have to wait.




                It would require a LOT of overhauling
               within Flash Player and Linux browsers.
Globalization API
The most under-hyped API in Flash.
UNDER-HYPED
Detects system locale properties to tailor:
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
Private browsing mode (inside of Flash Player)
Supported in modern versions of
Chrome, IE and Firefox
Mobile-specific APIs
Handy tools for unpredictable runtimes.
Mobile text input
Detects if a physical keyboard is attached.
If not, a virtual native keyboard is displayed.
Graphics hardware acceleration on mobile
GPU-based vector renderer that replaces OEM software.
Supports many types of hardware rendering
Vector graphics
Bitmaps
3D effects
Filters/Shaders
Color transforms
Alpha transparency
Device/embedded text fonts
Saffron Type

and the cacheAsBitmap property
Disabled screensaver in fullscreen mode
if video or audio is not paused, stopped, or buffering.




           Basically, it checks to see if there is volume.
Contextual
APPLICATIONS



             Mobilizing, not minimizing
It’s not just the
desktop anymore.



            ... or even mobile handsets.
Design & development
are changing.



             Adaptability is key now.
The data drives
everything.



            Content will always be king.
Traditionally
multiple instances
had to be written.


      One for desktop, mobile, tablets, TVs, etc.
Now we have
options for user interfaces



          Native, or custom? It’s up to you.
We’re getting closer
to a “write once, deploy
everywhere” workflow.


      ... but it probably will never be that simple.
It’s more like
“write once, deploy to many.”



                    - Scott Janousek
Mobilize, not minimize
it’s all about context!
Don’t punish the user
for using a device or
platform that you forgot
or didn’t want to test for.
Don’t punish the user
by taking away or
diminishing features
based on end platforms.
Use the unique advantages
that each platform affords.
Enter AIR Mobile
powered by
Flash Player 10.1.

  The beginning of the “full” mobile Flash explosion.
Enter litl OS
powered in part by a special build of
Flash Player 10.1, to drive the use of
Flash in the living room.



   Web book, web-connected TV, multitouch remote
                                developer.litl.com
Flash can be used
virtually anywhere now.
It’s up to you,
both designers and developers, to
make the best experiences
with the Flash Platform.
The END

KevinSuttle.com
 @kevinSuttle

         {                   Kevin Suttle
             Flash Platform UX Architect    }

More Related Content

PDF
Designing better user interfaces
PDF
8 Ways to Improve App Store User Experience
PDF
An agile approach to iPhone design: Paper prototyping + user testing
PDF
When the Developer Must Design
PDF
iOS design: a case study
PDF
The future of media queries?
PDF
Responsive Design and Development "Gotchas"
PDF
Cross platform challenges and opportunities for games and interactive developers
Designing better user interfaces
8 Ways to Improve App Store User Experience
An agile approach to iPhone design: Paper prototyping + user testing
When the Developer Must Design
iOS design: a case study
The future of media queries?
Responsive Design and Development "Gotchas"
Cross platform challenges and opportunities for games and interactive developers

What's hot (18)

PPTX
Icons Behaving Badly (Updated)
KEY
10 Design Commandments for Mobile App Developers
PPTX
Silverlight won't save your user experience - you will!
PDF
Ubercool, pixel perfct & slick design… that just doesn't work
KEY
Jan Kroon's talk @mdevcon 2012
PDF
HTML5 Can't Do That
PDF
Top Tips for Android UIs - Getting the Magic on Tablets
PPT
QuickSoft Mobile Tips & Tricks 11-03-10
PPTX
The Future of Flash
PPTX
Final presentation on chatbot
PDF
101 Conversational User Interfaces
PDF
How to prototype like a pro
PDF
7 User Experience Lessons from the iPhone (Introducing UX)
PDF
UX Prototyping and Personas 11-14-14
PDF
Introduction to Building Wireframes (with OmniGraffle)
PDF
10 Things Every PHP Developer Should Know About Machine Learning
PDF
Let's Build a Chatbot!
PDF
The New Era of (Non-) Discoverability
Icons Behaving Badly (Updated)
10 Design Commandments for Mobile App Developers
Silverlight won't save your user experience - you will!
Ubercool, pixel perfct & slick design… that just doesn't work
Jan Kroon's talk @mdevcon 2012
HTML5 Can't Do That
Top Tips for Android UIs - Getting the Magic on Tablets
QuickSoft Mobile Tips & Tricks 11-03-10
The Future of Flash
Final presentation on chatbot
101 Conversational User Interfaces
How to prototype like a pro
7 User Experience Lessons from the iPhone (Introducing UX)
UX Prototyping and Personas 11-14-14
Introduction to Building Wireframes (with OmniGraffle)
10 Things Every PHP Developer Should Know About Machine Learning
Let's Build a Chatbot!
The New Era of (Non-) Discoverability
Ad

Viewers also liked (20)

PPT
Srdf Vs Dataguard
PPT
Introduction to Nand Flash interface (chinese)
PPTX
Procesamiento de datos
PDF
Jika al quran bisa bicara
PPT
おしゃれCatalystに触ってみた
PDF
Business is Easy
PDF
Series 3 pirana's akhand jyot -d
PPS
cool trains
PDF
My Experience to Be Studentpreneur
PDF
March 2010 Issue 3
PPT
Presentación 5 diapositivas
PDF
Anag
PPT
Fossoway Community Strategy Group: Strategy for Powmill & Rumbling Bridge 2010
PPT
Sugarraren bidezko analisia
PPTX
Delad vårdnad - sv Pommern och Ålands sjöfartsmuseum
PPTX
Likes health project
PDF
Series 24 - persons and reasons behind embracing laxminarayan sect
DOCX
An Analysis of Emerging Markets". = Honors Thesis
PDF
GE 13 Sanatan Dharm Jagruti's reply to Avichaldas maharaj's letter
PDF
13 charles tilly to explain political process
Srdf Vs Dataguard
Introduction to Nand Flash interface (chinese)
Procesamiento de datos
Jika al quran bisa bicara
おしゃれCatalystに触ってみた
Business is Easy
Series 3 pirana's akhand jyot -d
cool trains
My Experience to Be Studentpreneur
March 2010 Issue 3
Presentación 5 diapositivas
Anag
Fossoway Community Strategy Group: Strategy for Powmill & Rumbling Bridge 2010
Sugarraren bidezko analisia
Delad vårdnad - sv Pommern och Ålands sjöfartsmuseum
Likes health project
Series 24 - persons and reasons behind embracing laxminarayan sect
An Analysis of Emerging Markets". = Honors Thesis
GE 13 Sanatan Dharm Jagruti's reply to Avichaldas maharaj's letter
13 charles tilly to explain political process
Ad

Similar to The Next Generation of Flash User Experience (20)

PPTX
Where Design and Development Meet: Cross Platform Mobile Experiences
KEY
Usability Design: Because it's awesome
PPTX
Practical Design and Development with Flash on Mobile and Devices
PPT
Designing Powerful Web Applications - Monterey
PDF
Natural User Interfaces in NET Joshua Blake
PDF
Top Java IDE keyboard shortcuts for Eclipse, IntelliJIDEA, NetBeans (report p...
PPTX
Маргарита Остапчук (Microsoft Украина) «Разработка на универсальной платформе...
PDF
How to build a kick-ass mobile experience
PPT
Importance of User eXperience
PDF
It's All About Context
PPTX
Presentation3
PPT
All About Augmented Reality
PPTX
UX@Vitra - Experience Continuum
PPTX
The Good, The Bad, The Voiceover - ios Accessibility
ODP
Progressive enhancement
PDF
Functional Requirements Of System Requirements
PDF
The Browser is Dead, Long Live the Web! (Jonathan Stark)
PDF
The Browser is Dead, Long Live the Web!
PPTX
HTML5: The Apps, the Frameworks, the Controversy
Where Design and Development Meet: Cross Platform Mobile Experiences
Usability Design: Because it's awesome
Practical Design and Development with Flash on Mobile and Devices
Designing Powerful Web Applications - Monterey
Natural User Interfaces in NET Joshua Blake
Top Java IDE keyboard shortcuts for Eclipse, IntelliJIDEA, NetBeans (report p...
Маргарита Остапчук (Microsoft Украина) «Разработка на универсальной платформе...
How to build a kick-ass mobile experience
Importance of User eXperience
It's All About Context
Presentation3
All About Augmented Reality
UX@Vitra - Experience Continuum
The Good, The Bad, The Voiceover - ios Accessibility
Progressive enhancement
Functional Requirements Of System Requirements
The Browser is Dead, Long Live the Web! (Jonathan Stark)
The Browser is Dead, Long Live the Web!
HTML5: The Apps, the Frameworks, the Controversy

Recently uploaded (20)

PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Hybrid model detection and classification of lung cancer
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
TLE Review Electricity (Electricity).pptx
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Encapsulation theory and applications.pdf
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
Encapsulation_ Review paper, used for researhc scholars
DP Operators-handbook-extract for the Mautical Institute
Hybrid model detection and classification of lung cancer
Enhancing emotion recognition model for a student engagement use case through...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
A Presentation on Artificial Intelligence
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Approach and Philosophy of On baking technology
TLE Review Electricity (Electricity).pptx
A novel scalable deep ensemble learning framework for big data classification...
OMC Textile Division Presentation 2021.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Zenith AI: Advanced Artificial Intelligence
Group 1 Presentation -Planning and Decision Making .pptx
Encapsulation theory and applications.pdf
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Unlocking AI with Model Context Protocol (MCP)
Digital-Transformation-Roadmap-for-Companies.pptx
SOPHOS-XG Firewall Administrator PPT.pptx

The Next Generation of Flash User Experience