Whoa, awesome. Thanks for posting that. I've been curious for a long time
why Swing is so unusable, and why IBM doesn't show off SWT more. It's great
to hear more of the story.
Sun's Java Platform Performance book talks a little about Swing's
performance issues. The author was on the team that tried to improve the
performance, and he seems to think the root cause of the slowness is an
overly abstracted (amateurish) class hierachy. Among other things, this
results in masses of temporary objects that are churned by the Swing API,
something like a dozen temporary objects are created for each cell of a
JTable on every repaint.
Don't you guys think that if it weren't for the Swing mess, Java would be
the new Visual Basic, and C#/.NET would be pure hype that does nothing new?
In retrospect, I think the Microsoft Java Extensions were a good idea: you
could write pretty UI's in Java. Instead of admitting that there was a real
need for this, Sun went to court and never offered something competitive.
Now two or three years later C# and .NET appear, looking surprisingly like
Java with Microsoft Extensions, and this hole is filled. I'm glad, I hate
MFC and VB, and like being able to write Windows applications in a pretty
garbage collected language that has a new and thoughtful API. But I wish it
could be Java instead, so I could work on an iMac and not feel like a
sellout to the man.
-Original Message-
From: Simon Ritchie [mailto:simon.ritchie;amo.com]
Sent: Monday, November 11, 2002 8:03 AM
To: [EMAIL PROTECTED]
Subject: [jug-discussion] SWT ... the scoop?
In anticipation of the Tuesday presentation on SWT, here's a message to a
mailing list posted by Alan Williamson, the editor of Java Developers
Journal. The message he quotes is from a source within IBM. It's an
interesting look at the inside politics of Swing and SWT.
Simon.
Subject: [ST-J] SWT ... the scoop?
Date: Wed, 6 Nov 2002 10:31:25 -
From: Alan Williamson [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: '[EMAIL PROTECTED]'
[EMAIL PROTECTED]
Okay here you go ... read ... digest ... re-read ... and do more digesting
...
;-)
Thanks for getting back to me. I'd love to give you the low down on Swing
and SWT, as long as you keep me as your undisclosed source close to IBM.
To see why everything is so messed up you need to go back a few years to
the world when just AWT existed. Sun had built a basic set of portable
control classes that mapped to native widgets on the different operating
systems, and the next obvious step was to continue this model beyond its
initial set of CUA 92 components ( text, button, etc... ) and add stuff
like a table, a tree, a notebook, a slider, etc... While AWT was buggy
beyond belief this was just poor code that needed fixing by Sun's coders.
The developers at Sun like Graham and Otto used to publicly blame their
bugs on operating system differences like focus order is different
between
windows and OS/2 or the behavior of Ctrl-X is different between ... and
other lame excuses to take the heat off the fact that the real problem was
that Sun released the code too early. Then Amy Fowler appeared at Sun.
Without being sexist, Amy is a very pretty intelligent girl, and most
geeky
developers just go to putty in her hands.
Amy came from a Smalltalk company called Objectshare where she looked
after
the UI class library there. The history of Smalltalk is a sad one if you
apply it to Java, because once upon a time there were 3 big Smalltalk
companies - IBM, Parc-Place and Digitalk. All 3 had equal market share in
early 90s and life was good. Parc Place used emulated widgets ( i.e. a
Swing design ) while IBM and Digitalk used native widgets. IBM overtook
the others who then merged to form, imaginatively, Parc-Place Digitalk. A
huge battle enused in which they tried to merge their products in a
project
called Jigsaw which failed due to politics ( the developers actually got
it
working ) because the native versus emulated crowd fought to the bitter
death. Amy won a moral victory, however at IBM we just got all of their
accounts because the two companies did nothing for an entire year except
quarrel. When the dust settled the share price of PPD ( which was now
called Objectshare for the same reason that Windscale was renamed to
Sellafield - in the hope that everyone forgets the disaster that occured
there ) went from 60 bucks to under 1 dollar a share. They were pulled
form NASDAQ because of incorrect reportings of earnings and the lights
went
out. Sun were just up the road from PDD so the teccies all sent their CVs
there. Amy was hired, and because she promised to solve all of the widget
problems by doing a lightweight solution, convinced Sun management to make
her the head of the GUI development. She got in on the ticket of the
folks already here messed up, let me handle it. Amy then hired all her
old Parc-Place