By the way, at the JavaOne where Swing was announced, Sun told everyone that
backward compatibility with AWT was a must for customers.  I thought I
stated that directly earlier, but apparently left it out.  If you can find
the old Swing presentations from the second JavaOne, then you'll see what I
mean.  The slides explicitly stated the need for backwards compatibility
with AWT, for customers.  This was considered weird to many, since nobody
seemed to actually be using AWT or liked it.

AWT was also built in one month, so that Sun could demo applets on the
Internet.  The perception within Sun from management at the time was that
they only had a short period of time to enter the Internet market ahead of
other competitors, and that some code was better than good code 6 months, or
a year or two later.

One of the saddest Java books ever (among many sad ones), by the way, was
Java Platform Performance [1].  It basically talks about the author's
experience tuning Swing applications.  They basically said that NOBODY on
the Swing team ever performance tested code by profiling.  They just kept
writing code!  Then the authors job was to clean up the performance disaster
of Swing. -- Swing was notoriously slow for many years, and it wasn't until
1.6 that they finally added support for antialiased text rendering!

Interestingly, Palantir Technologies uses Java and Swing for its
"distributed intelligence" visualizations, according to a convo I had on
Facebook w/ Ari Gesher.

[1]
http://www.amazon.co.uk/Java-Platform-Performance-Strategies-Tactics/dp/0201709694/

On Thu, Oct 14, 2010 at 7:53 PM, Duncan Mak <[email protected]> wrote:

> On Thu, Oct 14, 2010 at 6:51 PM, John Zabroski <[email protected]>wrote:
>
>> That being said, I have no idea why people think Smalltalk-80 would have
>> been uniformly better than Java.  I am not saying this to be negative.  In
>> my view, much of the biggest mistakes with Java were requiring insane legacy
>> compatibility, and doing it in really bad ways.  Swing should have never
>> have been forced to reuse AWT, for example.  And AWT should never have had a
>> concrete component model, thus "forcing" Swing to inherit it (dropping the
>> rabbit ears, because I see no good explanation for why it had to inherit
>> AWT's component model via "implementation inheritance").  It's hard for me
>> to even guage if the Swing developers were good programmers or not, given
>> that ridiculously stupid constraint.  It's not like Swing even supported
>> phones, it was never in J2ME.  The best I can conclude is that they were not
>> domain experts, but who really was at the time?
>
>
> I started programming Swing a year ago and spent a little time learning its
> history when I first started. I was able to gather a few anecdotes, and they
> have fascinated me.
>
> There were two working next-generation Java GUI toolkits at the time of
> Swing's conception - Netscape's IFC and Lighthouse Design's LFC - both
> toolkits were developed by ex-NeXT developers and borrowed heavily from
> AppKit's design. IFC even had a design tool that mimicd Interface Builder
> (which still lives on today in Cocoa).
>
> Sun first acquired Lighthouse Design, then decided to join forces with
> Netscape - with two proven(?) toolkits, the politics worked out such that
> all the AWT people at Sun ended up leading the newly-joined team, and the
> working code from the other parties discarded, and from this, Swing was
> born.
>
> http://talblog.info/archives/2007/01/sundown.html
> http://www.noodlesoft.com/blog/2007/01/23/the-sun-also-sets/
>
> --
> Duncan.
>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
>
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to