Description from the Publisher
I have been studying to play piano for about 1 year. Sight-reading is the most difficult thing I have to master. The main my mistakes during the exercises are:
confusing the octaves;
confusing the notes from the treble and bass clefs;
sharp and flat - related errors;
looking for the notes to slowly - this breaks the rhythm.
So, I've decided to write a small program to improve my skills. It generates a random (every time new!) task using the notes that a user selected (constraints) and checks the "answer" from user.
The 2 input methods are available: midi keyboard and virtual piano keyboard (using the mouse).
BTW, all the 4 sources of my mistakes were significantly eliminated after I started using my program at work during small breaks.