SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Java Everywhere: Ready for Mobile and Cloud

Mark Little
JBoss CTO
Red Hat, Inc.
1

Tuesday, 26 November 13
Overview
•Where are we today and why?
•Mobile and Cloud
•What does this mean for today’s Java middleware
offerings?
•The future of Java and standards

•Are we there yet?

2

Tuesday, 26 November 13
30 years ago …
•16K was considered a lot of memory
•140K floppy disks were the standard
•10 mbps ethernet was decadent
•8 bit 6502 processor was king for personal computing
•Wireless was what people listened to when there was nothing on TV

3

Tuesday, 26 November 13
Today …
•512Meg memory is standard on smart phones, 64Gig storage
•256Gig USB sticks are the norm
•100Gig ethernet at work and 30mbps to the home
•64 bit quad core processors in laptops, 1GHz ARM in iPhone
•WiFi throughout many cities

4

Tuesday, 26 November 13
The times have changed
•There are already more mobile devices than
computers

•There are 4x more processors on the planet than
people

•Most have TCP stacks
•dsPIC33FJ12GP 16-bit microcontroller has as much

horsepower as a VAX (40MIPs), can handle 16+ sensors,
and is 1/8 the size of a penny

•30 million iPads by end of 2011
•1 in 2 Americans predicated to had smart phones by the end
of 2011 compared to 1 in 10 in 2008

5

Tuesday, 26 November 13
The times have changed

•

•

Motorola 68040 (1990)

dsPIC33FJ12GP 16-bit microcontroller (2007)
6

Tuesday, 26 November 13
Java in 2000
•J2SE 1.3 and J2EE 1.2 to 1.3
•Typical laptop configuration
•1 GHz Pentium III with 512 Meg and 20 Gig disk
•Sufficient to run full J2EE stack

•Limited mobile devices
•HP Jornada 720, 206MHz StrongArm SA1110 32-bit
processor, 32 MB SDRAM, Windows CE
•ChaiVM JDK 1.2
•Sufficient to run some components of J2EE

7

Tuesday, 26 November 13
2010 (mobile) versus 2000

8

Tuesday, 26 November 13
Beagleboard

9

Tuesday, 26 November 13
Java in 2013
•Java SE 7 and Java EE 6
•Typical laptop configuration
•2.2 GHz Quad Core i7 with 4 Gig and 500 Gig disk
(SSD?)
•Sufficient to run full EE6 stack (on several different
OS concurrently)

•Smartphones
•Galaxy S4, Quad Core 1.9 GHz Snapdragon 600, 2
Gig RAM, 128 Gig Storage
•Android 4.4
•Sufficient to run many (all?) components of EE6
10

Tuesday, 26 November 13
Cloud meets mobile
•Public Clouds important
•Private Clouds probably more important
•Mobility and embedded devices are the real Cloud
•Ubiquitous Computing has become a reality

•Thin clients are not sufficient
•Shannon’s Limit
•Overlooked but we all know about it implicitly

11

Tuesday, 26 November 13
Variant of Parkinson’s Law
•“Work expands to use the power available”
•Basic word processors on first PCs
•Games from Pong through Space Invaders to CoD
•Mobile devices contain more and more personal data
•Disconnected operation is the normal situation

12

Tuesday, 26 November 13
Application realities
•Types of application increasing in complexity
•Online purchases
•Distributed peer-to-peer interactions

•More requirements becoming a necessity
•Security and identity
•High performance, low latency, reliable messaging
•Database updates with transactions
•Workflows as inter-app interactions increase
13

Tuesday, 26 November 13
Mobility and “enterprise” apps
Transactional invocation

Ad-hoc auction
Peer-based social networking
Decentralised calendar
Gaming

14

Tuesday, 26 November 13
Mobiles replace consoles?

15

Tuesday, 26 November 13
Mobile Computing Architecture
IDE, Designer
Debugging

Mobile App Platform
REST Endpoints
Push Notifications

Composite Data

Data Storage & Sync
User Mgmt
Analytics
Social Integration
HTML5 & Native Apps
Ruby, Clojure, ...

Enterprise App Store, Security...
Management/Provisioning
16
Tuesday, 26 November 13

Data
Storage
Relational
& NoSQL

Web Services
The future of middleware?
•“Middleware is a 20th Century technology”
•Heard before: Web Services, Web, even when Java
came on the scene

•“Mobile needs new frameworks and languages”
•“Java” for Android?!
•Objective-C for iPhone/Pad?!

•“Cloud needs new infrastructures, services,
languages”

•What about existing applications?
•Ruby, Java, PhP, Perl, JavaScript ...
Tuesday, 26 November 13

17
“New age” development
•New architectures
•New implementations
•New frameworks
•New operating systems
•New new new ..?

18

Tuesday, 26 November 13
For whom the bell tolls?
Middleware?

•Hold on ... haven’t we heard this
death knell before?

•Remember Web Services/REST/

<blank> as death of middleware?
•Let’s be objective
•No hidden agendas please
19

Tuesday, 26 November 13
Sounds familiar?
•Many commonalities with (Java) middleware
•Enterprise requirements for all but trivial apps
•Messaging
•Transactions
•Security
•...

•Obviously Java is not the only application
language

•Lots of popular JVM-based languages
•Common runtime?
20

Tuesday, 26 November 13
JVM language explosion
Before 2010

Today

1 JVM, 1 Language

1 JVM, Over 20 Languages

JVM

JVM

21

Tuesday, 26 November 13
Enterprise capabilities
l

Java in 1996 did not possess enterprise features
l

l

Popular JVM languages experiencing similar
problem
l

l

J2EE took several years to evolve

Lack of enterprise capabilities

Two ways to resolve
Build from scratch in language
l Leverage existing implementations in other
languages
l

22

Tuesday, 26 November 13
So what does this mean?
•Middleware is needed whatever the deployment
environment

•Mainframes, servers, laptops etc.

•Middleware isn’t defined by an implementation
•Mobile and Cloud should not be new silos for
developers!

•It’s inefficient
•It’s expensive
•It’s time consuming
23

Tuesday, 26 November 13
Java Enterprise Edition 6


Turns out that EE6 has many of the required
capabilities








Standards based too!

EE6 represents a great evolution for 40 years of
work!
New capabilities (e.g., JAX-RS, CDI,
BeanValidation)
Input from wider open source communities and
users
24

Tuesday, 26 November 13
How to encourage adoption

25

Tuesday, 26 November 13
“Java EE is too bloated”
•Differentiate the standard from implementations!
•Bloatware should be a thing of the past

•It is possible to be lightweight and enterprise ready

26

Tuesday, 26 November 13
Fruity and mobile
•Raspberry Pi
•Narayana, Switchyard, Infinispan, AS7, Arquillian
•Fuse Fabric
•vert.x

•Mobile
•AS7
•Narayana
•jBPM 5
27

Tuesday, 26 November 13
28

Tuesday, 26 November 13
29

Tuesday, 26 November 13
Java standards
•JCP reinvigorated
•ME, SE/EE Executive Committees merging
•Significant community involvement (e.g., London
JUG)

•JDK 1.8 and EE7/EE8 more mobile and cloud
friendly

•Open source leading the way
•Experience important before standardisation
30

Tuesday, 26 November 13
Not all a bed of roses
•The next generation of Java middleware needs to
address ...

•Coordination and consensus
•Multi-tenancy
•Large-scale data storage and access
•Negotiation and enforcement of SLAs
•Accountability

•http://2011.middleware-conference.org/fome/
fome2011

31

Tuesday, 26 November 13
Richard Hamming, 1968 Turing
speech
• Whereas Newton could say, "If I have seen a little

farther than others, it is because I have stood on
the shoulders of giants," I am forced to say,
"Today we stand on each other's feet." Perhaps
the central problem we face in all of computer
science is how we are to get to the situation
where we build on top of the work of others rather
than redoing so much of it in a trivially different
way.

32

Tuesday, 26 November 13

Weitere ähnliche Inhalte

Ähnlich wie 201311 - Middleware

Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Openstack In Real Life
Openstack In Real LifeOpenstack In Real Life
Openstack In Real LifePaul Guth
 
Open Networking Revolution - Cambodia - Why?
Open Networking Revolution - Cambodia - Why?Open Networking Revolution - Cambodia - Why?
Open Networking Revolution - Cambodia - Why?KHNOG
 
IoT, computer intelligence and javascript in the physical world
IoT, computer intelligence and javascript in the physical worldIoT, computer intelligence and javascript in the physical world
IoT, computer intelligence and javascript in the physical worldIvo Andreev
 
Development eco-system in free-source for io t
Development eco-system in free-source for io tDevelopment eco-system in free-source for io t
Development eco-system in free-source for io tDebasis Das
 
Adventures in Research
Adventures in ResearchAdventures in Research
Adventures in ResearchNETWAYS
 
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick OpenNebulaConf 2013 -Adventures in Research by Joel Merrick
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick OpenNebula Project
 
Big data talk barcelona - jsr - jc
Big data talk   barcelona - jsr - jcBig data talk   barcelona - jsr - jc
Big data talk barcelona - jsr - jcJames Saint-Rossy
 
Austin Cassandra Users 6/19: Apache Cassandra at Vast
Austin Cassandra Users 6/19: Apache Cassandra at VastAustin Cassandra Users 6/19: Apache Cassandra at Vast
Austin Cassandra Users 6/19: Apache Cassandra at VastDataStax Academy
 
Ceph: A decade in the making and still going strong
Ceph: A decade in the making and still going strongCeph: A decade in the making and still going strong
Ceph: A decade in the making and still going strongPatrick McGarry
 
What ya gonna do?
What ya gonna do?What ya gonna do?
What ya gonna do?CQD
 
Open Source Investments in Mainframe Through the Next Generation - Showcasing...
Open Source Investments in Mainframe Through the Next Generation - Showcasing...Open Source Investments in Mainframe Through the Next Generation - Showcasing...
Open Source Investments in Mainframe Through the Next Generation - Showcasing...Open Mainframe Project
 
Summer 2017 undergraduate research powerpoint
Summer 2017 undergraduate research powerpointSummer 2017 undergraduate research powerpoint
Summer 2017 undergraduate research powerpointChristopher Dubois
 
MarkLittle_EnterpriseMiddlewareForThe21stCentury
MarkLittle_EnterpriseMiddlewareForThe21stCenturyMarkLittle_EnterpriseMiddlewareForThe21stCentury
MarkLittle_EnterpriseMiddlewareForThe21stCenturyKostas Mavridis
 
Oracle RAD stack REST, APEX, Database
Oracle RAD stack REST, APEX, DatabaseOracle RAD stack REST, APEX, Database
Oracle RAD stack REST, APEX, DatabaseMichael Hichwa
 
Introduction to NoSQL with Couchbase
Introduction to NoSQL with CouchbaseIntroduction to NoSQL with Couchbase
Introduction to NoSQL with CouchbaseTugdual Grall
 
Using LuaJIT in mid-load web-projects
Using LuaJIT in mid-load web-projectsUsing LuaJIT in mid-load web-projects
Using LuaJIT in mid-load web-projectsAlexander Gladysh
 

Ähnlich wie 201311 - Middleware (20)

Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Openstack In Real Life
Openstack In Real LifeOpenstack In Real Life
Openstack In Real Life
 
Open Networking Revolution - Cambodia - Why?
Open Networking Revolution - Cambodia - Why?Open Networking Revolution - Cambodia - Why?
Open Networking Revolution - Cambodia - Why?
 
IoT, computer intelligence and javascript in the physical world
IoT, computer intelligence and javascript in the physical worldIoT, computer intelligence and javascript in the physical world
IoT, computer intelligence and javascript in the physical world
 
Development eco-system in free-source for io t
Development eco-system in free-source for io tDevelopment eco-system in free-source for io t
Development eco-system in free-source for io t
 
Adventures in Research
Adventures in ResearchAdventures in Research
Adventures in Research
 
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick OpenNebulaConf 2013 -Adventures in Research by Joel Merrick
OpenNebulaConf 2013 -Adventures in Research by Joel Merrick
 
Big data talk barcelona - jsr - jc
Big data talk   barcelona - jsr - jcBig data talk   barcelona - jsr - jc
Big data talk barcelona - jsr - jc
 
Cassandra at Vast
Cassandra at VastCassandra at Vast
Cassandra at Vast
 
Austin Cassandra Users 6/19: Apache Cassandra at Vast
Austin Cassandra Users 6/19: Apache Cassandra at VastAustin Cassandra Users 6/19: Apache Cassandra at Vast
Austin Cassandra Users 6/19: Apache Cassandra at Vast
 
Ceph: A decade in the making and still going strong
Ceph: A decade in the making and still going strongCeph: A decade in the making and still going strong
Ceph: A decade in the making and still going strong
 
What ya gonna do?
What ya gonna do?What ya gonna do?
What ya gonna do?
 
Open Source Investments in Mainframe Through the Next Generation - Showcasing...
Open Source Investments in Mainframe Through the Next Generation - Showcasing...Open Source Investments in Mainframe Through the Next Generation - Showcasing...
Open Source Investments in Mainframe Through the Next Generation - Showcasing...
 
Summer 2017 undergraduate research powerpoint
Summer 2017 undergraduate research powerpointSummer 2017 undergraduate research powerpoint
Summer 2017 undergraduate research powerpoint
 
MarkLittle_EnterpriseMiddlewareForThe21stCentury
MarkLittle_EnterpriseMiddlewareForThe21stCenturyMarkLittle_EnterpriseMiddlewareForThe21stCentury
MarkLittle_EnterpriseMiddlewareForThe21stCentury
 
Oracle RAD stack REST, APEX, Database
Oracle RAD stack REST, APEX, DatabaseOracle RAD stack REST, APEX, Database
Oracle RAD stack REST, APEX, Database
 
Introduction to NoSQL with Couchbase
Introduction to NoSQL with CouchbaseIntroduction to NoSQL with Couchbase
Introduction to NoSQL with Couchbase
 
Using LuaJIT in mid-load web-projects
Using LuaJIT in mid-load web-projectsUsing LuaJIT in mid-load web-projects
Using LuaJIT in mid-load web-projects
 

Mehr von lyonjug

DIY: Analyse statique en Java
DIY: Analyse statique en JavaDIY: Analyse statique en Java
DIY: Analyse statique en Javalyonjug
 
201303 - Golo
201303 - Golo201303 - Golo
201303 - Gololyonjug
 
201303 - Java8
201303 - Java8201303 - Java8
201303 - Java8lyonjug
 
201305 - Lambda by R. Forax
201305 - Lambda by R. Forax201305 - Lambda by R. Forax
201305 - Lambda by R. Foraxlyonjug
 
201301 - Focus Neo4j
201301 - Focus Neo4j201301 - Focus Neo4j
201301 - Focus Neo4jlyonjug
 
201301 - Panorama NoSQL
201301 - Panorama NoSQL201301 - Panorama NoSQL
201301 - Panorama NoSQLlyonjug
 
201209 Lombok & Guava
201209 Lombok & Guava201209 Lombok & Guava
201209 Lombok & Guavalyonjug
 
Spring Batch Workshop (advanced)
Spring Batch Workshop (advanced)Spring Batch Workshop (advanced)
Spring Batch Workshop (advanced)lyonjug
 
Spring Batch Workshop
Spring Batch WorkshopSpring Batch Workshop
Spring Batch Workshoplyonjug
 
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...lyonjug
 
GlassFish, Application versioning et rolling upgrade en haute disponibilité
GlassFish, Application versioning et rolling upgrade en haute disponibilitéGlassFish, Application versioning et rolling upgrade en haute disponibilité
GlassFish, Application versioning et rolling upgrade en haute disponibilitélyonjug
 
Développement dans le cloud - Sacha Labourey
Développement dans le cloud - Sacha LaboureyDéveloppement dans le cloud - Sacha Labourey
Développement dans le cloud - Sacha Laboureylyonjug
 
Présentation Granite ds lyon 2011 par William Draï
Présentation Granite ds lyon 2011 par William DraïPrésentation Granite ds lyon 2011 par William Draï
Présentation Granite ds lyon 2011 par William Draïlyonjug
 
20091020 JPA2
20091020 JPA220091020 JPA2
20091020 JPA2lyonjug
 
201003 OSGi
201003 OSGi201003 OSGi
201003 OSGilyonjug
 
201003 BIRT
201003 BIRT201003 BIRT
201003 BIRTlyonjug
 
201006 Graniteds
201006 Graniteds201006 Graniteds
201006 Granitedslyonjug
 
201001 Outillage agile
201001 Outillage agile201001 Outillage agile
201001 Outillage agilelyonjug
 
201001 Agilité
201001 Agilité201001 Agilité
201001 Agilitélyonjug
 
201001 TDD
201001 TDD201001 TDD
201001 TDDlyonjug
 

Mehr von lyonjug (20)

DIY: Analyse statique en Java
DIY: Analyse statique en JavaDIY: Analyse statique en Java
DIY: Analyse statique en Java
 
201303 - Golo
201303 - Golo201303 - Golo
201303 - Golo
 
201303 - Java8
201303 - Java8201303 - Java8
201303 - Java8
 
201305 - Lambda by R. Forax
201305 - Lambda by R. Forax201305 - Lambda by R. Forax
201305 - Lambda by R. Forax
 
201301 - Focus Neo4j
201301 - Focus Neo4j201301 - Focus Neo4j
201301 - Focus Neo4j
 
201301 - Panorama NoSQL
201301 - Panorama NoSQL201301 - Panorama NoSQL
201301 - Panorama NoSQL
 
201209 Lombok & Guava
201209 Lombok & Guava201209 Lombok & Guava
201209 Lombok & Guava
 
Spring Batch Workshop (advanced)
Spring Batch Workshop (advanced)Spring Batch Workshop (advanced)
Spring Batch Workshop (advanced)
 
Spring Batch Workshop
Spring Batch WorkshopSpring Batch Workshop
Spring Batch Workshop
 
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
Engagement des sociétés d'Ingénierie dans la contribution open source : un ce...
 
GlassFish, Application versioning et rolling upgrade en haute disponibilité
GlassFish, Application versioning et rolling upgrade en haute disponibilitéGlassFish, Application versioning et rolling upgrade en haute disponibilité
GlassFish, Application versioning et rolling upgrade en haute disponibilité
 
Développement dans le cloud - Sacha Labourey
Développement dans le cloud - Sacha LaboureyDéveloppement dans le cloud - Sacha Labourey
Développement dans le cloud - Sacha Labourey
 
Présentation Granite ds lyon 2011 par William Draï
Présentation Granite ds lyon 2011 par William DraïPrésentation Granite ds lyon 2011 par William Draï
Présentation Granite ds lyon 2011 par William Draï
 
20091020 JPA2
20091020 JPA220091020 JPA2
20091020 JPA2
 
201003 OSGi
201003 OSGi201003 OSGi
201003 OSGi
 
201003 BIRT
201003 BIRT201003 BIRT
201003 BIRT
 
201006 Graniteds
201006 Graniteds201006 Graniteds
201006 Graniteds
 
201001 Outillage agile
201001 Outillage agile201001 Outillage agile
201001 Outillage agile
 
201001 Agilité
201001 Agilité201001 Agilité
201001 Agilité
 
201001 TDD
201001 TDD201001 TDD
201001 TDD
 

Kürzlich hochgeladen

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Kürzlich hochgeladen (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

201311 - Middleware

  • 1. Java Everywhere: Ready for Mobile and Cloud Mark Little JBoss CTO Red Hat, Inc. 1 Tuesday, 26 November 13
  • 2. Overview •Where are we today and why? •Mobile and Cloud •What does this mean for today’s Java middleware offerings? •The future of Java and standards •Are we there yet? 2 Tuesday, 26 November 13
  • 3. 30 years ago … •16K was considered a lot of memory •140K floppy disks were the standard •10 mbps ethernet was decadent •8 bit 6502 processor was king for personal computing •Wireless was what people listened to when there was nothing on TV 3 Tuesday, 26 November 13
  • 4. Today … •512Meg memory is standard on smart phones, 64Gig storage •256Gig USB sticks are the norm •100Gig ethernet at work and 30mbps to the home •64 bit quad core processors in laptops, 1GHz ARM in iPhone •WiFi throughout many cities 4 Tuesday, 26 November 13
  • 5. The times have changed •There are already more mobile devices than computers •There are 4x more processors on the planet than people •Most have TCP stacks •dsPIC33FJ12GP 16-bit microcontroller has as much horsepower as a VAX (40MIPs), can handle 16+ sensors, and is 1/8 the size of a penny •30 million iPads by end of 2011 •1 in 2 Americans predicated to had smart phones by the end of 2011 compared to 1 in 10 in 2008 5 Tuesday, 26 November 13
  • 6. The times have changed • • Motorola 68040 (1990) dsPIC33FJ12GP 16-bit microcontroller (2007) 6 Tuesday, 26 November 13
  • 7. Java in 2000 •J2SE 1.3 and J2EE 1.2 to 1.3 •Typical laptop configuration •1 GHz Pentium III with 512 Meg and 20 Gig disk •Sufficient to run full J2EE stack •Limited mobile devices •HP Jornada 720, 206MHz StrongArm SA1110 32-bit processor, 32 MB SDRAM, Windows CE •ChaiVM JDK 1.2 •Sufficient to run some components of J2EE 7 Tuesday, 26 November 13
  • 8. 2010 (mobile) versus 2000 8 Tuesday, 26 November 13
  • 10. Java in 2013 •Java SE 7 and Java EE 6 •Typical laptop configuration •2.2 GHz Quad Core i7 with 4 Gig and 500 Gig disk (SSD?) •Sufficient to run full EE6 stack (on several different OS concurrently) •Smartphones •Galaxy S4, Quad Core 1.9 GHz Snapdragon 600, 2 Gig RAM, 128 Gig Storage •Android 4.4 •Sufficient to run many (all?) components of EE6 10 Tuesday, 26 November 13
  • 11. Cloud meets mobile •Public Clouds important •Private Clouds probably more important •Mobility and embedded devices are the real Cloud •Ubiquitous Computing has become a reality •Thin clients are not sufficient •Shannon’s Limit •Overlooked but we all know about it implicitly 11 Tuesday, 26 November 13
  • 12. Variant of Parkinson’s Law •“Work expands to use the power available” •Basic word processors on first PCs •Games from Pong through Space Invaders to CoD •Mobile devices contain more and more personal data •Disconnected operation is the normal situation 12 Tuesday, 26 November 13
  • 13. Application realities •Types of application increasing in complexity •Online purchases •Distributed peer-to-peer interactions •More requirements becoming a necessity •Security and identity •High performance, low latency, reliable messaging •Database updates with transactions •Workflows as inter-app interactions increase 13 Tuesday, 26 November 13
  • 14. Mobility and “enterprise” apps Transactional invocation Ad-hoc auction Peer-based social networking Decentralised calendar Gaming 14 Tuesday, 26 November 13
  • 16. Mobile Computing Architecture IDE, Designer Debugging Mobile App Platform REST Endpoints Push Notifications Composite Data Data Storage & Sync User Mgmt Analytics Social Integration HTML5 & Native Apps Ruby, Clojure, ... Enterprise App Store, Security... Management/Provisioning 16 Tuesday, 26 November 13 Data Storage Relational & NoSQL Web Services
  • 17. The future of middleware? •“Middleware is a 20th Century technology” •Heard before: Web Services, Web, even when Java came on the scene •“Mobile needs new frameworks and languages” •“Java” for Android?! •Objective-C for iPhone/Pad?! •“Cloud needs new infrastructures, services, languages” •What about existing applications? •Ruby, Java, PhP, Perl, JavaScript ... Tuesday, 26 November 13 17
  • 18. “New age” development •New architectures •New implementations •New frameworks •New operating systems •New new new ..? 18 Tuesday, 26 November 13
  • 19. For whom the bell tolls? Middleware? •Hold on ... haven’t we heard this death knell before? •Remember Web Services/REST/ <blank> as death of middleware? •Let’s be objective •No hidden agendas please 19 Tuesday, 26 November 13
  • 20. Sounds familiar? •Many commonalities with (Java) middleware •Enterprise requirements for all but trivial apps •Messaging •Transactions •Security •... •Obviously Java is not the only application language •Lots of popular JVM-based languages •Common runtime? 20 Tuesday, 26 November 13
  • 21. JVM language explosion Before 2010 Today 1 JVM, 1 Language 1 JVM, Over 20 Languages JVM JVM 21 Tuesday, 26 November 13
  • 22. Enterprise capabilities l Java in 1996 did not possess enterprise features l l Popular JVM languages experiencing similar problem l l J2EE took several years to evolve Lack of enterprise capabilities Two ways to resolve Build from scratch in language l Leverage existing implementations in other languages l 22 Tuesday, 26 November 13
  • 23. So what does this mean? •Middleware is needed whatever the deployment environment •Mainframes, servers, laptops etc. •Middleware isn’t defined by an implementation •Mobile and Cloud should not be new silos for developers! •It’s inefficient •It’s expensive •It’s time consuming 23 Tuesday, 26 November 13
  • 24. Java Enterprise Edition 6  Turns out that EE6 has many of the required capabilities     Standards based too! EE6 represents a great evolution for 40 years of work! New capabilities (e.g., JAX-RS, CDI, BeanValidation) Input from wider open source communities and users 24 Tuesday, 26 November 13
  • 25. How to encourage adoption 25 Tuesday, 26 November 13
  • 26. “Java EE is too bloated” •Differentiate the standard from implementations! •Bloatware should be a thing of the past •It is possible to be lightweight and enterprise ready 26 Tuesday, 26 November 13
  • 27. Fruity and mobile •Raspberry Pi •Narayana, Switchyard, Infinispan, AS7, Arquillian •Fuse Fabric •vert.x •Mobile •AS7 •Narayana •jBPM 5 27 Tuesday, 26 November 13
  • 30. Java standards •JCP reinvigorated •ME, SE/EE Executive Committees merging •Significant community involvement (e.g., London JUG) •JDK 1.8 and EE7/EE8 more mobile and cloud friendly •Open source leading the way •Experience important before standardisation 30 Tuesday, 26 November 13
  • 31. Not all a bed of roses •The next generation of Java middleware needs to address ... •Coordination and consensus •Multi-tenancy •Large-scale data storage and access •Negotiation and enforcement of SLAs •Accountability •http://2011.middleware-conference.org/fome/ fome2011 31 Tuesday, 26 November 13
  • 32. Richard Hamming, 1968 Turing speech • Whereas Newton could say, "If I have seen a little farther than others, it is because I have stood on the shoulders of giants," I am forced to say, "Today we stand on each other's feet." Perhaps the central problem we face in all of computer science is how we are to get to the situation where we build on top of the work of others rather than redoing so much of it in a trivially different way. 32 Tuesday, 26 November 13