Posted by calvinaustin
on October 23, 2007 at 2:47 PM PDT
Dion has been blogging about the re-birth of Applets, but how did things end up this way?
A Potted History of Applets
Dion was privy to some news about the latest news on Java Applets. But why a re-birth of applets and how did they get from front page news to an industry footnote?
My first experience of applets was from WebRunner, the Java based browser which spread through Sun like wildfire. I was working for Sun in Europe in those days and it was such a step up in ease of use for anyone who had to mess with motif or X before. In addition to webrunner, was the standalone appletviewer tool which allowed you to keep up with the ever changing api.
However applets were dependent on Motif for Unix, something that didn't change until JDK 5 and Sun didn't have a lot of development history with Windows either. The apis was functional but new, there were many early issues with modal dialogs and later motif related drag and drop issues in 1.2
The big push was for Java 1.0 and of course the adoption by netscape, however deployment of 1.1 applets was immediately affected by the pace of netscape development and the infamous reverse dns lookup feature. For applet developers it meant that many complex early applets would 'break' because they were too new or fell foul of corporate firewalls.
At the same time there was a push to JavaBeans and the getter/setter pattern was applied to awt in a frenzied rush. This resulted in the large batch of deprecated methods event from 1.0 that many Java developers still lament about today.
However momentum was building, Microsoft was a licensee by this stage and Project Swing was the next big thing. Anyone who worked on awt was immediately moved to Project Swing. Swing was very comprehensive, but obviously larger. It introduced the new event model and brought many other library features. It also required JDK 1.1 and didn't become part of the platform until J2SE 1.2.
By now the hotjava browser was losing adoption and Java was totally dependent on the browser plugin apis. Displaying the output of a separate process into a browser as a plugin does was still an impressive technical feat but consumers are more interested in it just working. What was really needed were the plugin and browser teams to work as one but due to many very public reasons that never happened.
So could applets rise again, of course. It requires the browser teams to be onboard and a significant investment in engineering and testing
As with any re-collection I've tried to summarize many events to the best of my ability so any errors are not intentional and corrections are welcome