SlideShare une entreprise Scribd logo
Mobile Apps with JavaScript - there’s more than web!



                                         Heiko Behrens
                                         @HBehrens
@moskovich: “Your mobile phone has more
computing power than all of NASA in 1969.
    NASA put a man on the moon...
...we put a bird into pigs.”
what’s so great
about the web
   anyway ?
Bulletproof*@Font.Face*Syntax
@font&face*{
****font.family:*'MyFontFamily';
****src:*url('myfont&webfont.eot?#iefix')*format('embedded&opentype'),
*********url('myfont&webfont.woff')*format('woff'),
*********url('myfont&webfont.ttf')**format('truetype'),
*********url('myfont&webfont.svg#svgFontName')*format('svg');
}


                                                    Cross.Browser*Min*Height
                                                    #div*{
                                                    ***min.height:*500px;
                                                    ***height:auto*!important;
                                                    ***height:*500px;
 Box*Shadow                                         }

 .shadow*{
 ******&moz&box&shadow:*0*0*4px*#000;
 ******&webkit&box&shadow:*0*0*4px*#000;
 ******&ms&filter:*"progid:DXImageTransform.Microsoft.Glow(color=#666666,strength=3)";
 ******filter:
 **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=0,strength=3)
 **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=90,strength=3)
 **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=180,strength=3)
 **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=270,strength=3);
 ******box&shadow:*0*0*4px*#000;
 }
user’s
         i ve
perspec t
experience
consumers think apps
developer’s
perspective
web apps
HTML5
cache manifest, local storage, forms, geo location

CSS3
animation, transitions, 3D transformation

Resolution
css media queries, reference, categories, float layout

URLs
mails, telephone, sms, maps, youtube, etc.
server-side web


                           Web Server
                        executes application
                               logic


Web Browser




                       Files             Database




  Device                       Backend
client-side web

     Web Browser



      JavaScript
executes application logic




  Files         Database




          Device                Backend
web frameworks

iWebKit, iUI, jQTouch, JQuery mobile, Jo, Zepto

Sencha Touch, SproutCore




See also any mew library that spawns each new week
Sencha Touch

GPL+MIT License        GPL + Free License
declarative + JQuery   programmatically
simple                 complex
Sencha Touch
                                              Ext.setup({
                                                  tabletStartupScreen: 'tablet_startup.png',
                                                  phoneStartupScreen: 'phone_startup.png',
                                                  icon: 'icon.png',
                                                  glossOnIcon: false,
                                                  onReady : function() {
                                                      Ext.regModel('Contact', {
                                                          fields: ['firstName', 'lastName']
                                                      });

                                                        var groupingBase = {
                                              !     !    !    // snip
                                                            },
<ul data-role="listview" data-theme="g">
                                                             store: new Ext.data.Store({
!   <li><a href="acura.html">Acura</a></li>
                                                                 model: 'Contact',
!   <li><a href="audi.html">Audi</a></li>
                                                                 sorters: 'firstName',
!   <li><a href="bmw.html">BMW</a></li>
</ul>                                                            getGroupString : function(record) {
                                                                     return record.get(
                                                                          'firstName')[0];
                                                                 },

                                                                 data: [
                                                                     {firstName: 'Tommy',
                                                                      lastName: 'Maintz'},
                                              !     !    !     !   !     // snip
                                                                     {firstName: 'Zed',
                                                                      lastName: 'Zacharias'}
                                                                 ]
                                                             })
                                                        };

                                                        new Ext.List(Ext.apply(groupingBase, {
                                                             fullscreen: true
                                                        }));
                                                    }
                                              });
demo
Cocos2D JavaScript        Impact JS
   MIT License           MIT License

Simple 2D + Physics   2D, Physics, Sound

                      Emphasizes Mobile
demo
production
 learning         easy and countless tutorials+libraries
 tools            can mostly be developed on desktop
 monetization     no app store distribution
scenarios
 lists and data
 rich media       inferior performance
 games            poor performance, only limited 3D
experience
 hardware         no camera, partly accelerometer, no fancy stuff
 user interface   fancy UI possible, but platform specific
 offline           HTML5
platforms
 iOS
 Android
 Windows Phone    since 7.5 aka Mango
 others           great movement in responsive design!
hybrid apps
hybrid app

Native App

         Interpreter



    Request
   Interceptor


         JavaScript Bridge

          Browser
     executes JavaScript




             Device                Backend
request interception




    demo
Dual License
MIT & BSD
Logitech Squeezebox Controller
RNAO Nursing Best Practice Guidelines
demo
   +
 weinre
PhoneGap on Windows Phone




       demo
Plugin-Ins for PhoneGap
production
 learning         as with web
 tools            cloud build, yes but barely no debugging
 monetization
scenarios
 lists and data
 rich media       same as with web
 games            same as with web
experience
 hardware         mostly accessible
 user interface   high effort to match platform’s UI
 offline
platforms
 iOS
 Android
 Windows Phone
 others           best coverage of cross-platform frameworks
interpreted apps
interpreted app

Native App

         interpreter




                  Database
  Application
    Script
                       Files




             Device               Backend
– (HTML & CSS) =
Apache 2 License

       JavaScript
     native controls

   iPhone, iPad, Android
(BlackBerry, Mobile Web)
demo
Plugin-Ins for Appcelerator
production
 learning         specific API, similar to Sencha & Co.
 tools            own IDE, including debugger
 monetization     marketplace for apps and components
scenarios
 lists and data   perfect match
 rich media       hard to work with movies/images and animations
 games            some modules for rendering and physics
experience
 hardware         complete support
 user interface   truly native widgets
 offline
platforms
 iOS
 Android
 Windows Phone    no plans on roadmap
 others           plans for BlackBerry and HTML5
Corona         Impact
349 USD / year    99 USD

 Lua Runtime
                  JavaScript

comprehensive      simple
  2D games       2D Games


 iOS, Android    iOS, HTML5
generated apps
generated app

    Generator




 Generator Input       Native App

                               Logic     Logic
      Model
describes logic and
                             Database   Database
 complete system

                                Files    Files
Files     Database

                              Device    Backend
commercial        commercial
    (BETA)

    Java, AS           Ruby

 iOS, Android,         iOS
Windows Phone,
HTML5, WebOS,
BlackBerry, Flash
commercial
800-4500 USD

JavaScript / C#

  full 2D/3D
games tool chain

 iOS, Android
demo + impact
production
 learning         completely new tool chain
 tools            scene editors, debuggers, asset manager, team versioning
 monetization
scenarios
 lists and data   no native UI
 rich media       not optimized for movies
 games
experience
 hardware         OpenGL and sensors
 user interface   best for games
 offline
platforms
 iOS
 Android
 Windows Phone    no plans on agenda
 others           desktop and web
cross-platform
 development ?
Web   Hybrid   Interpreted Game Engine
production
 learning
 tools
 monetization
scenarios
 lists and data
 rich media
 games
experience
 hardware
 user interface
 offline
platforms
 iOS
 Android
 Windows Phone
 others
another
perspective
native
 own language
  own culture
own ecosystem

  field skills
                promotion: watch avatar - the movie 
not-so-native
                                      economic objectives
                                      establishment

                                      “natives are endangered”



promotion: watch avatar - the movie
best of both
promotion: watch avatar - the movie
                                      “I see you”
twitter         @HBehrens
blog            http://HeikoBehrens.net

CEO & Founder   getBeamApp.com

Contenu connexe

Tendances

Rapid and Scalable Development with MongoDB, PyMongo, and Ming
Rapid and Scalable Development with MongoDB, PyMongo, and MingRapid and Scalable Development with MongoDB, PyMongo, and Ming
Rapid and Scalable Development with MongoDB, PyMongo, and Ming
Rick Copeland
 
Map struct
Map structMap struct
Map struct
Hyosang Hong
 
Programming IoT Gateways in JavaScript with macchina.io
Programming IoT Gateways in JavaScript with macchina.ioProgramming IoT Gateways in JavaScript with macchina.io
Programming IoT Gateways in JavaScript with macchina.io
Günter Obiltschnig
 
The Browser Environment - A Systems Programmer's Perspective
The Browser Environment - A Systems Programmer's PerspectiveThe Browser Environment - A Systems Programmer's Perspective
The Browser Environment - A Systems Programmer's Perspective
Eleanor McHugh
 
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
Howard Lewis Ship
 
Rails' Next Top Model
Rails' Next Top ModelRails' Next Top Model
Rails' Next Top Model
Adam Keys
 
Windows Azure Storage
Windows Azure StorageWindows Azure Storage
Windows Azure Storage
goodfriday
 
The Macronomicon
The MacronomiconThe Macronomicon
The Macronomicon
Mike Fogus
 
Ipc: aidl sexy, not a curse
Ipc: aidl sexy, not a curseIpc: aidl sexy, not a curse
Ipc: aidl sexy, not a curse
Yonatan Levin
 
IPC: AIDL is sexy, not a curse
IPC: AIDL is sexy, not a curseIPC: AIDL is sexy, not a curse
IPC: AIDL is sexy, not a curse
Yonatan Levin
 
Physical web
Physical webPhysical web
Physical web
Jeff Prestes
 
Top Ten Web Defenses - DefCamp 2012
Top Ten Web Defenses  - DefCamp 2012Top Ten Web Defenses  - DefCamp 2012
Top Ten Web Defenses - DefCamp 2012
DefCamp
 
Design patterns in javascript
Design patterns in javascriptDesign patterns in javascript
Design patterns in javascript
Miao Siyu
 
Erlang for data ops
Erlang for data opsErlang for data ops
Erlang for data ops
mnacos
 
Ruby on Rails 3.1: Let's bring the fun back into web programing
Ruby on Rails 3.1: Let's bring the fun back into web programingRuby on Rails 3.1: Let's bring the fun back into web programing
Ruby on Rails 3.1: Let's bring the fun back into web programing
Bozhidar Batsov
 
Code as data as code.
Code as data as code.Code as data as code.
Code as data as code.
Mike Fogus
 
Websockets, Ruby y Pusher Webprendedor 2010
Websockets, Ruby y Pusher Webprendedor 2010Websockets, Ruby y Pusher Webprendedor 2010
Websockets, Ruby y Pusher Webprendedor 2010
Ismael Celis
 
Testing Web Applications with GEB
Testing Web Applications with GEBTesting Web Applications with GEB
Testing Web Applications with GEB
Howard Lewis Ship
 
Couchbase Korea User Group 2nd Meetup #2
Couchbase Korea User Group 2nd Meetup #2Couchbase Korea User Group 2nd Meetup #2
Couchbase Korea User Group 2nd Meetup #2
won min jang
 

Tendances (19)

Rapid and Scalable Development with MongoDB, PyMongo, and Ming
Rapid and Scalable Development with MongoDB, PyMongo, and MingRapid and Scalable Development with MongoDB, PyMongo, and Ming
Rapid and Scalable Development with MongoDB, PyMongo, and Ming
 
Map struct
Map structMap struct
Map struct
 
Programming IoT Gateways in JavaScript with macchina.io
Programming IoT Gateways in JavaScript with macchina.ioProgramming IoT Gateways in JavaScript with macchina.io
Programming IoT Gateways in JavaScript with macchina.io
 
The Browser Environment - A Systems Programmer's Perspective
The Browser Environment - A Systems Programmer's PerspectiveThe Browser Environment - A Systems Programmer's Perspective
The Browser Environment - A Systems Programmer's Perspective
 
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
Clojure: Functional Concurrency for the JVM (presented at Open Source Bridge)
 
Rails' Next Top Model
Rails' Next Top ModelRails' Next Top Model
Rails' Next Top Model
 
Windows Azure Storage
Windows Azure StorageWindows Azure Storage
Windows Azure Storage
 
The Macronomicon
The MacronomiconThe Macronomicon
The Macronomicon
 
Ipc: aidl sexy, not a curse
Ipc: aidl sexy, not a curseIpc: aidl sexy, not a curse
Ipc: aidl sexy, not a curse
 
IPC: AIDL is sexy, not a curse
IPC: AIDL is sexy, not a curseIPC: AIDL is sexy, not a curse
IPC: AIDL is sexy, not a curse
 
Physical web
Physical webPhysical web
Physical web
 
Top Ten Web Defenses - DefCamp 2012
Top Ten Web Defenses  - DefCamp 2012Top Ten Web Defenses  - DefCamp 2012
Top Ten Web Defenses - DefCamp 2012
 
Design patterns in javascript
Design patterns in javascriptDesign patterns in javascript
Design patterns in javascript
 
Erlang for data ops
Erlang for data opsErlang for data ops
Erlang for data ops
 
Ruby on Rails 3.1: Let's bring the fun back into web programing
Ruby on Rails 3.1: Let's bring the fun back into web programingRuby on Rails 3.1: Let's bring the fun back into web programing
Ruby on Rails 3.1: Let's bring the fun back into web programing
 
Code as data as code.
Code as data as code.Code as data as code.
Code as data as code.
 
Websockets, Ruby y Pusher Webprendedor 2010
Websockets, Ruby y Pusher Webprendedor 2010Websockets, Ruby y Pusher Webprendedor 2010
Websockets, Ruby y Pusher Webprendedor 2010
 
Testing Web Applications with GEB
Testing Web Applications with GEBTesting Web Applications with GEB
Testing Web Applications with GEB
 
Couchbase Korea User Group 2nd Meetup #2
Couchbase Korea User Group 2nd Meetup #2Couchbase Korea User Group 2nd Meetup #2
Couchbase Korea User Group 2nd Meetup #2
 

En vedette

Web App vs Web Site
Web App vs Web SiteWeb App vs Web Site
Web App vs Web Site
Matt Evans
 
How to-fail-golden-drum2
How to-fail-golden-drum2How to-fail-golden-drum2
How to-fail-golden-drum2
Matt Evans
 
Td 33 15_jul20_150_0
Td 33 15_jul20_150_0Td 33 15_jul20_150_0
Td 33 15_jul20_150_0
Matt Evans
 
Hyper island future_book_mobile
Hyper island future_book_mobileHyper island future_book_mobile
Hyper island future_book_mobile
Matt Evans
 
Howtobydavetrott
HowtobydavetrottHowtobydavetrott
Howtobydavetrott
Matt Evans
 
Se omoz the-beginners-guide-to-seo-2012
Se omoz the-beginners-guide-to-seo-2012Se omoz the-beginners-guide-to-seo-2012
Se omoz the-beginners-guide-to-seo-2012
Matt Evans
 
Meteor presentationanpostindustrybreakfast
Meteor presentationanpostindustrybreakfastMeteor presentationanpostindustrybreakfast
Meteor presentationanpostindustrybreakfast
Matt Evans
 

En vedette (7)

Web App vs Web Site
Web App vs Web SiteWeb App vs Web Site
Web App vs Web Site
 
How to-fail-golden-drum2
How to-fail-golden-drum2How to-fail-golden-drum2
How to-fail-golden-drum2
 
Td 33 15_jul20_150_0
Td 33 15_jul20_150_0Td 33 15_jul20_150_0
Td 33 15_jul20_150_0
 
Hyper island future_book_mobile
Hyper island future_book_mobileHyper island future_book_mobile
Hyper island future_book_mobile
 
Howtobydavetrott
HowtobydavetrottHowtobydavetrott
Howtobydavetrott
 
Se omoz the-beginners-guide-to-seo-2012
Se omoz the-beginners-guide-to-seo-2012Se omoz the-beginners-guide-to-seo-2012
Se omoz the-beginners-guide-to-seo-2012
 
Meteor presentationanpostindustrybreakfast
Meteor presentationanpostindustrybreakfastMeteor presentationanpostindustrybreakfast
Meteor presentationanpostindustrybreakfast
 

Similaire à There's more than web

beyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
beyond tellerrand: Mobile Apps with JavaScript – There's More Than Webbeyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
beyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
Heiko Behrens
 
JavaScript Libraries: The Big Picture
JavaScript Libraries: The Big PictureJavaScript Libraries: The Big Picture
JavaScript Libraries: The Big Picture
Simon Willison
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
soft-shake.ch
 
Native Phone Development 101
Native Phone Development 101Native Phone Development 101
Native Phone Development 101
Sasmito Adibowo
 
Why Every Tester Should Learn Ruby
Why Every Tester Should Learn RubyWhy Every Tester Should Learn Ruby
Why Every Tester Should Learn Ruby
Raimonds Simanovskis
 
Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008
Guillaume Laforge
 
AWS EC2
AWS EC2AWS EC2
AWS EC2
whiskybar
 
World of javascript
World of javascriptWorld of javascript
World of javascript
Rapee Suveeranont
 
mobl
moblmobl
mobl
zefhemel
 
Event-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 EngineEvent-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 Engine
Ricardo Silva
 
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NCAndroid Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Jim Tochterman
 
Charla EHU Noviembre 2014 - Desarrollo Web
Charla EHU Noviembre 2014 - Desarrollo WebCharla EHU Noviembre 2014 - Desarrollo Web
Charla EHU Noviembre 2014 - Desarrollo Web
Mikel Torres Ugarte
 
Implementing New Web
Implementing New WebImplementing New Web
Implementing New Web
Julian Viereck
 
Implementing new WebAPIs
Implementing new WebAPIsImplementing new WebAPIs
Implementing new WebAPIs
Julian Viereck
 
OneTeam Media Server
OneTeam Media ServerOneTeam Media Server
OneTeam Media Server
Mickaël Rémond
 
Book
BookBook
Book
luis_lmro
 
PhoneGap, Backbone & Javascript
PhoneGap, Backbone & JavascriptPhoneGap, Backbone & Javascript
PhoneGap, Backbone & Javascript
natematias
 
Intro To webOS
Intro To webOSIntro To webOS
Intro To webOS
fpatton
 
node.js - Eventful JavaScript on the Server
node.js - Eventful JavaScript on the Servernode.js - Eventful JavaScript on the Server
node.js - Eventful JavaScript on the Server
David Ruiz
 
Electron - cross platform desktop applications made easy
Electron - cross platform desktop applications made easyElectron - cross platform desktop applications made easy
Electron - cross platform desktop applications made easy
Ulrich Krause
 

Similaire à There's more than web (20)

beyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
beyond tellerrand: Mobile Apps with JavaScript – There's More Than Webbeyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
beyond tellerrand: Mobile Apps with JavaScript – There's More Than Web
 
JavaScript Libraries: The Big Picture
JavaScript Libraries: The Big PictureJavaScript Libraries: The Big Picture
JavaScript Libraries: The Big Picture
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
 
Native Phone Development 101
Native Phone Development 101Native Phone Development 101
Native Phone Development 101
 
Why Every Tester Should Learn Ruby
Why Every Tester Should Learn RubyWhy Every Tester Should Learn Ruby
Why Every Tester Should Learn Ruby
 
Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008
 
AWS EC2
AWS EC2AWS EC2
AWS EC2
 
World of javascript
World of javascriptWorld of javascript
World of javascript
 
mobl
moblmobl
mobl
 
Event-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 EngineEvent-driven IO server-side JavaScript environment based on V8 Engine
Event-driven IO server-side JavaScript environment based on V8 Engine
 
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NCAndroid Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
Android Development w/ ArcGIS Server - Esri Dev Meetup - Charlotte, NC
 
Charla EHU Noviembre 2014 - Desarrollo Web
Charla EHU Noviembre 2014 - Desarrollo WebCharla EHU Noviembre 2014 - Desarrollo Web
Charla EHU Noviembre 2014 - Desarrollo Web
 
Implementing New Web
Implementing New WebImplementing New Web
Implementing New Web
 
Implementing new WebAPIs
Implementing new WebAPIsImplementing new WebAPIs
Implementing new WebAPIs
 
OneTeam Media Server
OneTeam Media ServerOneTeam Media Server
OneTeam Media Server
 
Book
BookBook
Book
 
PhoneGap, Backbone & Javascript
PhoneGap, Backbone & JavascriptPhoneGap, Backbone & Javascript
PhoneGap, Backbone & Javascript
 
Intro To webOS
Intro To webOSIntro To webOS
Intro To webOS
 
node.js - Eventful JavaScript on the Server
node.js - Eventful JavaScript on the Servernode.js - Eventful JavaScript on the Server
node.js - Eventful JavaScript on the Server
 
Electron - cross platform desktop applications made easy
Electron - cross platform desktop applications made easyElectron - cross platform desktop applications made easy
Electron - cross platform desktop applications made easy
 

Dernier

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 

Dernier (20)

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 

There's more than web

  • 1. Mobile Apps with JavaScript - there’s more than web! Heiko Behrens @HBehrens
  • 2. @moskovich: “Your mobile phone has more computing power than all of NASA in 1969. NASA put a man on the moon...
  • 3. ...we put a bird into pigs.”
  • 4.
  • 5.
  • 6.
  • 7.
  • 8. what’s so great about the web anyway ?
  • 9. Bulletproof*@Font.Face*Syntax @font&face*{ ****font.family:*'MyFontFamily'; ****src:*url('myfont&webfont.eot?#iefix')*format('embedded&opentype'), *********url('myfont&webfont.woff')*format('woff'), *********url('myfont&webfont.ttf')**format('truetype'), *********url('myfont&webfont.svg#svgFontName')*format('svg'); } Cross.Browser*Min*Height #div*{ ***min.height:*500px; ***height:auto*!important; ***height:*500px; Box*Shadow } .shadow*{ ******&moz&box&shadow:*0*0*4px*#000; ******&webkit&box&shadow:*0*0*4px*#000; ******&ms&filter:*"progid:DXImageTransform.Microsoft.Glow(color=#666666,strength=3)"; ******filter: **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=0,strength=3) **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=90,strength=3) **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=180,strength=3) **************progid:DXImageTransform.Microsoft.Shadow(color=#666666,direction=270,strength=3); ******box&shadow:*0*0*4px*#000; }
  • 10.
  • 11. user’s i ve perspec t
  • 15.
  • 16.
  • 18. HTML5 cache manifest, local storage, forms, geo location CSS3 animation, transitions, 3D transformation Resolution css media queries, reference, categories, float layout URLs mails, telephone, sms, maps, youtube, etc.
  • 19. server-side web Web Server executes application logic Web Browser Files Database Device Backend
  • 20. client-side web Web Browser JavaScript executes application logic Files Database Device Backend
  • 21. web frameworks iWebKit, iUI, jQTouch, JQuery mobile, Jo, Zepto Sencha Touch, SproutCore See also any mew library that spawns each new week
  • 22. Sencha Touch GPL+MIT License GPL + Free License declarative + JQuery programmatically simple complex
  • 23. Sencha Touch Ext.setup({ tabletStartupScreen: 'tablet_startup.png', phoneStartupScreen: 'phone_startup.png', icon: 'icon.png', glossOnIcon: false, onReady : function() { Ext.regModel('Contact', { fields: ['firstName', 'lastName'] }); var groupingBase = { ! ! ! // snip }, <ul data-role="listview" data-theme="g"> store: new Ext.data.Store({ ! <li><a href="acura.html">Acura</a></li> model: 'Contact', ! <li><a href="audi.html">Audi</a></li> sorters: 'firstName', ! <li><a href="bmw.html">BMW</a></li> </ul> getGroupString : function(record) { return record.get( 'firstName')[0]; }, data: [ {firstName: 'Tommy', lastName: 'Maintz'}, ! ! ! ! ! // snip {firstName: 'Zed', lastName: 'Zacharias'} ] }) }; new Ext.List(Ext.apply(groupingBase, { fullscreen: true })); } });
  • 24. demo
  • 25. Cocos2D JavaScript Impact JS MIT License MIT License Simple 2D + Physics 2D, Physics, Sound Emphasizes Mobile
  • 26. demo
  • 27. production learning easy and countless tutorials+libraries tools can mostly be developed on desktop monetization no app store distribution scenarios lists and data rich media inferior performance games poor performance, only limited 3D experience hardware no camera, partly accelerometer, no fancy stuff user interface fancy UI possible, but platform specific offline HTML5 platforms iOS Android Windows Phone since 7.5 aka Mango others great movement in responsive design!
  • 29. hybrid app Native App Interpreter Request Interceptor JavaScript Bridge Browser executes JavaScript Device Backend
  • 31.
  • 34. RNAO Nursing Best Practice Guidelines
  • 35. demo + weinre
  • 36. PhoneGap on Windows Phone demo
  • 38. production learning as with web tools cloud build, yes but barely no debugging monetization scenarios lists and data rich media same as with web games same as with web experience hardware mostly accessible user interface high effort to match platform’s UI offline platforms iOS Android Windows Phone others best coverage of cross-platform frameworks
  • 40. interpreted app Native App interpreter Database Application Script Files Device Backend
  • 41. – (HTML & CSS) =
  • 42. Apache 2 License JavaScript native controls iPhone, iPad, Android (BlackBerry, Mobile Web)
  • 43. demo
  • 45. production learning specific API, similar to Sencha & Co. tools own IDE, including debugger monetization marketplace for apps and components scenarios lists and data perfect match rich media hard to work with movies/images and animations games some modules for rendering and physics experience hardware complete support user interface truly native widgets offline platforms iOS Android Windows Phone no plans on roadmap others plans for BlackBerry and HTML5
  • 46. Corona Impact 349 USD / year 99 USD Lua Runtime JavaScript comprehensive simple 2D games 2D Games iOS, Android iOS, HTML5
  • 48. generated app Generator Generator Input Native App Logic Logic Model describes logic and Database Database complete system Files Files Files Database Device Backend
  • 49. commercial commercial (BETA) Java, AS Ruby iOS, Android, iOS Windows Phone, HTML5, WebOS, BlackBerry, Flash
  • 50. commercial 800-4500 USD JavaScript / C# full 2D/3D games tool chain iOS, Android
  • 52.
  • 53. production learning completely new tool chain tools scene editors, debuggers, asset manager, team versioning monetization scenarios lists and data no native UI rich media not optimized for movies games experience hardware OpenGL and sensors user interface best for games offline platforms iOS Android Windows Phone no plans on agenda others desktop and web
  • 55. Web Hybrid Interpreted Game Engine production learning tools monetization scenarios lists and data rich media games experience hardware user interface offline platforms iOS Android Windows Phone others
  • 57. native own language own culture own ecosystem field skills promotion: watch avatar - the movie 
  • 58. not-so-native economic objectives establishment “natives are endangered” promotion: watch avatar - the movie
  • 59. best of both promotion: watch avatar - the movie “I see you”
  • 60. twitter @HBehrens blog http://HeikoBehrens.net CEO & Founder getBeamApp.com