Java Magazine Editor in Chief Andrew Binstock
Few things are as exciting to us developers as tools. Nearly everything we do, we do indirectly through the use of tools, on which we depend. And in fact, good developers are always characterized by deep knowledge of the tools they use and how best to apply them. With this in mind, in our first article (page 17) we examine the latest evolution of Maven, called Polyglot Maven, which frees us from creating build files in XML. Polyglot opens the door to using real scripting languages for writing build files. This idea is taken one step further in our article (page 22) on a new build tool, Kobalt, being written in the JVM language Kotlin, a Java-like JVM language. This article is actually more about the architecture of build tools-what goes on underneath the covers. However, the author's design uses Kotlin as the language for defining the build. In this way, as he points out, not only do you gain true expressivity in the build file, but your IDE can now catch errors as you describe your build. (The increasingly popular build tool Gradle is moving in the same direction: migrating its build files from Groovy syntax to Kotlin.)
We also cover (page 29) the uncommon, but not rare, a situation in which your debugger does not give you all the information you need to fix your code. We examine a debugging API for the JVM that enables you to extract information about running processes, view variables and classes, query counters, and get at details you might need. This information is surprisingly easy to access and enables you to write one-off debugging scripts to solve unusual or complex problems.
To complement this information, Oracle's architect for the Java language, Brian Goetz, discusses lexical language changes supporting local variable type inference (page 60).
We follow that discussion with a deep dive into Scala, which is consistently ranked among the most popular JVM languages. (page 47).
Finally, one of the coolest articles (page 36) we've run in a long time: how to get started programming Blockchain, the technology behind cryptocurrencies.
Remember that you can read the issue online. Or, if you prefer, you can download it in PDF format. For the download option, access the magazine from a laptop or desktop and you'll see the download icon on the right.