Wednesday Feb 26, 2014

Java EE 8 Community Survey: The Next Phase

The results are in for the Java EE 8 Community Survey.  We've had a terrific response to the survey, with over 2500 participants in Part 1 and over 1800 in Part 2!

You can find a summary of the results at

The next phase of this information gathering involves asking for feedback from the community in prioritizing among the most highly rated features from parts 1 and 2 of the survey.  You can read about it here:

It would be great if you could give us your views on Java EE 8 AND also spread the word in your network. This is how the Java community builds releases!

Tuesday Feb 25, 2014

Vert.x: A Project to Watch

Vert.x is one of the most popular Java projects on GitHub. Sometimes called "Node.js for the JVM," it is a ployglot event-drive app platform. It is 100% open source, under the Apache Software License 2.0.

Vert.x is designed for modern mobile, web, and enterprise applications. "Modern applications are reactive (event-driven) and must be scalable," says Vert.x creater Tim Fox. The Distributed Event Bus, Vert.xs' nervous system, is a point-to-point message system which can talk across multiple JVMs. Async is harder to develop to, but it allows scalability and high levels of concurrency (e.g. web servers, Websockets and IoT). "OS threads are still a precious resource," Fox explains. 

In a Vert.x world, applications are are loosely coupled components distributed across your network; there is no monolithic app server. It uses a module system (which Fox describes as "a zip file that contains stuff"). The modules are like legos. There are existing modules for MongoDB, JDBC, Jersey, Facebook, Guice, SocketIO, Kafka, and more. If you don't want the whole platform, Vert.x can be embedded as a library in your existing Java applications.

Vert.x is polyglot, it currently supports Java, Javascript (including Nashorn and Rhino), Jython, Ruby, and Groovy. Support for Scala, PHP, Clojure and Ceylon is planned. 

Vert.x is an independent community project at the Eclipse Foundation, with the code on Github
It has an active and growing community, you can learn more at With simple concurrency, ease of development, a library of modules, this open source project is worth a look. 

Tuesday Feb 18, 2014

Develop Java Applications Using a Raspberry Pi

Ready to dive into the Internet of Things? Take the new, free, online course "Develop Java Embedded Applications Using a Raspberry Pi." The Oracle Learning Library has created this course which provides code, examples, and experts to teach you and answer your questions.

Java experts Stephen Chin, Jim Weaver, Simon Ritter, Angela Caicedo, and Tom McGinn will lead you through basic exercises. Each week, you'll get a new set of course materials:

  • A series of short, pre-recorded videos provide the "lecture" portion of the course.
  • A homework project is linked to the video material, and applies what you have learned by working with Java ME Embedded, the Raspberry Pi, and some electronic components.
  • A graded quiz evaluates how well you have grasped the materials and the homework.

Order your equipment now so you can have it in time for the course start on March 31st!

Here are a few FAQs (You can send questions or comments to Java-MOOC-Support.)

Q: Is the course free or do we have to pay for it?

A: The course is free. There is hardware you have in order to complete the labs (homework) but the course materials are free.

Q: It starts end of March and goes on for five weeks, but how often / how long will sessions occur? 5x 1hour? Or 25 full days? At what time will the sessions occur? 

A: This course is delivered entirely on-line.  There are no set times for sessions because the training is in pre-recorded video that you can watch anytime, anywhere.  Each week Oracle will release the materials for that week, and you should expect to spend between 4 and 6 hours each week on the lessons, the labs and the quizzes.

Q: Is there anything special about the kit (e.g. parts that are just for the MOOC that you wouldn't normally be able to buy)? 

A: The parts for the MOOC are only special in that they represent the use case presented by the course, that of an asset management system designed to provide data on container shipments of fresh produce: container door access (switch), temperature (I2c), global position (UART), and of course a RaspberryPi and breadboard as the development platform. The devices are available through Adafruit and relatively inexpensive.

Register now for "Develop Java Embedded Applications Using a Raspberry Pi."

Friday Feb 14, 2014

Java ME Embedded 8 Early Access 2

Java ME Embedded Early Access (EA) 2 is an update to the first Java ME Embedded 8 EA release in September 2013. The EA 2 release is an implementation of the Java ME 8 standard (based on the Java ME Connected Limited Device Configuration (CLDC) 8 and Java ME Embedded Profile (MEEP) 8) including:
  • Alignment with Java SE 8 language features and APIs, enabling more streamlined creation of embedded software through a unified development model between Java SE 8 and Java ME 8 
  • A significantly updated "services-enabled" application platform allowing modular and flexible software development and deployment to reduce risk and time-to-market for embedded software solutions
  • Support to customize and "right-size" the platform to address a wider range of use cases with target devices starting as low as 192 KB RAM and 1 MB of Flash/ROM
  • Access from Java to a range of devices via GPIO, I2C, SPI, UART and more to enable easy cross-platform support of use case-specific hardware and peripherals
  • Application development is supported through the Oracle Java ME SDK 8 Early Access 2
Key Features of the Oracle Java ME Embedded 8 EA 2 release:
  • Improved support for JSR 360 (CLDC 8 and GCF 8) and JSR 361 (MEEP 8)
  • Improved tooling support (Developer Agent, On-device Debugging, Memory Monitor, Network Monitor, CPU Profiler, Logging)
  • Improved networking and connectivity, including wireless support (3GPP, CDMA, WiFi)
  • Improved access to peripheral devices through Device Access API
  • New APIs for RESTful programming (JSON, Async HTTP, OAuth)
  • Updated Oracle Java ME SDK 8 EA #2, improving support for new ME 8 functionality, platforms, peripheral devices, tooling, and integration with NetBeans 8 Beta
  • Ongoing support for the following APIs: JSR 75 (File Connection), JSR 120 (Wireless Messaging), JSR 172 (Web Services), JSR 177 (Security and Trust Services), JSR 179 (Location), JSR 280 (XML)
  • Bug fixes, usability, performance, and footprint improvements
Supported Platforms:
  • New support for Qualcomm IoE 6270T on Brew MP
  • Improved support for Raspberry Pi Model B on Debian Linux
  • Improved support for Windows 7 
This Early Access 2 release is targeted at developers and interested parties who would like to explore and evaluate the possibilities of the upcoming Java ME 8 platform.
Download Download Java ME 8 Early Access 2
Download Learn More
Download Download the SDK (Includes Java ME 8 Early Access)

Thursday Feb 13, 2014

NightHacking: Program a Robot

Get a chance to program a robot in the next NightHacking session with Stephen Chin. Laurent Lec, a software architect at Aldebaran Robotics (maker of the NAO robot) will be in the NightHacking studio. Lec will start off with a presentation about the NAO robot. He'll also give a live demo of the NAO Java API. The remainder of the session will be an interactive lab using Aldebaran's Choreographe software, which gives you a visual programming interface and a realtime 3D model of the NAO to test your application. They will live stream up for 3 hours to support the lab. 

This NightHacking session takes place on Thursday, Feb. 20th, 10am PT. 

To participate go to to read details. At the time of the broadcast, go to to watch the live stream. Lab materials will be hosted on GitHub and we will have open chat using the #nighthacking tag on twitter. We will also send out the hacking materials shortly before the broadcast, so follow @_nighthacking for the latest updates.

Create a meetup in your city at the same time as the live stream and hack with friends! Vaadin is sponsoring beer reimbursement. More details here

Note that the start time in Meetup Everywhere does not properly reflect your local time zone. Here are some other time zones that may match where you live:

BRST: 16:00
GMT: 18:00
CET: 19:00
IST: 23:30

Wednesday Feb 12, 2014

Register today for the Oracle Java ME Embedded MOOC!

By Guest Blogger Tom McGinn 

We are pleased to announce that the Oracle Massive Open Online Course: Develop Java                             Embedded Applications Using a Raspberry Pi is open for enrollment.

The course will start March 31st!


Java Embedded leverages your experience with Java to open the world of the Internet of                                     Things by providing direct access to electronic sensors and mechanical devices.

This free course, designed for Java developers, is delivered over 5-weeks. Take the course                                       at your own pace - weekly we will add new lessons, quizzes and homework assignments.

You will work on a real-world application to:

  • Read input data from switches and drive LED's using the GPIO interface
  • Read temperature and barometric pressure from an I2C device
  • Read the device's current location using a GPS UART device
  • Store and manage data collected
  • Report data to a client through a variety of communication options
  • And more!

Monday Feb 10, 2014

JavaLand: New Java Conference in Germany

JavaLand is a new technology conference happening in Germany March 25-26. The conference is organized by iJUG, an association of over 12 German-speaking JUGs in Germany, Switzerland and Austria. One of the interesting things about JavaLand is the venue: the Phantasialand theme park. Attendees never have to leave the venue for both learning and fun.

JavaLand 2014 is for both Java beginners and Java experts. Topics include Core Java, JVM languages, Enterprise Java, Tools, Software Architecture and Security. Some of the session titles are "My old Friend malloc - Off-Heap in Java," "JSR 354 - Go for the Money," and "55 New Features in Java SE 8." 

What else makes JavaLand special? Organizer Markus Eisele says JavaLand is "by the Java Community for the Java Community." There will be several community activities, including:

Hacker Garden
Gerrit Grunwald of Münster JUG hosts a the Hacker garden, a software craftsmen's workshop, a classroom, a laboratory for experimentation and a place for discussion and getting to know open-source projects. 

Night Hacking
Stephen Chin, Java Technology Ambassador for Oracle, will stream interviews live from JavaLand.

Early Adopters Area
Create the Future of Java by learning about and trying "Adopt a JSR" or "Adopt OpenJDK" project.

Lambdafy Your Project
Participants can learn how to switch existing Java projects to lambda expressions. 

Meet the JUGs
Java User Groups will present in the "Java User Group Café." 

Java Innovation Lab
Experience innovative Java projects whose focus connects the real with the virtual world. Check out Leap Motion, Raspberry Pi, virtual and augmented reality.

Great technology plus lots of community activities, it's a winning combination. Learn more at

Friday Feb 07, 2014

Java EE Curriculum Survey

 Take this survey and help us better understand which APIs and Java versions are the most important to you as a Java  EE developer. The results of the survey will enable us to update our training material and certifications for Java EE 7 to better suit the Java community. 

The survey will take you ~5 minutes. Your answers will remain anonymous and you won't be contacted by Oracle as a result of answering this survey

Wednesday Feb 05, 2014

Mobile World Congress (MWC) Coming Up

MWC is the largest international conference for the mobile industry.  From February 25 – 27, experts, leaders and visionaries will discuss the innovations that will transform communication. 

Oracle will showcase its innovative communications services at the Communications Industry Experience Zones. It is located the Oracle Booth # 3B20 (at hall 3).  

Also at the Oracle booth, discover the breadth of Oracle Internet of Things (IoT) offerings and learn how the IoT helped fuel one of the greatest comebacks in sports history. The model of the Oracle Team USA 2013 AC72 yacht will be onsite! Oracle solution experts will be there to answer questions. Don't miss it, Register now! 

Monday Feb 03, 2014

PaaS for Java Developers

The concept of Platform as a Service promises a deployment and runtime option where operating systems and services are managed for you, where scalability concerns are handled more or less automatically and where late-night calls about unavailable systems are a thing of the past. But how close is this to reality? In the "Java PaaS" hands-on lab at the Jfokus conference today, developers learned about the current PaaS landscape.

Håkan Jonson and Patrik Fredriksson, both developers at Citerus, presented ideas based on their experiences delivering business applications in the cloud. They provided help with how to "navigate your way through the swamp of vendor logos." The PaaS industry has moved from infancy to consolation quickly, so it's great to get advice experienced users.

Here are the guidelines they provided on what to consider when looking at PaaS providers. You should consider:

  • The company's level of maturity (how far out of beta are they? can they point to success stories?where is the documentation?)
  • What are the deployment routines? (how hard is it to set up? how long does redeployment take? do they offer CI? )
  • What tooling is included? (admin, monitoring)
  • What is infrastructure and service stack technology? (on top of EC2? machines running in someone's a basement? what's the language and DB language support?)
  • SLA and legal considerations (where are the machines physically running? will your app be affected by network latency?) 
  • What is the pricing model? (fixed price or by consumption? how do you pay?)

and, most importantly,

  • What is Your ESCAPE ROUTE? How do you get your app and data out if things go wrong? 
To protect yourself, it is best to:

  • Use an established and mature tech stack (established/common technologies may not be the flashiest, but ubiquity makes it much easier to switch)
  • Keep the number of platform customizations to a minimum
  • Own your data (have your own import/export procedures)

Johson told a story of a having spun up an app very quickly and having "three exciting weeks with the app running. It had deployed very quickly. We had 99% uptime!" Then they started learning the limitations of their vendor. They needed more instances than originally planned (dev, test, production), therefore got a higher bill for infrastructure (the client was not happy to learn this). When they started to tweak the JVM, it took them outside the vendor's "standard config." Security issues came up when they learned that data going between nodes was unencrypted. The physical location of the cloud instances had an effect the application's responsiveness. All of this lead to the painful realization that the vendor's support staff was a different time zone, leaving only a two hour overlap of business hours.

The last straw was when the vendor accidentally deleted the entire application, including data. It took the vendor several hours to get the app back online. This lead them to the three most important considerations:

  • OWN YOUR DATA - they were able to switch to another provider in 3 hours
  • BE AWARE OF GEOGRAPHY - both for network latency and tech support hours
  • PRICING - expect to need mirrored environments (stage and test) or prices might be higher than you expect

With this much to consider, is PaaS really worth it? Why not just do IaaS? A good question, but as a developer, PaaS provides a quick way to spin up an application, automatic scaling, OS updates, and for you, the developer, it's one less thing to worry about.  A few PaaS vendors even provide a free tier to get started with. As with all technologies, PaaS has advantages and disadvantages. Nikoloas Roumpoutsos was at the lab and liked it because "it's always good to have another tool in your toolbox."


Insider News from the Java Team at Oracle!



« February 2014 »