Learning to sight-read with PHP and Lilypond Ben Savage
Who am I? I'm Ben Savage Systems Administrator at Deakin University Australia Varied history with music I have a lot of instruments Had a piano lesson at 5 Music classes at school – learned to read it Distanced myself from music as a teen Had a keyboard, self taught for 10 years Got a uke/ocarina/electric piano – things kicked off
Note the stentor 64th size Two cellos 5 ukes 5 ocarinas Kalimba Congos Thunder drum Two recorders clarinet Tin whistle Not pictured, electric piano, keyboard, cajone Tinypiano, another uke, another ocarina, guitar
Tinypiano added for scale So I like music now Sometimes I hear something and wonder why I bother to do anything other than music
What is it? Random score generation with a web interface Based on a scale, time signature and one of a few practice modes
What's the need? Repetition Play something a few times, don't need the music Pattern recognition Once you can feel what's coming next, stop paying attention Playing by ear Can't have somebody play anything for me I find it difficult to learn for these reasons
Friederich Dotzauer http://conquest. imslp
Bernhard Cossman http://conquest. imslp E4 to c2
What's the need? Cost Exercise/technical books aren't cheap Somewhat mitigated by imslp.org Just sit down and play Any device, anywhere, any time Learn music theory and how to automate it Usually more expensive as the grade increases International Music Score Library Project. /Petrucci music library Also personalisation
Live Demo! www.sav.net.au/sight_reading
Lilypond LilyPond is a text-based music engraving program It can also create midi files Another Live Demo!
Code Generates scales Then creates scores based on 'intervals' in the scale Effectively index positions of the array Sorting was an issue
Current issues Can't deviate from the scale Doesn't scale terribly well
Future Instrument Profiles Meta language
ben@sav.net.au www.sav.net.au/sight_reading Questions? ben@sav.net.au www.sav.net.au/sight_reading