Limitations of
That Green Thing
Music Publishing Software


Work editing in That Green Thing

I have been hearing for years how this or that aspect of software for music publishers is the most complicated. It is all lies. There is not a single really complicated thing in music publishing, and consequently not a single aspect of software needs to be complicated. It is all about doing the many simple things right and in the right order.

There are some convergence points in this process. The points where many parallel processes converge, and where one can tell if all is well or not. Registration of musical works is the first obvious example. Many steps must be completed before a registration is sent out. And not all of them are about registering. For example, some of them are crucial for royalty processing. And if you don’t do them before registrations are sent out, then things get complicated and slow later on, sometimes even impossible.

Data Model

Getting the data model right is crucial in any domain-driven software project. Domain-driven? Simply put, it means that the domain (music industry) has well-established rules, and software must not break them. Well, not too many at once. Let’s ditch everything and start over with a distributed AI-driven blockchain-inspired music solution fantasy. My ass. Get the model right!

In the last year or so, I worked on software projects that used four very different data models. All included registrations of musical works. Three of them work. For one, it is still unproven, but I know it will work.

That Green Thing uses the second-simplest model of the four, the simplest is used in Django Music Publisher (DMP). They are very similar, actually the data model and all of the code related to recordings, artists, labels, releases and libraries is the same. But the part dealing with writers, publishers and their participation in musical works is very different. Yet, very limited.

Less is more, in this case, because it makes data editing quite trivial, and operations needed for creating registrations, processing acknowledgements and subsequent royalty processing very fast.


Data editing and/or importing. Registrations. Acknowledgements. Royalties. Sure, you may say, this describes any software for music publishers. Actually, it is all about scope.

For DMP, the scope is “one publisher”. You can not enter data about other publishers, no administrators, no sub-publishers.

For That Green Thing, the scope is “global shares”. It does not support registering different shares in different countries. Seriously, that is the main limitation, all others are just consequences of this one. While That Green Thing may get many new features in the future, going beyond this limitation requires a different data model and a complete rewrite of the code. For the foreseeable future, I don’t plan to do it.

No Shares Change


That Green Thing does not support shares change

What is shares change? Obviously, it means that interested parties collect different shares in different territories. With That Green Thing, for each writer in work, up to six shares must be entered (3 for writer and 3 for publisher). If I implemented shares change, it would be 6 gazillion additional fields. It is an edge feature that would make everyone miserable, and slow down That Green Thing to the level of, well, you know who.

Global Administration Only

Normally, an administrator does everything and collects everything, while original publisher collects nothing. However, more complex deals are sometimes made, and That Green Thing supports none of them. The rationale is the same: no edge features for complicated clients that would make all users suffer.

General Sub-Publishing Only

If one work from a publisher is sub-published, then all works from that publisher are sub-published. Again, the same logic: keep it simple and fast.