PART 3 – HELPING OUT
So UI work is sometimes referred to as “Look & Feel”, and most people spend ALL their time on look. Big mistake. Feel is actually much more important. So I wanted to make the instrument easier to use. I’ve been using it a lot, no surprises there, and spending a fair amount of time clicking on those 5 Sound and 5 Voice buttons, then changing values in their little pop up dialogs.
All this takes time, lots of time. So it seemed to me that a nice-to-have would be some control that would intelligently set the parameter values and the on/off states for these 10 buttons. So I implemented a dial for Sound and another for Voice that does just that – set to zero and all controls are off for that set (that was a god-send right there..), gradually increasing the dial increases the number of controls that are turned on and the “richness/complexity”? of their parameters, with some smarts for the effect/position combination – so for example repeats become more likely to happen the higher the dial and the number of repeats used also increase the higher the dial goes, with some randomness thrown in, and Repeats are more likely to show up on beat 1,5,9 etc.
Meanwhile in the background… I’d noticed that these Voice and Sound settings were pretty specific to a loop. Currently they’d been implemented as 12 different sets (one for each loop slot). I changed this to be specific to the named loop. What does this mean? Well… if you loaded a loop named (say) MyFirstLoop into slot 1, and then changed any of the 10 control sets in some way, these control settings were remembered by Slice as “applying to any loop in slot 1” so they would stayed the same no matter what loop you loaded into slot 1. In this new version Slice remembers the 10 sets for MyFirstLoop and every other loop in the product, then reloads that set up when you reload MyFirstLoop. I also realised that I needed a quick and easy way to copy entire set-ups between loops. So I also implemented an Alt-click on the Voice and Sound buttons to copy the current Voice and Sound sets, and Shift-click to paste these sets into another loop.
Once that was done it was obvious to do the same thing not only for entire sets of controls but just for the controls in a single pad, so Alt-Click the pad and its settings are copied, Shift-Click on another pad and those settings are pasted into the pad. These sorts of additions are never really obvious – and never show up in any marketing or sales material, but they are the sort of things that make using a product MUCH more enjoyable – they don’t add sales, but they do add loyal users, and as one of those users I get to benefit as well as feeling dis-proportionally happy about doing them. No idea why.