2 ms·
This is the most complete and interesting account I've seen about the beginnings of VB from the Microsoft side. I don't know how I missed it until now, but I'm
by Stratoscope 12y ago
This is the most complete and interesting account I've seen about the beginnings of VB from the Microsoft side. I don't know how I missed it until now, but I'm glad it was posted here.
Source and disclaimer: I'm the "Ruby development 'wizard'" mentioned in the article. Apparently I helped the VB team learn how to code for Windows! I didn't know that until now, but I'm glad I could help.
To amplify on a few points in the article...
The discussion of Custom Controls is right on. There was a myth that the reason Visual Basic was extensible through the VBX interface and custom controls is because Bill Gates insisted it. That's only partly true.
Bill's role wasn't in getting custom control support added to the product. It was to make sure that it wasn't dropped.
The support was always there. After all, when we coded the original set of controls, we needed some kind of interface for them, and it was obvious and planned all along that this interface would be open for others to build controls of their own.
Actually they weren't called "controls" originally. Alan was going to call them "waldos", named after these:
https://en.wikipedia.org/wiki/Remote_manipulator https://en.wikipedia.org/wiki/Remote_manipulator
I couldn't make sense out of that name, so I ended up calling them "gizmos" instead. And my little "Gizmo API" was what later became the VBX interface.
Scott also mentions the original "lines and arrows" Ruby interface, where you would drag an arrow to connect an event emitted by one object to an event target exposed by another object. He's right that this ended up not being a usable programming model for VB.
But recently I tried out Unreal Engine 4's Blueprints feature. It was very reminiscent of what we were doing back then! But of course the Unreal team put in all the additional work to actually make this a usable feature - we never took it that far.
- jasode 12y ago>"lines and arrows" Ruby interface, where you would drag an arrow to connect an event emitted by one object to an event target exposed by another object. He's right that this ended up not being a usable programming model for VB. Fascinating. It's interesting that the modern Qt Creator IDE (for C++) has something similar for its signals & slots mechanism. It has the ability to draw a line from the "signal" (event) of one control to the "slot" (event handler) of another. I've seen several demos[1] highlight this operation but I don't know anybody that actually follows that procedure. They'd rather just type in the text editor: connect(src,SIGNAL,dst,SLOT); [1]http://www.youtube.com/watch?v=JtyCM4BTbYo http://www.youtube.com/watch?v=JtyCM4BTbYo
- vlad 12y agoDraggable arrows reminded me of XCode's Interface Builder.