Blog Posts Blog

JAXB on Java 9, 10, 11 and beyond

If you have programs that use JAXB (Java Architecture for XML Binding) and you’ve tried to compile and run them on Java versions newer than Java 8, you’ll have noticed that you get errors. There are changes in Java SE 9, 10 and 11 that you need to know about...

My first Pluralsight course is live

It’s been a while I’ve written a blog post. One major reason for this is that I’ve been very busy in my free time in the last four months of 2016. I was working on my first course for Pluralsight: Java EE: Getting Started with JavaServer Faces. Pluralsight is a...

Don’t use the double-brace initialization trick

Introduction Java unfortunately does not have a convenient syntax for initializing collections. There’s a trick that developers sometimes use, the double-brace initialization trick, to make initializing for example a Map more convenient. This trick has obvious and less obvious disadvantages and you should not use it. In this post I...

Scala access modifiers and qualifiers in detail

Just like Java and other object-oriented programming languages, Scala has access modifiers to restrict access to members of classes, traits, objects and packages. Scala’s access modifiers are slightly different than Java’s; in this post I explain the difference. Besides modifiers, Scala also has qualifiers which allow more fine-grained access control....

The magic of for-yield with Scala collections

Scala has a rich and well-designed collections library. You can find a good overview of the collections library on the Scala documentation website. In this post I’ll show how using for with yield on collections works and how the collections library is designed and implemented so that it does exactly...

7 Scala features that surprise Java developers

When you know Java, it isn’t that hard to start programming in Scala. Everything you know about object-oriented programming in Java also applies to Scala. Ofcourse Scala is not just Java with a less verbose syntax; it also has a number of features that Java lacks, such as functional programming...

Scala as a better Java

This one is for the Java developers who are curious about Scala. Maybe you have briefly looked at Scala and you were deterred by what at first sight looked like ugly syntax with strange, incomprehensible operators, or you think you have to become a functional programming wizard to understand it....

Effective Debugging

There are different kinds of bugs. There are bugs for which the cause is hard to find, but once you find it, the problem is easy to solve. The cause of this kind of bug is most often a simple mistake in the code. The fix often consists of just...