Getting it for Free
Everything was going great back in 1997. I'd come into the VID project late and was finally about to ship my first product at Microsoft after earning a few "skip its" in the graphics division. (An imaginary award you get for having your project cancelled. Like a "ship it" but completely different.) I'd added a few DTCs (Design Time Controls) to VID (do you remember the Sequencer?) and was working on this pretty cool HTML Designer control. Then a funny thing happened.
I walked into Steve's office, the PM who had driven the creation of the control, a couple minutes late for a meeting. He was just winding up an excited exposition on the whiteboard, saying "...and then we can mark the control Safe for Scripting, and we get it for FREE." The idea was to add a second control to the OCX which eliminated a couple of methods, such as Save and BrowseMode, and then people could use the editing features in a web app as well as a client app.
I whined. I didn't think that Safe for Scripting really came for free. I thought there might be security risks that we hadn't considered. But I was challenged to be specific, to identify an actual problem, and I couldn't.
It turned out over the years that I was smarter than I could have ever imagined, but that's a rather small comfort. We made the dual control and released it to the web. I've got a copy of the release CD right here. We just moved offices and I found it while unpacking. The build date was March 27, 1998. We got the control posted to the ActiveX Toolbox so that it could be automatically downloaded via a codeBase attribute in an OBJECT tag. IE 4.01 was on the disk
Remember when IE used to change fast? And at this point IE revisions required DHTML Editing Control revisions as well. After a couple of revs our codeBase installation system began to get complex. It got so complex that there was a full time contractor on it, Yuri, and I remember one meeting where there were about 15 of us in a room for over an hour discussing installation issues. At the end of the meeting even Steve agreed that "free" wasn't the best way to describe the Safe for Scripting aspect of the control.
Then we did a smart thing. We met with the IE team (I don't remember who was involved on their end) and explained that we couldn't continue to maintain separate, compatible builds of the control and its nightmarishly complicated installer. We talked them into our moving the source to their code tree and shipping revisions of the control with revisions of IE. This way it would always be installed and would always be compatible, and we could eliminate our setup efforts completely. We (the Developer Tools Division at the time) agreed to maintain the code while they would maintain the build. I'm not sure exactly when this agreement went into force, but this is still the arrangement today.
I have to tell this story over again every single time I go to a Windows War meeting to get approval for checking in a bug fix. Now, at last, I can just provide a URL.