Hacker News new | ask | show | jobs
by aston 5880 days ago
Isn't the majority of the challenge in nice notation similar to typesetting with text? The difficulty is in making it look nice, not knowing what data you're attempting to display.

I should think you could encode pitches, start times and durations in a JSON-style format without many problems.

3 comments

And then you try to code partita #1 and you run in to all those little funny marks that somehow expand to 8 notes.

Macros were invented by J.S. Bach.

You could start out that way and get pretty far, but eventually the language will get complicated enough that you'll want something more like LaTex than like JSON if you want it to be readable.

Musical notation is often deliberately ambiguous to allow for interpretation. Tempo is often approximate. Durations are often approximate or implied (such as swing time). Volume is very approximate. And then there are various kinds of hinting. The hints need to be in the source code because nobody wants to specify them with more precision.

But that said, I'd be perfectly happy with something basic that runs in a browser.

For some arenas of music, such as jazz combo-oriented groups, a very basic melody lead sheet with chords and song structure elements (section a, section b, repeat, etc.) is plenty.

Maybe rather than focusing on building a full music notation system for the web, focusing on making something for lead sheets / rhythm charts / etc would be a better path. I really don't like breaking out Finale to do jazz rhythm charts, but right now it's just about the best option. Make something better, and I for one would pay for it.

"I should think you could encode pitches, start times and durations in a JSON-style format without many problems."

Yeah, only music notation can get a lot more complex than these 3 factors