Home Blog Page 5

Java: Evolving With The Times

Java, the general-purpose, open-source programming language that was developed in 1995 is still going strong. Even though the business-technology landscape has undergone a massive transformation in the last 25 years, it has managed to thrive and remain at the heart of modern IT operations and application development.

“We’re trying to provide developers with the tools to address the workloads that exist today and that will exist in the future. We’re working on making  Java friendlier to containers,” says Aurelio Garcia-Ribeyro, Senior Director of Product Management at Oracle. He is also the Principal Product Manager in charge of Java SE since 2010.

Staying relevant

Java had to change a few things to keep up with modern workloads.

“There was this monolithic Java Runtime. We had many applications using and sharing that same runtime, which was why it always had to be complete. Modern applications, on the other hand, are usually not deployed that way. They don’t share a runtime, so why do we need a massive Java Runtime that provides capabilities that your applications don’t need?” argues Garcia-Ribeyro.

With the jlink tool, developers can now carve out the pieces of Runtime that their application doesn’t require. The tool provides a custom Java Runtime image that carries only the platform modules needed for a given application.

“It’s Java as usual, but the Runtime is smaller because it’s not shipping along or loading all of the pieces that you are not going to use anyway.”

When developers give Java bytecode to a Java virtual machine, it converts it to machine instructions based on the architecture and the characteristics of the machine on which it’s running. The same bytecode, therefore, produces very different machine instructions depending on the machine’s memory and cores.

“We’ve worked to make sure that maybe the hardware has all of that but the container is constrained. So, even though the hardware has a bunch of cores, you only get to play with this piece of the set. You can only use this much memory. We’re only always working to improve things like that,” he explains.

According to Garcia-Ribeyro, “Java is the number one development language for the cloud as well.”

“The characteristics that make Java a very robust and good language for enterprises also allow us to produce something that’s really good for the cloud. Java has been multithreaded from the beginning. It runs in many different environments and isolates you from the hardware,” he says.

Latest release highlights

The Java Development Kit 14 (JDK 14) was released recently with several Java enhancement proposals (JEPs) to help developers.

“JDK 14 is another one of those six-month releases that we’ve been producing since JDK 9. It no longer has a huge list of 100+ major enhancements with three or four high-level massive changes that are going to rock everybody’s development world. What we have instead is continuing the pace of innovation,” says Garcia-Ribeyro.

Some of the features, such as switch expressions, actually came out of Project Amber. It was included as a preview feature in a prior release, but it’s now part of the standard.

There are two preview features: records, which enhance the language’s ability to model “plain data” aggregates with less ceremony, and text blocks, which is the ability to write multi-line string literals without the need for most escape sequences.

There is also a new packaging tool that “will allow you to package your Java application so that it looks like a native application. With this tool, you can grab your job application and wrap the pieces of the Java Runtime that you need plus your application, put all of these in a nice package that looks like a native application for each platform and distribute that,” Garcia-Ribeyro explains.

“We have a new foreign memory access API, which will be the first feature that comes out of Project Panama. It gives a standard API for doing things that previously people used sun.misc.Unsafe for,” he reveals.

The JFR event streaming enables developers to analyze and monitor Java virtual machines running in real time.

Continuous innovation

To keep the momentum of innovation unabated, Java has several projects underway: Project Panama aims to make interactions between native libraries or libraries written in any other language and Java programs easier; Project Amber finds ways to simplify the language without compromising readability; while Project Valhalla finds new ways of handling memory.

“It’s always a dangerous proposition for us to try to predict what new things are coming out. The only thing that’s pretty safe is the things that are now in preview mode. We still continue to work to tighten them up and make sure that they’re ready for the next feature release. We want to deliver these incremental improvements. Every now and then, we will deliver something more massive, but the total addition of all of these will have a substantial impact,” Garcia-Ribeyro adds.

Google Open-Sources AI for Using Tabular Data to Answer Natural Language Questions

Google open-sourced Table Parser (TAPAS), a deep-learning system that can answer natural-language questions from tabular data. TAPAS was trained on 6.2 million tables extracted from Wikipedia and matches or exceeds state-of-the-art performance on several benchmarks. Co-creator Thomas Müller gave an overview of the work in a recent blog post.

Read More at InfoQ.com

India’s contact tracing app is going open source

India said it will publicly release the source code of its contact tracing app, Aarogya Setu, in a relief to privacy and security experts who have been advocating for this ever since the app launched in early April. The source code will be published on GitHub at midnight Tuesday.

Read More at TechCrunch

Ex-Windows chief: Here’s why Microsoft waged war on open source

Former Windows Division chief Steven Sinofsky has offered some context and a defense for Microsoft’s war on open source in the 1990s and early 2000s. The most famous quote capturing Microsoft’s previous approach to open source was from former Microsoft CEO Steve Ballmer.

Read More at ZDNet

Systemd Will Change How Your Linux Home Directory Works

The team behind systemd want you to adopt a new way of managing home directories. Calling it a “new way” is putting it lightly—this is a real paradigm shift for Linux. Here’s everything you need to know about systemd-homed, which is likely coming to a Linux distro near you.

Read More at How-To Geek

World’s First AMD-Only Linux Laptop Officially Announced

TUXEDO Computers has announced the TUXEDO Book BA15, powered by an AMD Ryzen 5 3500U chip for the creation of what the company calls “the world’s first AMD-only and Linux-preinstalled laptop.” The laptop comes with integrated Radeon Vega 8 graphics and features three different memory options, all of them powered by Samsung.

Read More at Softpedia News

YouTube for Android tests showing a recommended Google Search result when searching in YouTube

Following the recent rollout of the new Bedtime Reminders feature in YouTube for Android, Google has now started testing a new feature that will show search results from the web within the app. Google appears to be rolling out this new feature for some users via a server-side update.

Read More at XDA Developershe feature was recently spotted by Reddit user u/TheMrIggs when he searched “open beer with knife” in the YouTube app.

Linux-creator Linus Torvalds joins Linus Sebastian of Linus Tech Tips in embracing AMD over Intel

Believe it or not, yet another Linus (no, not Linus van Pelt from Peanuts) is jumping to AMD, and this time it is probably a bigger deal than Sebastian’s current change of allegiance. Linus Torvalds, the father of Linux, is no longer using an Intel CPU on his main computer.

Read More at BetaNews

GNOME gets big open-source patent win

In a surprise move, GNOME, makers of the popular Linux desktop of the same name, won not only a release and covenant not to be sued for any Rothschild patent but a release and covenant to any software that is released under an existing Open Source Initiative approved license.

Read More at ZDNet

Raising the ground

Want to create a program that displays an isometric grid receiving a file with coordinates in it? Well, Fredy Acuña from the Holberton School, a college alternative for training software engineers, is here to help you out. It is recommended to be familiar with C programming language and basics about SDL2.

Read More at Medium