|< Day Day Up >|
7.1 The Lie
As a kid, you probably heard the story of the three little pigs. In this story, there's a pig that "did it right the first time" by building a house out of brick. I'd like to suggest a more likely alternative. Once upon a time, there were three pigs that wanted to build houses. Two were reasonable and pragmatic. The third was an anal-retentive jerk. The first two pigs checked out the lay of the land and available resources. They built simple but functional houses with readily available, simple building materials. At the same time, the third pig decided to build a hardened mansion out of the world's hardest brick. He began to plan. The first two pigs completed their houses and happily moved in before their brother was half done with his new place.
The third pig was in over his head. He eventually ran out of money before he could finish and abandoned the project, leaving town in disgrace. When a wolf threatened, the two pragmatic pigs simply hardened their houses with adobe. The wolf left in frustration and eventually ate the third pig, putting him out of his misery. Of course, that's not what the full-color glossy brochures say.
Customer reference stories about overbuilt commercial technologies abound. Good companies meticulously plan those early successes. Be careful, though. If you're not one of the lucky few first customers, you'll likely do your homework and ask for references. It's hard to get the truth, especially in the earliest stages. Though the successes may be real, you will likely not have the massive support structures that the vendors put into such engagements to ensure successful reference stories. That's how we as an industry adopted EJB far before it was ready. In fact, EJB is only the latest in a line of a massive technologies that were adopted and lauded far before they provided mainstream value. At IBM, I lived through three in rapid succession in Open Doc, SOM, and CORBA. Big, reputable customers bought those solutions, and not because they were dumb. It's just harder to discern the truth when there's so much noise out there.
In this chapter, I'll show you an alternative to the mega-framework. First, you'll see a smaller, lighter persistence framework called Hibernate. It's a transparent persistence framework that you can use to keep to many of the principles in this book. Later, I'll go a step further and grade the Hibernate team on their observance of our five basic principles.
I'm going to assume that as a Java programmer, you've run across database problems often enough to know a little about relational databases such as the SQL query language. I don't assume that you know much more about persistence frameworks.
|< Day Day Up >|