ON “JAVA MAFIA” AND DBMS-AGNOSTICISM
with Fabian Pascal

 

 

 

From: B

To: Editor

Date: 24 Oct 2004

 

Lately, I have been assaulted on a project by proponents of the OO crowd; I am referring to Java developers specifically. Honestly, Fabian, I sometimes wonder how you keep going.  I can be a somewhat formidable force, but when the entire organization has embraced the thinking of a few short-sighted mental midgets, even I take pause.

 

Although we have spent millions of dollars on DBMS software, the Java Mafia has successfully convinced the leadership that all applications must be "DBMS agnostic" (their choice of wording -- which ironically reveals their zealous fervor).  The Java folks have their hammer, and to them, the world is a nail. They see the world as screens to be created.  They have no idea that something exists below the covers; they just want to get the data to populate their screens as easily as possible -- for them. Everything that we paid for in the DBMS (security, transaction control, concurrency, session management, data access, to name a few) seems to be unworthy if it were not invented by them.  They even created their own portal product. They cannot see that a few developers are no match for a company that has hundreds of developers dedicated to each area.  And when it comes time to fix a bug, or upgrade the system, we (as taxpayers and the folks that need the data) are left holding the bag.

 

I am sure that with this lack of broad thinking, you can imagine the battles I get in over database design. Just this week I had a team furious with me.  I created relations for "pictures", "maps", "audio", videos", etc.  I related them to locations, people, etc. They had wanted me to create a single "multimedia" table for all "non-character-based" "files."  They do not understand the concept of "meaning."  To them they are just "files"; they told me to separate jpeg, mpeg, etc.  I tried to explain that bit stream encoding has nothing to do with what the bits mean, what they represent. There is no question that they just want a file system with lookup tables to populate their screens; they seem to only accept a DBMS for data access.  No concept of guaranteeing the accuracy of a query.

 

I once tried to justify my design decisions by showing the table predicate, and explaining the meaning of the data; I will never do that again.

 

 

Fabian Pascal Responds: It is, indeed, extremely tough, for those with the proper knowledge and mental capacity (who are the raison d’etre of this web site). Knowledge and reason have been going out of style fast. I reiterate, however, that it is the logical conclusion for a society and industry that do not properly educate their members and teaches them how to think independently and critically, but rather socializes them into conformity, and trains them for mechanical jobs. It would be a miracle, under these circumstances, to expect anything else than what you are experiencing. It's not the "Java Mafia"'s fault, but that of the system that creates and supports such Mafias.

 

It is, indeed, a lost cause to use formal terms such as predicates. You may want to use the informal terms business rules and integrity constraints, but I very much doubt that’ll get you much further. Probably the only way to have a chance at being effective in demonstrating the flaws in their approach is to come up with concrete scenarios/examples pertinent to your organization in which their approach would cause serious problems/costs. Put those in writing, so that when the problems actually occur, you can pull them out and say "I told you so". [But that may not make you popular either. Ignorance and stupidity are a no-win game.)

 

 

Posted 12/03/04