Yesterday I went to a meet-up organized by Silicon Valley Java User Group, the subject was An Overview of Guava: Google Core Libraries for Java. Naturally, it was hosted at Google. Since I was already late, Murphy decided it would be a good idea to f*ck with me: traffic on 101 was crawling at ~20mph (I’m sure that those of you from the valley will totally understand…).
Anyways, I was only 20 minutes late, when I found out there was still plenty of pizza and drinks, apparently I wasn’t the only one who was late. I still had bout half an hour for mingling, but developers are not great at socializing, so I found myself cursing for not bringing with me my Nexus 7″.
Finally the place filled up, it looked like this:
Picture credit: Lawrence
A few words about Guava:
Guava is a collection of Google Java-based libraries which includes: caching, hashing, concurrency, collections, I/O and more. The main reason I wanted to attend this event was hearing about their caching solution, unfortunately, right at the beginning of the lectureKurt Alfred Kluever said that caching deserves a separate talk. The good news are that the organizer of the meet-up sent a link to this video right after the talk (the first twenty seconds are in French so don’t get stressed
I asked a couple of questions, one about their caching-library – if it was properly benchmarked and compared to other alternatives (memcache for instance) and the answer I got was that many people decide to implement their own benchmarking and do it poorly, so Guava team assigned one of their team-members to work on a micro-benchmarking library!
A couple of other cool stuff they implemented are the MultiMap (a Map which can hold multiple values for one key) and the BiMap (Map which supports mapping the values back to keys). You can download the slides from the talk here. Also, you can find here some code-examples.
To sum up:
- Guava looks like something I will definitely check
- Google looks like amusement-park for developers!