Muziek programmeren met SonicPi

De SonicPi software bestaat al lang. Maar ik heb er nog niet eerder over geschreven. Bij deze dus. Want eigenlijk kan dat natuurlijk niet.

Even vooraf: de SonicPi software verwijst in zijn naam naar de Raspberry Pi, maar je hebt geen Raspberry Pi nodig, de software draait ook gewoon op Windows, een Mac of Linux. Je kunt hem gratis downloaden en voor Windows is er ook een “portable” versie, die hoef je dus niet te installeren, kun je gewoon op een USB-stick zetten.

Wat is SonicPi en waarom zou je er iets mee moeten?
Dat kan ik je waarschijnlijk het beste door de bedenker (Sam Aaron) ervan laten uitleggen. Het filmpje hieronder is al uit 2015 (er zijn oudere filmpjes):

De introductie lijkt erg op het verhaal van Felienne bij haar Python/programmeren en kunst workshop.  En daarmee bedoel ik richting beiden niets negatief. Integendeel. Beiden maken duidelijk dat maar een bepaalde (kleine) groep speciale mensen enthousiast wordt van programmeren. En ook Sam Aaron maakt duidelijk dat het een stuk eenvoudiger is om kinderen enthousiast te maken over programmeren als je ze ook echt iets geeft waar ze enthousiast over worden.

Nou moet ik bekennen dat dit, net als verhalen bedenken in Python, natuurlijk ook weer niet voor elke leerling zal gelden. Ik heb vanmiddag een uurtje zitten spelen met SonicPi en zo goed als Sam zal ik waarschijnlijk nooit worden. Sowieso, kijk maar eens hoe veel werk het is om onderstaande track te maken.

En live jammen zoals hieronder zal ook niet voor iedereen weggelegd zijn:

Wil je er toch mee aan de slag, dan kun je hier een hele verzameling instructiefilmpjes vinden.

Los van de vraag of jij en ik er zelf super coole muziek mee weten te produceren, is dit natuurlijk gewoon een mooi stuk gereedschap in de kist van een leraar als het gaat over de vraag hoe je kunt laten zien dat programmeren veel meer om het lijf kan hebben dan alleen sorteren en binaire getallen. En al helemaal als je bedenkt dat het ook op zoiets lichts als een Raspberry Pi werkt.

De video hieronder is ook van Sam Aaron, maar dan voor een wat technischer publiek. Het laat iets meer zien van de keuzes die hij gemaakt heeft bij het implementeren van verschillende constructies in de programmeertaal en de uitdagingen van het programmeren van muziek.

Het artikel dat Sam laat zien in de video is:

Samuel Aaron, Dominic Orchard, and Alan F. Blackwell. 2014. Temporal semantics for a live coding language. In Proceedings of the 2nd ACM SIGPLAN international workshop on Functional art, music, modeling & design (FARM ’14). ACM, New York, NY, USA, 37-47. DOI

Helaas zit dit artikel (en nog een paar even interessante) achter een paywall, dus het hangt een beetje van je persoonlijk situatie af of je er bij kunt (ik wel, maar mag hem uiteraard hier niet delen).

Onderstaand artikel is wel gratis beschikbaar (PDF):

Sinclair, A. J. (2014). Educational programming languages: The motivation to learn with Sonic Pi. In Proceedings of the Psychology of Programming Interest Group Conference, Brighton, UK: PPIG (pp. 215-28).

De conclusie daaruit:

In conclusion, the results indicate that Sonic Pi is the slightly more favourable environment for
a novice programmer to learn in as it both encourages more prolific code writing, and tinkering.
These in turn promote a better retention of the concepts learnt; and this is shown by the Sonic
Pi learners’ far better scores in the delayed free recall test. Future experiments might want to
measure the difference between Sonic Pi and a non-media-oriented environment, and have a
different metric for measuring motivation, as these would be interesting aspects to consider,
which were not addressed in this study. It would also be interesting to perform the experiment
with a larger group of participants, to explore more subtle correlations, which was not possible
within this study

Maar…dit was slechts op basis van 12 deelnemers. Niet echt stevig bewijs dus dat het beter werkt, zoals door de auteur ook zelf aangegeven in de conclusie.

Vervolg onderzoek van Dimitri GM (2015) maakte eveneens maar gebruik van een kleine testgroep (10 studenten) en voegde hieraan toe:

In an experiment with 10 computer science students, the author showed that syntax highlighting reduces the time needed to write as well as debug a programme in Sonic Pi. The results also indicate that this effect becomes weaker when participants have more experience in programming.

Kortom, of het werkt, voor wie het werkt, wanneer het werkt is ook hier nog iets dat onderzocht wordt. Als je er mee aan de slag wilt dan is hier een hele website met lesplan, filmpjes etc beschikbaar: http://www.sonicpiliveandcoding.com/
Zie ook deze github repository.

0 0 stemmen
Bericht waardering
2 Reacties
Inline Feedback
Bekijk alle reacties
trackback

Muziek programmeren met SonicPi https://t.co/wT3YO9CuVP

trackback

Muziek programmeren met #SonicPi of is het programmeren met muziek? https://t.co/MZMSBm9vrO https://t.co/FmiMHxaEqB