SlideShare a Scribd company logo
Native
+ Web = ?
An Exploration (with
Demos!)
Who We Are
   Michael Anderson
       PhD Student at Vanderbilt; Web Developer
       GitHub: http://github.com/mandersondesign
       @mdanderson

   Eli Hooten
       PhD Student at Vanderbilt; Roboticist; C++/Web Developer; Human-
        Computer Interaction/UI/UX researcher
       GitHub: http://github.com/hootener
           Protip: You’ll find the demo code here
       @hootener

    GameWisp
    @gamewisp
    http://gamewisp.com
Some Definitions…
 Native   Applications
    A software application that has been
     developed for use with a specific hardware
     or operating system.
    Leverages details, hooks, and/or weird
     properties of the deployment device.
Some Definitions…
   Web Applications
       A web application is an application that is
        accessed by users over a network such as
        the Internet or an intranet.[1] The term may also
        mean a computer software application that is
        coded in a browser-supported programming
        language (such as JavaScript, combined with a
        browser-rendered markup language like HTML)
        and reliant on a common web browser to
        render the application executable. (Wikipedia)
Native Advantages
 Access   to the system level

 Access   to the hard drive

 Speed    and efficiency

 The   opposite of a box of chocolates.
Native Disadvantages
 Terrible-ish   UI

 Not   intrinsically platform independent

 Difficult   to update and iterate

 Slow   moving standards
Web App Advantages
 Fluid   and growing technology

 Easily
       interchange and interconnect
  technologies

 Beautiful-ish,   easy interface design

 Anyone    with a browser can use it
Web App Disadvantages
 Must   be served by a web server

 Anyone with a browser can use it.
  (Different layout depending on what browser you have)


 Stateless


 No   (or little) access to the system hardware
Problem Summary
 Bad   Design = Bad Product
Problem Summary (let’s get
technical)
 Noaccess to the system makes it hard to
 do something interesting on the desktop.
Solution!
 Native    + Web = Hybrid Application
    Or: Hybrid Application = Native + Web
    (Don’t worry, before you ask, I overloaded the operators)



 So….What        are they?
A Definition
 Hybrid     Application
    “A hybrid application (hybrid app) is one
     that combines elements of both native and
     Web applications. ”

    Source:
     (http://searchsoftwarequality.techtarget.com/definition/hybrid-
     application-hybrid-app)
A Better Definition
   They are foundationally built to leverage the
    hardware of the deployment platform.

   They integrate with web services for most or
    all of the major functions of the application.

   Most use web based rendering engines to
    leverage the interface design methods of
    web based technologies.
Hybrid App Advantages
   Fusion of advantages of web apps and native
    apps.

   Run command line, hardware related calls

   Can be designed to work offline, as well as
    online.

   Beautiful UI and efficient foundational code!
Hybrid App Advantages
    Allows the integration of tons of web
     services and technologies with the desktop
      Node.js
      jQuery  & jQuery UI
      Web App Tech (ie: php, rails, python, MySQL)
      Easy Streaming Video
Hybrid App Disadvantage

 Ifyou do it wrong, it has the
  disadvantages of both approaches!

 Example:     Facebook’s IOS App
      Native -> Hybrid
        Slowest   App Of All Time
      They went back to Native. And Apologized!
Everyone’s Doing it!
Be the peer pressure.
Spotify
Steam
BarCamp Hybrid Demo
 Built   using Qt C++ Framework

 Example     of basic techniques to get you
  started
 Expose C++ Objects to JS to get system
  info and pass information to OS.
     Handled using Signals and Slots; Qt’s fancy
      callbacks.
Current Project - GameWisp
 Hybrid  Application
 Syncing Game Saves to the Cloud
 Social, web app Features
GameWisp – Web App
 Built
      with PHP using the CodeIgniter
  Framework

 Running    on a LAMP stack

 Push    messaging handled by Node.js

 RESTful   API handles Data Exchange
Conclusion
 Most
     applications are tending to be more
 and more hybrid in nature.

 Web services provide content to apps
 that would otherwise be completely static

 TrueHybrid Applications can really open
 your project up for awesome interfaces
Conclusion - Action
 Take
     the first step and add some kind of
 web functionality to your application!

 We   put our demo application on GitHub

 There   are tons of other easy options!
    Add a Twitter feed
    Add a Blog feed
    Add some HTML5 interface elements
You got Qs & We got As
Thanks

 Check   out GameWisp
    http://gamewisp.com

 Apply   to test!

 Check   out our demo project on GitHub
    http://github.com/hootener/BarCampHybrid

More Related Content

What's hot

Flutter
FlutterFlutter
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Reimagining Cordova: Building Cross-Platform Web Apps with CapacitorReimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Ionic Framework
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
Steve Drucker
 
Abilità Informatiche - Lezione 01 introduzione al corso
Abilità Informatiche - Lezione 01   introduzione al corsoAbilità Informatiche - Lezione 01   introduzione al corso
Abilità Informatiche - Lezione 01 introduzione al corso
University of Catania
 
Hybrid App Development with PhoneGap
Hybrid App Development with PhoneGapHybrid App Development with PhoneGap
Hybrid App Development with PhoneGap
Dotitude
 
Titanium @ Minnebar
Titanium @ MinnebarTitanium @ Minnebar
Titanium @ Minnebar
Kevin Whinnery
 
Silverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression BlendSilverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression Blend
Caleb Jenkins
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application development
Knoldus Inc.
 
Offline Storage: Build secure, offline-first apps
Offline Storage: Build secure, offline-first appsOffline Storage: Build secure, offline-first apps
Offline Storage: Build secure, offline-first apps
RachelAshton5
 
Write Better JavaScript
Write Better JavaScriptWrite Better JavaScript
Write Better JavaScript
Kevin Whinnery
 
Ionic framework one day training
Ionic framework one day trainingIonic framework one day training
Ionic framework one day training
Troy Miles
 
Telerik AppBuilder 101
Telerik AppBuilder 101Telerik AppBuilder 101
Telerik AppBuilder 101
Sam Basu
 
Flutter vs React Native | Edureka
Flutter vs React Native | EdurekaFlutter vs React Native | Edureka
Flutter vs React Native | Edureka
Edureka!
 
Build Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic FrameworkBuild Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic Framework
Salesforce Developers
 
LAP II - Lezione 01 Introduzione al corso
LAP II - Lezione 01   Introduzione al corsoLAP II - Lezione 01   Introduzione al corso
LAP II - Lezione 01 Introduzione al corso
University of Catania
 
Build Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderBuild Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilder
Jeffrey T. Fritz
 
Drupal 8 preview_slideshow
Drupal 8 preview_slideshowDrupal 8 preview_slideshow
Drupal 8 preview_slideshow
Tee Malapela
 
Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020
Devathon
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium Tutorial
Kevin Whinnery
 
Phonegap
PhonegapPhonegap
Phonegap
Essam El-zinaty
 

What's hot (20)

Flutter
FlutterFlutter
Flutter
 
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Reimagining Cordova: Building Cross-Platform Web Apps with CapacitorReimagining Cordova: Building Cross-Platform Web Apps with Capacitor
Reimagining Cordova: Building Cross-Platform Web Apps with Capacitor
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
 
Abilità Informatiche - Lezione 01 introduzione al corso
Abilità Informatiche - Lezione 01   introduzione al corsoAbilità Informatiche - Lezione 01   introduzione al corso
Abilità Informatiche - Lezione 01 introduzione al corso
 
Hybrid App Development with PhoneGap
Hybrid App Development with PhoneGapHybrid App Development with PhoneGap
Hybrid App Development with PhoneGap
 
Titanium @ Minnebar
Titanium @ MinnebarTitanium @ Minnebar
Titanium @ Minnebar
 
Silverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression BlendSilverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression Blend
 
Hybrid application development
Hybrid application developmentHybrid application development
Hybrid application development
 
Offline Storage: Build secure, offline-first apps
Offline Storage: Build secure, offline-first appsOffline Storage: Build secure, offline-first apps
Offline Storage: Build secure, offline-first apps
 
Write Better JavaScript
Write Better JavaScriptWrite Better JavaScript
Write Better JavaScript
 
Ionic framework one day training
Ionic framework one day trainingIonic framework one day training
Ionic framework one day training
 
Telerik AppBuilder 101
Telerik AppBuilder 101Telerik AppBuilder 101
Telerik AppBuilder 101
 
Flutter vs React Native | Edureka
Flutter vs React Native | EdurekaFlutter vs React Native | Edureka
Flutter vs React Native | Edureka
 
Build Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic FrameworkBuild Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic Framework
 
LAP II - Lezione 01 Introduzione al corso
LAP II - Lezione 01   Introduzione al corsoLAP II - Lezione 01   Introduzione al corso
LAP II - Lezione 01 Introduzione al corso
 
Build Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilderBuild Your First iPhone or Android App with Telerik AppBuilder
Build Your First iPhone or Android App with Telerik AppBuilder
 
Drupal 8 preview_slideshow
Drupal 8 preview_slideshowDrupal 8 preview_slideshow
Drupal 8 preview_slideshow
 
Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020Flutter vs React Native Development in 2020
Flutter vs React Native Development in 2020
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium Tutorial
 
Phonegap
PhonegapPhonegap
Phonegap
 

Similar to Native App + Wep App = ? (Hybrid Applications)

Mobile Web Apps
Mobile Web AppsMobile Web Apps
Mobile Web Apps
Athhar Ahamed
 
Web development meetingup
Web development meetingupWeb development meetingup
Web development meetingup
PiTechnologies
 
Evolution of Applications & Web
Evolution of Applications & WebEvolution of Applications & Web
Evolution of Applications & Web
Himanshu Jindal
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
Palani Kumar
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
Palani Kumar
 
Developing a Modern Mobile App Strategy
Developing a Modern Mobile App StrategyDeveloping a Modern Mobile App Strategy
Developing a Modern Mobile App Strategy
Todd Anglin
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDK
Intel® Software
 
Native Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile AppsNative Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile Apps
Lohith Goudagere Nagaraj
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of Technologies
Chris Mitchell
 
Hybridapp
HybridappHybridapp
Jfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the CloudJfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the Cloud
Lauren Hayward Schaefer
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
RIA RUI Society
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
Joseph Labrecque
 
Mobile Delivery Run Through
Mobile Delivery Run ThroughMobile Delivery Run Through
Mobile Delivery Run Through
Mike Hartington
 
Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
Abhishek Gupta
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1
NAILBITER
 
Food borne human diseases
Food borne human diseasesFood borne human diseases
Food borne human diseases
AmalMohammedNasserSa
 
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
PamRobert
 
Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
Nilay Binjola
 
Midweek breather hybridapps
Midweek breather hybridappsMidweek breather hybridapps
Midweek breather hybridapps
strider1981
 

Similar to Native App + Wep App = ? (Hybrid Applications) (20)

Mobile Web Apps
Mobile Web AppsMobile Web Apps
Mobile Web Apps
 
Web development meetingup
Web development meetingupWeb development meetingup
Web development meetingup
 
Evolution of Applications & Web
Evolution of Applications & WebEvolution of Applications & Web
Evolution of Applications & Web
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
Developing a Modern Mobile App Strategy
Developing a Modern Mobile App StrategyDeveloping a Modern Mobile App Strategy
Developing a Modern Mobile App Strategy
 
Crosswalk and the Intel XDK
Crosswalk and the Intel XDKCrosswalk and the Intel XDK
Crosswalk and the Intel XDK
 
Native Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile AppsNative Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile Apps
 
Over view of Technologies
Over view of TechnologiesOver view of Technologies
Over view of Technologies
 
Hybridapp
HybridappHybridapp
Hybridapp
 
Jfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the CloudJfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the Cloud
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
 
Mobile Delivery Run Through
Mobile Delivery Run ThroughMobile Delivery Run Through
Mobile Delivery Run Through
 
Netbeans65 Osum Slides
Netbeans65 Osum SlidesNetbeans65 Osum Slides
Netbeans65 Osum Slides
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1
 
Food borne human diseases
Food borne human diseasesFood borne human diseases
Food borne human diseases
 
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
TECHNOLOGY FOR BACK-END WEB DEVELOPMENT: SERVER-SIDE SCRIPTING
 
Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
 
Midweek breather hybridapps
Midweek breather hybridappsMidweek breather hybridapps
Midweek breather hybridapps
 

Recently uploaded

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
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
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
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
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 

Recently uploaded (20)

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
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
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
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
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 

Native App + Wep App = ? (Hybrid Applications)

  • 1. Native + Web = ? An Exploration (with Demos!)
  • 2. Who We Are  Michael Anderson  PhD Student at Vanderbilt; Web Developer  GitHub: http://github.com/mandersondesign  @mdanderson  Eli Hooten  PhD Student at Vanderbilt; Roboticist; C++/Web Developer; Human- Computer Interaction/UI/UX researcher  GitHub: http://github.com/hootener  Protip: You’ll find the demo code here  @hootener  GameWisp  @gamewisp  http://gamewisp.com
  • 3. Some Definitions…  Native Applications  A software application that has been developed for use with a specific hardware or operating system.  Leverages details, hooks, and/or weird properties of the deployment device.
  • 4. Some Definitions…  Web Applications  A web application is an application that is accessed by users over a network such as the Internet or an intranet.[1] The term may also mean a computer software application that is coded in a browser-supported programming language (such as JavaScript, combined with a browser-rendered markup language like HTML) and reliant on a common web browser to render the application executable. (Wikipedia)
  • 5. Native Advantages  Access to the system level  Access to the hard drive  Speed and efficiency  The opposite of a box of chocolates.
  • 6. Native Disadvantages  Terrible-ish UI  Not intrinsically platform independent  Difficult to update and iterate  Slow moving standards
  • 7. Web App Advantages  Fluid and growing technology  Easily interchange and interconnect technologies  Beautiful-ish, easy interface design  Anyone with a browser can use it
  • 8. Web App Disadvantages  Must be served by a web server  Anyone with a browser can use it. (Different layout depending on what browser you have)  Stateless  No (or little) access to the system hardware
  • 9. Problem Summary  Bad Design = Bad Product
  • 10. Problem Summary (let’s get technical)  Noaccess to the system makes it hard to do something interesting on the desktop.
  • 11. Solution!  Native + Web = Hybrid Application  Or: Hybrid Application = Native + Web  (Don’t worry, before you ask, I overloaded the operators)  So….What are they?
  • 12. A Definition  Hybrid Application  “A hybrid application (hybrid app) is one that combines elements of both native and Web applications. ”  Source: (http://searchsoftwarequality.techtarget.com/definition/hybrid- application-hybrid-app)
  • 13. A Better Definition  They are foundationally built to leverage the hardware of the deployment platform.  They integrate with web services for most or all of the major functions of the application.  Most use web based rendering engines to leverage the interface design methods of web based technologies.
  • 14. Hybrid App Advantages  Fusion of advantages of web apps and native apps.  Run command line, hardware related calls  Can be designed to work offline, as well as online.  Beautiful UI and efficient foundational code!
  • 15. Hybrid App Advantages  Allows the integration of tons of web services and technologies with the desktop  Node.js  jQuery & jQuery UI  Web App Tech (ie: php, rails, python, MySQL)  Easy Streaming Video
  • 16. Hybrid App Disadvantage  Ifyou do it wrong, it has the disadvantages of both approaches!  Example: Facebook’s IOS App  Native -> Hybrid  Slowest App Of All Time  They went back to Native. And Apologized!
  • 17. Everyone’s Doing it! Be the peer pressure.
  • 19. Steam
  • 20. BarCamp Hybrid Demo  Built using Qt C++ Framework  Example of basic techniques to get you started  Expose C++ Objects to JS to get system info and pass information to OS.  Handled using Signals and Slots; Qt’s fancy callbacks.
  • 21. Current Project - GameWisp  Hybrid Application  Syncing Game Saves to the Cloud  Social, web app Features
  • 22. GameWisp – Web App  Built with PHP using the CodeIgniter Framework  Running on a LAMP stack  Push messaging handled by Node.js  RESTful API handles Data Exchange
  • 23. Conclusion  Most applications are tending to be more and more hybrid in nature.  Web services provide content to apps that would otherwise be completely static  TrueHybrid Applications can really open your project up for awesome interfaces
  • 24. Conclusion - Action  Take the first step and add some kind of web functionality to your application!  We put our demo application on GitHub  There are tons of other easy options!  Add a Twitter feed  Add a Blog feed  Add some HTML5 interface elements
  • 25. You got Qs & We got As
  • 26. Thanks  Check out GameWisp  http://gamewisp.com  Apply to test!  Check out our demo project on GitHub  http://github.com/hootener/BarCampHybrid

Editor's Notes

  1. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  2. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  3. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  4. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  5. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  6. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  7. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  8. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  9. Open Spotify here, play a tune
  10. Open Spotify here, play a tuneOpen Steam, show game content and web content
  11. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  12. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  13. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  14. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  15. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app
  16. http://searchsoftwarequality.techtarget.com/definition/native-application-native-app