Additionally, I'd be amazed at any non-trivial Java program which couldn't benefit from Guava in multiple places.
It's a great library, and I wouldn't be without it.
Programmers usually exacerbate the complexity problem, because unfortunately we often like to sound like we are smarter than we actually are.
We often like to use big words and lots of acronyms to scare away the neophytes. Anyways, one of these topics that is blindingly simple is closures. A first class function simply means that it is a function which your language treats as a first class data type.
Would you like to answer one of these unanswered questions instead?