• Like
Java è il linguaggio dell’IoT - Weaver
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Java è il linguaggio dell’IoT - Weaver

  • 289 views
Published

Slides from James Weaver talk @Codemotion Roma 2014

Slides from James Weaver talk @Codemotion Roma 2014

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
289
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
6
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Hello, welcome, etc.
    Today I want to talk to you about sailing…. Really….. sailing…. And the dramatic changes that are happening in the technology world
  • The America’s Cup is the oldest trophy in international sport. With history going back to 1851, the America’s Cup has a long tradition of being one of the toughest competitions to actually win. Only four nations have ever done it.
  • So as Oracle Team USA got ready to compete in the San Francisco Bay, they knew that they needed to think about how to use technology to help give them the edge they need to win. And win they did!
    That’s why, this time, they improved their performance by relying on new technology to help them understand what’s working, and what’s not.
    One of a kind juggernauts, the OTUSA boats are loaded with about 300 sensors that gather data on things like strain on the mast, the effectiveness of sail adjustments, and the strength and stability of the hull.
    When the OTUSA is sailing, these sensors measure 3,000 variables running about 10 times a second. That’s about a gigabyte of raw data every sailing day.
    This data is incredibly important to the success of the boat. It gets used in both real-time and historical data analysis to improve the boat itself and help the sailors perform at the highest levels.
    For example, the performance team runs live analysis while the boat is sailing to predict things like the weather for the next few seconds, minutes, and even hours.
  • When they have this information, they send a real-time customized feed to each OTUSA sailor via a Java enabled PDA on their wrist. Each feed is tailored for their job—so, for example, a trimmer might get data on the load balance on a particular rope, or the current aerodynamic performance of the sail wing.
    The team also combines sensor data with meteorological data about the Bay’s tides, winds and currents, to help them calculate the most efficient navigation route for the course.
  • This sensor data can even be used to improve boat design.
    Boat design is all about balancing strength and stability—you want components just strong enough to bear a certain load. Looking at sensor data allows the team to re-allocate tension and strength to places that need more and remove it from places that need less.
  • Sensor data has changed the America’s Cup in ways that we might not even have imagined a few years ago.
    The truth is that these things should NOT be surprising—especially to this audience
    Every day, you’re looking for ways to use new technology to turn massive amounts of data—from all kinds of sources—into new products and services
  • The potential reach and impact of IoT is clear
    - From our how things are made to how they are used to what we know about the planet: IoT touches everything
    -And indeed as we’ve seen in previous “revolutions” (industrial, IT) it changes everything
    - And that’s what we’re talking about today – that change not just on how we use the results but also how all participants in the supply chain need to look differently at what they do
  • Right now most focus is to connect things to the internet; white goods, video surveillance – it’s mostly devices in their own silo connecting via the web to provide info to humans on a web browser. These opportunities are just the beginning.
  • These opportunities are just the beginning.
    The connections are becoming so widespread that people have begun to see them as part of something bigger. Some of you may have heard of the “Internet of Things,” a phrase that describes this ecosystem that is being created by data even without human intervention.
    I think it’s even bigger than that phrase implies: I believe we’re seeing the beginning of a totally connected world, where everyone is connected to everything.
    This is the change: the internet of things means that things can talk to things, processes interconnect and interop locally or globally, decisions are made according to pre-determined rules, actions can be automated.
    This is the change we are currently in, and that has some significant implications on us all as developers
    The most significant being in the manner that services are defined, built and delivered. Services - reflect on that - define it (something delivered on an ongoing basis to a defined set of expectations) – important to indicate we’re not talking technically (eg web services), we talking services as in tertiary sector. You drive the car off the lot and you’re relationship with the manufacturer is just beginning.
  • At the same time mobility and social combine to increase data volumes, the number of non-human connected devices is poised to increase dramatically. There are many different estimates on how many “things” will be connected by 2020, and they all are in the tens of billions… actually anything over a billion is significant as far as I am concerned. Over the course of the last couple of years the devices are becoming much cheaper, more powerful and probably most significantly connected. We are headed to the nexus of everyone being connected to everything. The internet of things is a major game changer for all of us. All those mobile devices that we use today… will become the ultimate remote controls… helping us interact and control the world around us. They will all produce even more data, they will all need software, and they will all need developers to weave them into the larger internet fabric. They will need to communicate, be secured and managaged….
  • But where is the Internet of Things coming from? It should be no surprise that the explosion of information through smart phones and social media is a factor. When I first saw this image… I laughed. This is crazy. The combination of mobility and social have created an incredible amount of net new data being produced and shared, requiring and incredible amount of infrastructure. For most people the technology to drive this is now just assumed much like utility, like water or electricity… in fact its now a rarity to hear about large outages, whereas a few years ago they were common place.
  • http://blogs.cisco.com/news/the-dawn-of-the-zettabyte-era-infographic/
    The “new normal” in generating new data is a mix between volume, variety and velocity, the speed of data creation. Dealing with data, historical, real time, future… large and small is creating whole new paradigms… big data, fast data, all backed by bi and analytics… for us in the room, it influences how we design, develop, deploy and manage applications that interact, produce or consume that data.
    Data Sources:
    http://rocketfuel.com/newsroom/blog/big-data-infographic-of-the-week-conspicuous-consumption
    http://visual.ly/what-big-data
    http://siliconangle.com/blog/2013/06/15/hp-discover-infographic-big-data-is-about-to-get-a-lot-bigger/big-data-infographic/
  • And Java plays an important role in the Internet of Things. Before going into “how” it’s important to reflect on just how pervasive Java has become as an enabling technology for us as developers.
    Java remains the number developer platform in the world.
    Sometimes it is easy to gloss over or forget just how much infrastructure runs on java and how much richness Java provides...
    Java is and incredible foundation to build for the future…..
    Perfect Storm
    Java is in great shape
    And, we at Oracle, are focused on where to take it in the future
    Huge opportunity, if together Oracle, the ecosystem, and community go after that Opportunity; platform of choice for IoT
    We’re on the cusp of a another massive wave of innovation, bringing with it opportunity
    Everything connected with everyone
    Internet of Things
    Cloud
    Data
  • Here’s a quick overview of the Java embedded spectrum as it can address device size in IoT
    Large devices are almost as capable as PCs, A low footprint version of SE
    Medium and Small – Includes edge devices and here component cost matter. For these devices we have the Java ME stack,
    As a complimentary solution, where there is a need for strong certified security, Java Card provides a secure solution to handle critical transactions like secure authentication, payment etc.
  • Let’s look at why we believe Java is an excellent fit for the embedded space
  • Java technology has some fundamental properties that make it very well suited to address key challenges in the embedded software space.
    Java was designed as a virtualization platform that abstracts the complexity and dependencies of the underlying platform and presents a standardized and reliable runtime environment, coupled with the highly productive and robust Java programming language.
    A Java-enabled platform does not execute native application code, but instead executes a platform-independent binary format called Java byte code. This byte code is executed in the Java virtual machine which runs on the underlying platform. So any platform that has an implementation of the Java virtual machine can run the platform-independent application, without further effort on the part of the developer.
    Java virtual machines are available on a wide range of platforms, from very small to large systems, are very mature and efficient, and have been deployed in many different markets. This gives embedded developers an ideal avenue to deploy their embedded applications and because the Java virtual machine provides a standardized and reliable platform the application developer can focus on solving the customer problem and creating business value rather than fighting the complexity of the underlying system.
    Finally, because Java is an open standard it means that developers have a choice of different vendors for their Java systems, and the embedded industry can influence Java’s future.
  • Let’s dig a little deeper. Java has some key advantages compared to native development where C and C++ are the dominant languages in embedded software development today.
    Native development can provide very good flexibility and performance, but has significant drawbacks when compared to a software platform like Java. Without going into too many details in the table, you can see that when it comes to cross-platform portability, security, robustness, support for multi-tasking, memory management, code updateability, and scalability Java has key advantages over native development. Java platforms also typically offer a high level of pre-integrated and tested functionality which is not always the case in native environments.
    Finally, the Java ecosystem and developer community is large and focused on a single technology, while the native ecosystem is fragmented and much less accessible.
    <end>
    Cross-platform/multi-architecture: Native code must be recompiled and retargeted to a different platform, often requiring functional changes and complete retesting
    Sandbox security model: Native code typically executes directly on the hardware, and malicious code can run unchecked once execution starts
    Robustness: Robustness in native is difficult to achieve since native code runs unchecked and this requires extra checkpoints in the code, and extra levels of testing since execution is not as tighly controlled as in a Java VM
    Multi-tasking/multi-threading: Native multi-tasking and multi-threading typically comes as platform specific add-on libraries, with different levels of functionality and portability
    Customizable: can the platform be tuned for a specific vertical
    Performance: While native code executes fast, it also offers fewer features and checks. Java code executes in a controlled environment which provides security, portability, and robustness. If the latter is more important, then raw code execution speed becomes secondary.
    Updatability: Updating native code is non-trivial and involves managing the runtime architecture, OS dependencies, security aspects, stability aspects, and linking and loading.
    Efficient, scalable development model from small embedded to large systems: Native development varies greatly from system to system, with different tools, programming models, platform dependencies, and incompatible or non-portable libraries and APIs.
    Developer Community: Because each native platform is different, the developer community is fragmented and expertise is not portable.
  • So, to summarize this brief chapter, Java is an excellent choice for embedded solutions because it provides a common platform for software development and deployment. It lets developers and vendors focus on the solution and deliver business value across a range of markets and use cases rather than struggling with complex and cumbersome traditional embedded software development methods.
  • The problem:Farmers are placing their fresh crops into a shipping container, and some of those shipments arriveat the distribution center spoiled or damaged. The shipping company has hired you to develop an inexpensiveembedded device to collect information from the containers.The goals for the device include:    * Completely stand-alone operation and low-power (Raspberry Pi and Java ME Embedded 8)    * Record the number of times and when the shipping container door is opened (switches)    * Record the temperature in the container at regular intervals (Barometric Pressure/Temperature sensor)    * Record the location of the container at regular intervals (Adafruit GPS Breakout)
    * Store the data collected locally on the device    * Respond to a request to download the information wirelessly (WiFi module)
  • The Java 8 Launch site is a great place to find resource videos on Java 8.
  • Hello, welcome, etc.
    Today I want to talk to you about sailing…. Really….. sailing…. And the dramatic changes that are happening in the technology world
  • Perfect Storm
    Java is in great shape
    And, we at Oracle, are focused on where to take it in the future
    Huge opportunity, if together Oracle, the ecosystem, and community go after that Opportunity; which will secure that future for Java
    CHallenge ourselves and challenge you to continue taking Java into the Future (TOGETHER)
    We’re on the cusp of a another massive wave of innovation, bringing with it opporutnity
    Everything connected with everyone
    Internet of Things
    Cloud
    Data
  • blogs.oracle.com/java

Transcript

  • 1. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.1 Java è il linguaggio dell’IoT James Weaver Java Technology Ambassador Oracle Corporation @JavaFXpert james.weaver@oracle.com
  • 2. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.2 About the presenter Author of several Java/JavaFX books
  • 3. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.3 About the presenter Co-leader of IoT & JavaFX communities at java.net javafxcommunity.com iotcommunity.net
  • 4. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.4 About the presenter Favorite TV shows are music competitions like “The Voice”
  • 5. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 About the presenter I see that Italy has “The Voice” as well …
  • 6. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6 About the presenter … with a singing Nun. Very cool!
  • 7. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.7 1851 America’s Cup The oldest trophy in international sport Lumber Sextant Compass Canvas
  • 8. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8 300 Sensors 3,000 Variables running 10 times per second 1GB Raw data every sailing day Mast Strain Hull Stability Sail Tension Wind Speed Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8
  • 9. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.9 Customized Feed of Information 71◦ ~183kg 527 kg/m 40 Knots Wind Speed Sail Tension Mast Strain Hull Stability
  • 10. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.10 Strength Stability Improving Boat Design
  • 11. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.11 1851 New Technologies | New Possibilities 2013
  • 12. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.12 IoT TouchesIoT Touches EverythingEverything ChangesChanges
  • 13. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.13 From… Things Connected to the Internet www.
  • 14. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.14 To… The Internet of Things
  • 15. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.15 WorldWorld PopulationPopulation 6.3 Billion6.3 Billion 6.8 Billion6.8 Billion 7.2 Billion7.2 Billion 7.6 Billion7.6 Billion 500 Million500 Million 12.5 Billion12.5 Billion 25 Billion25 Billion 50 Billion50 Billion Connected DevicesConnected Devices per Personper Person 0.080.08 1.841.84 6.586.583.473.47 2003 2010 20202015 Source: Cisco 33 xx 55 xx 11 xx ConnectedConnected DevicesDevices
  • 16. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.16 6060 secsec 347347 new postsnew posts 204 million204 million messages sentmessages sent 278,000278,000 tweetstweets 41,00041,000 searchessearches 104,000104,000 photos sharedphotos shared 20 million20 million photos viewedphotos viewed 11,00011,000 active usersactive users 7272 hours of video uploadedhours of video uploaded 11,00011,000 professional searchesprofessional searches Source: Go-Gulf.com
  • 17. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.17 VolumeVolume VarietyVariety VelocityVelocity 1,500 EB1,500 EB20112011 3,500 EB3,500 EB20132013 8,000 EB8,000 EB20152015 1 Exabyte = 3,600 years worth of HD-TV video1 Exabyte = 3,600 years worth of HD-TV video Source: Cisco
  • 18. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.18 5 of Top 5 OEMs ship Java ME5 of Top 5 OEMs ship Java ME #1 Development platform#1 Development platform 9 Million+ Java developers worldwide9 Million+ Java developers worldwide 3 Billion mobile phones run Java3 Billion mobile phones run Java #1 Choice for developers#1 Choice for developers 100% of Blu-Ray players ship with Java100% of Blu-Ray players ship with Java 97% of enterprise desktops run Java97% of enterprise desktops run Java 89% of desktops in USA run Java89% of desktops in USA run Java 5 Billion Java Cards in use5 Billion Java Cards in use 125 Million TV devices run Java125 Million TV devices run Java
  • 19. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.19 Java ME Embedded Oracle Java Platforms Overview Java Card SECURITY SMALL EMBEDDED MEDIUM EMBEDDED LARGE EMBEDDED DESKTOP SERVER 50KB-1MB 1MB-10MB 10MB-100MB Footprint Java SE Embedded Java Embedded Suite Oracle Event Processing Embedded 100MB+ Java SE
  • 20. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.20 Why Java for Embedded
  • 21. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.21 Java in Embedded: Things You need to know Solves some of the Tough Problems in the Embedded Space Java Application
  • 22. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.22 Java Compared to Native Solutions Java Native C/C++ Cross-platform/multi-architecture Yes No Sandbox security model Yes No Multi-tasking/multi-threading Built-in Add-on, platform-specific Automatic memory management Yes No Code updatability Excellent Varied Scalable development model from small embedded to large systems Yes No Developer Community Large Fragmented For Small Embedded Systems
  • 23. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.23 Java lets You focus on the Solution Stop reimplementing. Start scaling your code. Java provides a common platform
  • 24. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.24 In this course, you are building a prototype of an embedded device to collect, store, analyze and share data from a shipping container. Door open/close Pressure/ Temperature Location/ Altitude Client DisplayStorage Free Java Embedded Online Course!
  • 25. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.25 You’ll create Java apps for Raspberry Pi & client
  • 26. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.26 IoT Developer Challenge  Show the world what you can do with Java + IoT for a chance to win a trip to JavaOne for you and two team members. oracle.com/java8 Key Dates: Submissions begin March 3rd, 2014 Submission deadline is May 30th, 2014 Winners announced June 30th, 2014 JavaOne 2014 from Sept. 28 to Oct. 2, 2014
  • 27. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.27 Java è il linguaggio dell’IoT James Weaver Java Technology Ambassador Oracle Corporation @JavaFXpert james.weaver@oracle.com
  • 28. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.28
  • 29. Copyright © 2013, Oracle and/or its affiliates. All rights reserved.29 More Information oracle.com/iot oracle.com/java8 TwitterTwitter FacebookFacebook Java BlogJava Blog LinkedInLinkedIn YouTubeYouTube @Java Embedded@Java Embedded blogs.oracle.com/javablogs.oracle.com/java Embedded JavaEmbedded Java Developers NetworkDevelopers Network ILoveJavaILoveJava YouTube Java ChannelYouTube Java Channel