Send to Printer

java

Sun tells us why we should avoid J2EE

May 27, 2003 23:31:43.058

Via Dave Buck I got pointed to this article by Jim Waldo - apparently Sun's lead guy on Jini. In discussing standards, he says this:

What gets lost in all of this, of course, is whether the technology being blessed by the standard actually helps the customer to solve a real problem. Can the standard be implemented? Will the implementation perform adequately? How much will it cost? All of these sorts of questions are not appropriate in the era of de jure standards.

What is also forgotten in all of this is how fragile the de jure standards have been in the past. I can't think of a single standard that was invented by committee that has survived in the marketplace. The long-standing standards are those that were first de facto standards, and were described (no invented) by the standards bodies.

Such standards didn't start out in a standards body. They started out solving problems. Because they solved the problems, people used them. The use drove the standard, not the other way around. This allows innovation, this allows technical progress. Things that work get used by people who are trying to solve problems.

This does take the decision making power out of the hands of the managers, and the IT departments, and the technical analysts. They aren't trying to solve problems in new ways; they are trying to lead parades, or keep their jobs, or show that they have influence. They aren't the engineers that can actually understand the solutions, but they do (for the most part) understand politics. Standards groups cater to their expertise, not the expertise of the engineer.

Of course, this hard dichotomy is something of a caricature. There are substantive discussion of technical merit in standards groups that are trying to invent. But that isn't all that goes on. And certainly there is little evidence that the best technology wins in such groups. Just look around you for evidence of that.

So the next time you are talking to a manager and he or she tells you that you have to use something "because it is a standard", push back. Ask why only standards can be used. Ask if the standard has actually been implemented, or if the standard will really solve the problem under discussion. For that matter, ask if the manager really knows what the standard is. If any of these questions can't be clearly answered, maybe the standard isn't the way you should approach your problem.

Hmmm. J2EE comes to mind. A big mass of code, designed by people who had (apparently) never written a distributed application, with no actual customer feedback. So - based on one of Sun's senior staff's recommendations - you should reject efforts to implement J2EE. When management balks, quote the Sun guy!

Comments

J2EE vs. Jini

[Dave Astels] May 28, 2003 8:16:08.715

Yes. It's interesting to hear yet another "luminary" voice this point of view. I've been very interested lately in the view of J2EE. J2EE doesn't seem to be very popular in the upper levels of the OO intelligensia. And rightfully so... it blatently disgards all the OO principles we've worked so hard for so long learning and convincing people of. Inheritance... na.. mix your functions & data... why? "Don't get me started" Jini, on the other hand is way cool. It's lean & sleek. It's designed by folks like Jim Waldo & Ken Arnold (Jini is Ken's (at least) second take at a distributed system architecture... the first was CORBA.. which I've heard him publicly lament. If J2EE hadn't been crammed down our throats, I strongly suspect we'd all be using Jini now.. and much happier for it. Dave

 Share Tweet This