Project site: http://guava-libraries.googlecode.com
This group: http://groups.google.com/group/guava-discuss
This list is for general discussion.
To report an issue: http://code.google.com/p/guava-libraries/issues/entry
To get help: http://stackoverflow.com/questions/ask (use the tag "guava")
You might change some of the text on the google collections website
(http://code.google.com/p/google-collections/). My suggestions:
This project has evolved into Guava!
Replace with: Google collections has been replaced by Guava, a new
project from Google.
Why: 1. "evolved into" isn't strong enough. 2. Make it clear that
it's still a Google project. This is a big deal; I suspect a lot of
people think they'd rather stick with "Google Collections" since it
clearly comes from Google. Given a choice between the thing from
Google, and the thing with a funny name from somewhere else, why would
I even look at the fruit-like project?
"We have created a project called Guava to house the Google Collections"
This tells me Google Collections still lives! Yes! I'll just use it
instead of guava, since I don't really care about the other guava
stuff. And I'll stop reading now, since I'm lazy.
I'd say something like:
Google collections has been replaced by Guava, a new project from Google.
Guava is a fully compatible, proper superset of the old, deprecated,
Google Collections Library. Guava includes six months worth of bug
fixes, doc fixes, and performance fixes. [Say something here about
how the core contributors come from Google; you probably have a
standard way you're supposed to say that. "The core Guava team is
composed of engineers from Google, with contributions from blah blah
Google Collections is no longer maintained and has been completely
replaced by Guava. We apologize for any confusion this causes.
> Thanks for the suggestions, and I'll use them if I find time to make edits, but I can't help thinking that even the perfect wording of this page would have only stopped a few percent of new users anyway. That is I expect that most of them aren't really seeing this page anyway, somehow.
Cut a new jar that only throws UnsupportedOperationException("Use Guava instead.") :)
It seems to have already been aliased - at least I can find no place to upvote it (I'm allowed to do it -- since yesterday :D). I'm not sure, how aliasing exactly works, but I think it doesn't do the right think. For example, [javase] and [java-api] are aliased to [java], but there are some fairly old questions still tagged with them. No renaming for [google-collections] have happened yet, but it may take some time as it's probably done in a batch job. Let's see tomorrow.
Yeah, I think someone put in the last vote pretty quickly after I said that. I don't think it'll go back through and replace all google-collections tags with guava, but future questions tagged google-collections should be automatically retagged as guava. I think most questions tagged google-collections already have the guava tag currently... I could perhaps go through and add it to any that don't.
In our development team, we've always had the habit to use 'find' prefixes for action methods that can yield null and 'get' prefixes for action methods that are guaranteed to throw an exception rather than allow a null return value.
handler = findProtocolHandler( httpRequest );
if (handler == null)
redirectToMainPage( httpResponse );
handler.handle( httpRequest, ... );
getProtocolHandler( httpRequest ).handle( httpRequest, ... );
I just invented this code on the spot so it may not be the best example, but it illustrates how 'find' indicates that a null check needs to be done while 'get' would indicate that such a check is not required. Obviously, this only works for action methods ("do something with this object and your state to calculate the result value") and not type accessors ("user.getAddress()").
I was just wondering whether this is a common habit, and if so, whether in that light this method might benefit from a rename.