Tuesday, March 27, 2007

Are younger people smarter?

Mark Zuckerberg, the 22-year-old founder of FaceBook, seems to think so:
I want to stress the importance of being young and technical. Young people are just smarter. Why are most chess masters under 30? I don't know.

Nothing against 22-year-olds, but here's a more likely explanation: if you have both the virtues of being smart and having lived past your early twenties, you probably have better things to do than go to work for a 22-year-old at a startup. Then again, you can't fault Mark for fluffing his employees.

Sunday, March 11, 2007


Saturday, March 10, 2007

The First Guice Review

Eric Burke, an O'Reilly author and pricipal software engineer at OCI, has already ported a client from Spring to Guice. That was fast!

Eric discovered that Guice really does result in less code:

At the end of the day, I compared my [Guice] modules — written in Java — to my Spring XML files. The modules are significantly smaller and easier to read. Then I realized about 3/4 of the code in my modules was unnecessary, so I stripped it out. They were reduced to just a few lines of code each.

Eric noticed another feature which you can't really appreciate until you actually use Guice:

The error messages are exceptionally good when things go wrong. You can tell they put a lot of effort into this, and this is HUGE. Every single framework should learn this lesson: cryptic error messages are a major drain on developer productivity, and we really appreciate tools like Guice.

We invested countless hours into making Guice's error messages as helpful as possible. We use plain English. We print line numbers (in such a way that IDEs automatically link to source code). We suggest likely causes and even fixes.

In the end, it sounds like Eric is sold:

I successfully converted the client, but ran out of time for the server piece. Based on what I did accomplish, however, I definitely plan to finish the job as soon as possible.

We'll look forward to the rest.

Disclosure: I used to consult for OCI, too, but didn't work with Eric. Many consulting firms abuse their brand to trick clients into paying top dollar for off-the-street programmers with no real qualifications. If you're looking for a consulting/training firm with real top talent, I highly recommend OCI. I'm not just saying that because Eric wrote a favorable review either. :)

Thursday, March 08, 2007

Guice 1.0

We're pleased to announce the open source release of Google's internal Java dependency injection framework Guice. Guice wholly embraces annotations and generics, thereby enabling you to wire together and test objects with less effort than ever before. Annotations finally free you from error-prone, refactoring-adverse string identifiers.

Guice injects constructors, fields and methods (any methods with any number of arguments, not just setters). Guice includes advanced features such as custom scopes, circular dependencies, static member injection, Spring integration, and AOP Alliance method interception, most of which you can ignore until you need it.

An earlier version of Guice already powers Struts 2's plugin architecture. Google has been running Guice in mission critical applications for months, and now you can, too. We hope you enjoy Guice as much as we do.

Guice lives at Google Code. From there, you'll find the user's guide, Javadocs, and download. Please direct any questions to the mailing list.