As I explained to Matt, I became curious about his story as his modules are such a big part of my VCV Rack experience. He was generous in giving me his time and also allowing me to share his story with you. I learned a lot from him and there are also a few great laughs in there. Enjoy.
Hello again, Matt
Can we start with these and I can follow-up if needed? I didn’t want to pepper you with an individual email for every question.
Are you the sole developer of the Bogaudio modules?
I am, yes. However, there has been quite a bit of help from the community: bug reports, feature requests and module ideas, testing, even a whole visual redesign that became part of the recently-released dark mode. This seems to be on the uptick lately, which is really great.
How long have you been making modules for VCV Rack? Are you involved in any other kind of development in music or synthesis?
Not quite three years – my first release looks to have been in November 2017, for Rack 0.4.0. This is my only music/synthesis development.
How did you get into modular synthesis? How long ago? Were you a musician in the past or anything like that?
This is where I shamefully admit I’m a terrible musician (I was in school band for a few years; I can find C-major on a keyboard; that’s about it). But, I’ve always loved the sound of synths, and many bands that use them, and electronic music generally. Around the summer of 2017, I was casting around for a new hobby, and decided to finally give it a shot, and get some synths, and try to learn to make a song, however terrible. I did the usual thing of buying some plugins, and then finding them a bit sterile and boring. I started looking at hardware synths, and discovered Eurorack (I’d been vaguely aware of 5U modular before), but of course it all seemed so expensive. Which put me in the right mindset to be very interested in VCV, when it came on my radar.
How did you decide to develop modules for VCV Rack? When was that?
Sometime around fall 2017, again, I came across VCV Rack, and it seemed to be exactly what I was looking for. It was still really new, and there weren’t a lot of modules yet (though already some really impressive ones) – but it was free, open source, anyone could make plugins, the plugin creation process looked reasonably straightforward, and everything was in C++, which I knew. So I gave it a shot, and it went from there.
Where are you from? Is there anything about your upbringing that led you to music / modular synthesizers / Bogaudio development? Is your day job technical or related to music or synthesis in any way?
I’m from the West Coast, USA, and live in NYC. I studied computer science in college, and work as a software engineer, and for some years a while ago worked daily in C++. The general programming/software aspects of developing for Rack came pretty easily, I had the right experience. On the other hand, I had never worked with digital audio or DSP before, but learning that stuff has been a big part of what makes this fun and rewarding for me.
How did you come up with the name “Bogaudio”?
It’s a blend of “bog” and “audio”…where of course a bog is a kind of swamp. Which came about as a more euphonious version of “bogo-audio”, where “bogo-” is an obscure bit of computer science jargon, meaning that something is bad, maybe even excessively bad, maybe bad on purpose…so naming a project “bogo-whatever” is kind of a tongue-in-cheek thing, like “don’t take this too seriously”. Naming things is hard, and I needed a name, and didn’t sweat it very much.
Did you have a general goal for what you wanted to do for VCV Rack or did you just go module by module? How do you decide what modules you develop?
My first modules were envelopes – at that time, there weren’t many envelopes available for VCV, so it seemed like it would be a useful contribution, and a relatively easy place to start, for someone who can code but doesn’t know DSP. Those turned out well, and I caught the bug, and kept going. The next modules were utilities, the sample-and-hold and offset modules, some others. At some point around then, I made a spectrum analyzer, because there wasn’t one. Then I made some oscillators, which required learning some real (if still basic) DSP.
Along the way, I’ve made a bunch of modules just because I had a random idea, or because someone else suggested them. A typical Bogaudio release is a grabbag, with some modules coming from my vague idea to eventually figure out how to make each part of a synth, and others being more leftfield, things that seemed useful or interesting at the time. (And always, every release has a lot of bug fixes.)
Some of your modules seem like they might be designed to be put together into to build larger functions. Is that the case? I could be totally off base about this but was simply too curious about it not to ask and thought it might also provide some insight
I think that’s right; to me that’s the ethos of modular, that generally modules should be building blocks, and you make synth out of them by patching. Related to that, one of my goals with the plugin is, for each module, it should be plausible that the module could exist as hardware – not that they will – as a bit of discipline on the designs. (I don’t always succeed in living by this rule; I over-rely on context-menu options, for instance.) I think this lends itself to making modules that do one thing, or mainly one thing. And of course, this being software, with no production process or inventory to think about, nothing stops me from making several related, smaller, single-function modules, instead of one complex one with several modes, or something like that.
How do you go about your development process? Do you tend to work on one module at a time? Do you set any limits for yourself? Do you keep a backlog?
When I start a new dev cycle, cycles being bookended by releases, I usually have a good idea of what the main theme will be, but then things come up along the way. For example, the last release was mainly dark mode – but along the way a community member suggested what became RGATE, which was an idea that grabbed me and was reasonably quick to pull off, so that ended up in the same release. The cycle before that was mostly the parameterized EQs, but CMPDIST was in there as well, again from a suggestion. If something seems interesting, I’ll go for it.
I do have a backlog, though it’s usually pretty vague. The next release will (probably) include some kind of low-pass gate, or probably more than one. After that, I have some ideas, but nothing’s set yet.
What’s your favorite Bogaudio module? What was your favorite module to develop? Are there any interesting stories behind any of them that you’d like to share?
I’m kidding, but: how do you pick between your children? That said, ADDITATOR is one of my favorites to play with, because it makes wild sounds. FM-OP is seemingly everyone else’s favorite – I am grateful for and humbled by the reception that has gotten. ADDR-SEQ is a favorite (which if I remember correctly only exists because Omri suggested it, or something like it). ANALYZER is probably the most complex piece of pure engineering in the whole plugin, whereas the filters have, far and away, the most complex DSP.
Are there any modules that you didn’t want to do? why? Why did you do them?
Not really…there have been a few requests I was initially skeptical of, but ended up liking how they turned out. There have been some requests/suggestions I’ve turned down, and some others that are good but I haven’t gotten around to yet (sorry!).
Are there any particularly underappreciated/underused/misused/misunderstood Bogaudio modules? What would you like people to know about them?
Honestly it can be quite hard to tell what people are using or what they think of it. Sometimes I’ll think no one is using some module, but then I get a bug report about it…so at least that one person cares!
VCF may be misunderstood (or maybe it’s just not very good; certainly there are many better). Probably naming it “TECH VCF” or something like that might make the intention more clear, that maybe it’s more useful as lab equipment or for sound effects than for music – at least, that it probably should not be anyone’s go-to general filter. I am proud of its smoothly-modulatable filter slope, which I believe is a fairly unique feature (I’m sure there are DAW plugins that do it). Processing noise through it with an LFO modulating the slope makes nice waves-on-a-beach sounds.
Do you have any favorite non-Bogaudio modules or developers in VCV Rack?
I don’t want to start naming names, because then I’ll forget someone. Suffice to say I’m really impressed by and appreciate the work of so many of my peers in this. It must be said, though: Leonardo of Vult is our king.
Do you have any advice for other devs?
For devs starting out? Maybe, ask more questions – so many people in this community want to help and like explaining things. And most everything is open source, don’t be shy about spying on other people’s code (I mean, respect any licenses, but the code is there to be seen and learned from). And now that the space is a bit more crowded, it may seem like your stuff isn’t being noticed, but stick with it, people will find it.
Is there anything in particular you are excited about re VCV Rack? v2?
I think, no question, Rack for DAWs is going to be a big deal.
I wasn’t around for v0.6. What was the process like to port modules to version 1? Do you have any advice for developers to prepare for porting to v2?
The port to V1 was a lot of work. Andrew provided some solid guidance on how to do it – what changes were required – which made it relatively easy to get things working. But then there were several new features to implement, like parameter tooltips and parameter entry. I probably had 50-ish modules at that point, so while it wasn’t a big deal to fix any particular module, there was a lot to do.
V1 also introduced polyphony, which was optional to implement, and it took me some months to get around to it. Again, a lot of work, though it ended up being a chance to refactor and clean up a few things, so all to the good.
Andrew has stated that V2 is going to be a simpler, or maybe trivial, port. There will be some new features to exploit (port descriptions, labelled switch values), optionally. It shouldn’t be bad.
It doesn’t look like you are very active in the VCV Rack forums. Are you more of a private person and mainly stick to to Github or is their somewhere you hang out and shoot the shit?
That’s some mix of me being private, busy, and a bit lazy. I will post if I have something to add – when I cruise by the forums, once a week or so, I might see something I could answer or comment on, but often by then whatever I would have said has been said already, and probably better. I have an @bogmodular instagram – I mostly use it to keep up with announcements from the hardware Eurorack manufacturers – and have started announcing Bogaudio releases there. But indeed, Github is the best place to get my attention.