Interview by Jari Williamsson, February 2005
Robert is the creator of the popular Patterson plug-in collection. Here he shares some details about his different plug-ins as well as his own Finale work methods.What's your background?
I am a composer, horn player, and computer programmer.
When did you first start to use Finale?
I started using Finale at version 1.0 when it first came out in c. 1988.
When, and why, did you start to develop the Patterson Plug-in Collection?
I began developing the plug-in collection because of several severe shortcomings in Finale that were causing me many hours of tedious manual work. Although Patterson Beams was not my first plug-in, I knew from the beginning that I would write it, because the single biggest time consuming factor for me was editing each beam manually.
How would you describe the evolution of the collection during the years?
Each plugin I've added has been to address a need that I had as a user of Finale. I started small, with the first version of Measure Numbers, and gradually gained knowledge of the plug-in interface. Eventually I felt ready to tackle some of the bigger challenges, such as Patterson Beams.
Has feedback from other users been imported during the development of the plug-in collection?
I received a great deal of feedback from users of Patterson Beams. Many of its features are not ones I use personally. A plugin that developed almost entirely from user feedback was Copyist's Helper, although it is not included with the Patterson Plug-Ins Collection, per se. (Copyist's Helpers targets some rather specific needs of theatre copyists in New York.)
Many Finale users may only be familiar with the Patterson plug-ins bundled with Finale ("Patterson Beams" and "Beam Over Barlines"). What are they missing?
Perhaps the most versatile and useful plug-in in the collection is Mass Copy. It is certainly the one I use the most. Due to limitations in how plugins can interact with Finale, Mass Copy has a somewhat unusual user interface. This has proven to be a barrier for some users. But with carefully chosen keyboard macros to activate it, Mass Copy is quick, convenient, and powerful. Most users who have mastered it depend heavily on it. That certainly includes me.
Mass Copy duplicates many of Finale's built-in Mass Edit functions. But that is just the beginning. It is superior to Finale's Mass Edit in a number of key ways. Perhaps the two most important are that it works independently of barlines, even for measure-attached items like hairpins, and it can replicate patterns over large vertical and/or horizontal regions.
The other plugins serve specific tasks, and many are quite useful when they are needed. Many users enjoy Tie Mover and Tuplet Mover, which respectively edit ties and tuplets. Page Mover is quite useful if you want to change your page sizes without having to re-do the page layout. Staff Sets is indespensable for working with large band or orchestra scores in scroll view. Settings Scrapbook allows you selectively to transfer preferences from one file to another.
Regarding "Beam Over Barlines", which are the major differences with the full version and the "lite" version (bundled with Finale)?
The full version of Beam Over Barlines has a dialog box with options. Initially it is not as convenient as the "lite" version, but you can create Saved Settings to replicate the menu options for the "lite" version. The lite version provides two canned settings without a dialog box for changing them. There is nothing stopping you from running both at the same time.
One of the options in the dialog box (not available in the lite version) is the ability to rebuild beams over barlines that you created before. This is useful in extracting parts, where the system breaks fall differently than in the score, and where the spacing may be different.
For first-time users of "Patterson Beams", the number of options may seem overwhelming. Where do you suggest one should start to get the most out of it?
Ignore all the options in the dialog box and just press OK. The default settings produce excellent results. You should only worry about the settings if you are dissatisfied with the results.
Which plug-in from your collection do you think is the biggest time saver? Why?
For most users, I believe the biggest time-saver is likely to be Mass Copy. I described it above, but descriptions do not do it justice. You have to use if for a while to fully appreciate its power.
For me, another huge time-saver is Patterson Beams. But one reason it saves me so much time is that I am so picky about beam placement. A user who does not care about beam placement will gain little time savings from Patterson Beams, because that user would likely not bother to edit them manually.
Finale 2005 has a number of new tuplet options for tuplet positioning. Is there still a need for Tuplet Mover?
This depends on whether you are satisfied with the new tuplet positioning in Finale 2005. If so, you will not use Tuplet Mover. (Tuplet Mover ignores tuplets that utilize the Engraver Tuplets option, as well as a number of the other new options.) Personally, I still use Tuplet Mover, which means I have disabled the new features in my default tuplet settings.
What would be a typical usage of the Tie Mover plug-in?
Tie Mover has a number of uses. It allows you to move ties on spaces or on lines only. Finale's tie settings allow picky engravers only to set up ties correctly for one or the other. Tie Mover then moves the incorrect ones to where they need to be. Another use is inserting parenthesized accidentals on system breaks, and/or removing when they are not on a system break. (Think, for example, of extracted parts.)
What tools do you use to develop the Patterson plug-in collection?
I use CodeWarrior 8 on Mac OSX. It generates both the Mac and PC versions. I do as much debugging as possible on the Mac, but I occasionally must debug problems in the PC world, which is significantly slower. CodeWarrior provides a cross-platform debugger that runs over a network, but I have never gotten it reliably to work with Finale plugins. I often end up debugging Windows problems by means of writing to log files.
Which of your plug-ins has been the most "tricky" one to develop? Why?
Patterson Beams was probably the most tricky. Even now, every time I change it is worrisome because of the possible unintended consequences. But my code is organized for heavy reuse. Each new plug-in builds on code developed and tested for the previous one. Therefore, a new plug-in may not be complicated now, but it might be quite complicated if I were starting from scratch.
Suprisingly, one of the most complex pieces of code is the code to determine where a note is in the staff. Finale stores notes as relative scale positions in the current key. So to determine if a note is "C" is quite complicated.
What would your advice be to a developer who would like to develop his/her first plug-in?
Choose a small project that is not related to the note data. My first was an editor for the measure number regions. Also, do not forget to download and explore the source code for Makemusic's plugins.
I know you're a big fan of using rotated monitors in Finale. Could you tell how this works and why it's a benefit to Finale users?
Screen rotation is a combination of software and hardware that allows you to change a monitor between portrait and landscape modes. When I first began working on music in portrait orientation, it was one of the most liberating experiences I've ever had in Finale. It is difficult to fully appreciate the difference without trying it. For more information and a photograph, visit the Tech Tips FAQ at my website.
In what direction would you like Finale to move in the future?
Finale has reached a level of maturity that I hope any future changes will be incremental and evolutionary. I expect there will be an overhaul of the Articulation Tool soon. If that happens, I expect to see separate flippable over/under settings for them.
I wish they would add long slur/phrase marks, but I'm not holding my breath. (The lack of long slur/phrase marks is the remaining missing feature preventing Finale from being a premium engraver's tool.)
One of the more intriguing possibilities is expanded interaction for plugins. Finale could conceivably allow plugins to add themselves to appropriate context menus or register for automatic execution at the end of a frame edit. (The latter would work much as Automatic Music Spacing does now. Imagine if users could request Automatic Patterson Beams, for example.) Finale currently provides no approved mechanism for storing 3rd-party data in a Finale file. That would open up new worlds. I could use that right away in my Staff Sets plugin.