Java SE 11: The Great Removal

Java SE 11 has been released, with fairly few minor new features. That’s not surprising as Java 11 receives long-term support in Oracle’s new release cadence, so its main purpose is to stabilize the major changes from the previous short-term versions. The bigger issue with Java 11 is what it removes, as well as an … Continue reading “Java SE 11: The Great Removal”

Java SE 10: C# Porting Release

Oracle has recently released Java SE 10, and as usual you can find all the requisite information and links on their overview page. This is the first version that follows last year’s accelerated release scheme, with a new major version dropping every six months. Looking at the final specifications you might well wonder what’s so … Continue reading “Java SE 10: C# Porting Release”

Tektosyne 6.2.0 Released

Tektosyne 6.2.0 is now available for download. This is another bugfix release, again mostly based on feedback from Github user Mushrooms (sf17k) (thanks!). You can find a summary in the What’s New file. As before, the library itself requires Java 8 while the IntelliJ project and demo application are based on Java 9.0.4. Voronoi Diagrams … Continue reading “Tektosyne 6.2.0 Released”

Tektosyne 6.1.0 Released

Tektosyne 6.1.0 is now available for download. This is a fairly substantial bugfix release, with a number of specific changes beyond those described in my overview post, Moving Projects to Java 9. You can find a summary in the What’s New file. First, a clarification. While the JavaFX demo application and IntelliJ IDEA project files … Continue reading “Tektosyne 6.1.0 Released”

Beware of Java’s inconsistent MIN_VALUE

An astute user of my Tektosyne library noticed that I had made a simple but disastrous copy-paste mistake regarding the floating-point versions of some basic algorithms, such as finding the maximum of an array of numbers. The integral versions initialize the return value to e.g. Integer.MIN_VALUE and then check for any greater values. I copied … Continue reading “Beware of Java’s inconsistent MIN_VALUE”

Class Diagrammer 2.2.0 Released

I intended to summarize the ongoing Java SE 9 updates of my open-source projects in Moving Projects to Java 9. However, Class Diagrammer 2.2.0 accumulated enough changes to merit a dedicated release post. You can find a summary in the What’s New file. New Leading Option First off, a couple of days ago I discovered … Continue reading “Class Diagrammer 2.2.0 Released”

Moving Projects to Java 9

Today I’m starting to move my open-source projects to Java SE 9. I’ve covered the various significant changes in that release in four previous posts: Java SE 9 First Look Java 9 Incompatibilities JavaFX DPI Scaling in Java 9 JavaFX Spinner for Numbers (updated) As described there, some unexpected factors came up that turned the … Continue reading “Moving Projects to Java 9”

Java 9 Incompatibilities

Last year I took a quick look at the newly released Java SE 9 but wanted to delay updating until the corresponding NetBeans version was out. Nothing happened, so that’s the first incompatibility to discuss, followed by JavaMail and JavaFX issues. NetBeans MIA(pache) After four months NetBeans is still in Apache incubator limbo with no … Continue reading “Java 9 Incompatibilities”

Effective Java (3rd ed.)

Effective Java — Joshua Bloch, Pearson Addison-Wesley 2018 (3rd ed.), ISBN 978-0-13-468599-1 This is not just the best book on Java, but one of the best I’ve read on any programming subject. Every Java developer will benefit from Bloch’s solid advice and thorough exploration of language and library quirks, on a par with classic namesake … Continue reading “Effective Java (3rd ed.)”

Core Java 9 for the Impatient

Core Java SE 9 for the Impatient — Cay S. Horstmann, Pearson Addison-Wesley 2017 (2nd ed.), ISBN 978-0-13-469472-6 The Impatient series condenses the traditional monumental Core Java tomes (2,072 pages for Java SE 8) into a single book a quarter the size – 538 pages for Java SE 9, 480 pages for the first edition … Continue reading “Core Java 9 for the Impatient”