見出し画像

TENTOで学ぶプログラミング言語③Processing

Processingとの出会い

Processingは、開発された年代が新しく商用利用されることも多くはなかったため、こと知名度においてはJavaやPythonに大きく遅れをとっています。しかし、後述する特徴から、「最初の文字言語」として採用されることも多くなってきました。Scratchと同じくMITメディアラボで開発されたこともあり、「教育用」と考えられることも多いようです。

プログラミング教育について研鑽をかさねる若きTENTOのホープ、春日拓郎先生に話を聞きました。

Processingに出会ったときのことを教えてください。

「学生のころ、TENTOがおこなっていた十日間のワークショップにお手伝いで参加することがあったんです。はじめにScratchをやってプログラミングがどういうものかにふれて、次にmicro:bitをやってハードウェアに関して学ぶ。最後にProcessingで文字言語にふれるというものでした。恥ずかしながら、僕はそれまでProcessingというものがあることを知らなかったんです」

「テキストがあるから見ておいてくれと言われて接したのが最初です。そのテキストを増補改訂したものがTENTOの生徒ポータルのサイトにあがっていますね」

実際にいじってみて、どうでしたか。

「感動しました。Processingってすごいと思いました」

「大学の授業で、お絵かきツールみたいなものをつくったことがあったんです。たとえばJavaでこれをつくろうとすると、すごく大変なんですよ。ただ四角形を表示するにも、コードを何行も書かなければなりません。僕はデジタルでお絵かきしたりすることが好きだったんで、授業時間以外もやっていたんですが、『グラフィカルなことやるのって手間かかるよなあ』と思いながらやっていました」

「ところが、Processingを使うと、コード一行で四角形が描けてしまうんです! すごく単純で直感的で、ほんとに感動しました。もともとグラフィックやデジタルアートを描くために開発された言語なので、そのあたりがとてもスムーズにできるんです」

Processingが教育に適している理由

「Processingはよくプログラミング教育の場で使用されているんですが、その部分は大きいかもしれないですね。どんなプログラミング言語でも、たいがいはHello worldと表示することからはじまり、1から10までの足し算をするとか、1234、1234とくりかえし表示するとか。いずれにしても、それらはすべて文字(数字)で出力されますから、たとえばScratchなどをやったことがある人は物足りなく感じてしまいます。Scratchは絵を動かしたりジャンプさせたりするのが簡単でしょう。Hello worldだと、『あんなに苦労して何行もコード書いたのに、出てくるのがこれだけかあ』とどうしても思ってしまう(笑)」

C言語のHello world

「もちろん、何行も書くことには意味も役割もあります。それを理解することの大切さはあるんだけど、そこがわかったからといって作業の大変さが軽減されるわけじゃないですからね(笑)。……Processingは、そのあたりの作業がすごくシンプルなんです。図形表示が簡単になっていますし、図形の色を変えたりという作業に手間がかからなくなっています。書いたコードが即座に結果として表れるので、文字言語の入門編としては適しているんだろうな、とは思っています」

Processingでアートを描こう

TENTOで教えてみて、どうですか。

「上にあげたテキストでもそうなんですが、シューティングゲームをつくったり、ブロック崩しをつくったりとかが一応のゴールになっています。TENTOでは、テキストをこなすだけではなくて、『こういうこともできるよ』とか教えてあげたりしています」

「ちょっと残念だな、と思うのは、Processingを通過点みたいに考えている人が多いことです。TENTOのProcessing教材が、プログラミングの基礎的な概念――変数とかくりかえしとか条件分岐とか――を扱ったものになっているので、それを習得しJavaとかPythonに移行して、コードをガシガシ書くというのはひとつの筋道だとは思いますが、Processingでアート作品を作るのも面白いぞ、とは言いたいです。Processingはそれ自体でかなり深いし、きわめるととんでもないんだ、ということは多くの人に知って欲しいと思っています。とくに、グラフィックやアート系に興味ある人には、絶対オススメの言語です」

(RadioheadのHouse of CardsのPV。洗練されたグラフィックはすべてProcessingでつくられている)


この記事が気に入ったらサポートをしてみませんか?