You are currently browsing the tag archive for the ‘Java’ tag.
If you haven’t watched a talk on language stewardship and evolution in a while – I would highly recommend this one.
Brian Goetz, Oracle’s Java Language Architect, makes a brilliant, witty, and passionate case for pragmatic evolution of programming languages and provides compelling reasons why Java not only remains relevant as the top programming language and platform of choice but – even after 20 years – continues to deliver innovation that matters to the entire IT software ecosystem, including 9 million Java developers and those building software with alternate languages on top of the Java runtime.
There is an interesting discussion happening on the LinkedIn “Internet of Things” group right now, in response to the InfoWorld article a few days ago titled “Oracle hitches Java to ‘Internet of things’“.
The discussion touches on some interesting details on why Java may or may not be a good choice for embedded. Besides the fact that Java is already proven to be one of the most widely deployed embedded technologies (“10 billion and Counting …”) I think the discussion misses a key point: The coming disruptive shift in the embedded industry.
Change Driven by Smart Devices
The embedded industry as a whole, and the embedded software industry in particular, are on the cusp of a disruptive shift in the way products and services are built and delivered, and how they interact with the rest of the world. This is driven by the explosion of smart, connected devices and the resulting need for security, interoperability, scalability, and faster time-to-market – requirements that are core to the value of the Internet of Things (IoT) space.
To understand why Java is a key technology for the embedded space, it is instructive to look at the mobile phone industry of about 10 years ago. The mobile industry was defined mostly by proprietary technologies, specialized hard- and software, lack of interoperability, and any number of other complexities. Bringing products and services to market in this fragmented environment was costly, time consuming, and didn’t scale – stifling the entire ecosystem and limiting participation to a few companies with deep enough pockets to take the risk.
Embedded Devices == Smart Phones?
Enter the first smart phones. These phones were much more than just devices. They provided a (relatively) open software platform with a consistent set of functionality across a range of devices, simple development, deployment, and monetization models, and ready-made integration with back-end services.
With this new model, the ecosystem equation changed completely. Now, instead of wasting time reinventing the wheel to enter a particular technology island, companies and developers were free to innovate on top of these platforms with a low barrier of entry but large scale opportunities. Almost immediately, we saw an explosion of new and innovative features, software, services, and even entirely new business models, benefiting an entire new ecosystem of those willing to make the shift.
Embedded Needs a New Software Paradigm
The similarities to todays embedded ecosystem are striking. Of course, the embedded markets are more varied and specialized in their needs compared to mobile. But fundamentally, the embedded industry has many of the same problems the mobile industry had 10 years ago. Embedded must move beyond the current fragmented and complex approach of building basic product functionality and towards a platform model that enables a shift upstack, to increase value in application software, business logic, services, and data. This is a key prerequisite to scale up and deliver new products and services for smart, connected devices.
The embedded software running on these devices will become much more challenging: It needs to be more flexible, robust, and secure than in the past while meeting ever tighter budget and time-to-market constraints. Successfully implementing such software requires the industry to embrace modern software paradigms, including productive, robust, and standardized programming languages, APIs, and tools, cross-platform execution environments, security design, high levels of pre-tested integration, software reuse and scalability, standards compliance, interoperability, and out-of-the-box integration with back-end services.
Top Technical Reasons for Java in Embedded
By design, Java already meets many of the above requirements. Over the years Java technology has been continuously optimized for embedded, and is being used across industries from smart cards, to industrial control units, robotics, eHealth devices, smart meters, consumer electronics, gateways, networking equipment, imaging systems, and much more.
Why you should consider Java for embedded solutions:
- Addresses key challenges of traditional embedded development by decoupling software logic from underlying platform (board/device, chipset, peripherals, OS, native code, libraries)
- Virtual Machine concept enables feature-rich, scalable, and robust cross-platform/multi-architecture application platform and promotes software reuse
- Simple and productive software development and deployment model (language, APIs, tools, reuse) reduces cost and time-to-market
- Single end-to-end development paradigm from client devices to back-end systems (where Java already is the de-facto standard)
- Enables flexibility and product extensibility through software services and in-field software delivery, updates, and management
- Highly-functional, deployment-ready runtimes reduce integration, testing, and support costs of final solution
- Open, standards-based technology, interoperable with many industry standards
- Enables leveraging large Java ecosystem of expertise, innovations, products, tools, code, and partners
An example of a successful embedded Java product is Oracle Java ME Embedded, which provides an optimized, robust, and complete Java runtime for resource-constrained devices as small as 130 KB RAM and 350 KB ROM/Flash – and which has already been adopted by the four top chipset and wireless module manufacturers.
In the End, The Value is in the Data
Increasingly, a successful embedded solution doesn’t end with the device. The real value of embedded is in the data, and more importantly, in the business information that can be extracted from that data. A client software platform is only as good as the integration into the enterprise it enables. That is why Oracle is not only driving Java Embedded software into devices, but also puts strategic focus on the Oracle Internet of Things Platform in order to enable customers and partners to build enterprise-class end-to-end solutions that deliver business value for IoT deployments.
For more information on why you should consider Java in embedded, please see the webinars, white papers, research reports, and more available throughout my blog.
Last time I published the OTN “Java Top 10” there was a lot of interest – so here is the current ranking for the last 12 months (most popular at the top).
Top 10 Java Articles on OTN:
1. Getting Started with Java® SE Embedded on the Raspberry Pi by Bill Courington and Gary Collins
2. How to Get Started (FAST!) with JavaFX 2 and Scene Builder by Mark Heckler
3. Higher Productivity from Embracing HTML5 with Java EE 7 by Janice J. Heiss
4. Java Experts on the State of Java by Janice J. Heiss
5. Java EE 7 and JAX-RS 2.0 by Adam Bien
6. Coding on Crete: An Interview with Java Specialist Heinz Kabutz by Janice J. Heiss
7. Why, Where, and How JavaFX Makes Sense by Björn Müller
8. The Advent of Kotlin: A Conversation with JetBrains’ Andrey Breslav by Janice J. Heiss
9. The Enterprise Side of JavaFX by Adam Bien
10. JSR 356, Java API for WebSocket by Johan Vos
11. Introducing Groovy by Jim Driscoll
12. The Enterprise Side of JavaFX: Part Two by Adam Bien
13. Expressing the UI for Enterprise Applications with JavaFX 2.0 FXML by James L. Weaver
14. JavaOne 2012 Review: Make the Future Java by Steve Meloan
15. Expressing the UI for Enterprise Applications with JavaFX 2.0 FXML – Part Two by James L. Weaver
Oracle Partner Network (OPN) has released three new video interviews focusing on Oracle’s products and partners in the embedded space:
1. Oracle Device to Data Center Platform
Ed Zou from Oracle introduces Oracle’s Device to Data Center platform, which is an common end-to-end development and deployment platform to address the challenges of building solutions for the M2M space.
2. Oracle Java Embedded Updates
Henrik Stahl from Oracle gives an update on new and updated Oracle products for the embedded space, including Java Embedded Suite, Java ME Embedded, and Oracle Event Processing for Embedded.
3. Partner Benefits of Java
Hillary Tomasson from Eurotech talks about cool and challenging M2M use cases and shares some insight on the benefits of working with Oracle, Oracle partners, and Java-based technologies for embedded solutions.
To view, please click on the image above and select the PartnerCast of May 8th, 2013.
Check out the Jan/Feb 2013 edition of Java Magazine – featuring a big focus on embedded:
- Page 8: News: Hitachi SuperJ Framework, M2M Survey by Beecham
- Page 20: Embedded Everywhere – Java and the Internet of Things
- Page 26: Top 10 Reasons for Using Java in Embedded Apps
- Page 31: Java Arrives on a $25 Board
- Page 36: The Future of Money
JFokus is focusing (that’s right!) on embedded for it’s upcoming event Feb 4-6 in Stockholm:
- A dedicated 2-day track on “Embedded, M2M & Internet of Things”
- An embedded lab with Java on Raspberry Pi (sorry, already sold out …)
Mattias and the JFokus crew have put together a great embedded track, with a cross-section of talks on what’s hot and relevant in the embedded space right now. Here a selection:
- Opening keynote by Oracle’s Henrik Ståhl, Senior Director of Product Management for Java
- Axel Hensmann from Gemalto (Cinterion) on why they are using Java on their wireless modules
- Gerrit Grunewald will be undoubtedly delivering some cool tricks and visuals with Java on BeagleBoard, Raspberry Pi, and HTML5
- Nighthacker Stephen Chin with a Raspberry Pi BOF
- Simon Ritter will be serving coffee and pi (the Java and the Raspberry kind)
- I will be doing the closing keynote on “Java in the Internet of Things: Smart, Small, Connected“
- And more embedded sessions in between ….!
And, this being one of northern Europe’s premier Java conferences, there are another 5 tracks packed with Java content, from the Java Platform, enterprise and web development, cloud, and other software development topics.
Hope to see you in Stockholm!
It’s the ultimate recursion: Making Java with Java ;-)
Last year, Vinicus Senger already proved you could make Java (the hot one) with Java (the equally hot one), with his “Having Fun with Home Automation and Java EE” project. See this parleys.com video.
Now, Sasha Wolter created the next iteration. As part of a project for the Deutsche Telekom Developer Garden he built a voice-controlled coffee machine, using the Raspberry Pi, Oracle Java, a Nespresso machine, and some network APIs of Deutsche Telekom.
The Top 10 OTN Java Articles are always a popular topic. We just compiled the information for 2012 – Embedded Java and Raspberry Pi was hot, with article #1 garnering 56,000 page views!
Here is the list.
2012 Top 10 OTN/Java Technology Articles
1. Getting Started with Java SE Embedded on the Raspberry Pi
Bill Courington and Gary Collins
2. How to Get Started (FAST!) with JavaFX 2 and Scene Builder
3. Laying Out a User Interface with JavaFX 2.0
James L. Weaver
4. Building Applications in JavaFX 2.0
5. Interfaces on Demand with CDI and EJB 3.1
6. Key to the Java EE 6 Platform: NetBeans IDE 7.1
7. Best Practices for JavaFX 2.0 Enterprise Applications (Part One)
James L. Weaver
8. Challenging the Diabolical Developer: A Conversation with JavaOne
Rock Star Martijn Verburg
Janice J. Heiss
9. Best Practices for JavaFX 2.0 Enterprise Applications (Part Two)
James L. Weaver
10. The Enterprise Side of JavaFX: Part Two
I’ve been collecting links to some interesting blog posts and videos related to embedded Java over the last couple of weeks. Passing these on here:
- Freescale blog – The Embedded Beat: “Let’s make it real – Internet of Things”
- Simon Ritter’s blog: “Mind Reading with Raspberry Pi”
- NightHacking with Steve Chin and Terrence Barr: “Java in the Internet of Things”
- NightHacking with Steve Chin and Alderan Robotics: “The NAO Robot”
- Java Magazine: “Getting Started with Java SE for embedded devices on Raspberry Pi”
- OTN video interview: “Java at ARM TechCon”
- OPN Techtalk with MX Entertainment: “Using Java and MX’s GrinXML Framework to build Blu-ray Disc and media applications”
- Oracle PartnerNetwork Blog: “M2M Architecture: Machine to Machine – The Internet of Things – It’s all about the Data”
- YouTube Java Channel: “Understanding the JVM and Low Latency Applications”