PreSonus Blog

Bug Hunting

You know you’ve just done a major release when you spend the entire day doing nothing but answer emails and you still have more in your Inbox than you had when you started. That was my entire day yesterday – I think I got to what I laughingly call “home” at about 11pm, and then I was so pumped up I ended up catching up on old episodes of Dexter until the wee hours of the morning just to relax.

Today I’m having a look through the forums to see how we’re doing as well as passing on some bug reports. Although this thing has been in beta for months (we really did a long beta test), it’s inevitable that in software this complex there are going to be bugs that everyone misses. You might think that’s ridiculous, but you’d be surprised.

Let’s take the most simple thing I can imagine – say we are in the business of releasing a new, improved coin flipper. It’s a coin that you toss up and it comes down heads or tails. That’s about as simple a product as I can imagine – there are only two variable states that you can have: heads or tails. What could possibly go wrong? But let’s assume that thousands of people buy Coin Flipper and start tossing it up. Sooner or later, if enough people toss it enough times, by some bizarre turn of events, it’s going to end up on its edge instead of landing heads or tails. That’s a bug. OK let’s solve that! Easy solution: we mill the edge so it is really thin to make it harder for the coin to land on its edge and stay upright. Everyone is happy with the new, improved Coin Flipper 2.0. But then some newbie with no experience tries catching it and the new improved thin (and now very sharp) edge cuts them. Ouch! So by fixing the little tiny bug for pro users we have created a really major bug for new people entering the fine sport of coin flipping. The forums go crazy with users screaming at the Coin Flipper developers for missing such a huge bug. And so it goes…

Now that’s the simplest example I can think of. Multiply that by the (literally) millions of permutations of things that people want to do with a modern Digital Audio Workstation and you’ll get some idea of what bug fixing is like. And we’re pretty lucky compared to some companies out there, since the internal Studio One code is really modern, modular and efficient. It’s a lot easier and faster for us to fix bugs than it is for some of the other guys. That’s why if you look in your PreSonus User Account you’ll find that the installer for Studio One 2 in there is already 2.0.1 build 16909 even though we only officially released version 2.0 on Tuesday morning. And I’m writing this one Thursday afternoon…

Actually the biggest problem I find with bug fixing is people frequently don’t report them. When I’m out doing shows I get people coming up to me all the time saying things like “Well I guess you know about this bug already, so why didn’t you fix it yet?” and then mention something that I’ve never heard of. When I ask if they reported it, the answer is usually “I just assumed you guys would know already.” No, we don’t – unless you tell us. Pretty much everyone at PreSonus is a musician and a Studio One user in our “spare time” so we do actually find stuff all the time – that’s how we come up with our ideas, we scratch our own itch as they say. But we can’t possibly cover all the millions of things our thousands of users come up with, so please please please do tell us when we screw something up. That’s how we make this stuff better.

We’re not going to be happy until we’ve created the greatest piece of music software the world has ever seen. So beta testers and bug hunters: thanks for helping us with that. We really do appreciate it.  🙂