Thinking in Java/others