Friday, October 24th, 2008

Blast from the Web Past: DirectAnimation, Microsoft Chrome, and Cartoon Chat

Category: Microsoft

<p>Awhile back Dion kicked off a series of posts looking at past technologies on the web, web archaeology if you will. Sometimes its good to know where we’ve come from to figure out where we are going. In this spirit I want to talk about a few web technologies from the past.

Before there was Silverlight, there was DirectAnimation starting in Internet Explorer 4:

…DirectAnimation offers the only solution of its kind in the industry, with features that include the following:

Consistent interface for dealing with 2-D vector graphics and sprites, 3-D geometry, text, video and audio media types.
Versatile run time with a breadth of multimedia playback services that are easily incorporated into tools and applications. Integration into Internet Explorer 4.0 helps ensure a broad target audience of Web users with DirectAnimation playback capability.
Uniform time/event model that enables highly coordinated interaction among various media types, along with rich user interactivity.
Highly scalable solution for developers with various levels of programming expertise using a variety of programming and scripting languages, including HTML, the Microsoft Visual Basic® development system, Scripting Edition, JScript development software, Java and the Visual C++® development system.
High-level multimedia controls for setting motion paths, sequencing, sprite controls and low-bandwidth vector graphics.
Integration with Dynamic HTML and Windowless Control support, making DirectAnimation ideal for applying scripted animation anywhere on a Web page.

DirectAnimation was discontinued starting with IE 7 due to some security issues. In fact, Microsoft so wanted to erase the existence of this technology that they removed all of the documentation from MSDN! Here is a page from one of the original developers of DirectAnimation talking about its history. Here’s a sample screenshot of a DirectAnimation example from an article on the technology:

Direct Animation Sample

Direct Animation Sample

A small code snippet. First, the sample above embeds the DirectAnimation ActiveX control:

  1. &lt;OBJECT ID="danim" WIDTH=400 HEIGHT=400 ALIGN=Center
  2. CLASSID="CLSID:69AD90EF-1C20-11D1-8801-00C04FC29D46"&gt;
  3. &lt;/OBJECT&gt;

Next is some JScript that does the work:

javascript
< view plain text >
  1. m = danim.PixelLibrary;
  2. img = m.ImportImage("spiral.gif");
  3.  
  4. // rotate at the rate of 60 degrees per second
  5. rotImg = img.Transform(m.Rotate2RateDegrees(60));
  6.  
  7. danim.Image = rotImg;
  8. danim.BackgroundImage = m.SolidColorImage(m.colorRgb (1, 1, 1));
  9.  
  10. danim.Start()

Crazy times.

Next, before there was Google Chrome there was…. Microsoft ChromEffects around 1998. This was finished and announced and ready to ship:

The Redmond, Washington-based software titan unveiled today its new 3D graphics software developers kit, called Chromeffects and code-named Chrome. It will be available for download August 17 free of charge for software developers.

Chromeffects is an add-on for the Windows 98 operating system that allows high-powered PCs to play 3D graphics and video either through a Web browser or in separate player software.

…but never made it out the door due to controversy over Microsoft creating their own de-facto 3D tag markup:

Microsoft’s multimedia efforts faltered this week as the company back-burnered its Chromeffects 3D graphics technology and shuffled its multimedia management team…Chromeffects, built to arm everyday Web sites with the kind of powerful multimedia and animation found in gaming environments, has encountered a barrage of criticism from the developer community since its launch three months ago. Dominating the developer wish list are requests for better compliance with World Wide Web Consortium recommendations, both those already ratified and those currently under consideration.

At the end of the day, ChromEffects was really an XML-based markup layer above the DirectAnimation technologies discussed above to make it easier for non-programmers to develop for. I’d love to show a code sample but I can’t seem to find any on the Net. The SDK was never released (it was apparently only on the MSDN CD); anyone ever actually worked with this technology?

There is a great book, named Renegades of the Empire, detailing the ‘renegade programmers’ who drove these technologies at Microsoft behind the DirectX and ChromeEffects technologies:

Renegades of the Empire, by Michael Drummond, charts the fables and fortunes of the three “renegade Beastie Boys” who secretly created and championed DirectX until it became a key technology in Windows. These three software developers were also responsible for Chrome (nee Chromeeffects), the ill-fated “Web browser on steroids” that would have brought stereo 3D effects to the Web had not internal politics finally brought the project, and the renegades, to their knees. It’s an amazing story of insider intrigue, well told.

And finally, only because it’s Friday, I leave you with Microsoft’s Comic Chat IRC client that was bundled with Internet Explorer 3…. what set it apart as an IRC client is that chatting happened in cartoons!

Microsoft Comic Chat IRC Client

Microsoft Comic Chat IRC Client

Related Content:

Posted by Brad Neuberg at 8:00 am
15 Comments

+++--
3.8 rating from 18 votes

15 Comments »

Comments feed TrackBack URI

Those are awesome; its weird to see what was and what might have been. Thanks!

Comment by jonhartmann — October 24, 2008

I used to love Comic Chat and was gutted when it disappeared.

Comment by kim3er — October 24, 2008

i actually remember the chat client,was it in windows 95?

Comment by Urielka — October 24, 2008

@dion
There are two lessons to learn from this, first of all if you don’t build upon standards you build upon *MUD* – meaning your choice of technology might be ripped away from you underneath your feet any day of any week.
.
The second thing we can learn from this is that Silverlight is *nothing new*, just ActiveX in new wrapping…
.
I think it’s now almost 2 years since I consistently started to refer to it as ActiveX2.0. I know other (Dino Esposito) referring to it as “Animated GIFs 2.0″… (though with Silverlight 2.0 I think ActiveX2.0 is more accurate since the possibilities are more “rich” in 2.0 of Silverlight)
.
“Same shit, new wrapping” – though with a *way* higher marketing budget (since this is MSFTs “make it or break it technology” in regards to whether or not they will still be able to lock us in for the next 30 years or so)
.
If you choose to build upon Silverlight, you not only choose to build your apps on a MUD foundation, but you also choose to build your apps so that they’ll probably not work on iPhone, Linux, Mac, Nokias, your cousins toaster – whatever. And your choice of technology is probably going to completely collapse ANY minute. And even more important; *you’re giving these guys another 30 years of dictatorship in the “API world”*…
.
This is one of the reasons I find it sad that you guys don’t write more about Open Web technology on the .Net platform (like e.g. http://ra-ajax.org), since effectively for more than 7.5 million .Net developers it’s the only alternative (we now all know how much Microsoft is “focusing on developing and maintaining” ASP.NET AJAX) to ActiveX2.0. Which *if* wins will effectively terminate the entire foundation for not only your employer (Google) but also the entire foundation of 95% of all economic growth the last 10 years… [the internet - as in Open Web Internet]
.
I know that this might be really hard to understand Dion and others (Rey, Brad, Ben) since I am on the “.Net platform” but *I-am-your-ALLEY!*
.
DO NOT USE ACTIVEX2.0 TECHNOLOGY – THINK OF YOUR CHILDREN!
[*SERIOUSLY!*]

Comment by ThomasHansen — October 24, 2008

Maybe the reason they don’t focus on Ra Ajax is because of the first paragraph on your website:
.
“Ra-Ajax is built around the assumption that JavaScript is hard and not something Application Developers should spend time on doing.”
.
I think a good majority disagree

Comment by TNO — October 24, 2008

I remember the comic chat, at the time it was the coolest IRC client around, really missed it when it disappeared. The funny thing is that now more an more IRC clients are allowing you to use custom themes, including speech bubbles. I wonder how long it will be before we see comic chat come back.

Comment by mdrisser — October 24, 2008

I’d like to see more of these kind of posts detailing historical stuff like this, it’s excellent; I think there’s a lot to be looked at from “multimedia-era” innovations back in the day that we can now revisit and learn from.

Comment by Schill — October 24, 2008

I used to follow this website before Direct Animation got the axe:
http://www.mgifos.demon.co.uk/directanimation.htm
and an assload of samples:
http://www.mgifos.demon.co.uk/vault/vault.zip

Comment by TNO — October 24, 2008

@TNO
Interesting point, and I guess you’re right, and also probably most readers here would agree with you, unfortunately my guess is that 98% of the world (those 98% not reading Ajaxian) would agree with me on that JavaScript *is* hard to develop [secure, scalable and easily maintainable] applications in. And if that’s the reason, then why so many articles about GWT, ExtGWT etc…?
.
“Ajax is too important to leave to the JavaScript gurus”…
And before we have an easy solution for the rest of the world’s developers (98% who don’t understand or want to spend time learning JavaScript, browser differences, DOM, etc) we will never get Ajax to become mainstream among *all* the developers…
Norway [my country] is the most “XHR consuming” country in the world according to MAMA, and still less than 11% of the Norwegian websites have XHR within them…
That sucks! :(

Comment by ThomasHansen — October 24, 2008

Hi Thomas, I’d love to know more about Open Web on the .NET platform. I was just talking with some colleagues where we were talking about how it would be cool to introduce ways to use the Open Web on the .NET stack, including in Visual Studio, such as with wizards, Intellisense for JavaScript toolkits like Dojo and JQuery, etc. We should chat. Email me at brad neuberg gmail.com, where you remove the space between brad and neuberg and add an @ before gmail.com

Best,
Brad Neuberg
http://codinginparadise.org

Comment by Brad Neuberg — October 24, 2008

It’s funny when people rant and rave about things they obviously know nothing about. Silverlight is not ActiveX2.0, it is a platform-neutral competitor to Flash. There is a Mac release and have been *nix test builds. It is a technology that leverages numerous .NEt technologies including Microsoft’s XML-based interface mock-up standard to produce effects and interfaces closer to the hardware, like Flash. ActiveX, on the other hand, was built well before the Internet became widely used and was intrinsically tied to the COM architecture which would also have to have been ported to other operating systems. As it included much of the underpinnings of Windows there was little chance of that. So go ahead and avoid closed products due to your OpenSource myopia, the rest of us will choose the best tools for the job.

Comment by clubside — October 27, 2008

@clubside
Regarding whether or not Silverlight is ActiveX or not, I have actually built ActiveX components in VB.NET (not voluntarily) and they’re included mostly the same way, as a blob .Net IL assembly. Both of them have IL code running the logic and are being injected through “special tags” (ActiveX through object and Silverlight through XAML)
Apples are fruits, bananas are fruits, and Silverlight is also ActiveX even though it has a *slightly* different model than ActiveX1.0. Even MSFT themselves acknowledges this so much that they’re currently “training” their MVPs, RDs and other “MSFT platform evangelizers” to how Silverlight is not ActiveX tohelp them spread the word that Silverlight “is not ActiveX”. Are you on of those?

Comment by ThomasHansen — October 28, 2008

@clubside,
.
Tools -> Internet Options -> Programs -> Manage add-ons ->
.
Scroll down and….oh snap it says ActiveX Control…

Comment by TNO — October 28, 2008

ActiveX is the container for all IE-based plug-ins, even those not based on COM and thus not real ActiveX controls. How does it show up under Firefox and Safari? I’m sure you’re right about Microsoft wanting to distance the technology from ActiveX Thomas, and with the change to to the status of XMLHTTPRequest in IE7, maybe they will separate the different extension categories in IE8. Who knows? I was just trying to point out that this is a differnt strategy for Microsoft, a multi-platform technology and even multi-browser (remember the ill-fated attempts to integrate ActiveX into Netscape and early Firefox)? I’m no evangelist, nor even a fan of .NET or WPF, yet people are doing some cool things. Why shouldn’t Flash have a competitor until an open standard can compete?

Comment by clubside — October 28, 2008

@clubside
If Silverlight was a competitor to Flash I would not worry at all.
Though if it was a competitor to Flash, why did they include ~20 *controls* in it?
And I am talking about stuff like “CheckBox”, “RadioButton” and “TextBox”…?
.
I *know* the reason, and the reason is that they want it to be *perceived* as a Flash competitor while really it’s a W3C competitor (W3C == HTML/CSS/ECMA)
.
If Silverlight “wins” then the Open Web will be history…!! :(
.
PS!
http://ra-ajax.org/call-for-arms-against-silverlight-also-known-as-activex2-0.blog
.
It doesn’t explain so much, but at least it gets people all fired up… ;)

Comment by ThomasHansen — October 29, 2008

Leave a comment

You must be logged in to post a comment.