December 23rd, 2007 § 1 comment § permalink

I’m probably the last person on Earth to read Freakonomics, given the almost cult-like status it has enjoyed since it was published in early 2005. Even though it’s a quick reading, I decided to wait for a time when I would be able to dedicated more thought to it than just breezing through its pages.

The book, written in a partnership between Steven D. Levitt, an economist, and Stephen J. Dubner, a journalist, reflects, almost in its entirety, the theories created by Levitt, which are then described in a more simple way by Dubner. Much like The Tipping Point, Malcolm Gladwell similarly themed book, Freakonomics quickly grew in notoriety among the intelligentsia because of its allegedly non-conventional explanations for phenomena that had long intrigued and defined the scientific community’s abilities to explain them. Examples of those phenomena include the reasons for corruption among white-collar workers and why crime declined in the US beginning in the 90s.

Particularly, although I enjoyed the book, Levitt and Dubner’s treatment of the themes presented in the book was too superficial and lacking in the more intriguing analysis provided, for example, by Gladwell in his two more famous books.

At the core of Freakonomics are those four ideas:

  • Experts will use their knowledge for their own benefit
  • Incentives are the bases of the modern economy;
  • Conventional wisdom is often wrong; and
  • Small events can have profound consequences

Of the four ideas expressed above, none is particularly revealing or new. In fact, if one has spent more than a couple minutes reflecting on how the world really works, those four ideas are self-evident. Spending an entire book trying to demonstrate them is a pointless exercise.

The only winning point for the book are the cases used by the authors to demonstrate the aforementioned ideas. Using curious comparisons–for example, what do school-teachers and sumo wrestlers have in common–one or more specific real-world example are present for each of the points above showing how, in many cases, conventional wisdom is wrong.

Granted, we, as a species, tend to cling to those explanations we hear the most. But whenever subjects like those presented by Levitt and Dubner are involved, we rarely do that. Weaving both kinds of examples is just a way to make those less interesting cases to seem more than what they really are: myth.

Freakonomics lends itself very well to controversies, as the authors are quick to point. Not without a certain amount of irony, Malcolm Gladwell wrote a glowing blurb for Freakonomics even though the reasons he presents in The Tipping Point for the decline of organized crime in America are directly at odds–and are even ridiculed–by Freakonomics. A lot of discussions has ensued about this particular point on the Web including a quick exchange between the authors involved (1, 2, 3), which, unsurprisingly, ended with both parties agreeing to disagree.

Although I’m still able to recommend Freakonomics as an interesting reading, based on the intellectual estimulation one can derived from analyzing what Levitt and Dubner are saying, I must confess myself disappointed by the book, especially after the glowing reviews the book earned. The Tipping Point, at least the way I see, provides a much more interesting reading since it attempts to create a framework to explain the changes. Freakomonics could certainly have used a lot more content and analysis. At the moment, however, I can’t say I find what Levitt and Dubner wrote so surprising.

Castle: MonoRail + ActiveRecord

December 23rd, 2007 § 0 comments § permalink

In the past couple of .NET projects my company developed, since we met with no objections from our clients, we decided to use Castle (by way of its two sub-projects MonoRail and ActiveRecord) to see how well it would perform. Unsurprisingly, considering the care that went into the Castle code, they made .NET development altogether more bearable.

Castle is a collection of projects that includes database access layers (using NHibernate to power a ActiveRecord implementation), templating engines (of which NVelocity and Brail are but two examples), and a series of other services geared to rapid application development.

Although my experience with Castle is still small, I’m liking it. I always considered C# a good programming languages and many of its characteristics fit very nicely with the way I like to develop when using a ORM implementation. For example, the way Castle implements ActiveRecord is, at least in my opinion, a much better way to see what’s going one–a nice blend, indeed, of the Rails and Django approaches.

Obviously, since C# is not a dynamic languages, some things are much hard–or at least, much less flexible–than their Rails or Django counterparts. Castle is also lacking some accessories we’ve grown to love in Rails; to wit, the console and the database shell. Nonetheless, it also shines when debugging is necessary since Rails lacks a decent debugger (although Netbeans, if you are incline to use it, solves the problem nicely) and Django is also missing debugging tools.

Looking at the changes already present in C# 3.0, I can see Castle becoming even more pleasant. At the moment, it is already saving us a lot of work and I’m sure it will be a lot better in the near future.


December 6th, 2007 § 0 comments § permalink

The first programming tool I ever used was Turbo Pascal 5.0, in 1994. A 5 1/4 disk, passed around by a professor, was the gate to a world that had interested me since my first readings about computers and their capacity to be told what to do. From release 5.0, I quickly jumped to 5.5, which offered rudimentar OOP support, and soon was using 6.0, which allowed programmers to use much more interesting OOP features and had excellent graphic support. I started programming my own graphical window manager until I realized it would be too hard to compete with Windows.

My interest in Borland products didn’t dwindle soon. After a brief fling with Turbo C++ 3.0, I went on to program in Delphi from 1997 to 2003, with sporadic uses until 2006. When the company I worked for changed its entire product platform to .NET, I had no choice but to follow. Borland’s frequent strategic mistakes didn’t help as well. Soon, one of my favorite tools was just a memory. I still have a copy of Borland Delphi 6, which I purchased with my own money, but the CD has probably stopped working by now.

After so much time away from the community–I used to be very active in the Borland newsgroups, specially those related to Web programming–I was surprised to hear that Borland restored and modernized their Turbo line of tools. There is now both Turbo Delphi and Turbo C++, new versions of Turbo Pascal and Turbo C++. For those into Microsoft tools, there is also a Turbo Delphi for .NET and Turbo C#.

Obviously, those are basic versions, stripped from any professional or enterprise features. Nonetheless, it’s nice to see Borland returning to its roots, even though those tools won’t sell enought to justify their existence. Then again, who knows, names can be powerful. Since there a free version of Turbo Delphi, I guess I’ll be programming in Delphi soon again.

Better than Turbo Delphi would be a new version of Turbo Pascal. I still have a disk around with lots of interesting programs to run.

Where am I?

You are currently viewing the archives for December, 2007 at Reflective Surface.