|
Spring has finally arrived in Stockholm. I mention it only because there's a quality of north European light returning after winter that genuinely affects how work feels. The past two weeks have been quiet on the Ooloi front, code-wise. I'm being onboarded into a large AWS project at work, where my decisions will eventually affect roughly five thousand developers, and onboarding at that scale absorbs a great deal of attention. What Ooloi work I've done has been architectural cleanup: the sort of small consolidations you make when the ground is about to be built on. Data field validation refactored to be entirely general, for instance. Not glamorous, but the kind of work that matters once it has disappeared from notice. Ross also arrived this week. The 1987 third edition, posted from Melbourne in a padded envelope, in pristine condition, and now on the desk where it belongs. Two weeks ago I wrote that I needed the book and couldn't buy it. The void was listening, as the coda noted. It is one thing to write that, and another to hold the consequences. The book is dense and beautifully exact where it counts. It's also, in places, at odds with itself, which is the honest record of any craft this old. The beaming section alone runs to fifty pages and doesn't entirely agree across them; the accidental positioning sections give horizontal spacings down to fractions of a stave space. Exactly what I'd hoped for. Translating it into data and code will be a pleasure. What strikes me paging through is how much of the material I already know in some sense. Musicians absorb this kind of thing through a lifetime of reading and writing scores. The interest is not the content as content; it's the formalisation. Ross surfaces principles that intuition alone never quite articulates. He's rigorous about things most musicians never have to put into words, and that's where the real value sits. It's also what makes the book usable as a specification rather than as commentary.
The road ahead, briefly. The Piece Window comes first, multi-user collaboration aware from the start, built on the patterns the Instrument Library established. After that: frontend session persistence so windows reappear where you left them; the Piece Preferences window (also collaboration aware); clock skew compensation for reliable distributed undo and redo; and the full multi-mode client work, with Google-Docs-style permission management for connecting peers. That last item closes a chapter. Once it's done, I won't have to think about multi-user logic again. It'll simply be there. Then plugins for all JVM languages, a first version of MusicXML import and export, and Skia/Skija with GPU acceleration. The last of those is when SMuFL fonts can finally be drawn on the page. After which the rendering pipeline proper begins. The first stage draws everything except the music: page numbers, titles, headers, footers, staves, system barlines, braces, brackets, instrument names. Crucially, it's done through the plugin system itself, in Clojure plugins. If you don't like the choices, you can replace them, in whatever JVM language suits. I'm not sure it'll ever be necessary, but it can be done if so desired. Then the interesting material: noteheads, horizontal spacing, flags, augmentation dots, multi-voice collision resolution, accidental clustering, unisons. Everything that isn't a spanner. The solver gets the supposedly easy work first. Spanners last: beams, ties, slurs, hairpins, glissandi, lyrics, pedalling, 8vas. Where Magnus's question about hovering secondary beams will finally have somewhere proper to live. But first: piece windows. Expect GIFs/videos soon!
13 Comments
Renaud Escriva
9/5/2026 07:54:38
Merci
Reply
Peter Bengtson
9/5/2026 21:25:53
Merci à vous, Renaud.
Reply
Magnus Johansson
9/5/2026 09:51:06
"But first: piece windows. Expect GIFs/videos soon!"
Reply
Peter Bengtson
9/5/2026 21:18:53
Brahms? No, Leif Segerstam has annexed that particular look until the end of time! :D
Reply
Magnus Johansson
11/5/2026 17:10:40
I have today written a little article at https://musicnotationprograms.wordpress.com/ted-ross-and-software/ in which I compare recommendations by Ted Ross in "The Art of Music Engraving and Processing" with what is found by default in four notation programs.
Reply
Magnus Johansson
12/5/2026 13:38:21
The article mentioned is moved to https://notskrivning.webber.se.
Reply
Peter Bengtson
13/5/2026 15:34:51
Thank you, Magnus. Empirical measurement against Ross is rarer than it should be, and the comparison surfaces something the post touched on: Ross doesn't entirely agree with himself, particularly across the beaming pages. Useful work.
Peter Bengtson
13/5/2026 16:45:13
Worth revisiting in this thread: by default, Ooloi will never place a beam end anywhere other than sitting, straddling, or hanging on a staff or ledger line, and beams will be rotated rather than sheared, following the copper-plate engraving tradition. Both positions have been on record for a while.
Magnus Johansson
14/5/2026 10:32:25
"[...] by default, Ooloi will never place a beam end anywhere other than sitting, straddling, or hanging on a staff or ledger line, [...]"
Reply
Peter Bengtson
14/5/2026 11:57:03
You're really asking about my general UX philosophy, which is something I _can_ answer at this stage. The overarching idea is always to make life easier for the engraver. Concretely: Ooloi's automatic beam end placement will always observe Ross's principles, sitting, straddling, or hanging, even outside the staff, where leger lines extend the staff conceptually. Then the user can freely adjust, as with anything on screen. My attitude is the same as in many graphics editors: snapping will be the default when dragging a beam end, with a modifier key allowing arbitrary placements where the engraver specifically needs them.
Reply
Magnus Johansson
14/5/2026 13:22:50
Sounds very good.
Magnus Johansson
15/5/2026 14:28:42
I have just written a little follow-up blog post to my article about Ted Ross' recommendations and modern notation software: https://noter.bloggo.nu/Ted-Ross-and-me/
Reply
Magnus Johansson
15/5/2026 17:39:50
"Both positions have been on record for a while."
Reply
Leave a Reply. |
AuthorPeter Bengtson – SearchArchives
May 2026
Categories
All
|
|
|
Ooloi is an open-source desktop music notation system for musicians who need stable, precise engraving and the freedom to notate complex music without workarounds. Scores and parts are handled consistently, remain responsive at scale, and support collaborative work without semantic compromise. They are not tied to proprietary formats or licensing.
Ooloi is currently under development. No release date has been announced.
|
RSS Feed