Resources for writing modern Java