Matt Greencroft has his say

Matt's Blog

Errata for Android course Module 2 Chapter 4

06-Sep-2018 in Errata

In Chapter 4 of the Android course (module 2) the fragment manager is able to "look through" fragments to find nested fragments. Unfortunately this behaviour no longer works in the current version of Android, so a slightly different approach is needed...


Java Advanced Tools - Errata for Thread Safety

04-Jul-2017 in Errata Core Java Threading

In Chapter 20 of the Java Advanced Topics course (the video on Synchronization and Thread Safety), at about 20 mins 15 seconds, I explain that you tend to use the synchronized keyword with the smallest possible code block. I demonstrate this with the following code:


Java 9 – custom Runtimes… would you actually use them?

21-Jun-2017 in Core Java

Last month I posted about the issues affecting the Jigsaw (modular Java) features within Java 9. As we approach the release of Java 9 (which we currently expect to be at the end of July, but who knows if it will be delayed again?), this time I thought I should talk about one of the other features of Java 9, creating your own custom Java Runtime Environments.

The idea is that the Java Runtime Environment (JRE) has been split into a number of modules in Java 9 (see the last blog post for details about what we mean by modules). So when you build your own applications, the users who will run them don’t necessarily need the entire JRE, but could use a cut-down version. I’ll talk in a paragraph or so about why you might want to do this.


The latest on Java 9... will it be delayed, features removed, or released with problems?

11-May-2017 in Core Java

In case you’ve not been following the progress of the next release of Java SE,  Java 9, we thought we should let you know what the current status is (or at least our current understanding of it!).

As you might expect, the next version of Java will have some changes in it from the earlier versions. By far the biggest, is the introduction of Jigsaw, an API for building modular applications. Some have described this as a bigger change for Java than when generics were introduced back in Java 5.

If you’re not familiar with modular applications, then in simple terms the idea is that you can split larger applications into smaller parts (modules). Each module can depend on / use other modules, but they’re built as separate projects, and compiled into separate Jar files. There are quite a few potential benefits to this approach, but perhaps the most useful is that if you need to change a single module, you can do that without needing to amend or recompile any of the other modules. There's more to it than this, but that's a very simple high level overview.


Installing Groovy - which version to go for?

08-May-2017 in Errata Groovy

Since we released the Groovy course, there have been some changes to the hosting of the Groovy distribution files. The newer versions of Groovy are completely compatible with the course, so you're fine to use any, but you'll need to download them from:

Please note that for Windows users, the latest version may not have a windows installer available. To get started quickly you may wish to check a prior version with a Windows installer. At the time of creating this blog post, 2.4.11 is the latest stable version of Groovy, but if you want the Windows installer you'll need to get 2.4.10.


Listen via:

About Matt

I'm a Java developer and trainer for Virtual Pair Programmers, where I present video based training courses on Java, Spring and associated frameworks. I'm currently working on a few different web projects.

Be notified of new posts