Translation components API.

See the Weblate's Web API documentation for detailed description of the API.

GET /api/translations/sonic-pi/tutorial/gl/units/?format=api&page=39
HTTP 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "count": 2023,
    "next": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/units/?format=api&page=40",
    "previous": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/units/?format=api&page=38",
    "results": [
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Now press the Run button or hit `Meta-r`. You're now listening to some gorgeous choir sounds. Now, whilst it's still playing, change the rate from `0.4` to `0.38`. Hit run again. Woah! Did you hear the choir change note? Change it back up to `0.4` to return back to how it was. Now, drop it to `0.2`, down to `0.19` and then back up to `0.4`. See how changing just one parameter on the fly can give you real control of the music? Now play around with the rate yourself - choose your own values. Try negative numbers, really small numbers and large numbers. Have fun!"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8849522230395576208,
            "content_hash": 8849522230395576208,
            "location": "A.02-live-coding.md:67",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1312,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 106,
            "source_unit": "https://hosted.weblate.org/api/units/15386735/?format=api",
            "priority": 100,
            "id": 15387536,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=facfd194eea69f90",
            "url": "https://hosted.weblate.org/api/units/15387536/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:46.824987+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Many musicians can look at a musical score and hear the music in their head without having to play it. This is a very useful skill and it's well worth incorporating into your live coding practice sessions. The important point is to be able to have some understanding of what the code is going to sound like. You don't need to be able to hear it exactly in your head, but instead it's useful to know if the code is going to be fast, slow, loud, rhythmic, melodic, random, etc. The final goal is then to be able to reverse this process - to be able to hear music in your head and know what code to write to make it. It may take you a long time to master this, but once you do, you'll be able to improvise on stage and express your ideas fluently."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2921703405283171811,
            "content_hash": -2921703405283171811,
            "location": "A.16-practice.md:112",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1780,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 147,
            "source_unit": "https://hosted.weblate.org/api/units/15386737/?format=api",
            "priority": 100,
            "id": 15387537,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=5774063b950c221d",
            "url": "https://hosted.weblate.org/api/units/15387537/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:47.997895+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Sample, Rate and Pitch"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5091578310665040072,
            "content_hash": 5091578310665040072,
            "location": "A.17-sample-stretching.md:75",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1808,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://hosted.weblate.org/api/units/15386739/?format=api",
            "priority": 100,
            "id": 15387538,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=c6a8eb7f4945f0c8",
            "url": "https://hosted.weblate.org/api/units/15387538/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.064885+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "This is the first of a short series of articles on how to use Sonic Pi for sound design. We'll be taking a quick tour of a number of different techniques available for you to craft your own unique sound. The first technique we'll look at is called *additive synthesis*. This may sound complicated - but if we expand each word slightly the meaning pops right out. Firstly, additive means a combination of things and secondly synthesis means to create sound. Additive synthesis therefore means nothing more complicated than *combining existing sounds to create new ones*. This synthesis technique dates back a very long time - for example, pipe organs in the middle ages had lots of slightly different sounding pipes which you could enable or disable with stops. Pulling out the stop for a given pipe 'added it to the mix' making the sound richer and more complex. Now, let's see how we can pull out all the stops with Sonic Pi."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4688139196272983691,
            "content_hash": 4688139196272983691,
            "location": "A.18-additive-synthesis.md:5",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1824,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 163,
            "source_unit": "https://hosted.weblate.org/api/units/15386741/?format=api",
            "priority": 100,
            "id": 15387539,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=c10f9dc29b6fbe8b",
            "url": "https://hosted.weblate.org/api/units/15387539/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.103514+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Some of the built-in synths already include a detune option that does exactly this in one synth. Try playing with the `detune:` opt of `:dsaw`, `:dpulse` and `:dtri`."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -914713522379406996,
            "content_hash": -914713522379406996,
            "location": "A.18-additive-synthesis.md:87",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1839,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 28,
            "source_unit": "https://hosted.weblate.org/api/units/15386743/?format=api",
            "priority": 100,
            "id": 15387540,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=734e48e5d354416c",
            "url": "https://hosted.weblate.org/api/units/15387540/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.136681+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "define :bell do |n|\n  # Triangle waves for the 'hit'\n  synth :tri, note: n - 12, release: 0.1\n  synth :tri, note: n + 0.1, release: 0.1\n  synth :tri, note: n - 0.1, release: 0.1\n  synth :tri, note: n, release: 0.2\n  # Sine waves for the 'ringing'\n  synth :sine, note: n + 24, release: 2\n  synth :sine, note: n + 24.1, release: 2\n  synth :sine, note: n + 24.2, release: 0.5\n  synth :sine, note: n + 11.8, release: 2\n  synth :sine, note: n, release: 2\n  # Low sine waves for the bass\n  synth :sine, note: n - 11.8, release: 2\n  synth :sine, note: n - 12, release: 2\nend\n# Play a melody with our new bell!\nbell :e3\nsleep 1\nbell :c2\nsleep 1\nbell :d3\nsleep 1\nbell :g2"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 756149946375377723,
            "content_hash": 756149946375377723,
            "location": "A.18-additive-synthesis.md:130",
            "context": "",
            "note": "",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1845,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 130,
            "source_unit": "https://hosted.weblate.org/api/units/15386745/?format=api",
            "priority": 100,
            "id": 15387541,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=8a7e625eb6a2933b",
            "url": "https://hosted.weblate.org/api/units/15387541/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.153058+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Low Pass Filter"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8472788033078789403,
            "content_hash": -8472788033078789403,
            "location": "A.19-subtractive-synthesis.md:86",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1862,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://hosted.weblate.org/api/units/15386747/?format=api",
            "priority": 100,
            "id": 15387542,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=0a6a9c2cb7287ae5",
            "url": "https://hosted.weblate.org/api/units/15387542/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.190501+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "A.20 Creative coding in the classroom with Sonic Pi"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3534624970031098010,
            "content_hash": -3534624970031098010,
            "location": "A.20-creative-coding-in-the-classroom.md:1",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1872,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 9,
            "source_unit": "https://hosted.weblate.org/api/units/15386749/?format=api",
            "priority": 100,
            "id": 15387543,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=4ef27d5127121766",
            "url": "https://hosted.weblate.org/api/units/15387543/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.212662+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Creative coding in the classroom with Sonic Pi"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -1222652359083910420,
            "content_hash": -1222652359083910420,
            "location": "A.20-creative-coding-in-the-classroom.md:3",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1873,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 8,
            "source_unit": "https://hosted.weblate.org/api/units/15386751/?format=api",
            "priority": 100,
            "id": 15387544,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=6f08442845029aec",
            "url": "https://hosted.weblate.org/api/units/15387544/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.222071+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "(This article was published in [issue 9 of the Hello World Magazine](https://helloworld.raspberrypi.org/issues/9))"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7699955982619511995,
            "content_hash": 7699955982619511995,
            "location": "A.20-creative-coding-in-the-classroom.md:5",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1874,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 12,
            "source_unit": "https://hosted.weblate.org/api/units/15386753/?format=api",
            "priority": 100,
            "id": 15387545,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=eadbbd2b8a2e0cbb",
            "url": "https://hosted.weblate.org/api/units/15387545/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.230382+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Code is one of the most creative media that humans have created. The initially obscure symbols of parentheses and lambdas are not just deeply rooted in science and mathematics, they are the closest we have managed to get to casting the same kind of magical spells as Gandalf and Harry Potter. I believe that this provides a powerful means of engagement in our learning spaces. Through the magic of code we are able to conjure up individually meaningful stories and learning experiences."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 6250196931345861738,
            "content_hash": 6250196931345861738,
            "location": "A.20-creative-coding-in-the-classroom.md:7",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1875,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 82,
            "source_unit": "https://hosted.weblate.org/api/units/15386755/?format=api",
            "priority": 100,
            "id": 15387546,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=d6bd28fe7d1b4c6a",
            "url": "https://hosted.weblate.org/api/units/15387546/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.236415+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "We are surrounded by magical experiences. From the sleight of hand of a stage magician making the ball disappear into thin air, to the wonder of seeing your favourite band perform on a big stage. It is these \"wow\" moments that inspire us to pick up a magic book and learn the French Drop or to start jamming power chords on an old guitar. How might we create similarly deep and lasting senses of wonder that will motivate people to practice and learn the fundamentals of programming?"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5677534136078169257,
            "content_hash": 5677534136078169257,
            "location": "A.20-creative-coding-in-the-classroom.md:15",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1876,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 87,
            "source_unit": "https://hosted.weblate.org/api/units/15386757/?format=api",
            "priority": 100,
            "id": 15387547,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=cecaa7374517f4a9",
            "url": "https://hosted.weblate.org/api/units/15387547/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.244486+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Musical Engines and Notation"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6486230241791632173,
            "content_hash": -6486230241791632173,
            "location": "A.20-creative-coding-in-the-classroom.md:23",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1877,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://hosted.weblate.org/api/units/15386759/?format=api",
            "priority": 100,
            "id": 15387548,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=25fc47f5ea9d1cd3",
            "url": "https://hosted.weblate.org/api/units/15387548/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.252311+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "The histories of music and computers have been intricately woven together since the inception of computing machines, or \"engines\" as Charles Babbage's powerful analytical engine was called. Back in 1842 the Mathematician Ada Lovelace, who worked very closely with Babbage, saw the creative potential of these engines. Whilst these first engines had originally been designed to accurately solve hard maths problems, Ada dreamt about making music with them:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8191773949450977760,
            "content_hash": 8191773949450977760,
            "location": "A.20-creative-coding-in-the-classroom.md:25",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1878,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 68,
            "source_unit": "https://hosted.weblate.org/api/units/15386761/?format=api",
            "priority": 100,
            "id": 15387549,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=f1af0701515301e0",
            "url": "https://hosted.weblate.org/api/units/15387549/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.259522+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "\"..the engine might compose elaborate and scientific pieces of music of any degree of complexity or extent.\" Ada Lovelace, 1842."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1253548003522468386,
            "content_hash": 1253548003522468386,
            "location": "A.20-creative-coding-in-the-classroom.md:33",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1879,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 20,
            "source_unit": "https://hosted.weblate.org/api/units/15386763/?format=api",
            "priority": 100,
            "id": 15387550,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=91657f4482db5a22",
            "url": "https://hosted.weblate.org/api/units/15387550/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.266521+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Of course, today in 2019 much of our music, regardless of genre, has either been composed, produced or mastered with a digital computer. Ada's dream came true. It is even possible to trace the history back even further. If you see coding as the art of writing sequences of special symbols that instruct a computer to do specific things, then musical composition is a very similar practice. In Western music, the symbols are black dots positioned on a stave of lines that tell the musician which notes to play and when. Intriguingly, if we trace the roots of Western music notation back to the Italian Benedictine monk, Guido d'Arezzo, we find that the dots and lines system that modern orchestras use is just one of a number of notation systems he worked on. Some of the others were much closer to what we might now see as code."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6395061868568765126,
            "content_hash": -6395061868568765126,
            "location": "A.20-creative-coding-in-the-classroom.md:36",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1880,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 148,
            "source_unit": "https://hosted.weblate.org/api/units/15386765/?format=api",
            "priority": 100,
            "id": 15387551,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=27402d1cef501d3a",
            "url": "https://hosted.weblate.org/api/units/15387551/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.273559+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "In education, magical meaningful experiences with computers and programming languages have been explored since the late '60s. Computer education pioneers Seymour Papert, Marvin Minsky and Cynthia Solomon explored simple Lisp-based languages that moved pens over large pieces of paper. With just a few simple commands it was possible to program the computer to draw any picture. They even experimented by extending their Logo language from drawing to music. Papert wrote about learning through experiencing the reconstruction of knowledge rather than its transmission. Getting people to play with things directly was an important part of his group's work."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6540654841775370371,
            "content_hash": -6540654841775370371,
            "location": "A.20-creative-coding-in-the-classroom.md:50",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1881,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 97,
            "source_unit": "https://hosted.weblate.org/api/units/15386767/?format=api",
            "priority": 100,
            "id": 15387552,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=253aed13458a4f7d",
            "url": "https://hosted.weblate.org/api/units/15387552/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.280447+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Sonic Pi Performances"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2168324208417683701,
            "content_hash": 2168324208417683701,
            "location": "A.20-creative-coding-in-the-classroom.md:62",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1882,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://hosted.weblate.org/api/units/15386769/?format=api",
            "priority": 100,
            "id": 15387553,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=9e176f61189db8f5",
            "url": "https://hosted.weblate.org/api/units/15387553/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.287181+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Sonic Pi has been used to perform in a wide range of venues such as school halls, nightclubs, outdoor stages at musical festivals, college chapels and prestigious music venues. For example the amazing Convo project which brought 1000 children together in the Royal Albert Hall to perform an ambitious new composition by composer Charlotte Harding. The piece was written for traditional instruments, choirs, percussion and Sonic Pi code. The pop-artist Jylda also performed with Sonic Pi in the Sage Gateshead for the Thinking Digital Conference, where she created a unique live-coded improvised remix of her song Reeled."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4317272643342593446,
            "content_hash": 4317272643342593446,
            "location": "A.20-creative-coding-in-the-classroom.md:68",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1884,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 97,
            "source_unit": "https://hosted.weblate.org/api/units/15386773/?format=api",
            "priority": 100,
            "id": 15387555,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=bbea089860f26da6",
            "url": "https://hosted.weblate.org/api/units/15387555/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.300708+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Live coding in the classroom"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7008387654705636581,
            "content_hash": -7008387654705636581,
            "location": "A.20-creative-coding-in-the-classroom.md:83",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1886,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 5,
            "source_unit": "https://hosted.weblate.org/api/units/15386777/?format=api",
            "priority": 100,
            "id": 15387557,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=1ebd348f61099b1b",
            "url": "https://hosted.weblate.org/api/units/15387557/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.314305+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Sonic Pi is a code-based music creation and performance tool that builds on all of these ideas. Unlike the majority of computing education software, it is both simple enough to use for education and also powerful enough for professionals. It has been used to perform in international music festivals, used to compose in a range of styles from classical, EDM and heavy metal, and was even reviewed in the Rolling Stone magazine. It has a diverse community of over 1.5 million live coders with a variety of backgrounds all learning and sharing their ideas and thoughts through the medium of code. It is free to download for Mac, PC and Raspberry Pi and includes a friendly tutorial that assumes you know nothing about either code or music."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -6362572113931790828,
            "content_hash": -6362572113931790828,
            "location": "A.20-creative-coding-in-the-classroom.md:85",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1887,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 127,
            "source_unit": "https://hosted.weblate.org/api/units/15386779/?format=api",
            "priority": 100,
            "id": 15387558,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=27b39a5f6b4a1614",
            "url": "https://hosted.weblate.org/api/units/15387558/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.320906+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Sonic Pi was initially conceived as a response to the UK's newly released Computing curriculum in 2014. The goal was to find a motivating and fun way to teach the fundamentals of programming. It turns out that there is a lot in common and it's huge fun to explain sequencing as melody, iteration as rhythm, conditionals as musical variety. I developed the initial designs and first iterations of the platform with Carrie Anne Philbin, who brought a teacher’s perspective to the project. Since then, Sonic Pi has undergone iterative improvements thanks to the feedback gained from observing learners and collaborating directly with educators in the classroom. A core design philosophy was to never add a feature that couldn't be easily taught to a 10 year old child. This meant that most ideas had to be heavily refined and reworked until they were simple enough. Making things simple whilst keeping them powerful continues to be the hardest part of the project."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -3354792798296445452,
            "content_hash": -3354792798296445452,
            "location": "A.20-creative-coding-in-the-classroom.md:97",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1888,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 160,
            "source_unit": "https://hosted.weblate.org/api/units/15386781/?format=api",
            "priority": 100,
            "id": 15387559,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=517161b972806df4",
            "url": "https://hosted.weblate.org/api/units/15387559/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.326952+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "In order to provide the magical motivation, Sonic Pi's design was never limited to a pure focus on education. Ideally there would be famous musicians and performers using Sonic Pi as a standard instrument alongside guitars, drums, vocals, synths, violins, etc. These performers would then act as motivational role models demonstrating the creative potential of code. For this to be possible sufficient focus and effort therefore had to be placed on making it a powerful instrument whilst still keeping it simple enough for 10 year olds to pick up. In addition to educators, I also worked directly with a variety of different artists in classrooms, art galleries, studios and venues in the early stages of Sonic Pi’s development. This provided essential feedback which enabled Sonic Pi to grow and ultimately flourish as a tool for creative expression."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7176116974606793743,
            "content_hash": -7176116974606793743,
            "location": "A.20-creative-coding-in-the-classroom.md:112",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1889,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 137,
            "source_unit": "https://hosted.weblate.org/api/units/15386783/?format=api",
            "priority": 100,
            "id": 15387560,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=1c694fa1dde943f1",
            "url": "https://hosted.weblate.org/api/units/15387560/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.332929+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "There were a number of exciting and unexpected side effects of this dual focus on education and professional musicians. Many of the features are beneficial to both groups. For example, a lot of effort has been put into making error messages more friendly and useful (rather than being a huge complicated mess of jargon). This turns out to be very useful when you write a bug while performing in front of thousands of people. Additionally, functionality such as playing studio quality audio samples, adding audio effects, providing access to live audio from the microphone all turn out to make the learning experience more fun, rewarding and ultimately meaningful."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 130841817499177095,
            "content_hash": 130841817499177095,
            "location": "A.20-creative-coding-in-the-classroom.md:126",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1890,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 108,
            "source_unit": "https://hosted.weblate.org/api/units/15386785/?format=api",
            "priority": 100,
            "id": 15387561,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=81d0d7f095ce1087",
            "url": "https://hosted.weblate.org/api/units/15387561/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.339082+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "The Sonic Pi community continues to grow and share amazing code compositions, lesson plans, musical algorithms, and much more. Much of this happens on our friendly forum in_thread (in-thread.sonic-pi.net) which is home to a very diverse group of people that includes educators, musicians, programmers, artists and makers. It is a real joy to see people learn to use code to express themselves in new ways and for that in turn to inspire others to do the same."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4897449518930144330,
            "content_hash": -4897449518930144330,
            "location": "A.20-creative-coding-in-the-classroom.md:137",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1891,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 77,
            "source_unit": "https://hosted.weblate.org/api/units/15386787/?format=api",
            "priority": 100,
            "id": 15387562,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=3c08c39c3ec2d3b6",
            "url": "https://hosted.weblate.org/api/units/15387562/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.344785+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Some fun capabilities"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8822629305305118861,
            "content_hash": -8822629305305118861,
            "location": "A.20-creative-coding-in-the-classroom.md:145",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1892,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://hosted.weblate.org/api/units/15386789/?format=api",
            "priority": 100,
            "id": 15387563,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=058fb96420564773",
            "url": "https://hosted.weblate.org/api/units/15387563/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.352827+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "From a Computer Science perspective, Sonic Pi provides you with the building blocks to teach you the basics as found in the UK's curriculum such as sequencing, iteration, conditionals, functions, data structures, algorithms, etc. However, it also builds on a number of important and relevant concepts which have become adopted in mainstream industry such as concurrency, events, pattern matching, distributed computing and determinism - all whilst keeping things simple enough to explain to a 10 year old child."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7086994888822438773,
            "content_hash": 7086994888822438773,
            "location": "A.20-creative-coding-in-the-classroom.md:147",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1893,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 78,
            "source_unit": "https://hosted.weblate.org/api/units/15386791/?format=api",
            "priority": 100,
            "id": 15387564,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=e25a104d89453b75",
            "url": "https://hosted.weblate.org/api/units/15387564/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.359870+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Getting started is as simple as:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2416904863207973844,
            "content_hash": -2416904863207973844,
            "location": "A.20-creative-coding-in-the-classroom.md:156",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1894,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 6,
            "source_unit": "https://hosted.weblate.org/api/units/15386793/?format=api",
            "priority": 100,
            "id": 15387565,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=5e756dd50c931c2c",
            "url": "https://hosted.weblate.org/api/units/15387565/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.366446+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "A melody can be constructed with one more command, sleep:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1288836649066766208,
            "content_hash": 1288836649066766208,
            "location": "A.20-creative-coding-in-the-classroom.md:162",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1895,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 10,
            "source_unit": "https://hosted.weblate.org/api/units/15386795/?format=api",
            "priority": 100,
            "id": 15387566,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=91e2de1a91211f80",
            "url": "https://hosted.weblate.org/api/units/15387566/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.373074+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "play 70\nsleep 1\nplay 72\nsleep 0.5\nplay 75"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 7047211120792381532,
            "content_hash": 7047211120792381532,
            "location": "A.20-creative-coding-in-the-classroom.md:164",
            "context": "",
            "note": "",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1896,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 10,
            "source_unit": "https://hosted.weblate.org/api/units/15386797/?format=api",
            "priority": 100,
            "id": 15387567,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=e1ccb92d3803285c",
            "url": "https://hosted.weblate.org/api/units/15387567/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.379794+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "In this example, we play the note 70 (roughly the 70th note on a piano), wait for 1 second, play note 72, wait for half a second and then play note 75. What's interesting here is that with just two commands we have access to pretty much all of Western notation (which notes to play and when) and learners can code any melody they've ever heard. This leads to huge variety in expressive outcomes whilst focussing on the same computing concept: sequencing in this case."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 2413378140461444199,
            "content_hash": 2413378140461444199,
            "location": "A.20-creative-coding-in-the-classroom.md:172",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1897,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 85,
            "source_unit": "https://hosted.weblate.org/api/units/15386799/?format=api",
            "priority": 100,
            "id": 15387568,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=a17e0aa1d2e5ac67",
            "url": "https://hosted.weblate.org/api/units/15387568/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.386398+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Taking ideas from the professional music world, we can also play back any recorded sound. Sonic Pi can play any audio file on your computer but also has a number of sounds built-in to make things easy to get started:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -618038401012147530,
            "content_hash": -618038401012147530,
            "location": "A.20-creative-coding-in-the-classroom.md:180",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1898,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 40,
            "source_unit": "https://hosted.weblate.org/api/units/15386801/?format=api",
            "priority": 100,
            "id": 15387569,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=776c49594a1edab6",
            "url": "https://hosted.weblate.org/api/units/15387569/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.392813+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "This code will play back the drum break which was a pillarstone to early hip-hop, Drum and Bass and Jungle. For example, a number of early hip-hop artists played this drum break back at half speed to give it a more laid-back feeling:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7995563341173137943,
            "content_hash": -7995563341173137943,
            "location": "A.20-creative-coding-in-the-classroom.md:189",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1899,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 43,
            "source_unit": "https://hosted.weblate.org/api/units/15386803/?format=api",
            "priority": 100,
            "id": 15387570,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=110a0d80e63d5de9",
            "url": "https://hosted.weblate.org/api/units/15387570/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.399268+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "In the 90s a number of music scenes burst out of new technology which enabled artists to take drum breaks like this apart and reassemble in a different order. For example:"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5774216368947846151,
            "content_hash": 5774216368947846151,
            "location": "A.20-creative-coding-in-the-classroom.md:198",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1900,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 31,
            "source_unit": "https://hosted.weblate.org/api/units/15386805/?format=api",
            "priority": 100,
            "id": 15387571,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=d0222331c761dc07",
            "url": "https://hosted.weblate.org/api/units/15387571/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.405706+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "live_loop :jungle do\n sample :loop_amen, onset: pick\n sleep 0.125\nend"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4136829884951364014,
            "content_hash": -4136829884951364014,
            "location": "A.20-creative-coding-in-the-classroom.md:202",
            "context": "",
            "note": "",
            "flags": "no-wrap",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1901,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 10,
            "source_unit": "https://hosted.weblate.org/api/units/15386807/?format=api",
            "priority": 100,
            "id": 15387572,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=469707233340fe52",
            "url": "https://hosted.weblate.org/api/units/15387572/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.412369+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "In this example we introduce a basic loop called :jungle which picks a random drum hit from our audio sample, waits for an eighth of a second and then picks another drum hit. This results in an endless stream of random drum beats to dance to whilst you experience what a loop is."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4953575347503010522,
            "content_hash": 4953575347503010522,
            "location": "A.20-creative-coding-in-the-classroom.md:209",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1902,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 53,
            "source_unit": "https://hosted.weblate.org/api/units/15386809/?format=api",
            "priority": 100,
            "id": 15387573,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=c4bea2888c0c92da",
            "url": "https://hosted.weblate.org/api/units/15387573/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.418885+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "Don't just play on your own - form a live coding band! It's a lot of fun jamming with others. One person could do beats, another ambient background, etc. Use the `live_audio` functionality to combine code with traditional instruments such as a guitar or a microphone."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -5324115949059166451,
            "content_hash": -5324115949059166451,
            "location": "B.04-Performing.md:22",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 2018,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 46,
            "source_unit": "https://hosted.weblate.org/api/units/15386811/?format=api",
            "priority": 100,
            "id": 15387574,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=361cf0c0b1562f0d",
            "url": "https://hosted.weblate.org/api/units/15387574/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.660174+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "See what interesting combinations of sounds you can create with code."
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7433277560095339690,
            "content_hash": -7433277560095339690,
            "location": "B.04-Performing.md:27",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 2019,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 11,
            "source_unit": "https://hosted.weblate.org/api/units/15386813/?format=api",
            "priority": 100,
            "id": 15387575,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=18d7b17139a28b56",
            "url": "https://hosted.weblate.org/api/units/15387575/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-01-23T22:19:48.667743+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![Sonic Pi Interface](../../../etc/doc/images/tutorial/GUI.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 1590144961126662949,
            "content_hash": 1590144961126662949,
            "location": "01.2-Exploring-the-Interface.md:8",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 41,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://hosted.weblate.org/api/units/15461084/?format=api",
            "priority": 100,
            "id": 15461381,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=9611546acd550325",
            "url": "https://hosted.weblate.org/api/units/15461381/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.196758+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![release envelope](../../../etc/doc/images/tutorial/env-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4254027877347386299,
            "content_hash": 4254027877347386299,
            "location": "02.4-Durations-with-Envelopes.md:79",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 194,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461086/?format=api",
            "priority": 100,
            "id": 15461382,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=bb0957d0cde663bb",
            "url": "https://hosted.weblate.org/api/units/15461382/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.320952+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![attack release envelope](../../../etc/doc/images/tutorial/env-attack-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -7347516718734735157,
            "content_hash": -7347516718734735157,
            "location": "02.4-Durations-with-Envelopes.md:114",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 203,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 3,
            "source_unit": "https://hosted.weblate.org/api/units/15461090/?format=api",
            "priority": 100,
            "id": 15461384,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=1a0860791e9288cb",
            "url": "https://hosted.weblate.org/api/units/15461384/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.340554+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![long attack short release envelope](../../../etc/doc/images/tutorial/env-long-attack-short-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -4160321751570768860,
            "content_hash": -4160321751570768860,
            "location": "02.4-Durations-with-Envelopes.md:123",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 206,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 5,
            "source_unit": "https://hosted.weblate.org/api/units/15461092/?format=api",
            "priority": 100,
            "id": 15461385,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=46439168c64b1c24",
            "url": "https://hosted.weblate.org/api/units/15461385/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.350666+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![short attack short release envelope](../../../etc/doc/images/tutorial/env-short-attack-short-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -520838826490912104,
            "content_hash": -520838826490912104,
            "location": "02.4-Durations-with-Envelopes.md:132",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 209,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 5,
            "source_unit": "https://hosted.weblate.org/api/units/15461094/?format=api",
            "priority": 100,
            "id": 15461386,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=78c59bd8c9c72298",
            "url": "https://hosted.weblate.org/api/units/15461386/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.360191+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![ASR envelope](../../../etc/doc/images/tutorial/env-attack-sustain-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 5873954260183145141,
            "content_hash": 5873954260183145141,
            "location": "02.4-Durations-with-Envelopes.md:145",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 213,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461096/?format=api",
            "priority": 100,
            "id": 15461387,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=d1847a47311bdab5",
            "url": "https://hosted.weblate.org/api/units/15461387/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.371923+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![ADSR envelope](../../../etc/doc/images/tutorial/env-attack-decay-sustain-release.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 8404094940376688158,
            "content_hash": 8404094940376688158,
            "location": "02.4-Durations-with-Envelopes.md:168",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 218,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461098/?format=api",
            "priority": 100,
            "id": 15461388,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=f4a157d24bcf661e",
            "url": "https://hosted.weblate.org/api/units/15461388/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.381947+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![ASR envelope](../../../etc/doc/images/tutorial/env-decay-level.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 312536483528520675,
            "content_hash": 312536483528520675,
            "location": "02.4-Durations-with-Envelopes.md:181",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 222,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461100/?format=api",
            "priority": 100,
            "id": 15461389,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=84565a46a01133e3",
            "url": "https://hosted.weblate.org/api/units/15461389/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.390802+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![ASR envelope](../../../etc/doc/images/tutorial/env-decay-level-2.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": 4640970395783492262,
            "content_hash": 4640970395783492262,
            "location": "02.4-Durations-with-Envelopes.md:189",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 225,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461102/?format=api",
            "priority": 100,
            "id": 15461390,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=c06809fc6dc772a6",
            "url": "https://hosted.weblate.org/api/units/15461390/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.403430+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![sample graph](../../../etc/doc/images/tutorial/sample.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2625310433060983893,
            "content_hash": -2625310433060983893,
            "location": "03.3-Stretching-Samples.md:103",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 298,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 2,
            "source_unit": "https://hosted.weblate.org/api/units/15461104/?format=api",
            "priority": 100,
            "id": 15461391,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=5b9106121445ebab",
            "url": "https://hosted.weblate.org/api/units/15461391/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.428552+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "`.pick` - returns a ring with the results of calling `.choose` once"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -8736394270110300622,
            "content_hash": -8736394270110300622,
            "location": "08.5-Ring-Chains.md:71",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 895,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 12,
            "source_unit": "https://hosted.weblate.org/api/units/15461106/?format=api",
            "priority": 100,
            "id": 15461392,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=06c217b2e0514632",
            "url": "https://hosted.weblate.org/api/units/15461392/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.593085+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        },
        {
            "translation": "https://hosted.weblate.org/api/translations/sonic-pi/tutorial/gl/?format=api",
            "source": [
                "![Sam Aaron Live Coding](../../../etc/doc/images/tutorial/articles/A.02-live-coding/sam-aaron-live-coding.png)"
            ],
            "previous_source": "",
            "target": [
                ""
            ],
            "id_hash": -2299315166168995585,
            "content_hash": -2299315166168995585,
            "location": "A.02-live-coding.md:14",
            "context": "",
            "note": "",
            "flags": "",
            "labels": [],
            "state": 0,
            "fuzzy": false,
            "translated": false,
            "approved": false,
            "position": 1303,
            "has_suggestion": false,
            "has_comment": false,
            "has_failing_check": false,
            "num_words": 4,
            "source_unit": "https://hosted.weblate.org/api/units/15461108/?format=api",
            "priority": 100,
            "id": 15461393,
            "web_url": "https://hosted.weblate.org/translate/sonic-pi/tutorial/gl/?checksum=60173109e5d428ff",
            "url": "https://hosted.weblate.org/api/units/15461393/?format=api",
            "explanation": "",
            "extra_flags": "",
            "pending": false,
            "timestamp": "2020-02-02T14:25:03.728752+01:00",
            "last_updated": "2023-05-23T12:28:47.723593+02:00"
        }
    ]
}