SlideShare ist ein Scribd-Unternehmen logo
1 von 94
Downloaden Sie, um offline zu lesen
Connecting Technology
for Great Experiences

Kenneth Rohde Christiansen
Bossa Conference, Manaus, March 2010
TRYING TO STEER UP SOME DISCUSSION
TRYING TO STEER UP SOME DISCUSSION

WHO AM I?
TRYING TO STEER UP SOME DISCUSSION

WHO AM I? KENNETH R. CHRISTIANSEN
TRYING TO STEER UP SOME DISCUSSION

WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER
TRYING TO STEER UP SOME DISCUSSION

WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER
1+ YEAR WORKING WITH WEBKIT
TRYING TO STEER UP SOME DISCUSSION

WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER
1+ YEAR WORKING WITH WEBKIT 2+ YEARS WORKING WITH
APP DEVELOPMENT USING DECLARATIVE LANGUAGE
TRYING TO STEER UP SOME DISCUSSION

WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER
1+ YEAR WORKING WITH WEBKIT 2+ YEARS WORKING WITH
APP DEVELOPMENT USING DECLARATIVE LANGUAGE NOKIA
TECHNOLOGY INSTITUTE, INdT
WHERE
I COME FROM
Been working with fluid interfaces for a long time
Flexibility, rapid development
Lots of prototyping, had to develop fast
Example of a Media player
Experiments with Web, Qt, Declarative UI
Our interfaces have all been canvas based
Targeting different display, input devices
Types of display, resolution vs. dimension, keyboard vs. touch.
Lessons learned
How we learned to design our applications


                                            Clear Model/View/Controller
                                            separation is an advantage

                                            Two types of controllers:
                                            One handling interaction
                                            between Model and View
                                            and one handling user input

                                            Declarative UI language
                                            makes it possible to make
                                            the interface a “theme”, that
                                            can easily be adapted per
                                            per device, by a designer

                                            The input handling can be
                                            part of that theme:
                                            Click area size is a good
                                            example.
TRENDS
WHY WE CARE
Some of the current trends
The background for the applications of today
Some of the current trends
The background for the applications of today




          WEB IS
       EVERYWHERE!
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED




     ACCESS TO WHAT
     MATTERS TO ME
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT
                      PERSONAL DATA
                          ONLINE




     ACCESS TO WHAT
     MATTERS TO ME
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT
                      PERSONAL DATA
                          ONLINE




     ACCESS TO WHAT
     MATTERS TO ME

                                        FLUID
                                    INTERFACES
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT                    DESIGN/FASHION
                      PERSONAL DATA                    ORIENTED
                          ONLINE




     ACCESS TO WHAT
     MATTERS TO ME

                                        FLUID
                                    INTERFACES
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT                      DESIGN/FASHION
                      PERSONAL DATA                      ORIENTED
                          ONLINE



                                           PERSONAL

     ACCESS TO WHAT
     MATTERS TO ME

                                        FLUID
                                    INTERFACES
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT                      DESIGN/FASHION
                      PERSONAL DATA                      ORIENTED
                          ONLINE


                                                                        TECHNOLOGY IS
                                           PERSONAL                    NOT JUST A TOOL,
     ACCESS TO WHAT                                                    BUT A WAY OF LIFE
     MATTERS TO ME

                                        FLUID
                                    INTERFACES
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT                      DESIGN/FASHION
                      PERSONAL DATA                      ORIENTED
                          ONLINE


                                                                        TECHNOLOGY IS
                                           PERSONAL                    NOT JUST A TOOL,
     ACCESS TO WHAT                                                    BUT A WAY OF LIFE
     MATTERS TO ME

                                        FLUID
                                    INTERFACES               TECHNOLOGY SHOULD
                                                             NOT BE A DISTRACTION
Some of the current trends
The background for the applications of today

                                              SOCIAL
                                           NETWORKING,
          WEB IS                             ALWAYS
       EVERYWHERE!                          CONNECTED



                       IMPORTANT                      DESIGN/FASHION
                      PERSONAL DATA                      ORIENTED
                          ONLINE


                                                                        TECHNOLOGY IS
                                           PERSONAL                    NOT JUST A TOOL,
     ACCESS TO WHAT                                                    BUT A WAY OF LIFE
     MATTERS TO ME

                                        FLUID
                                    INTERFACES               TECHNOLOGY SHOULD
                                                             NOT BE A DISTRACTION
                                                             BUT AN ENABLER
So Web is the future?
The state of the Web

                                          SOCIAL
                                       NETWORKING,
          WEB IS                         ALWAYS
       EVERYWHERE!                      CONNECTED



                        IMPORTANT                 DESIGN/FASHION
                       PERSONAL DATA                 ORIENTED
                           ONLINE


                                                                    TECHNOLOGY IS
                                       PERSONAL                    NOT JUST A TOOL,
     ACCESS TO WHAT                                                BUT A WAY OF LIFE
     MATTERS TO ME

                                    FLUID
                                INTERFACES
So Web is the future?
The state of the Web

                                          SOCIAL
                                       NETWORKING,
          WEB IS                         ALWAYS
       EVERYWHERE!                      CONNECTED



                        IMPORTANT               DESIGN/FASHION
                       PERSONAL DATA          IN SOME AREAS,
                                                   ORIENTED THE WEB IS
                           ONLINE
                                              NOT THERE TODAY
                                                             TECHNOLOGY IS
                                       PERSONAL             NOT JUST A TOOL,
     ACCESS TO WHAT                                         BUT A WAY OF LIFE
     MATTERS TO ME

                                    FLUID
                                INTERFACES
So Web is the future?
The state of the Web

                                          SOCIAL
                                       NETWORKING,
          WEB IS                         ALWAYS
       EVERYWHERE!                      CONNECTED



                        IMPORTANT               DESIGN/FASHION
                       PERSONAL DATA          IN SOME AREAS,
                                                   ORIENTED THE WEB IS
                           ONLINE
                                              NOT THERE TODAY

                                           BUT CAN IT BE? TECHNOLOGY IS
                                    PERSONAL             NOT JUST A TOOL,
     ACCESS TO WHAT                        DOES IT MAKES SENSE? LIFE
                                                         BUT A WAY OF
     MATTERS TO ME
                                           IS A MIXTURE / A HYBRID
                                   FLUID   POSSIBLE?
                                INTERFACES
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
                       Designed for contents (text, images, data...)
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
                       Designed for contents (text, images, data...)
                       Very flexible layouting
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
                       Designed for contents (text, images, data...)
                       Very flexible layouting
                       Zero-deployment / update-ability
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
                       Designed for contents (text, images, data...)
                       Very flexible layouting
                       Zero-deployment / update-ability
                       Lots of existing Web contents out there,
                       and that is not going to go away.
Understanding the tools, filling the gaps
The power of Web as a technology




  THE WEB IS VERY
  POWERFUL
                       Designed for contents (text, images, data...)
                       Very flexible layouting
                       Zero-deployment / update-ability
                       Lots of existing Web contents out there,
                       and that is not going to go away.
                       Indexability, searching
What is the catch?
Why are we not all just using Web




     It was designed for contents, patched for Web apps
What is the catch?
Why are we not all just using Web




     It was designed for contents, patched for Web apps
            Expensive DOM manipulation
What is the catch?
Why are we not all just using Web




     It was designed for contents, patched for Web apps
            Expensive DOM manipulation
            Extremely flexible - a monster doing more that you
            normally need. Can lead to unresponsiveness,
            battery drain
What is the catch?
Why are we not all just using Web




     It was designed for contents, patched for Web apps
            Expensive DOM manipulation
            Extremely flexible - a monster doing more that you
            normally need. Can lead to unresponsiveness,
            battery drain


      Summarized: You need to understand the inner working
      of the Web engine in order to make a responsive, nice
      application
                                          What triggeres a relayout? etc...
But is it possible at all?
Why are we not all just using Web



     Yes! Google has many apps already, Palm WebOS is
     an even better example, providing:
                                                      DESIGN/FASHION
                                                         ORIENTED
                    FLUID
                                                        INTERFACE
                INTERFACES

                                    PERSONALIZATION
But is it possible at all?
Why are we not all just using Web



     Yes! Google has many apps already, Palm WebOS is
     an even better example, providing:
                                                      DESIGN/FASHION
                                                         ORIENTED
                    FLUID
                                                        INTERFACE
                INTERFACES

                                    PERSONALIZATION




      But, the developer experience is still lacking, and if you
      look at their hardware (comparable to N900, iPhone 3GS)
      the interface seems slow and unresponsive.
So does it make sense?


   It does! in some situations

   Remember:
So does it make sense?


   It does! in some situations

   Remember:




        ACCESS TO WHAT
        MATTERS TO ME
So does it make sense?


   It does! in some situations

   Remember:

                            ALWAYS
                         CONNECTED



        ACCESS TO WHAT
        MATTERS TO ME
So does it make sense?


   It does! in some situations

   Remember:

                            ALWAYS
                         CONNECTED


                                      PERSONAL
        ACCESS TO WHAT               DATA ONLINE
        MATTERS TO ME
So does it make sense?


   It does! in some situations

   Remember:

                            ALWAYS
                         CONNECTED


                                      PERSONAL
        ACCESS TO WHAT               DATA ONLINE
        MATTERS TO ME




                            + A LOT OF OTHER REASONS
The case of the established protocol
Access to online data is all about services



      So why not just make a native app, Qt has
      QNetwork... + B + C
The case of the established protocol
Access to online data is all about services



      So why not just make a native app, Qt has
      QNetwork... + B + C
      Connecting a native app with a server requires a
      communication protocol, that should preferrable to easy
      to use and extensive. Defining and maintaining such one
      can be expensive
The case of the established protocol
Access to online data is all about services



      So why not just make a native app, Qt has
      QNetwork... + B + C
      Connecting a native app with a server requires a
      communication protocol, that should preferrable to easy
      to use and extensive. Defining and maintaining such one
      can be expensive

      A Web app is the protocol itself:

                                                           HTML + CSS
                       HTTP                   JAVASCRIPT
The case of the established protocol
Access to online data is all about services




     For a Web application the protocol is:

                                                           HTML + CSS
                      HTTP                    JAVASCRIPT




     This makes it possible for the service provider
     to change the inner workings of the app+service at any
     point, transparent to the user. The app lives online, but
     can have offline capabilities.
Great integration with existing Web Services
There is so much out there, in use by our target group




     Flickr, Twitter, Ovi Services....




     Stocks, News feed, Weather
     forecast, Social Networking
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
    - Extra care for making things work offline
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
    - Extra care for making things work offline
    - Limited native integration device + ui
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
    - Extra care for making things work offline
    - Limited native integration device + ui
    - Depends on connectivity speed, server downtime
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
    - Extra care for making things work offline
    - Limited native integration device + ui
    - Depends on connectivity speed, server downtime
    - Increased security ricks js injection
So where does the Web fail
Identifying some of the problems




    - Hard to make fluid interfaces not designed for it
    - Extra care for making things work offline
    - Limited native integration device + ui
    - Depends on connectivity speed, server downtime
    - Increased security ricks js injection
    - Memory / battery usage
But that can all be fixed, right?
Searching for solutions




     - Qt makes it easy to expose native API’s to JS
But that can all be fixed, right?
Searching for solutions




     - Qt makes it easy to expose native API’s to JS
     - Offline is a bit part of HTML5, but not out of the box
But that can all be fixed, right?
Searching for solutions




     - Qt makes it easy to expose native API’s to JS
     - Offline is a bit part of HTML5, but not out of the box
     - Web Runtime makes it possible to run apps locally
But that can all be fixed, right?
Searching for solutions




     - Qt makes it easy to expose native API’s to JS
     - Offline is a bit part of HTML5, but not out of the box
     - Web Runtime makes it possible to run apps locally
     - Sandboxing
But that can all be fixed, right?
Searching for solutions




     - Qt makes it easy to expose native API’s to JS
     - Offline is a bit part of HTML5, but not out of the box
     - Web Runtime makes it possible to run apps locally
     - Sandboxing


                                   Still a lot of work to do.


                                   and remember, we want
                                   a nice Developer Experience
BACK TO
               THE NATIVE SIDE

Let’s leave the Web for a while and have a look at QML
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT:
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION



             Easy to grasp, use and yet very flexible
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION



              Easy to grasp, use and yet very flexible

     “End of the Widgets”
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION



              Easy to grasp, use and yet very flexible

     “End of the Widgets”
                            High Reuse
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION



              Easy to grasp, use and yet very flexible

     “End of the Widgets”
                             High Reuse

             Themability / Change input methods
             with theme / Adapt for different devices
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION


    JavaScript scripting, JSON like format
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION


    JavaScript scripting, JSON like format
       Embed QML in QML (even with HTTP, or so I’ve heard)
COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID
DEVELOPMENT ANIMATION


    JavaScript scripting, JSON like format
       Embed QML in QML (even with HTTP, or so I’ve heard)

    Some Web Integration:

              You can have a Web View
              Use images from HTTP etc
Wow, that sounds too good to be true
But you better believe it




     Downsides?
Wow, that sounds too good to be true
But you better believe it




     Downsides?
             It is not a standard
Wow, that sounds too good to be true
But you better believe it




     Downsides?
             It is not a standard
             You cannot target the iPhone, Android, Nokia ... etc
Wow, that sounds too good to be true
But you better believe it




     Downsides?
             It is not a standard
             You cannot target the iPhone, Android, Nokia ... etc
             So far unproven, how will it evolve? backward compat...?
Wow, that sounds too good to be true
But you better believe it




     Downsides?
             It is not a standard
             You cannot target the iPhone, Android, Nokia ... etc
             So far unproven, how will it evolve? backward compat...?
             Only basic Web integration: Just a Web view
Wow, that sounds too good to be true
But you better believe it




     Downsides?
             It is not a standard
             You cannot target the iPhone, Android, Nokia ... etc
             So far unproven, how will it evolve? backward compat...?
             Only basic Web integration: Just a Web view
             Layout / contents with non-fixed layout
WRT+QML Complementing Power




A look at use cases for both technologies
Online Widgets with offline abbilities
Give the services more control




Get layout + contents
from a service
   Make it work offline
   Personalization
   Good for widgets,
   Social integration
Powerful layout
Remember Word vs. Pagemaker?




CSS + is powerful combination
  HTML
  Make a lot of sense for text+images
  QML has some support for this,
  but it is not nearly as powerful
Sometimes Web just doesn’t make sense
Let’s consider a video player



   When the app needs raw speed, lots of user interaction,
   depends on native anyway, etc...
Native and Web working together
United we are strong



How can we join the technologies
Native and Web working together
United we are strong



How can we join the technologies
   Manipulate / show iframes instead
   of Webpages in QML
Native and Web working together
United we are strong



How can we join the technologies
   Manipulate / show iframes instead
   of Webpages in QML
       Enable cross iframe communication
Native and Web working together
United we are strong



How can we join the technologies
   Manipulate / show iframes instead
   of Webpages in QML
       Enable cross iframe communication
       Less resources
Native and Web working together
United we are strong



How can we join the technologies
   Manipulate / show iframes instead
   of Webpages in QML
       Enable cross iframe communication
       Less resources
       Do a QML list with each item being
       an iframe or a web element,
       can it get more hybrid that that? ;-)
Native and Web working together
United we are strong



How can we join the technologies
   Manipulate / show iframes instead
   of Webpages in QML
       Enable cross iframe communication
       Less resources
       Do a QML list with each item being
       an iframe or a web element,
       can it get more hybrid that that? ;-)
   Shared JS runtime, bind QML props
   to iframe properties
Thanks for listening
Understanding the tools, we fill the gaps

I hope that I have provided you with some new input
and steered up some discussion.


KENNETH ROHDE CHRISTIANSEN
ext-kenneth.christiansen@nokia.com
kenneth.christiansen@openbossa.org

Weitere ähnliche Inhalte

Was ist angesagt?

Android fragmentation, a valid concern?
Android fragmentation, a valid concern?Android fragmentation, a valid concern?
Android fragmentation, a valid concern?androidaalto
 
IFTF / Skype: Future of Real-Time Video Communication
IFTF / Skype: Future of Real-Time Video CommunicationIFTF / Skype: Future of Real-Time Video Communication
IFTF / Skype: Future of Real-Time Video CommunicationUnited Interactive™
 
WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1Tina Bejian-Binnion
 
Mobile Design for Instructional Designers
Mobile Design for Instructional DesignersMobile Design for Instructional Designers
Mobile Design for Instructional DesignersBrandon Carson
 
Revision Key Terms
Revision Key TermsRevision Key Terms
Revision Key Termsandy_panay1
 
The Future of Meetings is Going Mobile
The Future of Meetings is Going Mobile The Future of Meetings is Going Mobile
The Future of Meetings is Going Mobile MeetingMogul
 
Saiful Hidayat On Csr Guru Telkom Republika Bagimu Guru Kupersembahkan It...
Saiful Hidayat On Csr Guru Telkom   Republika Bagimu Guru Kupersembahkan   It...Saiful Hidayat On Csr Guru Telkom   Republika Bagimu Guru Kupersembahkan   It...
Saiful Hidayat On Csr Guru Telkom Republika Bagimu Guru Kupersembahkan It...Saiful Hidayat
 
Learning interactions on mobile slideshare
Learning interactions on mobile   slideshareLearning interactions on mobile   slideshare
Learning interactions on mobile slideshareRaptivity
 
Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011arendsf
 
Human-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewHuman-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewSabin Buraga
 
Multimedia journalism may 2011
Multimedia journalism may 2011Multimedia journalism may 2011
Multimedia journalism may 2011Martin Hirst
 
Design & the internet of things: from whimsy to utility and hopefully back
Design & the internet of things: from whimsy to utility and hopefully backDesign & the internet of things: from whimsy to utility and hopefully back
Design & the internet of things: from whimsy to utility and hopefully backAlexandra Deschamps-Sonsino
 
New media trends dec2011 lite
New media trends dec2011 liteNew media trends dec2011 lite
New media trends dec2011 liteTarryn Abrahams
 

Was ist angesagt? (14)

Android fragmentation, a valid concern?
Android fragmentation, a valid concern?Android fragmentation, a valid concern?
Android fragmentation, a valid concern?
 
Sb47-50
Sb47-50Sb47-50
Sb47-50
 
IFTF / Skype: Future of Real-Time Video Communication
IFTF / Skype: Future of Real-Time Video CommunicationIFTF / Skype: Future of Real-Time Video Communication
IFTF / Skype: Future of Real-Time Video Communication
 
WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1
 
Mobile Design for Instructional Designers
Mobile Design for Instructional DesignersMobile Design for Instructional Designers
Mobile Design for Instructional Designers
 
Revision Key Terms
Revision Key TermsRevision Key Terms
Revision Key Terms
 
The Future of Meetings is Going Mobile
The Future of Meetings is Going Mobile The Future of Meetings is Going Mobile
The Future of Meetings is Going Mobile
 
Saiful Hidayat On Csr Guru Telkom Republika Bagimu Guru Kupersembahkan It...
Saiful Hidayat On Csr Guru Telkom   Republika Bagimu Guru Kupersembahkan   It...Saiful Hidayat On Csr Guru Telkom   Republika Bagimu Guru Kupersembahkan   It...
Saiful Hidayat On Csr Guru Telkom Republika Bagimu Guru Kupersembahkan It...
 
Learning interactions on mobile slideshare
Learning interactions on mobile   slideshareLearning interactions on mobile   slideshare
Learning interactions on mobile slideshare
 
Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011
 
Human-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewHuman-Computer Interaction: An Overview
Human-Computer Interaction: An Overview
 
Multimedia journalism may 2011
Multimedia journalism may 2011Multimedia journalism may 2011
Multimedia journalism may 2011
 
Design & the internet of things: from whimsy to utility and hopefully back
Design & the internet of things: from whimsy to utility and hopefully backDesign & the internet of things: from whimsy to utility and hopefully back
Design & the internet of things: from whimsy to utility and hopefully back
 
New media trends dec2011 lite
New media trends dec2011 liteNew media trends dec2011 lite
New media trends dec2011 lite
 

Andere mochten auch

Nilai ujian kelas xii ipa
Nilai ujian kelas xii ipa Nilai ujian kelas xii ipa
Nilai ujian kelas xii ipa puji
 
Dworzec Główny Lublin
Dworzec Główny   LublinDworzec Główny   Lublin
Dworzec Główny Lublinmartieire
 
Cooperative Learning In Education
Cooperative Learning In EducationCooperative Learning In Education
Cooperative Learning In Educationguest6830d9a
 
Software Sekolah
Software SekolahSoftware Sekolah
Software Sekolahpuji
 
Thomas J. Gall Porfolio July 2011
Thomas J. Gall  Porfolio July 2011Thomas J. Gall  Porfolio July 2011
Thomas J. Gall Porfolio July 2011tomjgall
 

Andere mochten auch (6)

End of Censorship
End of CensorshipEnd of Censorship
End of Censorship
 
Nilai ujian kelas xii ipa
Nilai ujian kelas xii ipa Nilai ujian kelas xii ipa
Nilai ujian kelas xii ipa
 
Dworzec Główny Lublin
Dworzec Główny   LublinDworzec Główny   Lublin
Dworzec Główny Lublin
 
Cooperative Learning In Education
Cooperative Learning In EducationCooperative Learning In Education
Cooperative Learning In Education
 
Software Sekolah
Software SekolahSoftware Sekolah
Software Sekolah
 
Thomas J. Gall Porfolio July 2011
Thomas J. Gall  Porfolio July 2011Thomas J. Gall  Porfolio July 2011
Thomas J. Gall Porfolio July 2011
 

Ähnlich wie Connecting Technology for Great Experiences - How does QML and Web fit together?

Some inspirational trends for today
Some inspirational trends for todaySome inspirational trends for today
Some inspirational trends for todayMediaCom France
 
Some significant and inspirational media trends for today
Some significant and inspirational media trends for todaySome significant and inspirational media trends for today
Some significant and inspirational media trends for todayFrancoise Fassin
 
Developing For The Pervasive Internet Of Things
Developing For The Pervasive Internet Of ThingsDeveloping For The Pervasive Internet Of Things
Developing For The Pervasive Internet Of ThingsVictoria Romero-Gomez
 
Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Peter Borup Jakobsen
 
Designing Collaboration: Building Systems that Really Work - Philipp Schäfer
Designing Collaboration: Building Systems that Really Work - Philipp SchäferDesigning Collaboration: Building Systems that Really Work - Philipp Schäfer
Designing Collaboration: Building Systems that Really Work - Philipp SchäferOpenKnowledge srl
 
Design for Multitouch
Design for Multitouch Design for Multitouch
Design for Multitouch Robert Winters
 
Internet & Beyond - Rosary College BCA Students Presentation
Internet & Beyond - Rosary College BCA Students PresentationInternet & Beyond - Rosary College BCA Students Presentation
Internet & Beyond - Rosary College BCA Students PresentationVernon Fernandes
 
New era of apps phones
New era of apps phonesNew era of apps phones
New era of apps phonesPasi Maenpaa
 
Fjord digital trends 2012
Fjord digital trends 2012Fjord digital trends 2012
Fjord digital trends 2012Fjord
 
Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012CorSource
 
Adapting ourselves to adaptive content
Adapting ourselves to adaptive contentAdapting ourselves to adaptive content
Adapting ourselves to adaptive contentKaren McGrane
 
Mobility, Context, Interactions and Data
Mobility, Context, Interactions and DataMobility, Context, Interactions and Data
Mobility, Context, Interactions and DataCarlos Enrique Ortiz
 
Mobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesMobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesFloor van Riet
 
Screenmediaexpo keynote may_2011
Screenmediaexpo keynote may_2011Screenmediaexpo keynote may_2011
Screenmediaexpo keynote may_2011Stephen Randall
 
Mobile Information Architecture
Mobile Information ArchitectureMobile Information Architecture
Mobile Information ArchitectureAndy Fitzgerald
 
2012-10 MLOVE Mobile Trend Report Preview
2012-10 MLOVE Mobile Trend Report Preview2012-10 MLOVE Mobile Trend Report Preview
2012-10 MLOVE Mobile Trend Report PreviewMLOVE ConFestival
 
Creating a social media strategy for a tourism business | Block 2: Social Tou...
Creating a social media strategy for a tourism business | Block 2: Social Tou...Creating a social media strategy for a tourism business | Block 2: Social Tou...
Creating a social media strategy for a tourism business | Block 2: Social Tou...Francisco Hernandez-Marcos
 

Ähnlich wie Connecting Technology for Great Experiences - How does QML and Web fit together? (20)

Some inspirational trends for today
Some inspirational trends for todaySome inspirational trends for today
Some inspirational trends for today
 
Some significant and inspirational media trends for today
Some significant and inspirational media trends for todaySome significant and inspirational media trends for today
Some significant and inspirational media trends for today
 
Developing For The Pervasive Internet Of Things
Developing For The Pervasive Internet Of ThingsDeveloping For The Pervasive Internet Of Things
Developing For The Pervasive Internet Of Things
 
Servion Presentation 20 April 2011
Servion Presentation 20 April 2011Servion Presentation 20 April 2011
Servion Presentation 20 April 2011
 
Designing Collaboration: Building Systems that Really Work - Philipp Schäfer
Designing Collaboration: Building Systems that Really Work - Philipp SchäferDesigning Collaboration: Building Systems that Really Work - Philipp Schäfer
Designing Collaboration: Building Systems that Really Work - Philipp Schäfer
 
Design for Multitouch
Design for Multitouch Design for Multitouch
Design for Multitouch
 
E mental Health Conference - Presentations
E mental Health Conference - PresentationsE mental Health Conference - Presentations
E mental Health Conference - Presentations
 
Internet & Beyond - Rosary College BCA Students Presentation
Internet & Beyond - Rosary College BCA Students PresentationInternet & Beyond - Rosary College BCA Students Presentation
Internet & Beyond - Rosary College BCA Students Presentation
 
New era of apps phones
New era of apps phonesNew era of apps phones
New era of apps phones
 
Fjord digital trends 2012
Fjord digital trends 2012Fjord digital trends 2012
Fjord digital trends 2012
 
Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012
 
Adapting ourselves to adaptive content
Adapting ourselves to adaptive contentAdapting ourselves to adaptive content
Adapting ourselves to adaptive content
 
Mobility, Context, Interactions and Data
Mobility, Context, Interactions and DataMobility, Context, Interactions and Data
Mobility, Context, Interactions and Data
 
Mobile Internet - trends & possibilities
Mobile Internet - trends & possibilitiesMobile Internet - trends & possibilities
Mobile Internet - trends & possibilities
 
Mobile next
Mobile nextMobile next
Mobile next
 
Screenmediaexpo keynote may_2011
Screenmediaexpo keynote may_2011Screenmediaexpo keynote may_2011
Screenmediaexpo keynote may_2011
 
Mobile Information Architecture
Mobile Information ArchitectureMobile Information Architecture
Mobile Information Architecture
 
Adaptive Brands
Adaptive BrandsAdaptive Brands
Adaptive Brands
 
2012-10 MLOVE Mobile Trend Report Preview
2012-10 MLOVE Mobile Trend Report Preview2012-10 MLOVE Mobile Trend Report Preview
2012-10 MLOVE Mobile Trend Report Preview
 
Creating a social media strategy for a tourism business | Block 2: Social Tou...
Creating a social media strategy for a tourism business | Block 2: Social Tou...Creating a social media strategy for a tourism business | Block 2: Social Tou...
Creating a social media strategy for a tourism business | Block 2: Social Tou...
 

Mehr von Kenneth Rohde Christiansen (10)

Progressive Web Apps - deep dive
Progressive Web Apps - deep diveProgressive Web Apps - deep dive
Progressive Web Apps - deep dive
 
New trends on web platform
New trends on web platformNew trends on web platform
New trends on web platform
 
Web Assembly (W3C TPAC presentation)
Web Assembly (W3C TPAC presentation)Web Assembly (W3C TPAC presentation)
Web Assembly (W3C TPAC presentation)
 
Generic sensors for the Web
Generic sensors for the WebGeneric sensors for the Web
Generic sensors for the Web
 
HTML literals, the JSX of the platform
HTML literals, the JSX of the platformHTML literals, the JSX of the platform
HTML literals, the JSX of the platform
 
Cold front - bridging the web and the physical world
Cold front - bridging the web and the physical worldCold front - bridging the web and the physical world
Cold front - bridging the web and the physical world
 
Web components v1 intro
Web components v1 introWeb components v1 intro
Web components v1 intro
 
WebKit, why it matters (PDF version)
WebKit, why it matters (PDF version)WebKit, why it matters (PDF version)
WebKit, why it matters (PDF version)
 
WebKit, why it matters?
WebKit, why it matters?WebKit, why it matters?
WebKit, why it matters?
 
Qt WebKit going Mobile
Qt WebKit going MobileQt WebKit going Mobile
Qt WebKit going Mobile
 

Kürzlich hochgeladen

DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 

Kürzlich hochgeladen (20)

DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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!
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
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
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 

Connecting Technology for Great Experiences - How does QML and Web fit together?

  • 1. Connecting Technology for Great Experiences Kenneth Rohde Christiansen Bossa Conference, Manaus, March 2010
  • 2. TRYING TO STEER UP SOME DISCUSSION
  • 3. TRYING TO STEER UP SOME DISCUSSION WHO AM I?
  • 4. TRYING TO STEER UP SOME DISCUSSION WHO AM I? KENNETH R. CHRISTIANSEN
  • 5. TRYING TO STEER UP SOME DISCUSSION WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER
  • 6. TRYING TO STEER UP SOME DISCUSSION WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER 1+ YEAR WORKING WITH WEBKIT
  • 7. TRYING TO STEER UP SOME DISCUSSION WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER 1+ YEAR WORKING WITH WEBKIT 2+ YEARS WORKING WITH APP DEVELOPMENT USING DECLARATIVE LANGUAGE
  • 8. TRYING TO STEER UP SOME DISCUSSION WHO AM I? KENNETH R. CHRISTIANSEN WEBKIT REVIEWER 1+ YEAR WORKING WITH WEBKIT 2+ YEARS WORKING WITH APP DEVELOPMENT USING DECLARATIVE LANGUAGE NOKIA TECHNOLOGY INSTITUTE, INdT
  • 10. Been working with fluid interfaces for a long time Flexibility, rapid development
  • 11. Lots of prototyping, had to develop fast Example of a Media player
  • 12. Experiments with Web, Qt, Declarative UI Our interfaces have all been canvas based
  • 13. Targeting different display, input devices Types of display, resolution vs. dimension, keyboard vs. touch.
  • 14. Lessons learned How we learned to design our applications Clear Model/View/Controller separation is an advantage Two types of controllers: One handling interaction between Model and View and one handling user input Declarative UI language makes it possible to make the interface a “theme”, that can easily be adapted per per device, by a designer The input handling can be part of that theme: Click area size is a good example.
  • 16. Some of the current trends The background for the applications of today
  • 17. Some of the current trends The background for the applications of today WEB IS EVERYWHERE!
  • 18. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED
  • 19. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED ACCESS TO WHAT MATTERS TO ME
  • 20. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT PERSONAL DATA ONLINE ACCESS TO WHAT MATTERS TO ME
  • 21. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT PERSONAL DATA ONLINE ACCESS TO WHAT MATTERS TO ME FLUID INTERFACES
  • 22. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE ACCESS TO WHAT MATTERS TO ME FLUID INTERFACES
  • 23. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE PERSONAL ACCESS TO WHAT MATTERS TO ME FLUID INTERFACES
  • 24. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT BUT A WAY OF LIFE MATTERS TO ME FLUID INTERFACES
  • 25. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT BUT A WAY OF LIFE MATTERS TO ME FLUID INTERFACES TECHNOLOGY SHOULD NOT BE A DISTRACTION
  • 26. Some of the current trends The background for the applications of today SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT BUT A WAY OF LIFE MATTERS TO ME FLUID INTERFACES TECHNOLOGY SHOULD NOT BE A DISTRACTION BUT AN ENABLER
  • 27. So Web is the future? The state of the Web SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA ORIENTED ONLINE TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT BUT A WAY OF LIFE MATTERS TO ME FLUID INTERFACES
  • 28. So Web is the future? The state of the Web SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA IN SOME AREAS, ORIENTED THE WEB IS ONLINE NOT THERE TODAY TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT BUT A WAY OF LIFE MATTERS TO ME FLUID INTERFACES
  • 29. So Web is the future? The state of the Web SOCIAL NETWORKING, WEB IS ALWAYS EVERYWHERE! CONNECTED IMPORTANT DESIGN/FASHION PERSONAL DATA IN SOME AREAS, ORIENTED THE WEB IS ONLINE NOT THERE TODAY BUT CAN IT BE? TECHNOLOGY IS PERSONAL NOT JUST A TOOL, ACCESS TO WHAT DOES IT MAKES SENSE? LIFE BUT A WAY OF MATTERS TO ME IS A MIXTURE / A HYBRID FLUID POSSIBLE? INTERFACES
  • 30. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL
  • 31. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL Designed for contents (text, images, data...)
  • 32. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL Designed for contents (text, images, data...) Very flexible layouting
  • 33. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL Designed for contents (text, images, data...) Very flexible layouting Zero-deployment / update-ability
  • 34. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL Designed for contents (text, images, data...) Very flexible layouting Zero-deployment / update-ability Lots of existing Web contents out there, and that is not going to go away.
  • 35. Understanding the tools, filling the gaps The power of Web as a technology THE WEB IS VERY POWERFUL Designed for contents (text, images, data...) Very flexible layouting Zero-deployment / update-ability Lots of existing Web contents out there, and that is not going to go away. Indexability, searching
  • 36. What is the catch? Why are we not all just using Web It was designed for contents, patched for Web apps
  • 37. What is the catch? Why are we not all just using Web It was designed for contents, patched for Web apps Expensive DOM manipulation
  • 38. What is the catch? Why are we not all just using Web It was designed for contents, patched for Web apps Expensive DOM manipulation Extremely flexible - a monster doing more that you normally need. Can lead to unresponsiveness, battery drain
  • 39. What is the catch? Why are we not all just using Web It was designed for contents, patched for Web apps Expensive DOM manipulation Extremely flexible - a monster doing more that you normally need. Can lead to unresponsiveness, battery drain Summarized: You need to understand the inner working of the Web engine in order to make a responsive, nice application What triggeres a relayout? etc...
  • 40. But is it possible at all? Why are we not all just using Web Yes! Google has many apps already, Palm WebOS is an even better example, providing: DESIGN/FASHION ORIENTED FLUID INTERFACE INTERFACES PERSONALIZATION
  • 41. But is it possible at all? Why are we not all just using Web Yes! Google has many apps already, Palm WebOS is an even better example, providing: DESIGN/FASHION ORIENTED FLUID INTERFACE INTERFACES PERSONALIZATION But, the developer experience is still lacking, and if you look at their hardware (comparable to N900, iPhone 3GS) the interface seems slow and unresponsive.
  • 42. So does it make sense? It does! in some situations Remember:
  • 43. So does it make sense? It does! in some situations Remember: ACCESS TO WHAT MATTERS TO ME
  • 44. So does it make sense? It does! in some situations Remember: ALWAYS CONNECTED ACCESS TO WHAT MATTERS TO ME
  • 45. So does it make sense? It does! in some situations Remember: ALWAYS CONNECTED PERSONAL ACCESS TO WHAT DATA ONLINE MATTERS TO ME
  • 46. So does it make sense? It does! in some situations Remember: ALWAYS CONNECTED PERSONAL ACCESS TO WHAT DATA ONLINE MATTERS TO ME + A LOT OF OTHER REASONS
  • 47. The case of the established protocol Access to online data is all about services So why not just make a native app, Qt has QNetwork... + B + C
  • 48. The case of the established protocol Access to online data is all about services So why not just make a native app, Qt has QNetwork... + B + C Connecting a native app with a server requires a communication protocol, that should preferrable to easy to use and extensive. Defining and maintaining such one can be expensive
  • 49. The case of the established protocol Access to online data is all about services So why not just make a native app, Qt has QNetwork... + B + C Connecting a native app with a server requires a communication protocol, that should preferrable to easy to use and extensive. Defining and maintaining such one can be expensive A Web app is the protocol itself: HTML + CSS HTTP JAVASCRIPT
  • 50. The case of the established protocol Access to online data is all about services For a Web application the protocol is: HTML + CSS HTTP JAVASCRIPT This makes it possible for the service provider to change the inner workings of the app+service at any point, transparent to the user. The app lives online, but can have offline capabilities.
  • 51. Great integration with existing Web Services There is so much out there, in use by our target group Flickr, Twitter, Ovi Services.... Stocks, News feed, Weather forecast, Social Networking
  • 52. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it
  • 53. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it - Extra care for making things work offline
  • 54. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it - Extra care for making things work offline - Limited native integration device + ui
  • 55. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it - Extra care for making things work offline - Limited native integration device + ui - Depends on connectivity speed, server downtime
  • 56. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it - Extra care for making things work offline - Limited native integration device + ui - Depends on connectivity speed, server downtime - Increased security ricks js injection
  • 57. So where does the Web fail Identifying some of the problems - Hard to make fluid interfaces not designed for it - Extra care for making things work offline - Limited native integration device + ui - Depends on connectivity speed, server downtime - Increased security ricks js injection - Memory / battery usage
  • 58. But that can all be fixed, right? Searching for solutions - Qt makes it easy to expose native API’s to JS
  • 59. But that can all be fixed, right? Searching for solutions - Qt makes it easy to expose native API’s to JS - Offline is a bit part of HTML5, but not out of the box
  • 60. But that can all be fixed, right? Searching for solutions - Qt makes it easy to expose native API’s to JS - Offline is a bit part of HTML5, but not out of the box - Web Runtime makes it possible to run apps locally
  • 61. But that can all be fixed, right? Searching for solutions - Qt makes it easy to expose native API’s to JS - Offline is a bit part of HTML5, but not out of the box - Web Runtime makes it possible to run apps locally - Sandboxing
  • 62. But that can all be fixed, right? Searching for solutions - Qt makes it easy to expose native API’s to JS - Offline is a bit part of HTML5, but not out of the box - Web Runtime makes it possible to run apps locally - Sandboxing Still a lot of work to do. and remember, we want a nice Developer Experience
  • 63. BACK TO THE NATIVE SIDE Let’s leave the Web for a while and have a look at QML
  • 64. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT
  • 65. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT:
  • 66. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES
  • 67. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION
  • 68. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI
  • 69. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT
  • 70. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION
  • 71. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION Easy to grasp, use and yet very flexible
  • 72. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION Easy to grasp, use and yet very flexible “End of the Widgets”
  • 73. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION Easy to grasp, use and yet very flexible “End of the Widgets” High Reuse
  • 74. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION Easy to grasp, use and yet very flexible “End of the Widgets” High Reuse Themability / Change input methods with theme / Adapt for different devices
  • 75. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION JavaScript scripting, JSON like format
  • 76. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION JavaScript scripting, JSON like format Embed QML in QML (even with HTTP, or so I’ve heard)
  • 77. COOL STUFF DECLARATIVE INTERFACE LANGUAGE FOR QT ALL ‘BOUT: FLUID INTERFACES PERSONALIZATION UI RAPID DEVELOPMENT ANIMATION JavaScript scripting, JSON like format Embed QML in QML (even with HTTP, or so I’ve heard) Some Web Integration: You can have a Web View Use images from HTTP etc
  • 78. Wow, that sounds too good to be true But you better believe it Downsides?
  • 79. Wow, that sounds too good to be true But you better believe it Downsides? It is not a standard
  • 80. Wow, that sounds too good to be true But you better believe it Downsides? It is not a standard You cannot target the iPhone, Android, Nokia ... etc
  • 81. Wow, that sounds too good to be true But you better believe it Downsides? It is not a standard You cannot target the iPhone, Android, Nokia ... etc So far unproven, how will it evolve? backward compat...?
  • 82. Wow, that sounds too good to be true But you better believe it Downsides? It is not a standard You cannot target the iPhone, Android, Nokia ... etc So far unproven, how will it evolve? backward compat...? Only basic Web integration: Just a Web view
  • 83. Wow, that sounds too good to be true But you better believe it Downsides? It is not a standard You cannot target the iPhone, Android, Nokia ... etc So far unproven, how will it evolve? backward compat...? Only basic Web integration: Just a Web view Layout / contents with non-fixed layout
  • 84. WRT+QML Complementing Power A look at use cases for both technologies
  • 85. Online Widgets with offline abbilities Give the services more control Get layout + contents from a service Make it work offline Personalization Good for widgets, Social integration
  • 86. Powerful layout Remember Word vs. Pagemaker? CSS + is powerful combination HTML Make a lot of sense for text+images QML has some support for this, but it is not nearly as powerful
  • 87. Sometimes Web just doesn’t make sense Let’s consider a video player When the app needs raw speed, lots of user interaction, depends on native anyway, etc...
  • 88. Native and Web working together United we are strong How can we join the technologies
  • 89. Native and Web working together United we are strong How can we join the technologies Manipulate / show iframes instead of Webpages in QML
  • 90. Native and Web working together United we are strong How can we join the technologies Manipulate / show iframes instead of Webpages in QML Enable cross iframe communication
  • 91. Native and Web working together United we are strong How can we join the technologies Manipulate / show iframes instead of Webpages in QML Enable cross iframe communication Less resources
  • 92. Native and Web working together United we are strong How can we join the technologies Manipulate / show iframes instead of Webpages in QML Enable cross iframe communication Less resources Do a QML list with each item being an iframe or a web element, can it get more hybrid that that? ;-)
  • 93. Native and Web working together United we are strong How can we join the technologies Manipulate / show iframes instead of Webpages in QML Enable cross iframe communication Less resources Do a QML list with each item being an iframe or a web element, can it get more hybrid that that? ;-) Shared JS runtime, bind QML props to iframe properties
  • 94. Thanks for listening Understanding the tools, we fill the gaps I hope that I have provided you with some new input and steered up some discussion. KENNETH ROHDE CHRISTIANSEN ext-kenneth.christiansen@nokia.com kenneth.christiansen@openbossa.org