Monday Oct 06, 2014

Lambda Q&A Panel

By Guest Blogger Bob Larsen, Java.net editor

Stuart Marks, principal member of technical staff at Oracle, facilitated a fantastic discussion about lambda expressions during JavaOne. A panel of gurus offered their diverse perspectives and answered questions about lambdas submitted via Twitter. The panel included Maurice Naftalin, principal developer at Morningside Light; Brian Goetz, Java language architect at Oracle; Raoul-Gabriel Urma, a PhD candidate at the University of Cambridge; David Blevins, founder of Tomitribe; and Trisha Gee, Java engineer at MongoDB.

The panel opened with Urma, Naftalin, and Goetz discussing the inclusion of functional programming features, via lambdas and streams, into the Java language. The inclusion of these features allows Java developers access to these features without changing the nature of the language itself, they said.

Gee then described how MongoDB is moving toward the inclusion of lambdas and streams without losing compatibility with earlier versions of Java. This can be accomplished, she said, by exposing single-method interfaces and stream-like APIs, which both allow and encourage those using the library to use these new features without requiring the library itself to be compiled against older versions of Java.

Later, the discussion turned to when it is and is not appropriate to use lambdas. The panelists discussed how passing blocks of code longer than a single line into a lambda expression can easily make the lambda expression difficult to read and maintain. Method references allow the use of lambdas in these situations without reducing code clarity.

Because the Stream API makes parallelism so easy to implement, there is a great concern that it will be overused. “The problem with parallelism is that it’s too easy. You can just plunk it in there, and people see it as a magic incantation for extra speed,” said Gee. The panel quickly reached consensus that initially people will overuse it, and that there is no substitute for proper testing and benchmarking in a production-like environment. Goetz also pointed out that there is an extreme focus on performance, and reminded the audience that there is no reason to even think about performance tuning unless there is a business reason to do so. Frequently, the simple and easily understood code runs fast enough to meet the requirements, he said.

The conversation also ventured into the weaknesses in the current lambdas feature, mostly around exceptions. Checked exceptions do not play well with lambdas. One suggestion was simply to make the lambda expression throw an exception. Goetz explained that this was considered in the crafting of the spec. He said it is really a bad idea; it would require every lambda expression to be surrounded by a try-catch block, the catch statement must catch all exceptions, and the loss of precision should make us all “feel dirty.” Another potential problem is exception reporting; stack traces involving lambdas can be quite confusing to those not familiar with them.

The discussion closed with the panelists encouraging the audience to use Java 8—even if it is only in nonproduction situations, such as writing tests. They also pointed out that many Java developers will be learning a new programming paradigm and that they shouldn’t avoid using these features just because they don’t want to make mistakes.


Final Keynotes Reflect Back, Move Forward

By Guest Blogger Timothy Beneke
The final keynotes of JavaOne took place on Thursday, with the Intel, Technical, and Community keynotes. These keynotes cast strong glances both backward and forward at the platform and celebrated new technologies, especially related to the Internet of Things.

Intel Joins OpenJDK
Intel’s Michael Greene, vice president of system technologies and optimization at Intel’s Software and Services Group, took the stage and announced that Intel is joining the Open Java Development Kit (OpenJDK) community and will contribute math library functions that should boost big data analytics performance for machine learning.

Technical Keynote
Mark Reinhold appeared and briefly reprised his Technical keynote. Then Brian Goetz offered a vision of Java extending to Java 9 and beyond that would include value classes. Look to Project Valhalla and Project Panama for more information.

James Gosling Reflects on Java
Next, several Java luminaries—including the father of Java, James Gosling—took questions. After being asked if he regretted null pointers, Gosling quickly replied that he did not because all of the available alternatives at the time were far worse.
Gosling went on to explore why Java did not have generics from the beginning. Bill Joy, Java’s cofounder, wanted to include generics, a source of considerable conflict in 1994, but Gosling insisted that there was an insurmountable problem: Which generics do you use? Dozens of languages with generics already existed, and they all had problems. Gosling stuck to a basic principle he adhered to in creating Java: Never do the wrong thing.
When asked when Java would become obsolete, Gosling confessed that for a decade he has been expecting Java’s demise, but that Java is a kind of organism grounded in the community that is well understood and flexible and has strong staying power.
Later, Gosling reminisced about the origins of Java. “Everyone says that Java is approaching its 20th anniversary, but for me it’s the 25th,” he explained. He said that many Sun engineers were troubled in 1990 by the very primitive processors they saw in much consumer electronics—they thought the world was missing out. They took a long trip to Europe and Asia and studied primitive cell phones, elevators, lighting systems, and other gadgetry, and discovered that electrical engineers were needlessly reinventing old computer science problems. At the time, the internet was solid but not popular. Gosling credited Mike Sheridan, who was a business development person on the team, with inventing Java because he invented the reason for Java.

James Weaver: Java Show-and-Tell
Next, Oracle’s genial Java Technology Ambassador James Weaver took the stage, and reminded attendees that all sessions could be viewed on Parleys.com. A parade of talented developers and technologists followed.

Andra Kay, director at Silicon Valley Robotics, said, “By 2020 your household robot will be your house.”

Bruno Maisonnier, CEO at Aldebaran, a world leader in humanoid robots, presented a video showing robots teaching children mathematics in schools, and interacting with customers in stores. Maisonnier said that robots must (1) be cute, so that people enjoy them; (2) interact naturally in their body language and gestures; and (3) be easy to use.

Paul Perrone of Perrone Robotics lamented the 30,000 deaths from auto accidents each year in the United States, and showed a video about his automated vehicle testing system with an advanced braking system that could save lives—a first step toward cars with full autonomy.

Others featured included

  •  Johan Vos of LodgON on JavaFX on the Android
  •  Distinguished Java Champion Adam Bien on Java 8 and Java EE
  •  Jeff Martin of ReportMill Software using Java to teach kids how to program
  •  Alison Derbenwick Miller of Oracle Academy showing a video about how Oracle is spreading programming knowledge around the world
  • Duke’s Choice Award Winners
  • IoT Developer Challenge Winners

The Community keynote was the perfect ending to a great week of information sharing, learning, and community building.

Watch the Community keynote.

Friday Oct 03, 2014

IoT Magic Steals the Show

By Guest Blogger Timothy Beneke

Oracle’s Java Technology Ambassador Stephen Chin presented the “Internet of Things Magic Show” session before a packed crowd on Wednesday morning at JavaOne. The session made it clear—as has much of JavaOne 2014—that with a little ingenuity, persistence, and a Raspberry Pi, Java developers can easily deploy their skills to create IoT magic shows of their own. Chin emphasized the strength of Java for the IoT space, especially now that the divide between Java SE and Java ME has been dramatically narrowed with Java 8. “Java ME as a language is almost the same as Java SE minus lambdas,” observed Chin, “and a prototype of lambdas for Java ME is well on its way. Also, a lot of Java SE APIs are finding their way to Java ME as well.”

Fun with Mr. Grabby
He presented a small smart robot, named Mr. Grabby, that resembles a crab with grippers that can be made to remotely grab and carry a white glowing ball. The robot can then navigate its way around tracks laid down in the form of white tape on the floor.

Mr. Grabby is an autonomous robot using Raspberry Pi and other hardware on top as a controller, plus an Arduino board that uses pin mapping and a motor controller. “Programming the pin assignments right is the biggest issue,” said Chin. “You use software serial on Arduino, where you take any two soft pins and do the serial protocol manually. It uses line follower software, which captures infrared light off the ground through two lights and two sensors; there is an infrared emitting light and another sensor that picks up the infrared. When Mr. Grabby goes off the track, he knows to compensate and follow the lines.”

Chin invited a developer named Mark onstage who successfully took Mr. Grabby around the tracks in a time of 40 seconds. All Mr. Grabby code is available on github.

3-D Printing Magic
Chin then displayed a 3-D printer, which was now busy making a customized bracelet for Mark. The printer has a Raspberry Pi and uses OctoPrint to monitor it remotely. He showed a console that displayed the temperature of the plate and the extruder plus a live video of the bracelet being made.

Software for the printer—known as open constructed geometry software—was designed by Michael Hofer entirely in Java. Hofer leveraged the JavaFX 8 APIs, which now include 3-D support, and built a visual tool for visualizing how 3-D products will look. The code controls space between links, the radius of the sphere, and other pertinent details.

“Printing is done by taking complex shapes and adding and deleting objects from them, so you can delete a bunch of filters from a larger filter to create a space,” explained Chin. Chin illustrated ways that the bracelet could be made bigger and smaller as needed.
He closed by showing a timelapse video of the printer constructing the bracelet.

Wednesday Oct 01, 2014

NAO Robot at JavaOne

What does the NAO robot from Aldebaran Robotics think about JavaOne? Find out!

Technical, Community, and Intel Keynotes on Thursday

Mark Reinhold and Brian Goetz will kick off the Thursday keynotes. The architects of Java 8 will give you their insights into this revolutionary release, and start to  reveal what is coming in Java 9, Java 10, and beyond.

Please note the following important schedule change for Thursday: The morning keynotes now run from 9 a.m. to 11:25 a.m. at the Marriott Marquis, Salon 7/8/9. JavaOne Sessions will now start at 11:45 a.m. and end at 12:45 p.m. at the Hilton and Parc55. The original schedule resumes at 1 p.m. with the next set of sessions.

The JavaOne Community keynote celebrates the thriving global ecosystem of Java developers and enthusiasts, including more than 275 Java user groups. The Java Community keynote will showcase several Java community luminaries and their bodies of work. Their passion is an inspiration to all of us, and is one of the most important elements in creating the future Java.

The Intel Keynote: Michael Greene, Intel Vice President and general manager of system technologies and optimization, Software and Services Group, will discuss Intel's Java optimization efforts to ensure that cloud software will run best on Intel architecture.

Join us and expect a few surprises to help close out the event.




JCP Awards and Celebration

By Guest Blogger Bob Larsen, Java.net Editor

The Java Community Process (JCP) presented the tenth annual JCP Awards and celebrated its fifteenth birthday at a gathering atop the Hilton Hotel on Monday night.  

Heather VanCura (above, left) received the award for JCP Program Member of the Year for her leadership in the Adopt-a-JSR program, which provides a mechanism for Java User Groups and individuals to easily contribute to Java Specification Requests and encourages grassroots participation in crafting the future of Java. VanCura's effort in organizing and facilitating adoption sessions, workshops, and webinars, as well as in recruiting JUGs, has greatly advanced Adopt-a-JSR's progress.

The Most Significant JSR was awarded to JSR 360, Connected Limited Device Configuration (CLDC) 8. CLDC brings language features from Java SE into Java ME. These features, including generics, enumerations, and try-with-resources, dramatically increase the power and flexibility of Java ME. JSR 360 has been the first update applied to Java ME in almost seven years. Michael Lagally (above, right) was recognized as Outstanding Spec Lead for his efforts in spearheading JSR 360. 

Otávio Gonçalves de Santana (right) was awarded Outstanding Adopt-a-JSR Participant for his efforts in supporting JSR 354, Java Money and Concurrency—specifically in migrating the codebase from Java 7 to Java 8.  Gonçalves de Santana is also a strong supporter of OpenJDK and has been assisting in making JSRs more compatible with OpenJDK from the beginning, streamlining their implementation.

Following the award presentations, the festivities continued with musical acts including the debut performance of the NullPointers, a band composed entirely of Java Community members, followed by birthday cake, and the obligatory out-of-key rendition of “Happy Birthday.”

Read about the JCP Award Nominees

Read about the JCP Award Winners


Tuesday Sep 30, 2014

Life around the Java Hub

By Guest Blogger Timothy Beneke

At the Java Hub, Java’s flexibility was illustrated through a number of demos and displays. The message was clear: any Java developer can program in Java Embedded, so get your Raspberry Pi, connect it to your favorite device, and have fun with the Internet of Things (IoT). Aldebaran Robotics presented the friendly, 2-foot-tall, high-tech Nao robot, which can be used to enhance social awareness among autistic children. It danced, gave fist bumps, and seemed to drink in the attention. Across the room, a 3-D printer performed its magic, creating clones of Duke using JavaFX and Oracle Java Embedded.

James Gosling’s Wave Glider
A Liquid Robotics Wave Glider, with software developed by James Gosling, was also on display. Wave Glider, which looks like a souped-up yellow surfboard, is an autonomous water and solar-powered platform that transmits oceanic information such as water temperature and chemistry, wind speed, living organisms, and ocean bottom topography using Java SE Embedded applications for defense, oil and gas, and commercial and science customers.

Wave Glider has two parts, the surfboard-like “float” loaded with solar panels to recharge lithium-ion batteries—which resides at the ocean’s surface—and the sub, equipped with wings and tethered six meters below.  

Java Capabilities for the Green Power Industry

Alexander Belokrylov, product manager for Java ME Embedded, showed off Java ME capabilities for the green power industry, demonstrating how a Java ME Embedded application can control and monitor energy sources on a bicycle-driven electric generator.

“This is just a regular bicycle that illustrates the Raspberry Pi functionality,” explained Belokrylov. “Here it is connected to a bicycle, but it could also function with an irrigation system or many other things. The key point is that with Java ME and no libraries, we can run a fully autonomous system that connects to the cloud and measures energy usage. This is a small footprint and it can do a lot. We want Java developers to take this power and run with it!”



A Car that Knows You
Gary Collins, principal member of technical staff at Oracle, showed off the Telematics Car Demo from Sunday’s Java Strategy keynote, where a simulated electric car used Java ME Embedded data and JavaFX to aggregate and display temperature, speed, light sensor, crash, and other data. “The functionality enables a car to make adjustments for drivers,” explained Collins. “Suppose you drive this car from a rental agency and come back to rent it again. The agency can access data about you and adjust the car for temperature, seating position, preferred radio stations and many other applications. It’s a car that can learn your preferences and patterns.”


Playing with Java SE Embedded

Across from the car simulator, a row of Raspberry Pis interfaced with cubed light bulbs, Sphero Robotic Balls, XY-Plotters for drawing, and more. Attendees were invited to choose an “if statement” and then tweet, send an SMS message using a motion or light sensor, draw their names with a Java or Oracle logo or picture of Duke, and more. Light bulbs could light up in strange ways; a Sphero Ball could act crazy. It was all in the spirit of play to illustrate that Java SE Embedded offers a wide range of possibilities for developers who want to try out the IoT with Java 8.

    Monday Sep 29, 2014

    Save 15% Off Your JavaOne 2015 Pass

    Exciting news for JavaOne attendees! Anyone who attends 15 or more sessions will receive 15% off towards next year’s 2015 JavaOne conference during the whole registration period. This offer cannot be combined with other discounts. See Rules to Qualify!

    Example Promotion:  “Save 15% on next year’s JavaOne registration by attending 15 or more of your favorite sessions from the JavaOne content Catalog!”

    Rules

    • Must attend a minimum of fifteen (15) total JavaOne sessions during JavaOne 2014 and be scanned in by your JavaOne Registration badge.
    • You cannot attend more than one (1) session in any given timeslot; all attended sessions must have unique time/date.
    • If you are scanned into two (2) different sessions simultaneously you will only be counted for one (1) session and not two (2) sessions.
    • Sessions that count towards 15% discount for JavaOne 2015 Include:
      •  Tutorials
      •  Hands on Labs (HOL)
      •  Birds of a  Feather Sessions (BOFs)
      •  Ignite
    • Please note:  from the listed sessions, your badge must be scanned upon entering the session room to count towards the discount. Keynote and User Group forum sessions do not count towards discount.
    • The 15% discount can only be used towards JavaOne 2015 registration
    • This discount cannot be used in addition to other discounts or promotions going on during JavaOne 2015.
    • Attendees who qualify for the discount will be notified via email on Monday, October 20, 2014.
    • Government employees are ineligible for the discount and should defer to the Government discount for pricing.

    Duke High Five

    Watch as Duke delights JavaOne attendees who lined before the JavaOne keynotes on Sunday. 

    Sunday Sep 28, 2014

    User Group Sunday Kicks Things Off

    By Guest Blogger Bob Larsen, Java.net Editor

    JavaOne officially started today with User Group Sunday, and, as usual, gave a strong showing out of the gate with some tremendous sessions.  

    User Group Sunday sessions targeted both current and future Java User Group leaders, including “Starting a JUGgernaut: How to Start and Rapidly Grow Your JUG”  and “Tools for the Day-to-Day of JUG Management.”  

    There was also a wide selection of technical sessions including introductions to new features released in Java 8, demonstrations of exciting ways Java is currently being used, and panel sessions that allowed attendees to have their questions answered by the rock stars of the Java community.

    User Group Sunday took place concurrently with Netbeans Day.  Community members shared the interesting and myriad ways in which they are using both the Netbeans IDE and the Netbeans platform.  They also shared tricks and tools to help make Java developers more productive and even to teach the next generation of Java developers.

    Perhaps the most alarming announcement came when Juggy, the Java Finch, unveiled a prototype RoboJuggy, which is controlled by a Raspberry Pi running Java, of course.  Juggy plans to build an army of RoboJuggies to “spread Java everywhere through world domination.”  Community leaders have opened diplomatic negotiations with Juggy to deescalate the situation.

    About

    javeone logoJavaOne Conference 2014 Content

    San Francisco, USA: Oct 25 - 29, 2015

    São Paulo, Brazil: June 23 - 25, 2015

    Links

    Search

    Archives
    « April 2015
    SunMonTueWedThuFriSat
       
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
      
           
    Today