Even setting aside my love for the ?: operator, I never understood that attitude. One of the major selling points of Java in the early days was that it was simple enough for everyone to understand pretty completely. It was supposed to be impossible for a guru to write code that a junior programmer couldn't understand at the small scale with some effort, line-by-line, if not at the large scale. Training programmers to be competent at only a subset of the language undermined the purpose of having such a simple language.