#Linux is so fucking cool. A few years ago, I tried to install #VisualBasic 5 on a windows 7 machine and eventually had to install an entire #win98 #VM to get it running.

Meanwhile, in #Linux land... Incredible nostalgia

Things I had forgotten about Visual Basic:

*You define types with the keyword DIM, apparently short for "dimensions" as in the dimension of the type in bytes
*+=, -=, etc don't exist
*AutoRedraw on/off makes certain things unable to be removed by cls
*Polling joysticks is annoying as hell

When I was 11 years old, I was about 2 years into my journey as a #Computer #Programmer, but had been limited to #QBasic, outside of the occasional dabbling with #Apple #Hypercard at school. I wanted to do more, but C was a bit too advanced for me. That christmas, my #dad surprised me with a boxed copy of Visual Basic 5.0 Enterprise edition. At the time, it was like $500. One of the greatest presents I have ever been given, I had no idea VB existed or that it was exactly what I wanted.
He bought me this giant book to go with it, it was like 900 pages big. I took to it immediately. Keep in mind, this was before stuff like Click and Create existed. The idea of a #gamemaker software that had a visual IDE was still several years off. There was no #UE4, There was no #unity. Visual Basic was intended to build quick windows apps, but I used it for #gamedev, and boy oh boy did I figure out how to do some cool shit with it.
My first #gamedev projects with Visual Basic were simple. I'd take a picture container, stetch it over the window form, and boom, that was my background. I could load images into it, and scroll it with simple commands. I could put other picture boxes inside that picture box, like sprites, albeit with no alpha channel. I could send events on key down, which let me map the keyboard to stuff. I made quite a few simple #platformers and #shmups this way.
Eventually, I got tired of having only opaque images, so I started to read that book. That's where I learned about GDI. GDI was the old, ooooold windows 9X drawing backend. You would point to a target window context, then feed it two bitmap images, one of your pixels, and one that was black and white as a mask for transparency. Over a summer I learned to blit and plot pixels to raw window forms, eliminating the need for picture boxes, and building a makeshift rasterizer.
By the following christmas, I had also figured out about how to poll the gameport in Windows. This was *ENORMOUS*, remember this was back in the MS-DOS era of games. Reading from the joystick port in DOS was hard, but thanks to windows and visual basic, I could do it. It was such a round about way, I had to poll into a state object, then query the object, which returned states as integers, like analogue values. I had to use thresholds for dpad input. But it worked!
A year after I had gotten VB 5, I had what I considered a viable platform for windows game development. I could draw graphics to the window, read from various inpus, and also knew how to load and play back music. I could design the menu in my games with the VB editor itself. At the heart, everything was just the same QBasic syntax I already knew when it came to writing my logic.
I made a *SHIT LOAD* of games in Visual Basic. Imagine my surprise when, several months later, I was reading online that "visual basic is poor for game making" lol. Everything I was doing in Visual Basic, people said you couldn't do. I guess they had never bothered to experiment beyond the form control toolbox. But it's heart, it was QBasic + Windows GDI, and that was so damn powerful. I will always have a spot in my heart for VB5.
In december of 1998, I attended a meeting at the PC Users group my dad and I belonged to. They were holding a sort of #demoscene competition, not really focused on actual demos but more neat programs people had made. I showed off a Fantasy Zone inspired Shmup I made, and people wound up voting me as the winner. They gave me a copy of Visual Studio 97 as a prize. Visual Studio was like $1500, mind blowing for me at that age. it had Visual #C, and that's how I got into #C++.
Picking up C lead me back to my PC Users Group, where they would hold special interest group meetings on Saturdays. I met a young man who worked at NASA who was a nerd just like me. He was into Anime and Video games, and he had been in the middle of reverse engineering Ultima. He ran Linux, and worked with OpenGL, and the at-the-time brand new SDL. He became my mentor, and over the course of the next few summers, I moved to Linux and took up OpenGL, and we ported Ultima I-IV to Linux: