GoGo Penguin: Hopopono

I am new here. After discovering spi and going through tutorials, I’ve decided to learn more by trying to code some existing music that I like as close as close as I can to the original. So I picked Hopopono by GoGo Penguin. It was challenging to me because I am a software developer, but not a musician. Nevertheless, I coded the entire piece to the best of my ability, here is the result:

And here is the complete source code:

NOTE: The code size exceeds Sonic Pi buffer limit, so in can’t be executed from the editor. I use VS Code for development and run it from Sonic Pi using command line to run from external file (works even better):
run_file get(:rfpath)+“hopopono.rb”

where rfpath is a variable set in the init.rb file pointing to your directory:
set :rfpath, “~/path/to/my/files/” #nb include trailing /

Read more about running from external file in documentation for run_file or in this post:
Relative paths for run_file


you can just put

run_file "/path/to/.file/to/run/filaname.rb"

in a Sonic Pi buffer and pres run to run it. I use that all the time.
you can even just drag the file icon into the sonic pi buffer and it will resolve the location for you!

Thank you, robin, I didn’t know about dragging. I just like setting the path in the init file, then you only have to type the file name or subfolder/file name if you want.

btw the file sounds great!

It was a challenge and I was determined to only use built in samples and synths, but I learned a lot.

Thank you so much for the feedback, it means a lot to me!

Amazing work, thanks so much for sharing :slight_smile:

So happy to hear this from you, Sam! By the way, I was very impressed with the quality and stability of Sonic Pi while working on my first project. Thank you for the feedback and for Sonic Pi!