前言

当我还是在德克萨斯州长大的孩子时,我”学会”了如何演奏中提琴。我在”学会”上加了引号,因为这真的只是一个死记硬背的过程——一遍又一遍地演奏同样的歌曲,花了无数个小时。我学会了如何读乐谱,但仅限于我知道音符名称并能将它们转化为粗略的身体动作。我从未学会将音乐作为文献来阅读,理解其更深层的含义、结构或历史背景。我从未理解任何关于音乐理论的东西,除了对需要注意不同调中的临时记号感到烦恼。我从未创作过任何东西,甚至没有非正式地涂鸦出一首曲子。我从未养成深度聆听的习惯,在脑海中拆解歌曲并思索它们最初是如何组合在一起的。我从未只是为了乐趣而演奏。而且,尽管我的父母和老师有最好的意图,我从未爱上音乐。

学习如何编码对我来说是完全相反的体验。我主要是自学的。我在学校选修的课程是我为自己选择的。老师在恰好的时候给了我重要的支架式支持,但这从来不会感觉被迫。我花了几个小时在游戏或其他项目上(可能在我应该练习中提琴的时候)。我绘制艺术作品,规划算法,甚至合成我自己的基本声音效果。我不知道自己在做什么,但那是解放。周围没有人指出我的错误或向我展示如何以”正确”的方式做事(至少直到大学)。我学会了如何自己弄清楚事情,我从那些经验中获得的技能在今天仍然相关。我爱上了编码。

但我知道许多人的故事是翻转180度的。对他们来说,音乐在个人、社交和文化上是如此激励人心,他们无法满足。他们会练习无数个小时,不仅是为了乐趣,而是为了更深层次的东西。对一些人来说,是像吉他这样的乐器让他们开始。对其他人来说,是像GarageBand这样的应用程序给了他们一个有趣的切入点进入音乐想法。就他们的编码经验而言,那些经验从缺乏灵感到令人反感不等。并不是他们必然讨厌编码,而是他们将其视为不适合他们的东西。

在西摩·帕珀特(Seymour Papert)的《头脑风暴:儿童、计算机和强大的想法》(Mindstorms: Children, Computers, and Powerful Ideas)一书的前言中,他写道,他”爱上了齿轮”,作为帮助我们想象未来的一种方式,在这个未来中,孩子们(像我一样)会爱上计算机编程,不是出于其本身,而是为了编程能够打开的创意世界和强大的想法。他部分的意思是,热爱和学习齐头并进,计算机可以成为许多创意和艺术领域(如数学和音乐)的切入点。编码可以振兴在学校中变得痛苦死板的学科。

在过去几年开发TunePad的过程中,对我来说是音乐想法的迷人重新发现。代码给了我一种不同的语言来思考节奏、和弦与和声等事物。我可以不受我笨拙双手的阻碍实验作曲。音乐变成了一种创意和鲜活的东西,这种方式对我来说以前从未有过。音乐理论不再是混乱术语的丛林,而是变成了构建创作过程的数学之美的迷人世界。

Melanie、Cameron和我希望这本书能给您带来类似的音乐与代码的快乐学习体验。我们希望您感到有能力探索音乐的算法和数学之美。我们希望您像我们一样发现,音乐和代码以令人惊讶和强大的方式相互强化,为您打开新的创意机会。我们希望,无论您的起点如何——作为编码者、作为音乐家、作为两者都不是、作为两者都是——您将发现关于自己和您能成为什么的新东西。

Michael Horn
芝加哥,伊利诺伊州(2021年7月)


注释

  1. 我也很幸运地在我的背景和身份的社会可接受性被视为 socially acceptable 的时代和地点长大。

图片和插图版权

George Folz (georgefolz.com) 为本书创建了原创插图,出现在插曲2、4和8中。

第3章开头的照片由 (unsplash.com/@jonathanvez) 提供
第4章开头的照片由 (unsplash.com/@markus_gjengaar) 提供
第5章开头的照片由 (unsplash.com/@jasmund) 提供
第6章开头的照片由 (unsplash.com/@efrenbarahona3) 提供
第7章开头的照片由 (unsplash.com/@pablodelafuente) 提供
第8章开头的照片由 (unsplash.com/@makuph) 提供
第10章开头的照片由 (unsplash.com/@didierjoomun) 提供
插曲9开头的照片由 (unsplash.com/@halacious) 提供
第11章开头的照片由 deepsonic (flickr.com/people/73143485@N02) 提供。知识共享许可 creativecommons.org/licenses/by/2.0。