home.netscape.com in 1997
Oh wow, I found the full documentation for the ill-conceived and ill-fated IFC -- Internet Foundation Classes.<p><a href="https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;19961116025218&#x2F;http:&#x2F;&#x2F;developer.netscape.com&#x2F;library&#x2F;ifc&#x2F;documentation&#x2F;barium&#x2F;DeveloperGuide&#x2F;index.html" rel="nofollow">https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;19961116025218&#x2F;http:&#x2F;&#x2F;developer....</a><p>Check out that jaggy squinched text in those diagrams! Somebody resized a GIF file smaller to save some bandwidth, and so it would fit on a 640x480 screen. 1997 web design at its finest!<p>Pro Tip: Never name a user interface toolkit after &quot;MFC&quot; with &quot;M&quot; crossed out and &quot;I&quot; written in -- that doesn&#x27;t make it sound very appetizing, and wrongly sets expectations that you can actually write a viable application with it, given enough pain and suffering. Just as you should never name a component system after &quot;COM&quot; with &quot;XP&#x2F;&quot; written before it, for the same reason.<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12968830" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12968830</a><p>And while you&#x27;re at it, you should never name a company after &quot;Microsoft&quot; with &quot;Micro&quot; crossed out and &quot;Sun&quot; written in, because it makes it look like you define your company in terms of your biggest competitor instead of having your own identity and mission, which is what losers and foaming-at-the-mouth libertarian Trump supporters like Scott McNealy do.<p><a href="https:&#x2F;&#x2F;www.cnbc.com&#x2F;2019&#x2F;09&#x2F;17&#x2F;trump-silicon-valley-fundraiser-at-scott-mcnealys-home.html" rel="nofollow">https:&#x2F;&#x2F;www.cnbc.com&#x2F;2019&#x2F;09&#x2F;17&#x2F;trump-silicon-valley-fundrai...</a><p>Marimba was much better at naming things, thanks to Kim Polese, who came up with the name &quot;Java&quot; when she was at Sun, then left Sun with several of the finest Java engineers to form the drum-themed Java start-up company, &quot;Marimba&quot;. Their product &quot;Castanet&quot; literally cast a net to deliver interactive content over the internet, and their Java-powered HyperCard-like user interface builder &quot;Bongo&quot; actually let you interactively edit Java scripts to handle events, by calling the Java compiler at runtime (which was unheard-of at the time, but normal for IDEs to do now).<p><a href="https:&#x2F;&#x2F;www.wired.com&#x2F;1996&#x2F;11&#x2F;es-marimba&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.wired.com&#x2F;1996&#x2F;11&#x2F;es-marimba&#x2F;</a><p>I wrote a comparison of Bongo and IFC about a year before that Netscape page was captured in 1997.<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19837817" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19837817</a><p>&gt;Wow, a blast from the past! 1996, what a year that was.<p>&gt;Sun was freaking out about Microsoft, and announced Java Beans as their vaporware &quot;alternative&quot; to ActiveX. JavaScript had just come onto the scene, then Netscape announced they were going to reimplement Navigator in Java, so they dove into the deep end and came up with IFC, which designed by NeXTStep programmers. A bunch of the original Java team left Sun and formed Marima, and developed the Castanet network push distribution system, and the Bongo user interface editor (like HyperCard for Java, calling the Java compiler incrementally to support dynamic script editing).<p><a href="https:&#x2F;&#x2F;people.apache.org&#x2F;~jim&#x2F;NewArchitect&#x2F;webtech&#x2F;1997&#x2F;10&#x2F;note&#x2F;index.html" rel="nofollow">https:&#x2F;&#x2F;people.apache.org&#x2F;~jim&#x2F;NewArchitect&#x2F;webtech&#x2F;1997&#x2F;10&#x2F;...</a><p>&gt;While I was working at Interval Research Corporation in 1996, after playing around with and reading over the source code and documentation, I wrote up a deep comparison and analysis of Internet Foundation Classes (IFC) versus Marimba Bongo (which was written by Arthur van Hoff, who worked on Java, wrote AWT, and before Java wrote another user interface system for NeWS similar to Bongo and HyperCard in PostScript, called HyperLook), and other related user interface component technologies.<p><a href="https:&#x2F;&#x2F;donhopkins.com&#x2F;home&#x2F;interval&#x2F;ifc-vs-bongo.html" rel="nofollow">https:&#x2F;&#x2F;donhopkins.com&#x2F;home&#x2F;interval&#x2F;ifc-vs-bongo.html</a><p>&gt;This is a comparison of two component frameworks for Java, IFC and Bongo.<p>&gt;IFC (Internet Foundation Classes) is from NetScape, and is similar NeXTStep, which was written in Objective C. It was written by some former NeXT developers, whose company NetScape bought because they needed a Java toolkit.<p>&gt;Bongo is from Marimba, and is similar to HyperLook, which was written in NeWS object oriented PostScript. Marimba was founded by some of the original Sun Java developers, who left Sun to form their own company.<p>&gt;[That also compares IFC with Microsoft&#x27;s ActiveX&#x2F;OLE&#x2F;COM&#x2F;MIDL stuff, and gets into some Java&#x2F;JavaBeans&#x2F;J++&#x2F;CORBA&#x2F;OpenDoc politics, and includes some comments by Arthur about IFC, AWT, Bongo, JDK 1.1, etc.]<p>&gt;[...]<p>&gt;Date: Mon, 06 Jan 1997 13:27:40 -0800
To: hopkins@interval.com (Don Hopkins)
From: Arthur van Hoff &lt;avh@marimba.com&gt;<p>&gt;Hi Don,<p>&gt;Although I am pretty biased I would like to make one or two comments.<p>&gt;We decided to build a very AWT friendly GUI toolkit. What this means is that there are as few gratuitous differences as possible. We did this for two reasons. One is that we don&#x27;t want our developers to relearn what they know about the AWT, and secondly we are anticipating the integration of JDK 1.1 functionality sooner rather than later.<p>&gt;The IFC has made a huge mistake in reinventing classes like the Event, Graphics, and Color classes. This makes it extremely hard to integrate IFC components into existing AWT applications (and visa versa). We think this is a great advantage of Bongo.<p>&gt;We also focussed on mimicking the PC look&amp;feel whenever possible. We&#x27;ve had very positive feedback on this feature. It seems to be what people want. If you want you can still create your own look and feel, but at least the default is familiar to most users.<p>&gt;I strongly believe that JavaBeans is the right way to go. It is big, and it is not a framework for building widgets, but at a slightly coarser granularity it solves the problem of integrating components from other vendors very effectively.<p>&gt;Over the next few months we are going to put effort into the following areas:<p>&gt;JDK 1.1 integration<p>&gt;JavaBeans support<p>&gt;Extend the widget set with new business oriented widgets<p>&gt;Extend the builder with better layout functionality<p>&gt;Make the builder more content oriented<p>&gt;Add better support for time based media<p>&gt;Add some paint&#x2F;draw functionality to the builder<p>&gt;Further improve our support for PC-look alike widgets<p>&gt;Have fun,<p>&gt;Arthur van Hoff