# Proposal : Creative coding 6h program with Sonic Pi

**URL:** <https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470>\
**Category:** Educators\
**Created:** [November 27, 2017, 1:26pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470 "2017-11-27T13:26:46Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![xavidominguez](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/xavidominguez/32/303_2.png) [@xavidominguez](https://in-thread.sonic-pi.net/u/xavidominguez)\
**Post date:** [November 27, 2017, 1:26pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/1 "2017-11-27T13:26:47Z")

</div>

Hi Creative Educators!  
We are planning to do a 3 days Sonic Pi (2h/day) introductional workshop for kids (15 girls and boys who are 10-12 years old ) and we need your advices! It will be our first experience with Sonic Pi and although there are a lot of information in the web maybe could you give some advices about how to guide the workshop. Our first plan is:

(2h) Day 1 - Make a song: they will learn basics concepts about coding and music.

(2h) Day 2 - From a song to a Live Performance: they will learn basics of live coding, samples…

(2h) Day 3 - DJ Performance: they should prepare a live coding performance

- Pair programming

IMPORTANT:

- Kids don’t know each other ( it will be a Christmas workshop )
- Maybe, we don’t know, it will be their first programming experience

What do you think ?

Thanks so much for your help !

Best,

Xavi - @xavidominguez

---

<div class="post-metadata">

**Author:** ![gavin](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/gavin/32/33_2.png) [@gavin](https://in-thread.sonic-pi.net/u/gavin)\
**Post date:** [November 27, 2017, 4:10pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/2 "2017-11-27T16:10:34Z")

</div>

Good idea!. I did a Christmas Workshop last year and got the kids to create this:

https://www.facebook.com/plugins/video.php?height=224&width=400&href=https://www.facebook.com/gavinhewins/videos/10154906598963319/

---

<div class="post-metadata">

**Author:** ![gavin](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/gavin/32/33_2.png) [@gavin](https://in-thread.sonic-pi.net/u/gavin)\
**Post date:** [November 27, 2017, 4:13pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/3 "2017-11-27T16:13:17Z")

</div>

> <https://gist.github.com/Castlewood/1ad8455f2998f3370b637f294d7a3273>

---

<div class="post-metadata">

**Author:** ![xavidominguez](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/xavidominguez/32/303_2.png) [@xavidominguez](https://in-thread.sonic-pi.net/u/xavidominguez)\
**Post date:** [November 28, 2017, 2:59pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/4 "2017-11-28T14:59:10Z")

</div>

Wow! It’s super nice! How many hour did you spend ? How old were them ? Did they know coding ? Thanks @gavin

---

<div class="post-metadata">

**Author:** ![gavin](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/gavin/32/33_2.png) [@gavin](https://in-thread.sonic-pi.net/u/gavin)\
**Post date:** [November 28, 2017, 4:07pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/5 "2017-11-28T16:07:29Z")

</div>

Thanks - basically it was just a one hour workshop at a Raspberry Pi Jam. None of the children signed up had any experience in Sonic Pi and most had no coding experience.

So (as I normally do) I started with a very simple demo of sonic pi showing how to play notes, chords and melodies and simple loops etc

I then gave half the kids the first first bar lead, and the other 1/2 the first bar bassline. Obviously when they all played them they could hear both parts but they could not play together in time on different machines.

So I then explained the concept of Live Loops and gave them the ‘other’ voice for the first bar so they could play them together in time on their own machines.

The first bar with 2 voices was all we had time for in an an hour but I then have them the full code with all 4 voices to take home (and posted it on github).

I am not sure how many went on to complete it but I had some great feedback from parents at later events.

Here is a photo from the session. the 2 kids in Code Club t-shirts at the side of the room were from my regular club and were on hand to help the ‘newbies’ - they did a great job 🙂

> **[HackHorsham](https://www.facebook.com/hackhorsham/photos/a.402550779924008.1073741828.399611450217941/661443417368075/?type=3&theater)**
>
> HackHorsham added a new photo.

---

<div class="post-metadata">

**Author:** ![gavin](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/gavin/32/33_2.png) [@gavin](https://in-thread.sonic-pi.net/u/gavin)\
**Post date:** [November 28, 2017, 4:10pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/6 "2017-11-28T16:10:11Z")

</div>

And this is the code from the initial exercise I gave them (except each child was initially given only one of the voices) :

> <https://gist.github.com/Castlewood/569941b2fc8d70a115d89eb530c89958>

---

<div class="post-metadata">

**Author:** ![claire.quigley](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/claire.quigley/32/30_2.png) [@claire.quigley](https://in-thread.sonic-pi.net/u/claire.quigley)\
**Post date:** [November 28, 2017, 4:37pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/7 "2017-11-28T16:37:16Z")

</div>

One thing I’ve done with a few workshops is, a bit like @gavin , give the kids a working tune and an explanation of what they can do to change the tempo/synths/samples/fx. Then get them to “remix” it by changing values, this usually ends up with some pretty cool - and bizarre - versions. Frequently featuring a lot of misc\_crow.

There’s a couple of examples here of workcards I made under “Workshop Materials” [http://glasgow.coderdojo.co/sonicpi\_intro/](http://glasgow.coderdojo.co/sonicpi_intro/)

---

<div class="post-metadata">

**Author:** ![gavin](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/gavin/32/33_2.png) [@gavin](https://in-thread.sonic-pi.net/u/gavin)\
**Post date:** [December 19, 2017, 9:49pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/8 "2017-12-19T21:49:51Z")

</div>

A quick update on my previous reply…

We have today updated the code to work with our modular gear:

---

<div class="post-metadata">

**Author:** ![birv2](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/birv2/32/93_2.png) [@birv2](https://in-thread.sonic-pi.net/u/birv2)\
**Post date:** [December 29, 2019, 3:04pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/9 "2019-12-29T15:04:52Z")

</div>

Hello Claire. I’d love to take a look at your materials for the Glasgow workshop but link appears to be broken. And I’d love to chat with you about how it went, what you found that worked/didn’t, etc.

I teach Sonic Pi in middle school in the states, and am also preparing a workshop for CS educators in July. Happy to chat off-forum or on. Thanks!

---

<div class="post-metadata">

**Author:** ![dcbriccetti](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/dcbriccetti/32/1144_2.png) [@dcbriccetti](https://in-thread.sonic-pi.net/u/dcbriccetti)\
**Post date:** [January 1, 2020, 8:46pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/10 "2020-01-01T20:46:22Z")

</div>

I like the idea of giving them a working tune. I’ve seen many of my students spend most of their time just assembling a tune. That’s not as fun as the rest!

---

<div class="post-metadata">

**Author:** ![chris.krakou](https://avatars.discourse-cdn.com/v4/letter/c/e5b9ba/32.png) [@chris.krakou](https://in-thread.sonic-pi.net/u/chris.krakou)\
**Post date:** [January 3, 2020, 11:17am UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/11 "2020-01-03T11:17:26Z")

</div>

I would very recommend giving them a working example and let them tinker with it. I teach informatics at gymnasium level (15-18 years old), and the recommended approach is Use-Modify-Create. First you give the students something that works, then you make them change it up. Throwing them out in the deep end is going to be challenging, especially with only 6 hours to spare.

You could always give them a “skeleton” to work from. A simple structure with the bare minimum of a song, which they then expand themselves.

---

<div class="post-metadata">

**Author:** ![claire.quigley](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/claire.quigley/32/30_2.png) [@claire.quigley](https://in-thread.sonic-pi.net/u/claire.quigley)\
**Post date:** [January 3, 2020, 9:16pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/12 "2020-01-03T21:16:04Z")

</div>

@birv2 Hi Bob and Dave,

I’d forgotten that that server was no more! Here’s a link to a GitHub repo where I’ve uploaded the worksheet and starter tunes:[https://github.com/alcluith/sonic-pi-workshop](https://github.com/alcluith/sonic-pi-workshop)  
(not entirely sure why I went for writing out the note-length names in full in Running up that Hill for half of it - feel free to change it 😉 )

The workshop was designed for an adults-only evening session at Glasgow Science Centre, so the tunes may or may not be that familiar to kids/teenagers (though “Get Lucky” and “This is what you came for” might be okay). There are some pics of the workshop in progress here: [https://alcluith.wordpress.com/2017/06/26/eine-kleine-science-musik/](https://alcluith.wordpress.com/2017/06/26/eine-kleine-science-musik/)

The workshop finished with a mini-Algorave using the “Mexican Roulette” technique where the participants were given a working piece which they took it in turns to alter slightly. The piece was one I’d coded, but Sam’s examples in the Sonic Pi built-in tutorial also work well with this - my favourite is “Rerezzed”). Mexican Roulette is described in more detail on page 163 of this doc [https://pdfs.semanticscholar.org/fea7/6136a02dcd119a0217bf9322dd22901f9b09.pdf](https://pdfs.semanticscholar.org/fea7/6136a02dcd119a0217bf9322dd22901f9b09.pdf)

Hope all that’s useful!

---

<div class="post-metadata">

**Author:** ![birv2](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/birv2/32/93_2.png) [@birv2](https://in-thread.sonic-pi.net/u/birv2)\
**Post date:** [January 7, 2020, 1:45pm UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/13 "2020-01-07T13:45:30Z")

</div>

Thanks so much for sharing that. Can’t wait to dig into it.

Mexican Roulette sounds really intriguing and I just might steal that idea for my preso!

---

<div class="post-metadata">

**Author:** ![claire.quigley](https://dub1.discourse-cdn.com/flex017/user_avatar/in-thread.sonic-pi.net/claire.quigley/32/30_2.png) [@claire.quigley](https://in-thread.sonic-pi.net/u/claire.quigley)\
**Post date:** [January 8, 2020, 11:49am UTC](https://in-thread.sonic-pi.net/t/proposal-creative-coding-6h-program-with-sonic-pi/470/14 "2020-01-08T11:49:42Z")

</div>

It’s great fun - and a good, non-intimidating way of getting the workshop participants to have a go at live-coding. (I first saw it used for this by Martin Zeilinger at a workshop day we were involved with at a London school).
