Tuesday, September 23, 2003

Java as a SUV?

This post is making the rounds at some of the blogs I occasionally read. I think it has a critical bit of insight into Sun's character - make hard things possible, but ignore the fact that you're making easy things hard. The explosion of complexity in Java over the course of the past 5-6 years echos the development of Solaris NEO prior to that. Sun abandoned NEO due to a lack of market acceptance, and NEO suffered a lack of market acceptance because CORBA is hard in the first place, and Sun didn't really make it any easier.
That might be a little unfair - Sun removed some of the drudgery of CORBA development with some clever code generation and declarative programming tools, but then you had to understand the code generation and declarative programming tools to get anything done.

You could build really cool, super-scalable, multi-threaded apps, but "hello world" was hard to write.

This seems to be the fate of all too many technologies. Go look at the first edition Bjarne Stroustrup book "The C++ Programming Language" - C++ in the late 80's was a nice, clean, simple language. Then go look at the 911 page "The C++ Programming Language - 3d Edition" - what a nightmare.

Greenspun's article ignores the fact that someone using a specialized tool appropriate for the task at hand, will ALWAYS do better than someone using a generic low-level systems tool. Using PHP for doing web page development is probably a perfect example of this. PHP is simple and doesn't try to do anything other than let you code up templated webpages. Java lets you do a lot more than that, but you pay for the added complexity.

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home