"Many large corporations are famous for keeping this type of tool under lock and key, but we think we stand to gain much more by collaborating with other smart companies and developers."
Is Facebook in some unique position to be releasing big parts of their infrastructure like that? Why don't companies do it more often?
Although this isn't the same thing as Ruby on Rails, and not to be overly cynical, but could this be a new form of community-building-based PR... in the sense that the goodwill/PR value of the FOSS community is worth more to Facebook than the value of keeping Thrift proprietary?
I'm disinclined to think that this is PR motivated. The tool is pretty general, and FB has a history of open source involvement (notably, memcached, to which they contribute heavily).
Open source involvement is definitely a PR move. When was the last time the open source community took something Google open-sourced, improved upon it, and then Google used those improvements? For the most part, these open-sourcing arrangements from big companies turn out to be one-sided, and so they're essentially buying good will in the hacker community. In Facebook's case, it also suggests that smart people get to work on cool stuff, so it helps for recruitment, too.
Their implementation doesn't look all that bad - it's at least reasonably simple, unlike CORBA. But I think I'll stick with JSON-RPC, because it's transparent, open, simple, and available for just about every language imaginable.
In languages which have decent ones, certainly. Of the five languages this library seems to work for, only C++ has any sort of macros at all, as far as I know...
Is Facebook in some unique position to be releasing big parts of their infrastructure like that? Why don't companies do it more often?
Although this isn't the same thing as Ruby on Rails, and not to be overly cynical, but could this be a new form of community-building-based PR... in the sense that the goodwill/PR value of the FOSS community is worth more to Facebook than the value of keeping Thrift proprietary?