스크래치
스크래치는 미국 MIT에서 개발하여 세계 40개 언어로 번역되어 무료로 사용할 수 있는 교육용 프로그래밍 언어입니다. C언어나 자바처럼 키보드를 이용한 코드 입력이 아니라, 마우스를 이용해 블록을 붙이는 방식으로 프로그램을 제작할 수 있습니다. 직관적인 인터페이스와 다양한 라이브러리 덕분에 프로그래밍에 대한 지식이 별로 없어도 쉽게 결과물을 만들 수 있습니다.
전 세계적으로 초/중학교 학생들이 많이 사용하는 프로그램으로 우리나라에서는 네이버에서 제공하는 '엔트리'와 함께 학교에서 널리 보급된 프로그래밍 언어입니다.
오늘은 베토벤의 교향곡 9번의 일부인 '환희의 송가'를 템포를 사용자가 직접 입력하여 여러 빠르기로 체험할 수 있는 스크래치 프로젝트를 보여 드리겠습니다.
환희의 송가
1785년에 독일의 시인 프리드리히 실러의 시 '환희의 송가'는 1824년에 작곡된 베토벤 교향곡 9번 '합창'에 실리면서 더욱 유명해졌습니다. 베토벤은 실러의 시를 그대로 쓰지 않고 1/3 정도만 추린 이후에 곡의 자연스러운 흐름을 위해 실러의 시에 없는 도입부 가사를 추가했습니다.
실러의 시
Freude, schöner Götterfunken,
환희여, 아름다운 신들의 불꽃이여,
Tochter aus Elysium,
낙원의 딸이여,
Wir betreten feuertrunken,
우리 모두 정열에 취해
Himmlische, dein Heiligthum.
빛에 가득한 성소로 들어가자.
Deine Zauber binden wieder,
신성한 그대의 힘은
Was die Mode streng getheilt,
가혹한 현실이 갈라놓았던 자들을 다시 결합시키고
(Was der Mode Schwerd getheilt.)
(현실의 검이 갈라놓았던 것들을 다시 결합시키고)
Alle Menschen werden Brüder,
모든 인간은 형제가 되노라
(Bettler werden Fürstenbrüder.)
(거지도 귀족의 형제가 되노라)
Wo Dein sanfter Flügel weilt.
그대의 부드러운 날개가 머무르는 곳에.
Seid umschlungen, Millionen!
서로 껴안아라! 만인이여
Diesen Kuß der ganzen Welt!
전 세계의 입맞춤을 받으라!
Brüder, überm Sternenzelt
형제여, 별이 빛나는 하늘 저편에
Muß ein lieber Vater wohnen!
사랑하는 하느님께서 반드시 계실 것이다!
Wem der große Wurf gelungen,
위대한 하늘의 선물을 받은 자여,
Eines Freundes Freund zu sein,
진실된 우정을 얻은 자여,
Wer ein holdes Weib errungen,
여성의 따뜻한 사랑을 받은 자여,
Mische seinen Jubel ein!
다 함께 환희의 노래를 부르자!
Ja, wer auch nur eine Seele
그렇다, 비록 단 한 사람의 마음이라도
Sein nennt auf dem Erdenrund!
땅 위의 그를 믿는 사람은 모두 환희의 노래를 부르자!
Und wer's nie gekonnt, der stehle
그러나 그 조차 가지지 못한 자들은
Weinend sich aus diesem Bund!
눈물 흘리며 조용히 떠나가거라!
Was den großen Ring bewohnet,
이 세상에 사는 사람은
Huldige der Sympathie!
이 공감(共感)에 봉사하라!
Zu den Sternen leitet sie,
이 공감은 미지의 존재가 군림하는
Wo der Unbekannte thronet.
별 있는 곳으로 인도하리라.
Freude trinken alle Wesen
이 세상의 모든 존재는
An den Brüsten der Natur;
자연의 가슴에서 환희를 마시고
Alle Guten, alle Bösen
모든 선한 사람이나 악한 사람이나
Folgen ihrer Rosenspur.
장미빛 오솔길을 환희 속에 걷는다
Küsse gab sie uns und Reben,
환희는 우리에게 입맞춤과 포도나무,
Einen Freund, geprüft im Tod;
그리고 죽음조차 빼앗아 갈 수 없는 친구를 주고
Wollust ward dem Wurm gegeben,
땅 위의 벌레에게도 기쁨은 선물받고,
Und der Cherub steht vor Gott.
천사 케루빔은 신 앞에 선다
Ihr stürzt nieder, Millionen?
만인이여, 엎드려 빌겠는가?
Ahnest du den Schöpfer, Welt?
세계여, 창조주가 느껴지는가?
Such' ihn überm Sternenzelt!
별이 빛나는 하늘 저편에서 아버지를 찾으라
Über Sternen muß er wohnen.
별이 빛나는 하늘 저편에 반드시 계실 것이다.
Freude heißt die starke Feder
기쁨은 영원한 자연에 있어서의
In der ewigen Natur.
강한 용수철이다.
Freude, Freude treibt die Räder
기쁨, 기쁨은 크나큰 세계의 시계 속에서
In der Großen Weltenuhr.
톱니바퀴를 돌아가게 한다.
Blumen lockt sie aus den Keimen,
기쁨은 꽃을 그 싹으로부터 이끌어 내고
Sonnen aus dem Firmament,
별을 하늘로부터 이끌어 내며
Sphären rollt sie in den Räumen,
기쁨은 천문학자의 망원경도 모르는 천체를
Die des Sehers Rohr nicht kennt.
하늘에서 회전하게 한다.
Froh, wie seine Sonnen fliegen
환희여, 수 많은 별들
Durch des Himmels prächt'gen Plan,
천국의 영광스러운 계획을 따라 빛나는 창공을 가로지르듯
Laufet, Brüder, eure Bahn,
형제여, 그대들의 길을 달려라,
Freudig, wie ein Held zum Siegen.
영웅이 환희에 찬 채로 승리의 길을 질주하듯이.
Aus der Wahrheit Feuerspiegel
불타오르는 진실로부터
Lächelt sie den Forscher an.
그녀는 학자에게 미소를 보이노라.
Zu der Tugend steilem Hügel
미덕의 가파른 언덕을 향해
Leitet sie des Dulders Bahn.
포기하지 않는 자의 길을 안내하노라.
Auf des Glaubens Sonnenberge
신념의 태양이 비추는 산 위에
Sieht man ihre Fahnen wehn,
바람에 날리는 그녀의 깃발을 본다.
Durch den Riß gesprengter Särge
터질듯한 관이 열림에 따라
Sie im Chor der Engel stehn.
천사의 합창 앞에 서있는 그들을 보리라.
Duldet mutig, Millionen!
만인이여, 용기있게 인내하라!
Duldet für die beßre Welt!
더 나은 세상을 위해 인내하라!
Droben überm Sternzelt
별이 빛나는 하늘 저편에
Wird ein großer Gott belohnen.
위대하신 하느님이 보답하리라.
Göttern kann man nicht vergelten;
우리는 신들에게 보답할 수 없노라
Schön ist's, ihnen gleich zu sein.
신처럼 될 수 있다는 것은 아름다운 것이니,
Gram und Armut soll sich melden,
슬픔과 빈곤은 주변에 알리고
Mit den Frohen sich erfreun.
기쁜 사람들과 함께 기뻐하라.
Groll und Rache sei vergessen,
원한과 복수는 잊으라
Unserm Todfeind sei verziehn,
불구대천의 원수도 용서하라
Keine Träne soll ihn pressen,
그를 눈물흘리게 하지 마라,
Keine Reue nage ihn.
그를 후회가 갉아먹게 하지 마라.
Unser Schuldbuch sei vernichtet!
우리의 채무 장부는 없애버리자!
Ausgesöhnt die ganze Welt!
세상 사람들이여 화해하자!
Brüder, überm Sternenzelt
형제여, 별이 빛나는 하늘 저편에 계신 하느님은
Richtet Gott, wie wir gerichtet.
우리가 심판한 대로 심판하시노라.
Freude sprudelt in Pokalen,
환희는 황금빛 붉은
In der Traube goldnem Blut
포도주 잔 위에 소용돌이치고
Trinken Sanftmut Kannibalen,
식인귀들은 온순함을 마시고
Die Verzweiflung Heldenmut--
절망은 영웅의 기개를 마시노라
Brüder, fliegt von euren Sitzen,
형제들이여, 자리를 박차고 일어나
Wenn der volle Römer kreist,
포도주로 가득 찬 잔이 돌어오면
Laßt den Schaum zum Himmel spritzen:
거품을 하늘을 향해 뿌려라
Dieses Glas dem guten Geist.
이 잔을 선한 정신에 바치리라.
Den der Sterne Wirbel loben,
별들의 무리가 칭찬하고
Den des Seraphs Hymne preist,
세라핌의 찬가가 찬양하는
Dieses Glas dem guten Geist
그런 선한 정신에게 이 잔을,
Überm Sternenzelt dort oben!
별이 빛나는 하늘 저편에 계신 분께!
Festen Mut in schwerem Leiden,
깊은 고뇌에는 굳은 용기를,
Hilfe, wo die Unschuld weint,
죄 없는 자의 눈물이 있는 곳에 도움을,
Ewigkeit geschwornen Eiden,
드높은 맹세에는 영원함을,
Wahrheit gegen Freund und Feind,
친구와 적에게는 진실을.
Männerstolz vor Königsthronen, --
왕좌 앞에는 사나이의 기개를,
Brüder, gält' es Gut und Blut--
형제여, 재물과 목숨을 걸고서라도
Dem Verdienste seine Kronen,
공이 있는 자에게는 왕관을,
Untergang der Lügenbrut!
거짓의 무리에게는 패배를!
Schließt den heil'gen Zirkel dichter,
성스러운 자들은 더 가까이 뭉쳐라
Schwört bei diesem goldnen Wein:
이 황금빛 포도주에 대고 맹세하라!
Dem Gelübde treu zu sein,
약속한 바를 충실히 지키겠노라고,
Schwört es bei dem Sternenrichter!
별이 빛나는 하늘 저편에 계신 심판자께!
Rettung von Tyrannenketten,
독재의 사슬로부터는 구원을,
Großmut auch dem Bösewicht,
악인에게도 관용을,
Hoffnung auf den Sterbebetten,
임종의 참상에도 희망을,
Gnade auf dem Hochgericht!
교수대에도 은총을!
Auch die Toten sollen leben!
죽은 자들도 살아나게 하자!
Brüder, trinkt und stimmet ein,
형제여, 마시고 함께 노래하자.
Allen Sündern soll vergeben,
모든 죄인들을 용서받아야 하고
Und die Hölle nicht mehr sein.
지옥은 없어져야 하노라.
Eine heitre Abschiedsstunde!
세상을 떠나는 순간에도 밝게!
Süßen Schlaf im Leichentuch!
수의를 입고도 단잠을 자자!
Brüder, einen sanften Spruch
형제여, 너그러운 판결을 기대하자
Aus des Totenrichters Munde.
죽은 자들을 심판하는 분의 입에서도
환희의 송가 일부를 어린이를 위해 만든 악보를 '뮤즈스코어'를 이용하여 사보했습니다.
환희의 송가 코딩
환희의 송가 코딩에서 중요한 사항 하나는 연주 빠르기를 사용자가 직접 선택할 수 있게 한 것입니다. 선택은 숫자를 입력함으로써 해결됩니다. 스크래치 프로그램을 실행하면 바로 '빠르기는?'이라고 물어옵니다. 스크래치 '감지' 기능을 이용해서 인터렉티브가 가능한 코딩을 하는 것입니다. 숫자는 얼마든지 입력이 가능합니다. 사람은 불가능한 빠르기도 컴퓨터는 해결하니까요. 스마트폰은 손안에 있는 컴퓨터입니다.
각 소절별로 잘라서 코딩했습니다. 한 소절이 끝나면 메시지를 보내고 받은 메시지를 통해 다음 소절이 이어지게 한 것입니다. 물론 한 번에 쭈욱~ 코딩할 수도 있겠으나 공간 여건도 있고, 잘라서 연결하는 것이 나중에 수정할 때도 좋습니다. 메시지를 이어가는 것은 간단합니다. '새 메시지 만들기'를 계속하면서 진행하면 되니까요.
환희의 송가 빠르기 직접 정하기
스크래치 패널에는 '감지' 블록있습니다. 그중에는 인터렉티브하게 진행할 수 있습니다. '빠르기는?' 하고 묻고 입력을 기다립니다. 숫자로 빠르기를 정해주는 것입니다.
스크래치 프로젝트 '환희의 송가' 맛보기
스크래치 프로젝트로 체험해 보시게요. 초록 깃발을 선택하면 프로그램이 시작됩니다. 멈추려면 빨간 버튼을 선택합니다.
제가 추천하는 빠르기는 100~140입니다.
물론 큰 숫자 입력만큼 빠르게 연주하는 것은 물리적으로 어렵다는 한계는 있습니다. 궁금하시면 '10,000'을 입력해 보세요.
그럼 이만.
'컴퓨터 활용 > 노년에 즐기는 코딩' 카테고리의 다른 글
[스크래치] 연주할 악기를 사용자가 선택하여 들을 수는 없나요? (6) | 2023.02.05 |
---|---|
[스크래치] 노래에 맞춰 춤추는 고양이 (6) | 2023.02.03 |
[스크래치] 칼림바 연주를 위한 거미 (19) | 2023.01.31 |
[스크래치] 고흐 그림을 감상하는 몽키, 서적 '전지적 코딩시점' 활용 (4) | 2023.01.30 |
[스크래치] 무반주 옹달샘 코딩 (16) | 2023.01.28 |
댓글