It's funny, I've had almost the same experience: decided to start playing again during Covid, and wanted to use the midi port to gamify things a bit. I've been using Synthesia[1] on an iPad, which also lets you take an arbitrary MIDI file and practice it.<p>On the off-chance that this will inspire the article's author for their development, or simply for the curious, this has been my experience with it:<p>The primary mode of display is "Guitar Hero" style (it's hard to describe just look at this video to get an idea[2]) but it's possible to display the sheet music. It lets you practice and grades you depending on how close you're sticking to the score. It's very nice to be able to practice one hand separately while having the app play the other hand. I do fairly well reading sheet music but the first time deciphering it can be a bit tedious, using the app speeds this up considerably for me.<p>Synthesia is <i>almost</i> great but it has a lot of small shortcomings which add up to a bad user experience, for example:<p>- The conversion from MIDI to a readable score is very poor compared to, say, Musescore. The sharps and flats are generally off (e.g. randomly a double flat D will appear instead of a C, even though the score has a C, Musescore interprets the midi as a C, etc).<p>- Not enough wiggle room when playing, e.g. if a chord is not arpeggiated in the midi file, you won't be able to move forward by arpeggiating.<p>- The app really depends on you following the score exactly and linearly. It should also let the score follow you. For example, if you're playing at a given pace, miss, stop and repeat a bar, the app should detect that automatically instead of just carrying on expecting you to keep playing.<p>[1] <a href="https://synthesiagame.com/" rel="nofollow">https://synthesiagame.com/</a><p>[2] <a href="https://www.youtube.com/watch?v=sleZ-hzrtRY" rel="nofollow">https://www.youtube.com/watch?v=sleZ-hzrtRY</a>
I can imagine this being really useful for improving sight-reading.<p>However, for me what made piano a whole lot more fun was ditching the sheet music and opting to learn about chords, all the different ways to voice them, and the various scales that fit well on top of them. I started taking lessons with a pro jazz pianist (instead of a more typical classically-focused piano teacher), I gave up on sheet music altogether and started working off lead sheets instead (just chord symbols and a melody line). I am so pleased I made that decision, it's so much more satisfying playing a tune in your own way rather than just aiming for a note-for-note reproduction of what is written on a sheet.<p>I still have loads more to learn, but I'm fairly pleased with where I've got to so far. I've got a few videos on youtube so you can judge for yourself if interested:
<a href="https://www.youtube.com/channel/UC_NWuVoCn-Oc1KIiHEhe7Eg" rel="nofollow">https://www.youtube.com/channel/UC_NWuVoCn-Oc1KIiHEhe7Eg</a><p>However, although I think I can play reasonably well now, my sight-reading is awful, and it does hold me back because it makes it a lot harder for me to learn new techniques from sheet music (which I am actually interested in doing, as opposed to simply learning the sheet music note for note). I can do it just about, but it's painfully slow, so I am usually too lazy to bother.<p>Given the choice of either playing with full sheet-music or learning chords/voicings/scales and how to put them together, I'd pick the latter no question, and that is what I recommend to other adults who are learning piano, but I do think it's best to have both. So I can definitely see the value in this, even if it doesn't currently seem to teach the theory and improvisation that, in my opinion, is what really brings the joy into piano playing. I might give it a proper go myself some time soon, to see if it can help me improve my rubbish sight reading.<p>I can also imagine this being very useful for a beginner... Although I'm singing the praises of chord theory and improvisation I'm guessing most beginners might realistically do better starting with sheet music, for a while at least.<p>In summary: it might not teach everything, but it looks really useful nonetheless :)
Had nearly the same idea for the exact same reasons, but wanted it to work on an iPad. Safari has no WebMIDI, so I ended up using WebAudio paired with pitch detection by consensus instead. Here's the result -<p><a href="https://github.com/apankrat/note-detector" rel="nofollow">https://github.com/apankrat/note-detector</a><p>It's not without issues still, but tends to do a reasonably good job at what it aims to do.
This seems a bit similar to Melodics[1], except open source and it actually uses the standard notation.<p>I know how to read music and started taking classical lessons as an adult. Some time last year a friend recommended me to check out Melodics. It has 3 instruments: keys, pads (finger drumming), drums. I've played pads for few mont;hs, that was good, I've felt it improved my timing and rhythm skills quite a bit. Then I switched to keys. I didn't really like that; it felt like I'm mindlessly repeating whatever is on the screen instead of internalising music. OTOH, when playing pads it felt that something stays in my head after playing. So I guess this may be useful to some people.<p>For me it'd be more interesting to have some sort of memory trainer - I play something on screen few times, then I replay from memory and app shows me a diff maybe? Or when I'm learning a piece, it would give me a challenge "play bars 21-25 both hands" or "play bars 19-23 left hand only".<p>[1] <a href="https://melodics.com/" rel="nofollow">https://melodics.com/</a>, I'm not affiliated in any way
Ha ha, good one, Jacques.<p>Another piano app, by me, this is as rudimentary as one can get, in Python. It turns your PC keyboard into a "piano":<p>Play the piano on your computer with Python:<p><a href="https://jugad2.blogspot.com/2013/04/play-piano-on-your-computer-with-python.html?m=0" rel="nofollow">https://jugad2.blogspot.com/2013/04/play-piano-on-your-compu...</a><p>The comments by people wih more music knowledge than me (zero) were interesting and informative.
> Unfortunately, because Mozilla is too busy improving the world instead of their browser and WebMIDI is not supported on Firefox you have to use Chrome<p>Attention Mozilla
I did a lot of tab in my youth, but got nowhere with it; I think because I didn’t understand theory like chords, scales etc, and when exposed, I never recognized them. Ear players seem to be able to chord along to just about anything and then add detail until it resembles the original. There must be some way to help the learner recognize the theory while teaching rote.
> Note that it would have been trivial for us to force our users into a relationship with us by having to make an account and we made a very conscious choice not to do this.<p>Bravo! Well done and well said - I really wish more projects and systems were developed with this mindset, viewing users as people to be empowered rather than as resources to be captured and exploited.
That's an interesting tool. As a former professional pianist, I'd repeat what I feel like the limitation of such a program: it does teach you note reading, which is nice, but really basic piano technique is a necessary preamble. You mentioned that your boy spent a whole day on this; with a bit of guidance, a full beginner after a few hours should be able to play this very simple melody with one hand, and to add a couple of bass notes with the other, for a much more satisfying result (for the player and for the audience). I know it because I've done it with many children in the past.<p>So you should probably add something like some introduction material / tutorial... maybe a couple of videos.
I understand the issue with Firefox not supporting WebMIDI, but it would be nice if instead of redirecting to a separate page you could show the same message as a warning on the main page. Let me see the app and see that it's worth coming back in Chrome.
Regrettably it's not working on Firefox[1], but hey at least I can report wrongthink YouTube videos.<p>[1] <a href="https://pianojacq.com/firefox.html" rel="nofollow">https://pianojacq.com/firefox.html</a>
This may teach you to "play" piano, but the real question is whether this sort of rote memorization will really teach you how music fundamentally works. Seems a bit like re-typing Javascript programs in order to "learn" programming?<p>Will you be able to improvise after enough of this? Play songs by ear?<p>There are a few fundamental musical concepts that I'm not sure you easily pick up by rote memorization:<p>* Most music is based around "chords", which have non-obvious mappings to physical keys. (They're linear intervals in frequency space, but that doesn't make it easy to realize that D/F#/A and Ab/C/Eb are two representations of essentially the same thing)<p>* Likewise, songs can be transposed up or down without affecting their fundamental attributes. (They just sound "higher" or "lower"). However, to do that, you need to be able to shift +/- N keys which is tricky given the difficult layout of a piano. To really do this well, you need to understand the concept of scales/modes.
This is great! My son, who normally loses interest in long songs that are a bit harder than his level, got through The well tempered clavier (one of the sample songs).<p>The timing/spacing of the notes is a bit off though, I wish it scrolled according to beats instead of speeding up and down depending on what type of note was being played. I understand it has to stop and wait for the note to be played, but some of the whole notes threw me off.
My dad is a music tutor, piano and guitar.<p>He does two different "tracks" according to what the student wants: (1) learn currently popular songs or (2) learn didactic music in the classical tradition (e.g. Czerny). In either track he's really teaching music theory: most popular music will be I-IV-V; jazzy music with turnarounds do ii-V-I tricks, etc. He doesn't teach an instrument, he teaches music.
The sadness of my piano life is not my fingers but my <i>dumb brain</i>. No matter how intensely I practice and memorize a piece, if I step away from it for a week I'll forget 30% of it.<p>Curiously, my audio memory is very strong. I can hear music in my head clearly and in detail, even songs and pieces I haven't heard in years. This does not translate to "finger-memory".
I had the opportunity to beta test it and while it still has rough edges my daughter and me had a lot of fun with it. Everyone learns differently but in my experience direct feedback is often such a boost in learning speed and efficiency that I wish there were more applications like this. Also the attitude towards user privacy is highly appreciated.
On this note,seeing as cheap qwerty keyboards easily come in $5 and good in $20, is there a "piano" keyboard that only has keys laid out in piano fashion, rest left to drivers a small software that plays appropriate tones ....<p>I'd prefer something small- only two octaves and a plus/minus button to shift octaves.
You may want to check out <a href="https://synthesiagame.com/" rel="nofollow">https://synthesiagame.com/</a> which is a commercial product that does the same thing. You don’t have to use the guitar hero style of notes, you can turn on proper sheet music.
This is good timing. I was thinking about taking up the piano for fun. My plan is to rent a keyboard for a month (Roland FP10/FP30) and going the YouTube route to see if I liked it.
There is an `about:config` setting to enable webmidi in Firefox `dom.webmidi.enabled`. It's not a great experience to have to set that by hand. It does work though, at least in Linux.<p>It looks like your site isn't detecting whether the webmidi feature is present though, it looks like its just doing dumb UA filtering.
This will not teach you to play piano. It will teach you how to play beginner piano badly, and then will create intense confusion if you try to learn harder pieces because you will not have learned basic finger techniques - which include counter-intuitive finger-over/under moves and unexpected hand position changes that anticipate what you need to play next.<p>Piano sheet music includes these finger position hints. Unfortunately they're not optional.<p>It's hard to include correct fingering in the model without some kind of camera and image recognition system, or special keys and finger sensors, or something equally obscure.<p>There's nothing wrong with the idea of gameifying piano, but it's a really hard problem to solve well. The usual result with piano teaching apps of all kinds - as someone else commented below - is kids get up to Grade 1 (maybe 2) and then hit a brick wall.<p>The reality is that playing any instrument with non-trivial competence is really fucking hard. It takes everyone a ridiculous amount of time and effort to get good at it - even those with talent.<p>So there's a trade off between trying to offer easy but limited success with some entertainment value, and going the whole way and doing it properly - which all but the most musical kids get very bored by, because it's such hard work.
Hahaha, wow! This is awesome to see people working on different solutions to something I'm working on!<p>@jacquesm if you're looking for someone to chat about this kind of stuff with - I would love to sync up!<p>--Shameless Plug--<p>I've been working on a passion project for over 2 years now called Piano Gym! <a href="https://pianogym.com" rel="nofollow">https://pianogym.com</a><p>The idea is very much the same - in that a USB midi piano (in chrome for now) can be connected to the computer and used to play sheet music in contenxt.<p>HOWEVER, Piano Gym's goal is much larger than Piano, and much larger than sheet music, despite that being the current state of the product.<p>Piano Gym's focus is to apply spaced repetition and flash card based review systems to get people playing Piano and learning music theory in context, while ALSO managing review systems and check points. Eventually we want to do this for all instruments too!<p>We want you in the gym to do your reps!<p>Additionally anyone can create content there. Whether you're a learner or a teacher you can make your own schools, courses, and lessons that others can enroll in to learn from!<p>It's incredibly exciting and super cool to see other people trying to solve these problems.<p>If anyone is interested please come and join us at the gym - Piano Gym!<p><a href="https://pianogym.com" rel="nofollow">https://pianogym.com</a>