SlideShare a Scribd company logo
Android is client Java
Android is client Java
Android is client Java
Android is client Java


   Can't we all just get along?
Tablet devices, and
 mobile devices in
    general, are
 revolutionizing IT
It is practical to treat
     Android's Java
runtime environment
   as separate from
        Android
When we say
  “Android is client
         Java”
that is a more-general
 statement than, say,
   “Objective-C is a
mainstream language”
Client Java was...
       AWT
      Swing
       SWT
     JavaFX
   Qt bindings
       Etc.
Step1: “Write once,
 run everywhere”
 Step 2: Convince
 everyone this is a
     good idea
   Step 3: ?????
Step1: Make a really
appropriate mobile
managed language
      runtime
Step 2: Watch ISVs
write 200,000+ apps
I'm good
enough, I'm
    smart
enough, and
 doggone it,
 people like
     me!
The recipe for modern
   smartphone OSs:
      Linux or other
embedded UNIX-like OS
   Managed language
         runtime
  Full-featured browser
Examples:
     iOS
   Android
Windows Phone
Partial:
Meego – more like
Linux-goes-mobile
  Bada – C++ app
 runtime and APIs
Android is client Java
Real multi-processing –
 multiple VM instances
Low memory overhead
      per instance
      Fast launch
Share-able data heap
  – copy-on-write
    Save/restore
  component and
   process state
Security benefits from true
     multi-processing
     Process per app
    UID per publisher
 Effective sandboxing of
   multiple publishers
VM efficiency for
     mobile
Smaller bytecode
Faster bytecode
Mobile-tuned JIT compiler
   Much less CPU/power-
intensive than previous JIT
         compilers
 Compiles much less code
Relies on efficiency of non-
      compiled code
Android is a really
  good, mature client
Java, and far ahead of
    other managed
language runtimes for
   mobile devices
So it is reasonable to want
  the Android application
     runtion on another
platform, but can you get it
    without diluting the
      advantages with
 virtualization, emulation,
      hypervizors, etc?
Android is client Java
Why?
Android is client Java
Here comes another
guy prophesying the
 end of the PC era
Plummeting!




     Source: Hitslink
Why believe it this
     time?
The dominance of PCs in IT
       is artificial
       PCs were...
  Personal – you own it
      A revolution
Empowering to individuals
Some people need
      PCs
Some people need
   this stove
Android is client Java
Android is client Java
So why did all the
alternatives fail?
The economics of PC
 manufacturing crushed
     all challengers
   Tablets are “large
  smartphones” - they
inherit the economics of
      smartphones
Tablets and touch make
everything easier Cheaper
        to support
    Tablets can support
  legacy apps through
  desktop virtualization
     Tablets are a great
 delivery vehicle for Web
           apps
A new revolution in
     enterprise
 collaboration and
  communication
Android is client Java
Android is client Java
Android is client Java
Android is client Java
To sum up
Java is a good language
Android Java is the best
  managed language
  runtime for mobile
         devices
Tablets are an IT revolution
  Tablets will become the
       basis of a new
  collaborative work and
communications paradigm
 Java can be a big part of
      this revolution
There will be lots of
Android devices, but...
You can treat Android
    as a runtime
   separately from
 Android OS, if you
   need or want to
Learn Android Java

More Related Content

What's hot (20)

PDF
Start from the User
Bernard Leong
 
PDF
Mobile or Web First?
Bernard Leong
 
DOCX
TOP 5 TECHNOLOGIES TO CREATE A COMPETENT ANDROID APP IN 2019
upssingh
 
PPT
Mobile Application Development With Android
guest213e237
 
PPTX
Introduction to Android Programming
'Zamin Mammadov
 
PPTX
Nex g exuberant solutions
michal philips
 
PPTX
Go mobile with Windows Phone
Dima Maleev
 
PDF
Camerjam mobile marketing masterclass 12snap
James Cameron
 
PDF
Android Introduction
Swapnali Pawar
 
PPTX
Basics of android
GagandeepVarshney1
 
PPT
Modern mobile development overview
Dima Maleev
 
PPT
Ro Ck St Ar
Bikash Modi
 
PDF
Android Design Architecture
Rakesh Jha
 
PPT
Android ppt
Ansh Singh
 
PPTX
Latest Development Of MeeGo
Amanda Lam
 
PPTX
Tk2323 lecture 1 introduction to mobile application
MengChun Lam
 
PPT
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Amanda Lam
 
PPTX
Android ppt
srikanth982
 
PPTX
Windows 10 & Raspberry Pi 2
ByteMinded
 
Start from the User
Bernard Leong
 
Mobile or Web First?
Bernard Leong
 
TOP 5 TECHNOLOGIES TO CREATE A COMPETENT ANDROID APP IN 2019
upssingh
 
Mobile Application Development With Android
guest213e237
 
Introduction to Android Programming
'Zamin Mammadov
 
Nex g exuberant solutions
michal philips
 
Go mobile with Windows Phone
Dima Maleev
 
Camerjam mobile marketing masterclass 12snap
James Cameron
 
Android Introduction
Swapnali Pawar
 
Basics of android
GagandeepVarshney1
 
Modern mobile development overview
Dima Maleev
 
Ro Ck St Ar
Bikash Modi
 
Android Design Architecture
Rakesh Jha
 
Android ppt
Ansh Singh
 
Latest Development Of MeeGo
Amanda Lam
 
Tk2323 lecture 1 introduction to mobile application
MengChun Lam
 
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Amanda Lam
 
Android ppt
srikanth982
 
Windows 10 & Raspberry Pi 2
ByteMinded
 

Viewers also liked (8)

PPT
Faster! Faster! Accelerate your business with blazing prototypes
OSCON Byrum
 
PDF
Refactoring to the State Design Pattern
Jim Roepcke
 
PPTX
Oscon 2013 Jesse Anderson
OSCON Byrum
 
PPTX
Big Data for each one of us
OSCON Byrum
 
PDF
The Vanishing Pattern: from iterators to generators in Python
OSCON Byrum
 
PPTX
Finite State Machines - Why the fear?
OSCON Byrum
 
PDF
Using Cascalog to build an app with City of Palo Alto Open Data
OSCON Byrum
 
PPTX
How we built our community using Github - Uri Cohen
OSCON Byrum
 
Faster! Faster! Accelerate your business with blazing prototypes
OSCON Byrum
 
Refactoring to the State Design Pattern
Jim Roepcke
 
Oscon 2013 Jesse Anderson
OSCON Byrum
 
Big Data for each one of us
OSCON Byrum
 
The Vanishing Pattern: from iterators to generators in Python
OSCON Byrum
 
Finite State Machines - Why the fear?
OSCON Byrum
 
Using Cascalog to build an app with City of Palo Alto Open Data
OSCON Byrum
 
How we built our community using Github - Uri Cohen
OSCON Byrum
 
Ad

Similar to Android is client Java (20)

PPT
Android 1
Sugandha Srivastava
 
PDF
Day 1 Android: Before Getting Started
Ahsanul Karim
 
PDF
How Android is different from other systems – An exploration of the design de...
IndicThreads
 
PPT
Android 1
Jagan Nath University
 
PPTX
Android before getting started
Ahsanul Karim
 
PPT
Android presentation
jitendra k Singh
 
PDF
Android
aktash12
 
DOCX
Android..overwiew
Sai Teja
 
PDF
Oracle Vs Google
srchalla
 
PDF
Opening slides-1592541
uzzal_me
 
PPTX
Introduction to Android Development: Before Getting Started
Ahsanul Karim
 
PDF
Ch1 hello, android
Jehad2012
 
PDF
Ben Pashkoff - java embedded - 24mai2011
Agora Group
 
PDF
Introduction to android
krishnastudent88
 
PPTX
Vijay android ppt
vijaymashre
 
PPT
Maddy android
Deepa Rani
 
PPTX
Android application development
Fahad A. Shaikh
 
PPT
Android 1
Vikas Sharma
 
PPT
Android123
Mahesh Gurram
 
DOCX
Android
Anand Buddarapu
 
Day 1 Android: Before Getting Started
Ahsanul Karim
 
How Android is different from other systems – An exploration of the design de...
IndicThreads
 
Android before getting started
Ahsanul Karim
 
Android presentation
jitendra k Singh
 
Android
aktash12
 
Android..overwiew
Sai Teja
 
Oracle Vs Google
srchalla
 
Opening slides-1592541
uzzal_me
 
Introduction to Android Development: Before Getting Started
Ahsanul Karim
 
Ch1 hello, android
Jehad2012
 
Ben Pashkoff - java embedded - 24mai2011
Agora Group
 
Introduction to android
krishnastudent88
 
Vijay android ppt
vijaymashre
 
Maddy android
Deepa Rani
 
Android application development
Fahad A. Shaikh
 
Android 1
Vikas Sharma
 
Android123
Mahesh Gurram
 
Android
Anand Buddarapu
 
Ad

More from OSCON Byrum (20)

PDF
OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield
OSCON Byrum
 
PDF
Protecting Open Innovation with the Defensive Patent License
OSCON Byrum
 
PDF
Open Source Automotive Development
OSCON Byrum
 
PDF
Distributed Coordination with Python
OSCON Byrum
 
PDF
An overview of open source in East Asia (China, Japan, Korea)
OSCON Byrum
 
PDF
US Patriot Act OSCON2012 David Mertz
OSCON Byrum
 
PPTX
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON Byrum
 
KEY
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
OSCON Byrum
 
PDF
Declarative web data visualization using ClojureScript
OSCON Byrum
 
PDF
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
OSCON Byrum
 
PDF
A Look at the Network: Searching for Truth in Distributed Applications
OSCON Byrum
 
PPT
Life After Sharding: Monitoring and Management of a Complex Data Cloud
OSCON Byrum
 
PDF
Comparing open source private cloud platforms
OSCON Byrum
 
PDF
State of the Art Web Mapping with Open Source
OSCON Byrum
 
PDF
Building an Ecosystem of FLOSS to Educate Students with Disabilities
OSCON Byrum
 
PPTX
Android Security Essentials
OSCON Byrum
 
PPTX
How to Design for the Future - Cross Channel Experience Design
OSCON Byrum
 
PPTX
Harnessing the good intentions of others for your oss project
OSCON Byrum
 
PDF
Introduction to android testing - oscon 2012
OSCON Byrum
 
PDF
The Art of Social Media Analysis with Twitter & Python-OSCON 2012
OSCON Byrum
 
OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield
OSCON Byrum
 
Protecting Open Innovation with the Defensive Patent License
OSCON Byrum
 
Open Source Automotive Development
OSCON Byrum
 
Distributed Coordination with Python
OSCON Byrum
 
An overview of open source in East Asia (China, Japan, Korea)
OSCON Byrum
 
US Patriot Act OSCON2012 David Mertz
OSCON Byrum
 
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
OSCON Byrum
 
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
OSCON Byrum
 
Declarative web data visualization using ClojureScript
OSCON Byrum
 
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
OSCON Byrum
 
A Look at the Network: Searching for Truth in Distributed Applications
OSCON Byrum
 
Life After Sharding: Monitoring and Management of a Complex Data Cloud
OSCON Byrum
 
Comparing open source private cloud platforms
OSCON Byrum
 
State of the Art Web Mapping with Open Source
OSCON Byrum
 
Building an Ecosystem of FLOSS to Educate Students with Disabilities
OSCON Byrum
 
Android Security Essentials
OSCON Byrum
 
How to Design for the Future - Cross Channel Experience Design
OSCON Byrum
 
Harnessing the good intentions of others for your oss project
OSCON Byrum
 
Introduction to android testing - oscon 2012
OSCON Byrum
 
The Art of Social Media Analysis with Twitter & Python-OSCON 2012
OSCON Byrum
 

Recently uploaded (20)

PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
Advancing WebDriver BiDi support in WebKit
Igalia
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Advancing WebDriver BiDi support in WebKit
Igalia
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 

Android is client Java

  • 4. Android is client Java Can't we all just get along?
  • 5. Tablet devices, and mobile devices in general, are revolutionizing IT
  • 6. It is practical to treat Android's Java runtime environment as separate from Android
  • 7. When we say “Android is client Java” that is a more-general statement than, say, “Objective-C is a mainstream language”
  • 8. Client Java was... AWT Swing SWT JavaFX Qt bindings Etc.
  • 9. Step1: “Write once, run everywhere” Step 2: Convince everyone this is a good idea Step 3: ?????
  • 10. Step1: Make a really appropriate mobile managed language runtime Step 2: Watch ISVs write 200,000+ apps
  • 11. I'm good enough, I'm smart enough, and doggone it, people like me!
  • 12. The recipe for modern smartphone OSs: Linux or other embedded UNIX-like OS Managed language runtime Full-featured browser
  • 13. Examples: iOS Android Windows Phone
  • 14. Partial: Meego – more like Linux-goes-mobile Bada – C++ app runtime and APIs
  • 16. Real multi-processing – multiple VM instances Low memory overhead per instance Fast launch
  • 17. Share-able data heap – copy-on-write Save/restore component and process state
  • 18. Security benefits from true multi-processing Process per app UID per publisher Effective sandboxing of multiple publishers
  • 19. VM efficiency for mobile Smaller bytecode Faster bytecode
  • 20. Mobile-tuned JIT compiler Much less CPU/power- intensive than previous JIT compilers Compiles much less code Relies on efficiency of non- compiled code
  • 21. Android is a really good, mature client Java, and far ahead of other managed language runtimes for mobile devices
  • 22. So it is reasonable to want the Android application runtion on another platform, but can you get it without diluting the advantages with virtualization, emulation, hypervizors, etc?
  • 24. Why?
  • 26. Here comes another guy prophesying the end of the PC era
  • 27. Plummeting! Source: Hitslink
  • 28. Why believe it this time?
  • 29. The dominance of PCs in IT is artificial PCs were... Personal – you own it A revolution Empowering to individuals
  • 30. Some people need PCs Some people need this stove
  • 33. So why did all the alternatives fail?
  • 34. The economics of PC manufacturing crushed all challengers Tablets are “large smartphones” - they inherit the economics of smartphones
  • 35. Tablets and touch make everything easier Cheaper to support Tablets can support legacy apps through desktop virtualization Tablets are a great delivery vehicle for Web apps
  • 36. A new revolution in enterprise collaboration and communication
  • 42. Java is a good language Android Java is the best managed language runtime for mobile devices
  • 43. Tablets are an IT revolution Tablets will become the basis of a new collaborative work and communications paradigm Java can be a big part of this revolution
  • 44. There will be lots of Android devices, but... You can treat Android as a runtime separately from Android OS, if you need or want to