There's just no real alternative to generics in Java. It's either that, casting (terminally insecure) or a more modern type system, which would be a huuuge change for the language (and in which case, you might as well use Scala).<p>If you want to complain about things that make code harder to understand, I wonder why the author doesn't rant about annotations.