SlideShare a Scribd company logo
1 of 32
Download to read offline
Middleware Everywhere - Ready for Mobile and
                  Cloud



Dr Mark Little
Red Hat, Inc.
1/11/2011

                                      1
Overview
•Where are we today and why?
•Mobile and Cloud
  •Ubiquitous computing in the large
  •The real cloud!
•Hardware and software forces in action
•What does this mean for today’s middleware
 offerings?
•The future of Java and standards
                                         2
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
Today …
•512Meg memory is standard on smart phones, 64Gig storage
•256Gig USB sticks are becoming 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
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 already
    •1 in 2 Americans predicated to have smart phones by the
      end of 2011 compared to 1 in 10 in 2008
                                                     5
6
Past, present and future
•The laptop concept originally devised for children
  •Now laptops replace desktop
•Java and Linux helped to popularise middleware
•But Java is not cool any more
  •Ruby, Scala, Erlang, JavaScript, …
•Coolness is iPhones, Androids, POH5, …
•Those are the new frontiers of application
 development

                                              7
“Little’s law” (thanks to Parkinson)
•“Work expands to use the power available”
  •Basic word processors on PCs
    •Publisher-quality implementations now on laptops
  •Games pushing the envelope from Pong through
   Space Invaders to CoD
    •MVCC
    •Distributed systems
    •Grids
  •Mobile devices contain more and more personal data
    •Wallets via NFC
  •Disconnected operation is the normal situation
                                                        8
Application complexity
•Types of applications increasing in complexity
  •Online purchases
  •Distributed peer-to-peer interactions
•Enterprise requirements becoming a necessity
  •Security and identity
  •High performance, low latency, reliable messaging
  •Database updates with transactions
  •Workflows as inter-app interactions increase

                                               9
Cloud meets mobile
•Public Clouds important
•Private Clouds probably more important
  •Security and data consistency implications
•But Ubiquitous Computing has become a reality
•Mobility and embedded devices are the real
 Cloud
  •Thin clients aren’t the future
     •Shannon’s Limit

                                                10
Ubiquitous computing

          Smartphones            Field Service /            Embedded /
           and Tablets         Warehouse Devices            Unattended




   Smartphones and           Primarily Windows        New use cases for
    tablet shipments           based                     embedded processors /
    overtaking PCs            Application tied to       computing
   Multi-device support       device and OS
    the reality




     11
Several types of mobile application



      Mobile Web                   Native Shell              Native Shell                Native App
          POH5                        POH5                  POH5 Native                  Native Code
       Html5 java java             Html5 java java          Html5       Apple            Apple apple apple
       Java html5                  Java html5               java java   apple            Android android
       Yadda yadda yadda           Yadda yadda yadda        Java        apple            Windows windows
       Line 4 line 4               Line 4 line 4            html5       Android          IOS ios ios
       Jay steve burr              Jay steve burr           Yadda       android          Jave
       Burr steve jay              Burr steve jay           yadda       Window           Objectve c
                                                            yadda       s
                                                            Line 4      windows
                                                            line 4      IOS




     Web Apps                   Hybrid Apps              Hybrid Apps +                Native App
Written in HTML5,            HTML5 wrapped in          Hybrid app tweaked         Platform-specific written
JavaScript and CSS3.         native shell.             with native code to        with OS specific SDK to
Quick to develop with        Provisioned and           access device              deliver fullest
traditional web skills but   accessed as a native      capabilities.              capabilities.
less use of device           app. Leverages web
capabilities.                skills and HTML5 with
                             appearance of native
                             app.



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



                               13
“Mobility” and the Enterprise Customer
                               Build

       Devices / Clients




                           Integration                      Databases

                           Data
                           Process
                           Messages
                                                                          Data
                           Applications                                  Center
                                                     Web Services



                                                                         Enterprise
                                                                        Applications




                           Management/Provisioning




  14
Mobility and “enterprise” apps


                               Transactional invocation




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




  15
For whom the bell tolls?
          Middleware?




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


                                16
Remember Web Services/REST/
 <blank> as death of middleware?




•Not if you are objective!


                             17
Middleware over the years
•RPC first used in the 1970’s to link Unix systems
•Bespoke implementations through the 80’s
  •Argus, Emerald, Arjuna, Camelot/Avalon, ISIS
•Standards began to evolve
  •ANSA
  •DCE
•More cross-vendor industrial standards
  •CORBA
  •J(2)EE
  •Web Services                               18
40 years of middleware shows ...
•Many things common
  •Security
  •Messaging
  •Transactions
  •Replication/Cacheing
  •Data store (e.g., database)
  •Distribution
  •Multi-tenancy (multi-threaded/multi-application)
•The industry has spent 40+ years designing
 enterprise infrastructures
                                                 19
So what does this mean?
•Middleware is needed whatever the deployment
 environment
  •Mainframes, servers, laptops etc.
•Don’t tie the definition of middleware to an
 implementation
•Mobile and Cloud should not be new silos for
 developers!
•Enterprise requirements transcend deployment
 realities
                                                20
So are cloud/mobile the death of
            middleware?
•Many commonalities with “traditional” middleware
  •Enterprise requirements for all but trivial apps
•Obviously Java is not the only application
 language
  •But why not a common runtime?
  •Lots of popular JVM-based languages
•Lack of cloud/mobile standards


                                                      21
Present and future directions
•As an industry we must build on our existing
 implementations
•We must provide a natural upgrade path for
 existing users
  •We cannot afford to repeat the DCE/CORBA,
    DCOM/.NET or CORBA/J(2)EE days
•Evolution rather than revolution
•Why?

                                               22
Some ubiquitous computing realities
•Trust is important!
•Trust is measured in:
  •Who is providing the service?
     •And are they doing it in a way that matches my
      requirements?
  •Are they living up to my required QoS
     •Fault tolerance, performance, etc.
•Several well publicised Cloud outages and
  intrusions
  •Mobile viruses, identity theft ...
•Still very early in the adoption cycle                23
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
   Profiles
                                             24
Mobile Computing Architecture
                              IDE, Designer

              Debugging




                                    Mobile App Platform                    Data
                                                                          Storage
                                                                         Relational
                                                                         & NoSQL
                          REST Endpoints
                          Push Notifications    Composite Data
                     Data Storage & Sync
                                                                     Web Services
                             User Mgmt

                              Analytics

                          Social Integration

                                 HTML5 & Native Apps
                                    Ruby, Clojure, ...


                          Enterprise App Store, Security...
                                           Management/Provisioning

  25
“Java EE is too bloated”
•Differentiate the standard from implementations!
  •Let’s not live in the past
•It is possible to be lightweight and enterprise
  ready




                                             26
Standards

•JCP reinvigorated
•Java ME
  •Merging of Java ME EC with SE/EE
  •ME-next?
•Java PaaS
  •Various non-standard solutions
  •OSGi, OMG, JCP
•Open source helps drive experience
  •Don’t standardise too early!
                                      27
But there are still open areas

•It’s not all doom and gloom
•But it’s not all perfection either
•Several key issues remain
   •Reliability
   •Development models
   •Data




                                         28
Trustworthy systems

•Can we build a system that …
  •Only services authorised users
     •Service cannot be denied
     •Information cannot be stolen
  •Is always available
     •Out less than 1 second per 100 years
     •1950’s 90% availability
     •2010 99.99% availability for well managed sites (50 minutes/
       year)
•Software reliability is not keeping pace with
  hardware
  •Getting more expensive and less reliable                 29
Problems with development
                  models
•We have yet to make parallel programming
 easy
  •Only automatic parallelism has “won”
  •Managing computer clusters is a major cost
•New computer architectures are highly parallel
  •Many-core chips are a reality
     •Core’s per chip will only increase
  •But we don’t know how to utilise them efficiently
•So, the scale-up problem is not solved
                                                30
The data problem
•There is a movement away from traditional databases
•The bandwidth problem still remains
   •Economic necessity mandates putting the data near the application
   •The cost of wide-area networking has fallen more slowly than all other
      IT hardware costs
   •But how can data be in multiple places at the same time?
•Flavours if “SQL”
   •OldSQL
   •Not Only SQL (aka No SQL)
   •NewSQL


                                                                 31
Conclusions
•Cloud and mobile will evolve
•Enterprise middleware applications aren’t going
 away
  •The industry cannot afford to track multiple platforms
  •Middleware components should be available to all
•The next decade will be defined by ubiquitous
 computing
•There are still areas that need to be addressed
  •NoSQL
  •Multi-tenancy
                                                 32
  •Transactions

More Related Content

What's hot

What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?DATAVERSITY
 
Apache Ignite: In-Memory Hammer for Your Data Science Toolkit
Apache Ignite: In-Memory Hammer for Your Data Science ToolkitApache Ignite: In-Memory Hammer for Your Data Science Toolkit
Apache Ignite: In-Memory Hammer for Your Data Science ToolkitDenis Magda
 
Big analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayBig analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayLuciano Resende
 
Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference MLconf
 
Scaing databases on the cloud
Scaing databases on the cloudScaing databases on the cloud
Scaing databases on the cloudImaginea
 

What's hot (6)

Anti-social Databases
Anti-social DatabasesAnti-social Databases
Anti-social Databases
 
What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?What Drove Wordnik Non-Relational?
What Drove Wordnik Non-Relational?
 
Apache Ignite: In-Memory Hammer for Your Data Science Toolkit
Apache Ignite: In-Memory Hammer for Your Data Science ToolkitApache Ignite: In-Memory Hammer for Your Data Science Toolkit
Apache Ignite: In-Memory Hammer for Your Data Science Toolkit
 
Big analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel GatewayBig analytics meetup - Extended Jupyter Kernel Gateway
Big analytics meetup - Extended Jupyter Kernel Gateway
 
Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference Chris Nicholson, CEO Skymind at The AI Conference
Chris Nicholson, CEO Skymind at The AI Conference
 
Scaing databases on the cloud
Scaing databases on the cloudScaing databases on the cloud
Scaing databases on the cloud
 

Viewers also liked

Convertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for EnterprisesConvertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for EnterprisesConvertigo | MADP & MBaaS
 
2009 Winter Newsletter
2009 Winter Newsletter2009 Winter Newsletter
2009 Winter NewsletterDirect Relief
 
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...CreAgri Europe
 
6 evaluation product scs environmental services chia
6 evaluation product scs environmental services chia6 evaluation product scs environmental services chia
6 evaluation product scs environmental services chiamvvillanueva720
 
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介たけおか しょうぞう
 
eHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarreseHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarresHotel Curious
 
Hum2220 1030 pompeii roman time capsule
Hum2220 1030 pompeii   roman time capsuleHum2220 1030 pompeii   roman time capsule
Hum2220 1030 pompeii roman time capsuleProfWillAdams
 
Proposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkarProposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkartallulahdsilva
 
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...JAX London
 
Background singers
Background singersBackground singers
Background singers13jkjordan
 

Viewers also liked (20)

Convertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for EnterprisesConvertigo Mobile Application Development platform for Enterprises
Convertigo Mobile Application Development platform for Enterprises
 
2009 Winter Newsletter
2009 Winter Newsletter2009 Winter Newsletter
2009 Winter Newsletter
 
Vasa 1
Vasa 1Vasa 1
Vasa 1
 
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...
L'idrossitirosolo è in grado di proteggere e aumentare l'attività dei mitocon...
 
Western New York Educational Service Council Presentation
Western New York Educational Service Council PresentationWestern New York Educational Service Council Presentation
Western New York Educational Service Council Presentation
 
MorenoMassip_Avi
MorenoMassip_AviMorenoMassip_Avi
MorenoMassip_Avi
 
6 evaluation product scs environmental services chia
6 evaluation product scs environmental services chia6 evaluation product scs environmental services chia
6 evaluation product scs environmental services chia
 
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
 
SchaalX
SchaalXSchaalX
SchaalX
 
eHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarreseHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni Farres
 
Hum2220 1030 pompeii roman time capsule
Hum2220 1030 pompeii   roman time capsuleHum2220 1030 pompeii   roman time capsule
Hum2220 1030 pompeii roman time capsule
 
Turkey
TurkeyTurkey
Turkey
 
HUM2220 Sylllabus
HUM2220 SylllabusHUM2220 Sylllabus
HUM2220 Sylllabus
 
Proposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkarProposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkar
 
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
 
Background singers
Background singersBackground singers
Background singers
 
ΠΔ126
ΠΔ126ΠΔ126
ΠΔ126
 
Fall newsletter-2003
Fall newsletter-2003Fall newsletter-2003
Fall newsletter-2003
 
Kemungkinan
KemungkinanKemungkinan
Kemungkinan
 
Comrades
ComradesComrades
Comrades
 

Similar to Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little

Android application development
Android application developmentAndroid application development
Android application developmentFahad A. Shaikh
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterpriseBryce Curtis
 
Mikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMicrosoft Windows Embedded
 
Keynote Client Connectivity And The Cloud
Keynote Client Connectivity And The CloudKeynote Client Connectivity And The Cloud
Keynote Client Connectivity And The CloudGoogleTecTalks
 
Is the Browser a Transitional Technology?
Is the Browser a Transitional Technology?Is the Browser a Transitional Technology?
Is the Browser a Transitional Technology?Allen Wirfs-Brock
 
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheRoad to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheBrian Sam-Bodden
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleMatthew Perrins
 
Integrating ADF Mobile with WebCenter
Integrating ADF Mobile with WebCenterIntegrating ADF Mobile with WebCenter
Integrating ADF Mobile with WebCenterBrian Huff
 
IT Technology Trends for Thailand ICT Policy Framework
IT Technology Trends for Thailand ICT Policy FrameworkIT Technology Trends for Thailand ICT Policy Framework
IT Technology Trends for Thailand ICT Policy FrameworkThanachart Numnonda
 
Gdd Keynote V China
Gdd Keynote V ChinaGdd Keynote V China
Gdd Keynote V Chinatravelinrain
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?Reto Meier
 
Leverage An Intelligent Application Infrastructure for Competitive Advantage.
Leverage An Intelligent Application Infrastructure for Competitive Advantage.Leverage An Intelligent Application Infrastructure for Competitive Advantage.
Leverage An Intelligent Application Infrastructure for Competitive Advantage.Eric D. Schabell
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseApperian
 
From open data to API-driven business
From open data to API-driven businessFrom open data to API-driven business
From open data to API-driven businessOpenDataSoft
 
IBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM France
 
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' videos
 
WinWire webinar: Converting iPad apps to Windows Store apps
WinWire webinar: Converting iPad apps to Windows Store appsWinWire webinar: Converting iPad apps to Windows Store apps
WinWire webinar: Converting iPad apps to Windows Store appsWinWire Technologies Inc
 

Similar to Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little (20)

Android application development
Android application developmentAndroid application development
Android application development
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the Enterprise
 
Mikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivity
 
Keynote Client Connectivity And The Cloud
Keynote Client Connectivity And The CloudKeynote Client Connectivity And The Cloud
Keynote Client Connectivity And The Cloud
 
Is the Browser a Transitional Technology?
Is the Browser a Transitional Technology?Is the Browser a Transitional Technology?
Is the Browser a Transitional Technology?
 
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheRoad to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
 
Integrating ADF Mobile with WebCenter
Integrating ADF Mobile with WebCenterIntegrating ADF Mobile with WebCenter
Integrating ADF Mobile with WebCenter
 
Spring Into the Cloud
Spring Into the CloudSpring Into the Cloud
Spring Into the Cloud
 
IT Technology Trends for Thailand ICT Policy Framework
IT Technology Trends for Thailand ICT Policy FrameworkIT Technology Trends for Thailand ICT Policy Framework
IT Technology Trends for Thailand ICT Policy Framework
 
Gdd Keynote V China
Gdd Keynote V ChinaGdd Keynote V China
Gdd Keynote V China
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
Leverage An Intelligent Application Infrastructure for Competitive Advantage.
Leverage An Intelligent Application Infrastructure for Competitive Advantage.Leverage An Intelligent Application Infrastructure for Competitive Advantage.
Leverage An Intelligent Application Infrastructure for Competitive Advantage.
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
 
From open data to API-driven business
From open data to API-driven businessFrom open data to API-driven business
From open data to API-driven business
 
IBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome ChallengeIBM s'associe au SmartHome Challenge
IBM s'associe au SmartHome Challenge
 
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
 
Javanowandfuture Chihuahua
Javanowandfuture ChihuahuaJavanowandfuture Chihuahua
Javanowandfuture Chihuahua
 
Node.js as an IOT Bridge
Node.js as an IOT BridgeNode.js as an IOT Bridge
Node.js as an IOT Bridge
 
WinWire webinar: Converting iPad apps to Windows Store apps
WinWire webinar: Converting iPad apps to Windows Store appsWinWire webinar: Converting iPad apps to Windows Store apps
WinWire webinar: Converting iPad apps to Windows Store apps
 

More from JAX London

Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...
Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...
Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...JAX London
 
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...JAX London
 
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...JAX London
 
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerSpring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerJAX London
 
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam BrannenSpring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam BrannenJAX London
 
Spring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave SyerSpring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave SyerJAX London
 
Spring Day | Spring and Scala | Eberhard Wolff
Spring Day | Spring and Scala | Eberhard WolffSpring Day | Spring and Scala | Eberhard Wolff
Spring Day | Spring and Scala | Eberhard WolffJAX London
 
Keynote | The Rise and Fall and Rise of Java | James Governor
Keynote | The Rise and Fall and Rise of Java | James GovernorKeynote | The Rise and Fall and Rise of Java | James Governor
Keynote | The Rise and Fall and Rise of Java | James GovernorJAX London
 
Java Tech & Tools | OSGi Best Practices | Emily Jiang
Java Tech & Tools | OSGi Best Practices | Emily JiangJava Tech & Tools | OSGi Best Practices | Emily Jiang
Java Tech & Tools | OSGi Best Practices | Emily JiangJAX London
 
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...JAX London
 
Java Tech & Tools | Social Media in Programming in Java | Khanderao Kand
Java Tech & Tools | Social Media in Programming in Java | Khanderao KandJava Tech & Tools | Social Media in Programming in Java | Khanderao Kand
Java Tech & Tools | Social Media in Programming in Java | Khanderao KandJAX London
 
Java Tech & Tools | Just Keep Passing the Message | Russel Winder
Java Tech & Tools | Just Keep Passing the Message | Russel WinderJava Tech & Tools | Just Keep Passing the Message | Russel Winder
Java Tech & Tools | Just Keep Passing the Message | Russel WinderJAX London
 
Java Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter LedbrookJava Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter LedbrookJAX London
 
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...JAX London
 
Java EE | Modular EJBs for Enterprise OSGi | Tim Ward
Java EE | Modular EJBs for Enterprise OSGi | Tim WardJava EE | Modular EJBs for Enterprise OSGi | Tim Ward
Java EE | Modular EJBs for Enterprise OSGi | Tim WardJAX London
 
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan Gallimore
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan GallimoreJava EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan Gallimore
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan GallimoreJAX London
 
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...JAX London
 
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil Bartlett
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil BartlettJava Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil Bartlett
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil BartlettJAX London
 
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon Ritter
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon RitterJava Core | JavaFX 2.0: Great User Interfaces in Java | Simon Ritter
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon RitterJAX London
 
Java Core | Modern Java Concurrency | Martijn Verburg & Ben Evans
Java Core | Modern Java Concurrency | Martijn Verburg & Ben EvansJava Core | Modern Java Concurrency | Martijn Verburg & Ben Evans
Java Core | Modern Java Concurrency | Martijn Verburg & Ben EvansJAX London
 

More from JAX London (20)

Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...
Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...
Java Tech & Tools | Continuous Delivery - the Writing is on the Wall | John S...
 
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
Java Tech & Tools | Mapping, GIS and Geolocating Data in Java | Joachim Van d...
 
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...
Spring Day | WaveMaker - Spring Roo - SpringSource Tool Suite: Choosing the R...
 
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave SyerSpring Day | Behind the Scenes at Spring Batch | Dave Syer
Spring Day | Behind the Scenes at Spring Batch | Dave Syer
 
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam BrannenSpring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
 
Spring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave SyerSpring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave Syer
 
Spring Day | Spring and Scala | Eberhard Wolff
Spring Day | Spring and Scala | Eberhard WolffSpring Day | Spring and Scala | Eberhard Wolff
Spring Day | Spring and Scala | Eberhard Wolff
 
Keynote | The Rise and Fall and Rise of Java | James Governor
Keynote | The Rise and Fall and Rise of Java | James GovernorKeynote | The Rise and Fall and Rise of Java | James Governor
Keynote | The Rise and Fall and Rise of Java | James Governor
 
Java Tech & Tools | OSGi Best Practices | Emily Jiang
Java Tech & Tools | OSGi Best Practices | Emily JiangJava Tech & Tools | OSGi Best Practices | Emily Jiang
Java Tech & Tools | OSGi Best Practices | Emily Jiang
 
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...
Java Tech & Tools | Big Blobs: Moving Big Data In and Out of the Cloud | Adri...
 
Java Tech & Tools | Social Media in Programming in Java | Khanderao Kand
Java Tech & Tools | Social Media in Programming in Java | Khanderao KandJava Tech & Tools | Social Media in Programming in Java | Khanderao Kand
Java Tech & Tools | Social Media in Programming in Java | Khanderao Kand
 
Java Tech & Tools | Just Keep Passing the Message | Russel Winder
Java Tech & Tools | Just Keep Passing the Message | Russel WinderJava Tech & Tools | Just Keep Passing the Message | Russel Winder
Java Tech & Tools | Just Keep Passing the Message | Russel Winder
 
Java Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter LedbrookJava Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
Java Tech & Tools | Grails in the Java Enterprise | Peter Ledbrook
 
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...
Java Tech & Tools | Deploying Java & Play Framework Apps to the Cloud | Sande...
 
Java EE | Modular EJBs for Enterprise OSGi | Tim Ward
Java EE | Modular EJBs for Enterprise OSGi | Tim WardJava EE | Modular EJBs for Enterprise OSGi | Tim Ward
Java EE | Modular EJBs for Enterprise OSGi | Tim Ward
 
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan Gallimore
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan GallimoreJava EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan Gallimore
Java EE | Apache TomEE - Java EE Web Profile on Tomcat | Jonathan Gallimore
 
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...
Java Core | Understanding the Disruptor: a Beginner's Guide to Hardcore Concu...
 
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil Bartlett
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil BartlettJava Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil Bartlett
Java Core | Java 8 and OSGi Modularisation | Tim Ellison & Neil Bartlett
 
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon Ritter
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon RitterJava Core | JavaFX 2.0: Great User Interfaces in Java | Simon Ritter
Java Core | JavaFX 2.0: Great User Interfaces in Java | Simon Ritter
 
Java Core | Modern Java Concurrency | Martijn Verburg & Ben Evans
Java Core | Modern Java Concurrency | Martijn Verburg & Ben EvansJava Core | Modern Java Concurrency | Martijn Verburg & Ben Evans
Java Core | Modern Java Concurrency | Martijn Verburg & Ben Evans
 

Recently uploaded

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
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
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
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
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 

Recently uploaded (20)

Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
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
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
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
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
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
 

Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little

  • 1. Middleware Everywhere - Ready for Mobile and Cloud Dr Mark Little Red Hat, Inc. 1/11/2011 1
  • 2. Overview •Where are we today and why? •Mobile and Cloud •Ubiquitous computing in the large •The real cloud! •Hardware and software forces in action •What does this mean for today’s middleware offerings? •The future of Java and standards 2
  • 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
  • 4. Today … •512Meg memory is standard on smart phones, 64Gig storage •256Gig USB sticks are becoming 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
  • 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 already •1 in 2 Americans predicated to have smart phones by the end of 2011 compared to 1 in 10 in 2008 5
  • 6. 6
  • 7. Past, present and future •The laptop concept originally devised for children •Now laptops replace desktop •Java and Linux helped to popularise middleware •But Java is not cool any more •Ruby, Scala, Erlang, JavaScript, … •Coolness is iPhones, Androids, POH5, … •Those are the new frontiers of application development 7
  • 8. “Little’s law” (thanks to Parkinson) •“Work expands to use the power available” •Basic word processors on PCs •Publisher-quality implementations now on laptops •Games pushing the envelope from Pong through Space Invaders to CoD •MVCC •Distributed systems •Grids •Mobile devices contain more and more personal data •Wallets via NFC •Disconnected operation is the normal situation 8
  • 9. Application complexity •Types of applications increasing in complexity •Online purchases •Distributed peer-to-peer interactions •Enterprise requirements becoming a necessity •Security and identity •High performance, low latency, reliable messaging •Database updates with transactions •Workflows as inter-app interactions increase 9
  • 10. Cloud meets mobile •Public Clouds important •Private Clouds probably more important •Security and data consistency implications •But Ubiquitous Computing has become a reality •Mobility and embedded devices are the real Cloud •Thin clients aren’t the future •Shannon’s Limit 10
  • 11. Ubiquitous computing Smartphones Field Service / Embedded / and Tablets Warehouse Devices Unattended  Smartphones and  Primarily Windows  New use cases for tablet shipments based embedded processors / overtaking PCs  Application tied to computing  Multi-device support device and OS the reality 11
  • 12. Several types of mobile application Mobile Web Native Shell Native Shell Native App POH5 POH5 POH5 Native Native Code Html5 java java Html5 java java Html5 Apple Apple apple apple Java html5 Java html5 java java apple Android android Yadda yadda yadda Yadda yadda yadda Java apple Windows windows Line 4 line 4 Line 4 line 4 html5 Android IOS ios ios Jay steve burr Jay steve burr Yadda android Jave Burr steve jay Burr steve jay yadda Window Objectve c yadda s Line 4 windows line 4 IOS Web Apps Hybrid Apps Hybrid Apps + Native App Written in HTML5, HTML5 wrapped in Hybrid app tweaked Platform-specific written JavaScript and CSS3. native shell. with native code to with OS specific SDK to Quick to develop with Provisioned and access device deliver fullest traditional web skills but accessed as a native capabilities. capabilities. less use of device app. Leverages web capabilities. skills and HTML5 with appearance of native app. 12
  • 13. “New age” development •New architectures •New implementations •New frameworks •New operating systems •New new new ..? 13
  • 14. “Mobility” and the Enterprise Customer Build Devices / Clients Integration Databases Data Process Messages Data Applications Center Web Services Enterprise Applications Management/Provisioning 14
  • 15. Mobility and “enterprise” apps Transactional invocation Ad-hoc auction Peer-based social networking Decentralised calendar Gaming 15
  • 16. For whom the bell tolls? Middleware? •Hold on ... haven’t we heard this death knell before? 16
  • 17. Remember Web Services/REST/ <blank> as death of middleware? •Not if you are objective! 17
  • 18. Middleware over the years •RPC first used in the 1970’s to link Unix systems •Bespoke implementations through the 80’s •Argus, Emerald, Arjuna, Camelot/Avalon, ISIS •Standards began to evolve •ANSA •DCE •More cross-vendor industrial standards •CORBA •J(2)EE •Web Services 18
  • 19. 40 years of middleware shows ... •Many things common •Security •Messaging •Transactions •Replication/Cacheing •Data store (e.g., database) •Distribution •Multi-tenancy (multi-threaded/multi-application) •The industry has spent 40+ years designing enterprise infrastructures 19
  • 20. So what does this mean? •Middleware is needed whatever the deployment environment •Mainframes, servers, laptops etc. •Don’t tie the definition of middleware to an implementation •Mobile and Cloud should not be new silos for developers! •Enterprise requirements transcend deployment realities 20
  • 21. So are cloud/mobile the death of middleware? •Many commonalities with “traditional” middleware •Enterprise requirements for all but trivial apps •Obviously Java is not the only application language •But why not a common runtime? •Lots of popular JVM-based languages •Lack of cloud/mobile standards 21
  • 22. Present and future directions •As an industry we must build on our existing implementations •We must provide a natural upgrade path for existing users •We cannot afford to repeat the DCE/CORBA, DCOM/.NET or CORBA/J(2)EE days •Evolution rather than revolution •Why? 22
  • 23. Some ubiquitous computing realities •Trust is important! •Trust is measured in: •Who is providing the service? •And are they doing it in a way that matches my requirements? •Are they living up to my required QoS •Fault tolerance, performance, etc. •Several well publicised Cloud outages and intrusions •Mobile viruses, identity theft ... •Still very early in the adoption cycle 23
  • 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  Profiles 24
  • 25. Mobile Computing Architecture IDE, Designer Debugging Mobile App Platform Data Storage Relational & NoSQL REST Endpoints Push Notifications Composite Data Data Storage & Sync Web Services User Mgmt Analytics Social Integration HTML5 & Native Apps Ruby, Clojure, ... Enterprise App Store, Security... Management/Provisioning 25
  • 26. “Java EE is too bloated” •Differentiate the standard from implementations! •Let’s not live in the past •It is possible to be lightweight and enterprise ready 26
  • 27. Standards •JCP reinvigorated •Java ME •Merging of Java ME EC with SE/EE •ME-next? •Java PaaS •Various non-standard solutions •OSGi, OMG, JCP •Open source helps drive experience •Don’t standardise too early! 27
  • 28. But there are still open areas •It’s not all doom and gloom •But it’s not all perfection either •Several key issues remain •Reliability •Development models •Data 28
  • 29. Trustworthy systems •Can we build a system that … •Only services authorised users •Service cannot be denied •Information cannot be stolen •Is always available •Out less than 1 second per 100 years •1950’s 90% availability •2010 99.99% availability for well managed sites (50 minutes/ year) •Software reliability is not keeping pace with hardware •Getting more expensive and less reliable 29
  • 30. Problems with development models •We have yet to make parallel programming easy •Only automatic parallelism has “won” •Managing computer clusters is a major cost •New computer architectures are highly parallel •Many-core chips are a reality •Core’s per chip will only increase •But we don’t know how to utilise them efficiently •So, the scale-up problem is not solved 30
  • 31. The data problem •There is a movement away from traditional databases •The bandwidth problem still remains •Economic necessity mandates putting the data near the application •The cost of wide-area networking has fallen more slowly than all other IT hardware costs •But how can data be in multiple places at the same time? •Flavours if “SQL” •OldSQL •Not Only SQL (aka No SQL) •NewSQL 31
  • 32. Conclusions •Cloud and mobile will evolve •Enterprise middleware applications aren’t going away •The industry cannot afford to track multiple platforms •Middleware components should be available to all •The next decade will be defined by ubiquitous computing •There are still areas that need to be addressed •NoSQL •Multi-tenancy 32 •Transactions