4 ms·
Hi! I was the lead developer for Ruby (no relation to the programming language), which became the "visual" side of Visual Basic. It is nice to see this article
by Stratoscope 1y ago
Hi! I was the lead developer for Ruby (no relation to the programming language), which became the "visual" side of Visual Basic.
It is nice to see this article again.
Perhaps my favorite part is this true story that I shared with Ryan at Retool.
If you ever wonder why we "fire" an event, this is why:
# # #
I was looking for a name for one gizmo sending a message to another. I knew that SQL had "triggers," and Windows had SendMessage, but I didn't like those names.
I got frustrated one night and started firing rubber bands at my screen to help me think. It was a habit I had back then to shake up my thinking. Probably more practical on a tough glass CRT than on a modern flat screen! After firing a few rubber bands, I was still stuck. So I fired up a doobie to see if that would help. As I flicked my lighter and looked at the fire, it all came together. Fire a rubber band. Fire up a doobie. Fire an event!
# # #
My other claim to fame may have been the VBX. It was likely one of the worst APIs in history, but also one of the most successful.
Go figure.
As they say, AMA!
And as it happens, I am looking for work. If anyone doesn't mind working with an older programmer who is still enthusiastic and productive and creative, you know where to find me.
- znpy 1y ago> I fired up a doobie to see if that would help For those, like me, that are not native speakers of english and not familiar with the slang: a "doobie" here is a joint. Basically weed (marijuana). @Stratoscope correct me if i'm wrong
- Stratoscope 1y agoThank you for the clarification. Yes, you are correct. And no, I didn't set one of the Doobie Brothers on fire!
- warpspin 1y agoI wonder what the programming language was like which you used, before BASIC was put into the product?
- Stratoscope 1y agoIt was an extremely primitive language in the style of DOS batch files. But that was really kind of a placeholder. We didn't hardwire the language into the Ruby code, we made an API to allow other languages to be plugged in. And that's how it was easy for Microsoft to plug Basic in. In fact, I completely forgot the original purpose of Ruby. It wasn't intended as a complete programming environment, it was going to be a new "shell" (desktop) for Windows 3.0. Windows users would create their own custom desktops using Ruby and our primitive batch language. Somewhat related, there used to be stories about how Visual Basic was originally not going to allow third parties to create custom "controls" (or "gizmos" as we originally called them). But Bill Gates insisted on making it extensible. That may be true in a narrow sense, but it misses the bigger picture. Of course we had to create a gizmo API from the very beginning, for the original set of gizmos we had in Ruby. Buttons, lists, text boxes, and so on. My understanding is that the Visual Basic team didn't want to publish this API in the original VB release, perhaps to get the release out sooner. But Bill insisted that it be included.
- msephton 1y agoWould love to read more about your Ruby. Have your written about it anywhere? Even old HN comments would be welcome.
- Stratoscope 1y agoI wish I had written more about it! I would love to revisit those days too. There are a few old HN comments that I wrote and you can find here: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&query=stratoscope%20ruby&sort=byDate&type=comment https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu... You will have to scroll past a lot of comments about the Ruby programming language.
- msephton 1y agoThanks! I'm digging in. I was already coding in GFA Basic on Atari ST when I encountered Visual Basic on Windows. I'll never forget that moment - truly a new dawn!
- memset 1y agoWow! I learned programming via QBasic (in 21 days!), then VB3, then VB6. My father still writes toy programs in VB6. Things like binding Access DBs to controls was magical to me. What would it take to have a VB today? I feel like the web, APIs, auth, screen sizes, they’ve all become so complicated. And while Retool aims to make it as easy to develop, it’s just not the same. What would it look like to really feel “the same” as the good old days?
- Stratoscope 1y agoThank you! It always warms my heart to hear how people have used our team's work over the years. As to what it would take to have a VB today, VB.NET still exists: https://en.wikipedia.org/wiki/Visual_Basic_(.NET) https://en.wikipedia.org/wiki/Visual_Basic_(.NET) Maybe that would do the trick? Of course at that point you could also use C# instead of the VB.NET syntax (which is rather different from "classic" VB).
- 90s_dev 1y agoI am so close to announcing my project that I hope both you and the OP will appreciate, precisely because it aims to resurrect 90s development, to see if we can do better than we have in the past 25 years, standing on nothing but the benefit of hindsight.
- vikingerik 1y agoC# or VB.NET or MS Access with Winforms still exists and you can still use it, but you wouldn't for anything more than a personal toy. I don't think you can do anything nowadays that replicates the VB style of interface design. That was completely tied to a fixed layout and only a few desktop screen sizes, but everything these days needs screen size responsiveness from mobile to 4k. And you also need cross platform, accessibility to screen readers, language localization, dark mode, and so on. A flowable and styleable layout just works better for everything, and runs in the HTML/HTTP client that every device already has. Sadly the VB style of design was a temporary waystop and not an enduring norm. I guess the closest you could do would be a big HTML table and just let the small screens scroll biaxially painfully.
- derwiki 1y ago
- 90s_dev 1y agoIf my upcoming project takes off and makes any money, I would hire you in a heartbeat!
- antman 1y agoI would love just a new VB if you have the time….
- lucastech 1y agoI have to say, Visual Basic 4.0 changed my life when I was introduced to it at the age of 12. I had written Basic before that, but being able to build drag and drop create a GUI on top of my code was what really hooked me on programming. I built and sold my first desktop application at 14 that I wrote by myself in VB6 and used VB6 for all of my jobs through 21 when I had to upgrade a VB6 application to C#.net. I often harp on how much I wish someone would build a simple GUI for the modern desktop or web environment, instead of spending ages fighting css and javascript for even the most basic layouts. Visual Basic just removed all of the complexity, nothing filled that gap before VB or after VB. Sadly, even VB these days is a mess ever since winforms stopped being the primary target interface. Thank you for what you built, I've been writing code for 26 years now as a direct result of it.
- Stratoscope 1y agoOh my gosh! This means a lot to me. I should mention that wasn't just me. Alan Cooper came up with the initial idea and a prototype called Tripod and showed it to Bill Gates. After Microsoft funded the project, Alan hired me, and Gary Kratkin, Frank Raab, and Mark Merker to build out the actual Ruby product. And then a team at Microsoft melded it with Basic to become Visual Basic. I am really grateful that you and so many people put our work to good use!
- 90s_dev 1y ago> I often harp on how much I wish someone would build a simple GUI for the modern desktop or web environment, instead of spending ages fighting css and javascript for even the most basic layouts. I read comments like this nearly every day, and they make me so excited to announce my project soon! But I don't want to botch the release, so I'm trying to finish it properly and not rush or announce it too soon.
- edanm 1y agoAmazing! I learned QBasic when I was 12, then moved on to Visual Basic when I was 13. It was such an amazing experience! I'm one of the many people who still wish we had anything anywhere near as good today in terms of creating GUIs. It was an amazing achievement!
- Stratoscope 1y agoThank you! It means so much to me that you and so many others used what my team built. In all fairness, others in this thread have noted that the form design process back then was simpler than today. We didn't need to worry about mobile, high DPI vs. low DPI, and trying to get things to fit on any size screen. I do see some comments from @90s_dev that sound intriguing. If they are able to get that '90s development experience to work on our modern varieties of displays and devices, that could be quite something!
- edanm 1y agoI mean, I've been a professional developer now for more than 20 years, and it started with learning QBasic from a book and then building stuff with Visual Basic. So VB was literally life-changing for me. I even bought (and still have somewhere!) a book on doing graphics or VFX or something using Visual Basic, though I never really did much with it. I think it was Visual Basic with DirectX or something. Though funny enough I ended up working at Autodesk for a few years on things related to 3d printing and computational geometry, so I eventually did some graphics-related stuff.
- Stratoscope 1y ago> VB was literally life-changing for me. Wow. That is something every developer would hope to hear. Thank you again, my friend.
- lproven 1y ago> As they say, AMA! Are you also this Michael Geary? «Meet the first guy Steve Jobs ever fired at Apple ... and he wasn't even an employee» https://finance.yahoo.com/news/meet-first-guy-steve-jobs-130000349.html https://finance.yahoo.com/news/meet-first-guy-steve-jobs-130... «Why an Older Google Contract Programmer Left Google» https://www.businessinsider.com/why-an-older-google-contract-programmer-left-google-2016-10 https://www.businessinsider.com/why-an-older-google-contract...
- Stratoscope 1y agoOh yes, that's me! It's fun to revisit those stories. Some notes on the first one... The photo of me with the wild hair is actually from September 1977, when I took my mom and family flying from San Jose in my favorite Cessna, N20100. So just over a year after Steve and I first met. Here is the uncropped photo: https://pbase.com/geary/image/120224799 https://pbase.com/geary/image/120224799 Don't look up that tail number unless you want to shed a tear over what happened many years later to that airplane and the pilot and instructor flying it. :-( The health food store in Palo Alto was Country Sun on California Avenue, which is there to this day. Steve and I met at their old location, just down the street from where they are now. This was also the summer when I adopted my hippie nickname Truetone Stratoscope, after seeing an old radio in a garage sale across the street, with this on the back: EQUIPPED WITH TRUETONE STRATOSCOPE ELIMINATES AERIAL AND GROUND Diplomat wasn't an email client, but a service to connect different email systems to each other, with a Forth-based scripting language to handle the details of each email system and convert it to another. At that time, every online service had its own unique protocol. The Los Gatos health food store was Richard's Natural Foods. They went out of business many years ago, and their building is now Summit Bicycles. Strangely enough, Steve and I ran into each other at the produce aisle there, just as we had at Country Sun. The restaurant where we met in 2011, the last year of his life, wasn't in Menlo Park. It was La Strada on University Avenue in Palo Alto. The reason I didn't want to interrupt him was that he was having dinner with his daughter. I do regret that when Steve's daughter left the table for a few minutes (presumably to use the restroom) I didn't take a moment to reconnect. I am sure he would have enjoyed hearing the story about the disassembler. The second article seems to be behind a paywall, so here is an archive link: https://archive.is/hcTNa https://archive.is/hcTNa An odd coda to that article... Much more recently, I spent a year and a half at Wing, the Alphabet drone delivery company. A friend associated with the company pinged me for some urgent work on airspace data importers. This was right up my alley! The cool thing was that would hire me as a "temp", so I wouldn't have to go through any of the usual Google interview process. And then if things worked out, they could convert me to an FTE (full time employee) position. The "interview" was lunch with the team lead and manager. They knew I could do the job, I knew I could do the job, so we got started right away. A year later, Google changed the rules. Temps could no longer convert directly to FTE. They would have to go through the standard Google interview process, with one specific requirement: No one on the team you had been working with, who knew your work and your contributions, could be involved. You would have to interview with a panel of strangers who had never heard of you, who had no idea of the work you were already doing at Google/Alphabet for the team you were working for. It would be as if you were just some random person off the street who applied for a position at Google/Alphabet. It would not matter in the slightest that you were already working for a Google/Alphabet team who valued your work and wanted to keep you on the team. The great irony in the email that announced this change was that interns were eligible to convert directly to FTE. It explained that interns were already Google employees, unlike temps like me. I try to avoid swearing, but this was the most fucked up HR directive I have ever seen.