Archive for the ‘Java’ Category

Visualizing the poor performance of the “Mozilla Platform”.

Friday, August 31st, 2007

Today, thanks to this article, I saw a very telling diagram giving an overview of the “Mozilla Platform”. Before you read on, I encourage you to study the diagram for a few moments.

No, Java did in fact die.

Tuesday, August 28th, 2007

I was reading this article from David Herron today. It looks back on an article from a decade ago talking about how Java was predicted to be a technology that “doesn’t stand a chance.”

David suggests that, “Looking at that 10 years later I can only think the rumors of Java’s death are greatly exaggerated.” I’m not so sure about that. Java did in fact die. It died quite a horrible death. That death occurred in the consumer-grade desktop application market.

The myth of the common Windows UI.

Sunday, August 26th, 2007

One computing myth we hear quite often is that of Microsoft Windows offering a “common UI”. That is, one toolkit or framework that is used by all applications, thus giving an experience that is well-integrated and shared. But anyone who has used Windows recently should know that this is clearly not the case.

Swing is not an example of good software reuse.

Saturday, August 25th, 2007

A short while back I wrote about how Scala’s interoperability with Java is not necessarily a good thing. One of my main suggestions was the avoidance of Java-based class libraries. Although they may fit well with the Java way of doing things, they likely won’t be a good fit when it comes to making the best use possible of the language features that Scala offers.

Interoperability with Java is not a good thing.

Sunday, August 19th, 2007

Most serious Java programmers have heard about Scala at this point, I would imagine. If you haven’t, here’s the description from the Scala web site: Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages. It is also fully interoperable with Java.

Programmer productivity, feature set implementation, and runtime performance.

Saturday, August 18th, 2007

When it comes to judging programming languages, there are three main factors that we need to consider: programmer productivity, the application feature set that can be implemented, and the runtime performance of the developed applications. There are, of course, many others, including memory usage, portability, and implementation cost. However, memory is plentiful these days, most languages have cross-platform implementations, and many of these implementations are free or have a low cost. So the three factors mentioned in the title become the most important ones.

A lack of productivity is killing Smalltalk.

Saturday, August 11th, 2007

I heard today that the development of Dolphin Smalltalk has been discontinued. Although it isn’t a product I used or was familiar with, I have been involved with a number of Smalltalk-based development efforts in the past. While it was somewhat popular in the late 1980s and early 1990s, the commercial usage of Smalltalk has declined significantly since then.

Today is similar to the programming languages situation of twenty years ago.

Thursday, August 9th, 2007

When it comes to programming languages and programming technologies, I think we’re getting close to a point similar to that of twenty years ago. In 1987, many enterprise software systems were being written in languages like C, COBOL, and even PL/I at some shops. Some places were ahead of the curve, and were using Smalltalk.

A great Web developer is a waste of a really great application developer.

Thursday, August 9th, 2007

Michi Kono recently wrote about how the most talented Web developers are usually also the most talented application developers. I propose that we take it a step further: a great Web developer is usually a superb application developer. Or in a different light, a great Web developer is a waste of a really great application developer.

Where is the developer productivity increase with JavaScript-based Web applications?

Friday, August 3rd, 2007

When the computing world moved from manually toggling input switches to machine code encoded on paper tape, there was a vast improvement in programmer