via scalable minds.
As an enthusiastic developer and piano player, I like to connect my interests. Since my sheet reading skills have always been rather moderate, I saw an opportunity to improve them with the new Web MIDI API. It allows the browser to communicate with a MIDI-enabled device (especially receiving MIDI notes from it).
Using this API, I built a side project called Piano-Trainer (Github link) which is a web app that renders random music sheets. The user has to play the notes on a real piano (provided that it supports MIDI) and gets feedback when played correctly. In theory it should also work with other MIDI-enabled instruments.
Piano-Trainer will measure the time it took you to play the displayed chords and display statistics to keep track of your progress. Think of it as Guitar Hero for the piano. Currently, the rhythm is not checked (so it does not matter if you need some seconds to play a chord). But being able to train the rhythm, is certainly a feature I want to work on in the future.