Production Expert

View Original

Would You Rather Have Bug Fixes Or New Features In Pro Tools? You Can't Say Both - Poll

We have come to expect, when we post an article about the latest version of Pro Tools being released, that we will get the inevitable cry of ‘fix the bugs first’ as well as the cry of ‘why am I spending all this money and getting no features’. In this article we will look at bugs, what is, and isn’t a bug and the challenges developers like Avid face in trying improve an established product. What new features should they introduce and how should they balance the need to fix bugs and add new features?

Fix The Bugs

Bugs in Pro Tools. It’s one of those subjects which will always bring out strong feelings in the community. If someone was researching Pro Tools having never used it, based on all the comments across the interweb they could be forgiven for concluding that Pro Tools is a ‘completely unfit-for-purpose crash-fest’. The worrying thing is that somewhere, someone reading that is nodding sagely in agreement. The problem with bugs is that we, the users think we should be the people who are best placed to appreciate the performance of Pro Tools but we’re not. We’re actually perfectly placed to have a singularly distorted view of the real situation and we will explain why.

Here’s a simple analogy: You hear a crackling sound from your studio monitor. The monitor is crackling, therefore your monitor isn’t working correctly. Everyone understands an analogue audio chain like this and we all understand that the crackling might be recorded to the source file, it might be glitchy playback behaviour, it might be a bad cable, it could be a hardware component in its death throes, it could even just be distortion because of poor gain structure. It does illustrate a potential issue with complex systems like computers - The thing which is presenting the problem isn’t necessarily the cause of the problem. Pro Tools might be the thing which is crashing but it could be the OS, a driver or more likely a plug-in which is causing the issue.

What makes the issue even worse is that as more and more of us are working alone, so we have a wealth of data on the performance of Pro Tools based on a sample of one. You don’t need to be a statistician to appreciate that a sample of one isn’t big enough to draw any conclusions from. Of course in the 21st century, while we might be working in isolation we are all members of a global community of Pro Tools users - right? Well, yes, but unlike actual colleagues we might see every day, the self-selecting nature of the members of the online community who contribute to the conversations we can access online tend to be the people who are most motivated to cross the threshold between observer and participant. These motivated people tend to be people with something to say and human nature being what it is, people don’t tend to post things like “Pro Tools has performed without incident all day”. However the user who has just lost an afternoon trying to outwit a bizarrely behaving Pro Tools system (obviously at the worst possible time - we’ve all been there) will probably be feeling very (ahem) “motivated” to share his or her experience with the online community. This is known as “participation bias” and it can lead to very misleading conclusions.

When Is A Bug A Bug?

Putting to one side the non-response bias introduced to online conversations by people for whom Pro Tools is working just fine, when can erratic behaviour while using Pro Tools (or any other software) be justifiably referred to as a bug?

Reproducibility is the principal identifier of a software bug as opposed to erratic behaviour of a single computer system. Conversations that seek to identify whether a perceived bug is indeed a bona fide bug, tend to irritate people who are experiencing them but it is important to examine these “bugs” carefully. The key here that is often missed, is that if the bug isn’t reproducible across multiple systems and particularly if the so-called bug is possibly due to a lack of care in the maintenance of the host system, the responsibility for the inconvenience of the problem should move from the company who made the software back to the user. But with human nature being what it is, no-one likes to admit they are wrong so it’s understandable that discussions around bugs can get heated.

If you have ever tried to write code for software you will appreciate how quickly it becomes very complex. The reality of the situation is that there is no such thing as bug-free software. We also hear users complaining saying things like “Why should I be their beta tester?”. This is understandable, though it has to be said that bugs are a fact of life, the question is how many are there and how serious are they?

So how serious are they? Well we don’t get to see the bug reports but we do get to see the bug fixes. Of course the suspiciously minded might conclude that there is a huge pile of critically serious bugs which we don’t get to hear about because they don’t get fixed or acknowledged. This might be true but taking as an example Pro Tools 2018.4, the bug fixes which were documented in Pro Tools 2018.7 offer some kind of window into the bugs in Avid’s pending tray…

Looking at them the main conclusion we reach is how specific they are. For example one of the ones which strikes me as most likely to affect us in our use of Pro Tools is

“Option-Shift-clicking on panner with both a mono and stereo track selected no longer crashes Pro Tools”.

Another example, this time from the bug fixes in 2018.12 is

“Fixed a crash that would occur after freezing a track and switching the timebase between samples and ticks”.

Both of these are the kind of things, which would definitely show up eventually but we find it perfectly understandable that they haven’t presented themselves during time limited beta testing. It’s easy to say that testing should be more thorough but there will always be a law of diminishing returns going on and the pressure to find bugs will always need to be balanced against the pressure to release software in a timely manner.

We can see on each software release how many bugs have been fixed, if you look at the Pro Tools Release Notes you’ll also see a Known Issues category, which offers some insight into what is still in the pending tray at Avid. There are plenty there and some are quite serious. From the Pro Tools 2018.12 Mac Release Notes we find things, which if they affected your system would really spoil your day. For example…

“Three-hour Bounce to QuickTime results in timeout. (PT-237050) When bouncing to QuickTime at a length of 3 hours (or more), the bounce may fail due to a timeout waiting for AVE. This is issue occurs intermittently, and rarely. The only known workaround is to simply Bounce to QuickTime again.”

Sounds particularly frustrating considering how long that three hour render probably took before it timed out but then again a majority of us have never bounced anything three hours long so it’s most likely affecting small numbers of people.

Another example of a bug taking a long time to show up, if Avid hadn’t been as careful with their beta testing, is the problem of implementing extra voices on HDX cards. You can learn more about this in our article Pro Tools 2019 - Why Is There A Delay In Releasing New Product Features? Avid Explain In This Exclusive Interview.

Clearly there is a balance to be struck here. “No bugs ever” is unrealistic and the pressure to comply with new operating systems means that the 100% stable version of Pro Tools everyone would like is fundamentally a moving target.

Software that doesn’t work well enough is unacceptable so the practical solution lies somewhere between these two extremes and clearly this is why there is so much debate. Companies have finite resources and a finite time in which to deploy those resources. Should they spend that time fixing the borderline bugs, which affect small numbers of people or should they spend it creating new features which far greater numbers of people are asking for and stand to benefit from? Which brings us onto new features…

Give Me New Features

When it comes to new features, any product needs to develop, to grow and change to meet the needs of the users. New feature ideas come from a range of sources, many of which are effectively are behind closed doors. Within the Avid development team, a lot of the Avid team are also Pro Tools users and so they hit issues and limitations just like the rest of us.

As to ways that users can feedback feature requests, Avid has changed the channels of communication. The Pro Tools Ideascale, once the main channel to report bugs as well as suggest feature requests is no longer an active channel.

Avid now asked for bug fixes to be reported through these forums rather than the defunct Pro Tools Ideascale…

For feedback on new features, Avid now provides Production Feature Request Lounges in the Lounges section of the new Avid Link app.

Then there is the ACA survey and poll. This year’s poll and results make for interesting reading, but there are still a number of feature requests on there that were in the top 25 on Pro Tools Ideascale and then high up on the all 3 ACA polls but still have yet to be implemented.

But why do we need constantly need new features? Do we feel that the product isn’t worth spending money on without new features. Surely if the product does the job, it does the job. If it ain’t broke, don’t fix it.

There will be new features needed as workflows change. When surround became a key part of film post production, it was essential that Avid added 5.1 and then 7.1 support. Similarly with immersive formats, Avid has added Dolby Atmos and Ambisonic track support, although they are yet to support for Auro 3D or MPEG-H.

At the moment Avid seem to concentrating on improving workflow and trying to stop the tech getting in the way of creativity. The desire for Pro Tools not to stop when changing routing or inserting or removing a plug-in wasn’t at the top of the feature request surveys or the Pro Tools Ideascale, but ultimately we are creatives and so feature changes like searching for busses, plug-ins etc and Pro Tools not stopping are examples of trying to keep the mechanics from interfering with our creativity, and so you can understand why Avid are concentrating resources to make our workflows smoother.

Another key area of development has been an adjustment in the relationship between HDX and host powered Pro Tools systems, this is a big subject and very much a current area but the need for immersive sessions to be accessible, at least for editing purposes, to users of less powerful systems has built on the changes to the old HD/Non-HD software divide, which became necessary to ensure session compatibility between users of the collaborative tools introduced with Avid Everywhere.

As new features are introduced, they change the Pro Tools ecosystem and maintaining compatibility between versions both retrospectively and across the current product range is more important to Avid than it is to companies like Apple who are much more willing to break retrospective compatibility to facilitate new features. In short, new features can have wider consequences than are immediately apparent.

The new features requested by the community range from practical workflow enhancements, which would potentially benefit everyone, for example folders in the clips list has probably been a requested feature for as long as I’ve been using Pro Tools, through requests from people who want their favourite feature from another DAW implemented in Pro Tools, to requests for extremely specific features such as particular amplifier sims for Eleven Rack. While there is broad agreement among most of the community about folders in the clips list, undo deleted tracks or improvements to the markers, there are plenty more that have a very slow following. Just take a look at the now retired Pro Tool Ideascale and scroll down to see feature requests with just a handful of votes.

Time For You To Decide

There you have it. Now it’s time for you to choose. The choice is deliberately binary. Which is more important to you, bug fixes or new features? Both is not an option.

See this content in the original post