Create your own Synths/VSTs in Windows
tl;dr – get the demo of SynthEdit
This is historical as far as I’m concerned, I’ve avoided MS software like the plague for a very long time now. But this was a case in a closed-source environment where things worked very well for me. Was about 10 years ago, so YMMV, but I’ve no reason to think it’s not still valid now.
What happened was I’d bought a 4 in/4 out soundcard and had wasted a few days trying to get Linux drivers to work (has to be said things have improved significantly on that front – I recently bought a USB 4×4 and on Ubuntu it pretty much just worked).
I had a MS Windows license so slapped that on a fresh drive partition, loaded the soundcard manufacturer’s drivers, I’m away. It turned out that at the time I had to pay about $70 for minimally usable DAW software (I should imagine fairly good ones should be available free/open source now).
I‘m perfectly happy to pay good money for software, but it’s the closed-source model I dislike, life is too short to list the disadvantages compared to open source. *
I’d dumped all the hardware synths etc. I had when I left the UK. There are plenty of software ones around, but I missed the flexibility and above all the user interface benefits real machines offer. Patch cables are a hassle. But you can see, feel and hear exactly what’s going on. Even more importantly IMHO, you need lots of knobs.
At some point I stumbled on SynthEdit. It took a little while to get used to, but the paradigm it used was for me very familiar from playing with analog synths. Graphical interconnection of modules.
Learning how to use it, I wound up building a synth based around the bog-standard MIDI keyboard I had (an Evolution MK-449, cheap and cheerful). At some point in the past I’d had a lot of fun with a Roland SH-101 so that gave me something like a target.

What it looked like in the real world (and very similar on-screen) was:

I couldn’t find my original material online (must be in a backup somewhere…), so you have to imagine.
The beauty of SynthEdit was that you could export as VST. So after a couple of weeks learning/fiddling, I essentially got a customised SH-101-like instrument plugin.
I think I paid about $60 for the SynthEdit license, it’s now double that. But the free demo looks to be largely usable, so if you like synths, I’d strongly recommend having a play.
I did play around with more interesting virtual instruments, but then the computer I was working on died a death, and I forgot all about this, went back to Linux-based stuff. Only now really getting back into it properly.
This Weekend
What prompted me to remember this was a chat with Jim the other week about music room stuff. I mentioned that I’d got a Blofeld Waldorf. It’s a really capable little box and I thought would cover my analog synth longings and fulfil my knob-twiddly needs. But it’s sat mostly neglected the last couple of years ago. Bit dusty :

It was a headslap when Jim asked if it was possible to map out the functionality over MIDI. Yeah, it must be. In fact I must have done this before, but certainly hasn’t been in my consciousness recently. So obvious: to get the knobs, just map it over to the keyboard like I did with the SynthEdit thing.
So that’s a job for this weekend.
Oh yeah, if I wanted to create a custom VST today, I wouldn’t. I’d make an LV2 plugin instead. My C/C++ coding is pretty atrocious, but LV2 covers a major part of what is required in declarative files, the horrors kept to a minimum. Rather joyfully, it uses RDF.
* I’m about to try the demo version of Reaper. Closed-source, but judging by what I’ve read I suspect it might be a lot better than the tools I’ve been using and the license is only $60.