Monday, 20 August 2012

XML, Cathedrals and all that

The idea about storing ties, which in the internal model are effectively any to any joins between any notes in a manuscript object, is working. It's all about the order in which the XML is written out, i.e. in ascending note order in the manuscript so we can maintain a tag level, like a running count of open ties. Then when it's read back in, new tie objects are created when we hit an increment of the tag, and stored, filed and popped off the stack when we decrement it.

Works well.

Then I saw a tweet about the software and IT industry in general and it was written from the point of view that a book about cathedrals and bazaars (now if I were a kind blogger and cared enough about this book I'd go get a proper reference to it here, but on the odd chance anyone reads my musings, well folks, just go search for it using your favourite internet trawler), and how sick the industry is because we didn't learn anything when we want through the dot-com boom, how unix has been poisoned yah-de-yah.

Well the thoughts it inspired for me were, well, I don't know everything to finish building this "cathedral" known currently as the Drum Score Editor, I certainly knew a lot less when I started about loads of things which are relevant to designing and implementing this stuff. I'm learning on this journey, using lots of good training and experience gained over the years, and adapting it, allowing myself to continue to refine my understanding as I solve a new challenge, sometimes even using different techniques to solve similar problems, just to see which works best, which is more elegant and so on. This is especially true in the current XML push - a language structure legible to neither human nor computer. Many ways of accomplishing the same thing.

So I'm an enthusiastic amateur, I know loads about rudimental snare drumming, music theory, java programming, object oriented design, yah-de-yah but I DO NOT KNOW IT ALL!! I don't think anyone does. What I'm doing is bringing all that together, learning as I go, and producing something that is unique in the way it addresses the needs of the authoring drummer. I'm not going to blurt it all out here but there is something special in mind beyond getting the basic manuscript rendering capability usable and useful.

Will it be used by more than 1 drummer (ahem, me), maybe, and if it does great. Will it change the way the world consumes IT, thinks about operating system design and the whole nine yards? No. It won't.

Cathedrals and Bazaars, hopefully there's still space in this industry for some individual to produce something of value to a niche audience, that appreciate it's delivery and can help make it self-sustaining long after I stop being useful! In a way it's a Cathedral, as I'm the sole arbiter of the internal designs, funding and doing all the development and make it work in an integral way. It's not a Bazaar with lots of contributors throwing stuff in. But I'm not comfortable calling it a cathedral given my strictly amateur status - maybe the Ideal Palace of the Postman Cheval, La Maison Ideal du Facteur Cheval at Hauterives in France. I visited that when we lived there, was fascinated then. And now I think my software is likely the same thing ...

No comments:

Post a Comment