SlideShare uma empresa Scribd logo
1 de 37
Effective UI development
using Adobe Flex

Uday M. Shankar | April 2009 | Bangalore, India
Who am I?
                                                               O.
                                                             LL is…
                                                           HE e
•Sr. UI Designer @ NOKIA
                                                                     m
                                                                                  ar
                                                                   na
•UI dev since 1999                                                              k
                                                                My
                                                                           an
                                                                         h
•Flex since 2005
                                                                .S
                                                              yM
•From Trivandrum, Kerala
                                                            da
                                                      U

                                                                                       2
13 April 2009       Effective UI Development using Adobe Flex
Disclaimer

•All views expressed here-in are my
 own and do not reflect that they are
 endorsed by my employer
•This presentation might contain
 stuff that you already know! ;)
•Focusing on Flex 2 and 3… Not 4!
                                                                 3
13 April 2009        Effective UI Development using Adobe Flex
Ground rules

•Stop me at any time for questions or discussion.
•Let’s focus on “what”, not “why” and “how”.




                                                                 4
13 April 2009        Effective UI Development using Adobe Flex
User Experience

•Beware of the
 “CHASM”
•UX could be the
 BRIDGE across the
 chasm                                  Norman’s Adoption Curve

                                                                  5
13 April 2009   Effective UI Development using Adobe Flex
User Interface Development

•It’s all about facilitating the user
 to perform a specific task in a specific                           USER


 context in a fast and efficient manner
 by leveraging the power of
 technology and design.                 TASK                               CONTEXT




                                                                                     6
13 April 2009           Effective UI Development using Adobe Flex
UI Development
                                                                is NOT about
                                                            making screens
                                                                  look better!




                                                                             7
13 April 2009   Effective UI Development using Adobe Flex
(U,E)
                                                                          Lewin’s equation



User behavior
                                        Behavior is a function of the User & the Environment


•There is an intended behavior that we want to create,
•We have no direct control over the user
•But, via interaction design we have means to control
 the environment and to evaluate the resulting effects


                                                                                               8
13 April 2009        Effective UI Development using Adobe Flex
What we want users to see




                                                            9
13 April 2009   Effective UI Development using Adobe Flex
What users actually see




                                                            10
13 April 2009   Effective UI Development using Adobe Flex
UI has evolved

•Full page refresh replaced by small content updates
•Hyperlinks & Submit buttons replaced by a full range of
 interactive components
•Interaction is characterized by direct manipulation,
 lightweight actions & in-page actions.
•People are now used to demanding more…
                                                                 11
13 April 2009        Effective UI Development using Adobe Flex
Why all this is even
more important in
the context of
Adobe Flex?
                                                            12
13 April 2009   Effective UI Development using Adobe Flex
Why Flex?

•rich user experience
•cross-platform, accessibility, NLS
•Adobe AIR integration
•Open source, standards-based framework
•Thick-thin client
•Works with other technologies in backend
                                                                13
13 April 2009       Effective UI Development using Adobe Flex
Don’t get carried away

•Many Flex designers have a tendency to get carried
 away with the cool effects that’s possible using flex.
•Possibility = Usability
•Cool = Usable
•Users do not differentiate between the UI & Backend.
•For Users UI is the application.
                                                                  14
13 April 2009         Effective UI Development using Adobe Flex
Front End keeps changing

•HTML > DHTML > XUL > AJAX > Flex/Silverlight > ???
•Abstract the UI completely from the business layer.
•Use XML to define text on screen.
•Use well defined folder structures to separate the VIEW
 from the MODEL & the CONTROLLER

                                                                 15
13 April 2009        Effective UI Development using Adobe Flex
Follow standards

•Do not break paradigms unnecessarily
•Do not use a lot of colors on screen
•Follow basic UCD & HCI principles while designing
•Do not create Frankenstein components!


                                                                 16
13 April 2009        Effective UI Development using Adobe Flex
Leverage Flex CSS features

• Use the skinning features of
  Flex to effectively apply CSS
  across your application
• Runtime CSS is another Killer
  from Flex.
• Check out scalenine.com

                                                                     17
13 April 2009            Effective UI Development using Adobe Flex
Vs.




                                                            18
13 April 2009   Effective UI Development using Adobe Flex
Ted Patrick says…
   http://www.onflex.org/ted/2007/11/managing-ui-development-expectations.php



•Manage expectations using design.
•Clients often judge progress based on UI design.
•Clients want to see a steady progression of
 development.
•Use a plain CSS skin for Flex and dial the chrome down
 to black and white.
                                                                                19
13 April 2009                       Effective UI Development using Adobe Flex
Get your X & Y right

•The position of components on screen is IMPORTANT.
•The dimensions of components on screen is
 IMPORTANT.
•Drag & Drop is not always uber-cool!
•Control to user is good as long as the system still has
 control.
                                                                  20
13 April 2009         Effective UI Development using Adobe Flex
Accessibility

•Generally RIAs are difficult for people with certain
 disabilities
•Accessibility is catching on.
•Flex’s accessibility features are good & easy to
 implement.

                                                                  21
13 April 2009         Effective UI Development using Adobe Flex
Remember i18n & l10n

•If your application is for global audience, think about
 i18n & l10n.
•Think about it in the beginning.
•Think about it while designing.
•Think about it while skinning.

                                                                  22
13 April 2009         Effective UI Development using Adobe Flex
Use frameworks

•Use frameworks – Cairngorm, PureMVC,
•Try to adopt patterns as much as possible. Do not
 overdo it.
•Check out http://ntt.cc for a good list of Flex design
 patterns & tutorials.

                                                                   23
13 April 2009          Effective UI Development using Adobe Flex
Always validate data

• Tell the user NOW when
  things go wrong.
• Use Flex validators to
  effective validate user input.
• Create your own custom
  validators for custom needs.

                                                                      24
13 April 2009             Effective UI Development using Adobe Flex
Work smart, not hard

•Create components and re-use them across application
•Extend standard components & custom components
 wisely
•Take advantage of what the platform does well. Avoid
 trying to do what the platform doesn’t.
•Use free components available in the community
                                                                25
13 April 2009       Effective UI Development using Adobe Flex
Be modular

• Modules are SWF files which can be
  loaded dynamically
• They cannot run independently
• Applications can share the same
  module
• Lazy Loading - ModuleLoader or
  ModuleManager.
                                                                    26
13 April 2009           Effective UI Development using Adobe Flex
Do not ‘over-engineer’

• Abstraction and perfection is
  good. But, don’t overdo it.
• Pattern implementation are
  only as valuable as the
  problem they solve.



                                                                     27
13 April 2009            Effective UI Development using Adobe Flex
Breath life into your UIs

• Animation for aesthetic reasons is
  good!
• Use subtle transitions to add
  effects to your application
• Provide instant feedback to user


                                                                     28
13 April 2009            Effective UI Development using Adobe Flex
Check it out

•Flex.org / Labs.adobe.com
•blog.flexexamples.com
•ntt.cc
•Tour de Flex – Use it &
 Contribute to it!
                                                              29
13 April 2009     Effective UI Development using Adobe Flex
My ultimate metric for Ux

•If the system was a
 person, how long
 would it take before
 you punch it in the
 nose!
                                                             30
13 April 2009    Effective UI Development using Adobe Flex
Bad UI




                                                            31
13 April 2009   Effective UI Development using Adobe Flex
Good UI




                                                            32
13 April 2009   Effective UI Development using Adobe Flex
Do not
hesitate to
push the
red button
Be ready to go back to the drawing board at any time.
PPTs that I ripped off from ;)

•Molecular Inc.
•ErgoSign
•Dave Meeker – RoundArch
•Garrett Dimon
•And many other… Check out slideshare.net for many of
 these PPTs ;)
                                                                34
13 April 2009       Effective UI Development using Adobe Flex
Enough
                                Slides!
                         Let’s look at
                          something
                                  else!                     35
13 April 2009   Effective UI Development using Adobe Flex
Questions?
                                                            36
13 April 2009   Effective UI Development using Adobe Flex
Thank you
             udayms@gmail.com

             Twitter @udayms

flexed.wordpress.com | udayms.wordpress.com

Mais conteúdo relacionado

Mais procurados

Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010joaogoncalves
 
Angela Frucci Portfolio
Angela Frucci PortfolioAngela Frucci Portfolio
Angela Frucci PortfolioAngela Frucci
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMukteswar Patnaik
 
Devoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexDevoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexMichael Chaize
 
Filemobile looks at Employee Generated Content
Filemobile looks at Employee Generated ContentFilemobile looks at Employee Generated Content
Filemobile looks at Employee Generated ContentSteve Hulford
 

Mais procurados (6)

Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010
 
Cross platform app development a complete guide
Cross platform app development a complete guideCross platform app development a complete guide
Cross platform app development a complete guide
 
Angela Frucci Portfolio
Angela Frucci PortfolioAngela Frucci Portfolio
Angela Frucci Portfolio
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
 
Devoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexDevoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with Flex
 
Filemobile looks at Employee Generated Content
Filemobile looks at Employee Generated ContentFilemobile looks at Employee Generated Content
Filemobile looks at Employee Generated Content
 

Semelhante a Effective UI Development using Adobe Flex

From Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensFrom Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensJoseph Labrecque
 
Reasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store WorldReasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store WorldEffectiveUI
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...marjoramg
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondTony McGuckin
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioEmily Chong
 
Mobile User Experience
Mobile User ExperienceMobile User Experience
Mobile User ExperienceDonna Lichaw
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationJoseph Labrecque
 
Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021Omega_UAE
 
Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Ajax Experience 2009
 
02 BlackBerry Application Development
02 BlackBerry Application Development02 BlackBerry Application Development
02 BlackBerry Application DevelopmentArief Gunawan
 
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...Moon Technolabs Pvt. Ltd.
 
Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022 Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022 Moon Technolabs Pvt. Ltd.
 
Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?John Metthew
 
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...Stephan H. Wissel
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsMark Roden
 
X pages jumpstart jmp101
X pages jumpstart jmp101X pages jumpstart jmp101
X pages jumpstart jmp101pdhannan
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applicationsdominion
 

Semelhante a Effective UI Development using Adobe Flex (20)

From Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small ScreensFrom Desktop to Mobile: Application Functionality for Small Screens
From Desktop to Mobile: Application Functionality for Small Screens
 
Reasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store WorldReasons for Flash: Flash Development in an HTML5 and App Store World
Reasons for Flash: Flash Development in an HTML5 and App Store World
 
Chapter 13
Chapter 13Chapter 13
Chapter 13
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - Symbio
 
Mobile User Experience
Mobile User ExperienceMobile User Experience
Mobile User Experience
 
Impact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher EducationImpact of Adobe Edge Tools and Services in Higher Education
Impact of Adobe Edge Tools and Services in Higher Education
 
Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021Best cross platform app development frameworks for 2021
Best cross platform app development frameworks for 2021
 
Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.  Intern presentation based on Flutter Lawyer App.
Intern presentation based on Flutter Lawyer App.
 
Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]Colin Clark Accessible U Is With J Query And Infusion[1]
Colin Clark Accessible U Is With J Query And Infusion[1]
 
02 BlackBerry Application Development
02 BlackBerry Application Development02 BlackBerry Application Development
02 BlackBerry Application Development
 
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
When It Comes Down To Choosing Between Angular OR React Framework For Your Ap...
 
Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022 Angular.js vs. vue.js – which one is the better choice in 2022
Angular.js vs. vue.js – which one is the better choice in 2022
 
Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?Where and Why Use Angular for Web Development?
Where and Why Use Angular for Web Development?
 
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
AD111 - The X Path: Practical guide to taking your IBM Lotus Notes applicatio...
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
 
X pages jumpstart jmp101
X pages jumpstart jmp101X pages jumpstart jmp101
X pages jumpstart jmp101
 
JAKT Portfolio
JAKT PortfolioJAKT Portfolio
JAKT Portfolio
 
Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applications
 

Mais de Uday Shankar

Crafting delightful experiences
Crafting delightful experiencesCrafting delightful experiences
Crafting delightful experiencesUday Shankar
 
Design - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightfulDesign - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightfulUday Shankar
 
Ninja Prototyping with Templating Frameworks
Ninja Prototyping with Templating FrameworksNinja Prototyping with Templating Frameworks
Ninja Prototyping with Templating FrameworksUday Shankar
 
The Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI DesignThe Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI DesignUday Shankar
 
What Drives The World
What Drives The WorldWhat Drives The World
What Drives The WorldUday Shankar
 
Demystifying User Experience
Demystifying User ExperienceDemystifying User Experience
Demystifying User ExperienceUday Shankar
 
Touch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX PerspectiveTouch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX PerspectiveUday Shankar
 
Mobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & TourismMobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & TourismUday Shankar
 
Prototyping SMS/Voice Services
Prototyping SMS/Voice ServicesPrototyping SMS/Voice Services
Prototyping SMS/Voice ServicesUday Shankar
 
UI Engineering - Rebooted
UI Engineering - RebootedUI Engineering - Rebooted
UI Engineering - RebootedUday Shankar
 
Science of prototyping
Science of prototypingScience of prototyping
Science of prototypingUday Shankar
 
Usability & Prototyping
Usability & PrototypingUsability & Prototyping
Usability & PrototypingUday Shankar
 
User Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great uiUser Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great uiUday Shankar
 

Mais de Uday Shankar (17)

Crafting delightful experiences
Crafting delightful experiencesCrafting delightful experiences
Crafting delightful experiences
 
Design - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightfulDesign - What differentiates the useful from usable & delightful
Design - What differentiates the useful from usable & delightful
 
Ninja Prototyping with Templating Frameworks
Ninja Prototyping with Templating FrameworksNinja Prototyping with Templating Frameworks
Ninja Prototyping with Templating Frameworks
 
The Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI DesignThe Good, Bad & Ugly of UI Design
The Good, Bad & Ugly of UI Design
 
Prototyping
PrototypingPrototyping
Prototyping
 
What Drives The World
What Drives The WorldWhat Drives The World
What Drives The World
 
Demystifying User Experience
Demystifying User ExperienceDemystifying User Experience
Demystifying User Experience
 
Touch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX PerspectiveTouch & Multi Touch - A UX Perspective
Touch & Multi Touch - A UX Perspective
 
Mobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & TourismMobile Applications, Emerging Markets & Tourism
Mobile Applications, Emerging Markets & Tourism
 
Khuljaa Sim Sim
Khuljaa Sim SimKhuljaa Sim Sim
Khuljaa Sim Sim
 
Prototyping SMS/Voice Services
Prototyping SMS/Voice ServicesPrototyping SMS/Voice Services
Prototyping SMS/Voice Services
 
UI Engineering - Rebooted
UI Engineering - RebootedUI Engineering - Rebooted
UI Engineering - Rebooted
 
Science of prototyping
Science of prototypingScience of prototyping
Science of prototyping
 
Usability & Prototyping
Usability & PrototypingUsability & Prototyping
Usability & Prototyping
 
Rapid Prototyping
Rapid PrototypingRapid Prototyping
Rapid Prototyping
 
User Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great uiUser Experioence - delivering great ux through great ui
User Experioence - delivering great ux through great ui
 
Adobe® Flex™
Adobe® Flex™Adobe® Flex™
Adobe® Flex™
 

Último

New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Último (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

Effective UI Development using Adobe Flex

  • 1. Effective UI development using Adobe Flex Uday M. Shankar | April 2009 | Bangalore, India
  • 2. Who am I? O. LL is… HE e •Sr. UI Designer @ NOKIA m ar na •UI dev since 1999 k My an h •Flex since 2005 .S yM •From Trivandrum, Kerala da U 2 13 April 2009 Effective UI Development using Adobe Flex
  • 3. Disclaimer •All views expressed here-in are my own and do not reflect that they are endorsed by my employer •This presentation might contain stuff that you already know! ;) •Focusing on Flex 2 and 3… Not 4! 3 13 April 2009 Effective UI Development using Adobe Flex
  • 4. Ground rules •Stop me at any time for questions or discussion. •Let’s focus on “what”, not “why” and “how”. 4 13 April 2009 Effective UI Development using Adobe Flex
  • 5. User Experience •Beware of the “CHASM” •UX could be the BRIDGE across the chasm Norman’s Adoption Curve 5 13 April 2009 Effective UI Development using Adobe Flex
  • 6. User Interface Development •It’s all about facilitating the user to perform a specific task in a specific USER context in a fast and efficient manner by leveraging the power of technology and design. TASK CONTEXT 6 13 April 2009 Effective UI Development using Adobe Flex
  • 7. UI Development is NOT about making screens look better! 7 13 April 2009 Effective UI Development using Adobe Flex
  • 8. (U,E) Lewin’s equation User behavior Behavior is a function of the User & the Environment •There is an intended behavior that we want to create, •We have no direct control over the user •But, via interaction design we have means to control the environment and to evaluate the resulting effects 8 13 April 2009 Effective UI Development using Adobe Flex
  • 9. What we want users to see 9 13 April 2009 Effective UI Development using Adobe Flex
  • 10. What users actually see 10 13 April 2009 Effective UI Development using Adobe Flex
  • 11. UI has evolved •Full page refresh replaced by small content updates •Hyperlinks & Submit buttons replaced by a full range of interactive components •Interaction is characterized by direct manipulation, lightweight actions & in-page actions. •People are now used to demanding more… 11 13 April 2009 Effective UI Development using Adobe Flex
  • 12. Why all this is even more important in the context of Adobe Flex? 12 13 April 2009 Effective UI Development using Adobe Flex
  • 13. Why Flex? •rich user experience •cross-platform, accessibility, NLS •Adobe AIR integration •Open source, standards-based framework •Thick-thin client •Works with other technologies in backend 13 13 April 2009 Effective UI Development using Adobe Flex
  • 14. Don’t get carried away •Many Flex designers have a tendency to get carried away with the cool effects that’s possible using flex. •Possibility = Usability •Cool = Usable •Users do not differentiate between the UI & Backend. •For Users UI is the application. 14 13 April 2009 Effective UI Development using Adobe Flex
  • 15. Front End keeps changing •HTML > DHTML > XUL > AJAX > Flex/Silverlight > ??? •Abstract the UI completely from the business layer. •Use XML to define text on screen. •Use well defined folder structures to separate the VIEW from the MODEL & the CONTROLLER 15 13 April 2009 Effective UI Development using Adobe Flex
  • 16. Follow standards •Do not break paradigms unnecessarily •Do not use a lot of colors on screen •Follow basic UCD & HCI principles while designing •Do not create Frankenstein components! 16 13 April 2009 Effective UI Development using Adobe Flex
  • 17. Leverage Flex CSS features • Use the skinning features of Flex to effectively apply CSS across your application • Runtime CSS is another Killer from Flex. • Check out scalenine.com 17 13 April 2009 Effective UI Development using Adobe Flex
  • 18. Vs. 18 13 April 2009 Effective UI Development using Adobe Flex
  • 19. Ted Patrick says… http://www.onflex.org/ted/2007/11/managing-ui-development-expectations.php •Manage expectations using design. •Clients often judge progress based on UI design. •Clients want to see a steady progression of development. •Use a plain CSS skin for Flex and dial the chrome down to black and white. 19 13 April 2009 Effective UI Development using Adobe Flex
  • 20. Get your X & Y right •The position of components on screen is IMPORTANT. •The dimensions of components on screen is IMPORTANT. •Drag & Drop is not always uber-cool! •Control to user is good as long as the system still has control. 20 13 April 2009 Effective UI Development using Adobe Flex
  • 21. Accessibility •Generally RIAs are difficult for people with certain disabilities •Accessibility is catching on. •Flex’s accessibility features are good & easy to implement. 21 13 April 2009 Effective UI Development using Adobe Flex
  • 22. Remember i18n & l10n •If your application is for global audience, think about i18n & l10n. •Think about it in the beginning. •Think about it while designing. •Think about it while skinning. 22 13 April 2009 Effective UI Development using Adobe Flex
  • 23. Use frameworks •Use frameworks – Cairngorm, PureMVC, •Try to adopt patterns as much as possible. Do not overdo it. •Check out http://ntt.cc for a good list of Flex design patterns & tutorials. 23 13 April 2009 Effective UI Development using Adobe Flex
  • 24. Always validate data • Tell the user NOW when things go wrong. • Use Flex validators to effective validate user input. • Create your own custom validators for custom needs. 24 13 April 2009 Effective UI Development using Adobe Flex
  • 25. Work smart, not hard •Create components and re-use them across application •Extend standard components & custom components wisely •Take advantage of what the platform does well. Avoid trying to do what the platform doesn’t. •Use free components available in the community 25 13 April 2009 Effective UI Development using Adobe Flex
  • 26. Be modular • Modules are SWF files which can be loaded dynamically • They cannot run independently • Applications can share the same module • Lazy Loading - ModuleLoader or ModuleManager. 26 13 April 2009 Effective UI Development using Adobe Flex
  • 27. Do not ‘over-engineer’ • Abstraction and perfection is good. But, don’t overdo it. • Pattern implementation are only as valuable as the problem they solve. 27 13 April 2009 Effective UI Development using Adobe Flex
  • 28. Breath life into your UIs • Animation for aesthetic reasons is good! • Use subtle transitions to add effects to your application • Provide instant feedback to user 28 13 April 2009 Effective UI Development using Adobe Flex
  • 29. Check it out •Flex.org / Labs.adobe.com •blog.flexexamples.com •ntt.cc •Tour de Flex – Use it & Contribute to it! 29 13 April 2009 Effective UI Development using Adobe Flex
  • 30. My ultimate metric for Ux •If the system was a person, how long would it take before you punch it in the nose! 30 13 April 2009 Effective UI Development using Adobe Flex
  • 31. Bad UI 31 13 April 2009 Effective UI Development using Adobe Flex
  • 32. Good UI 32 13 April 2009 Effective UI Development using Adobe Flex
  • 33. Do not hesitate to push the red button Be ready to go back to the drawing board at any time.
  • 34. PPTs that I ripped off from ;) •Molecular Inc. •ErgoSign •Dave Meeker – RoundArch •Garrett Dimon •And many other… Check out slideshare.net for many of these PPTs ;) 34 13 April 2009 Effective UI Development using Adobe Flex
  • 35. Enough Slides! Let’s look at something else! 35 13 April 2009 Effective UI Development using Adobe Flex
  • 36. Questions? 36 13 April 2009 Effective UI Development using Adobe Flex
  • 37. Thank you udayms@gmail.com Twitter @udayms flexed.wordpress.com | udayms.wordpress.com