SlideShare una empresa de Scribd logo
1 de 94
Descargar para leer sin conexión
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

Más contenido relacionado

La actualidad más candente

WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1WUD2013_Quantified_Self_Talk_TBB1
WUD2013_Quantified_Self_Talk_TBB1
Tina Bejian-Binnion
 
Revision Key Terms
Revision Key TermsRevision Key Terms
Revision Key Terms
andy_panay1
 
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
 
Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011Mobile Web (R)Evolution - Sept 2011
Mobile Web (R)Evolution - Sept 2011
arendsf
 
Multimedia journalism may 2011
Multimedia journalism may 2011Multimedia journalism may 2011
Multimedia journalism may 2011
Martin Hirst
 
New media trends dec2011 lite
New media trends dec2011 liteNew media trends dec2011 lite
New media trends dec2011 lite
Tarryn Abrahams
 

La actualidad más candente (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
 

Destacado

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 Lublin
martieire
 
Cooperative Learning In Education
Cooperative Learning In EducationCooperative Learning In Education
Cooperative Learning In Education
guest6830d9a
 
Software Sekolah
Software SekolahSoftware Sekolah
Software Sekolah
puji
 

Destacado (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
 

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

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
OpenKnowledge srl
 
Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012
CorSource
 

Similar a 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...
 

Más de Kenneth Rohde Christiansen

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
Kenneth Rohde Christiansen
 

Más de 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
 

Último

Último (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

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