소닉 파이(Sonic Pi)는 코드를 작성해 음악을 만드는 [[라이브 코딩]] 환경이다. 음표와 샘플을 재생하고 반복과 대기 시간을 조합해 리듬을 구성한다. 실행 중인 음악에 변화를 주며 프로그램을 악기처럼 다룰 수 있다. 교육과 공연을 함께 염두에 둔 예제와 안내를 제공한다. [[함수]]와 반복의 개념을 눈으로만 읽는 대신 소리의 차이로 확인해볼 수 있다. - [공식 웹사이트](https://sonic-pi.net/) - [소스 코드](https://github.com/sonic-pi-net/sonic-pi) - [라이선스](https://raw.githubusercontent.com/sonic-pi-net/sonic-pi/dev/LICENSE.md) ## 기타 등등 - 공식 튜토리얼의 난수 예제는 다시 실행하면 같은 수열을 들려준다. 우연처럼 들리는 음악을 다시 연주할 수 있도록 한 의사 난수이며, `use_random_seed`로 출발점을 바꿀 수 있다. [출처](https://sonic-pi.net/tutorial-04.html) - `sleep 1`의 1은 고정된 1초가 아니라 한 박이다. 개발자의 설명에 따르면 60 BPM에서는 1초, 120 BPM에서는 0.5초가 되므로 같은 코드도 템포에 따라 기다리는 시간이 달라진다. [출처](https://in-thread.sonic-pi.net/t/fidelity-vs-bpm/7017) #오픈소스 #도구 #웹사이트 #음악 #프로그래밍 #교육