Reason is a virtual recording studio from the Swedish company Propellerhead. First released in 2000, It is probably the most complete example of a software studio environment in existence, and it sets an example that other software companies should probably follow. But what on earth does it have do to with video? In my view, this is quite simply the way all software should be written.
Now that's a rather sweeping statement, so perhaps I should clarify. Bear with me.
There's never been any doubt that Reason is a tour-de-force in virtualisation. Let's be clear about this: to anyone that's ever worked in an old fashioned studio where you have to plug physical cables into actual sockets, and where audio really does flow through the faders in mixing consoles, then what Reason does is nothing short of miraculous. If you've never seen Reason, it's a complete emulation of a recording studio where reverb units look like the real thing, and virtual synthesisers are so faithfully rendered that you can even see the shadow move when you yank the virtual pitch-bend wheel as you're playing.
Round the back
Connecting your digital kit together is simply a matter of hitting the Tab key and swinging round to the back of the rack, where you'll see all the ins and outs on the backs of the units, all rendered equally plausibly when seen from the rear. To move a connection, you pick a chord with the mouse, and - with convincing animation (the chord wobbles if you move it quickly), move it to another socket. Again, just like the real thing.
Reason's not alone now. There are thousands of virtual instruments out there and several complete virtual studio environments, all with their own user interfaces and operating paradigm. And that's a good thing, because sometimes I want to work with Ableton Live's scene-based method, and sometimes I like a good old linear multitrack timeline.
No, what makes Reason special now goes beyond its innovative and engaging user interface.
Until recently, you've been stuck with the instruments and devices supplied by Reason. That was hardly a bad thing because with so many possible combinations and permutations you were unlikely to ever run out of new things to play with. Reason didn't support plugins.
But now it does. And this is where good becomes great.
The problem with plugins, is that they all have their own mini-user interfaces. They all work in different ways. They connect idiosyncratically, and if you want to undo something, you have to undo within the plugin. (Undoing using the host application's "undo" can even destroy the instance of the plugin.) It's as if you were using a Mac, but the designers of your applications had never seen the Mac OS.
Propellerhead has changed all of this with what they call "Rack Extensions". These are plugins in the truest sense, but they confirm totally to Reason's User Interface conventions. So they look and feel just like genuine Reason devices and instruments.
And this functionality goes beyond how they behave superficially. All the I/O from the devices uses the Reason method: tab, spin round and move the patch chord. You undo and redo from Reason's own menus. Perhaps best of all, from the developer and the user's point of view, is that all the plugins are truly cross platform between Windows and the Mac. Reason takes care of the differences.
Finally, and I don't think Propellerhead would claim any originality for this outside of the sphere of virtual studio plugins, all applications are available from Reason's app store, and to get in there in the first place, they have to work perfectly with the host software.
So, what does this have to do with video?
Well, video is very different to audio. But the message here is that perhaps video application designers should provide a richer host environment for their plugins. It's OK for host applications to be idiosyncratic if it helps the workflow (that's why you have a steering wheel in your car instead of a menu) but plugins should be allowed to be consistent within that environment.
Users should be able to use little more than their knowledge of the host application to understand how to use a plugin. This is one case where you shouldn't have to "Think Different".