日常の進捗

主に自分のための,行為とその習慣化の記録

2020年クリエイティブコーディング関連の活動を振り返る

この記事は Processing Advent Calendar 2020 の 21 日目の記事です.

アドベントカレンダー公開当初の11月登録時点では,p5.js関連のYouTube動画を投稿したものを告知する予定でした.しかし,この一週間の進捗がダメだったこともあり(笑),自分のクリエイティブコーディングに関連する2020年の活動をまとめることにします.今年の取り組みは以下のように分類できると思ったので,それらを月別で書いていくことにします.また月ごとにお気に入りのスケッチを掲載します.

  • デイリーコーディング
  • (クリエイティブコーディングに関連した)対外的な発表など
  • コミュニティ活動
  • その他

https://www.openprocessing.org/sketch/827267 https://www.openprocessing.org/sketch/827267

1月

デイリーコーディング

1月に印象に残っているコードはキャラクターを自動生成するようなコードです.「人間らしさ」をコードで定義していくことは,逆に「人間らしくなさ」を排除していくことかもと気づいた時に,👶が生まれたことの影響もあって,その境界にコードで線引することに怖さを感じたのを覚えています.

対外的な発表など

1月11日に開催されたKyoto.js 17のLTで発表しました.「フロントエンドエンジニアの方々の前で,機能を優先しないコーディングについて発表するのはもしかしたら場違いかも」と緊張しましたが,とても温かく受け入れてもらえました.感謝.

また,会場でLTを聴いてもらえた@nagayamaさんが,これをきっかけにデイリーコーディングを取り組んでくださったことはとても嬉しかったですし,活動を広げるなかで大変励まされました.

paper.dropbox.com

コミュニティ活動

Processing Community Day Tokyo 2020のトークセッションやLTといった,参加型の企画準備を @reona396さんや @naoto_hiedaさんとともに非同期でやっていました.直前にコロナ対応の話などをしましたが,今のような状況は想定できてなかったですね.

その他

👶爆誕🌈


f:id:takawo:20201222161424p:plain https://www.openprocessing.org/sketch/837227

2月

デイリーコーディング

動かないコードを動くコードにする試みをしていた期間でした(それ自体を特別意識していたというわけではなかったですが).noiseやsin,cosなど三角関数で作った値をグラフィックのパラメータへ適用することを,日々のコーディングで少しずつやっていって,感覚を掴んだ頃だったかも.

OpenProcessing経由で読んだ北千住デザインさんの四分木のコードは発想転換のきっかけになりました.感謝です.

対外的な発表など

2月1日に開催されたProcessing Community Day Tokyo 2020のトークセッション「日常的にコードを書いて表現する」を企画,モデレータを担当しました.皆さんのお話は素晴らしく,良いトークセッションになったのですが,モデレータとしては反省が多く,トークセッションでもっと突っ込んだ話ができたら良かったですし,そのための時間をきちんと確保したり,予め検討しておくのも企画者の役目だったことなどが次回の課題です.

今年は日常的にコードで表現する活動の活発さが,他のコーディングコミュニティとも海外のProcessingコミュニティとも違った,日本のProcessingコミュニティが持つユニークな個性だと認知された1年だったように思います.そして,活発化には登壇者含めたデイリーコーダーの方々の貢献が大きかったです.特にはぅ君さんの#つぶやきProcessing は実践する人も増え,国内外で大きな反響がありました.素晴らしい!

haukun.projectroom.jp note.com note.com

コミュニティ活動

Processing Community Day Tokyo 2020がとても盛況で終われました..打ち上げで運営の方々とお酒を飲んだのが懐かしい🍻ああいう集まりが,またいつかできると良いですね.

その他

ライフログ的に撮るようにしている家族の食事写真が1,000枚達成しました.


https://www.openprocessing.org/sketch/85201 https://www.openprocessing.org/sketch/85201

3月

デイリーコーディング

発見されたdrawingContextを用いた短いコードをたくさん書きました.drawingContextを使うと,ドロップシャドウや破線,グラデーションなどCanvas APIの機能を簡便に使うことが出来ます(といってもp5.jsでは少し長い命令の類ですが).これが僕のやっていた「グラフィックのためのクリエイティブコーディング」の中心的なトピックであった質感表現ととても相性が良かったです.いまはdrawingContext無しでコードが書けなくなっている(笑).一方で最近は自分で敷いた粒状感も味がある手こねハンバーグみたいで好きになってきました.deconbatch風に言うと,「drawingContextは,化学調味料だ」「化学調味料」ですね(笑).

対外的な発表など

京都造形芸術大学で同学の教育改革支援制度採択研究として, 情報デザイン学科クロステックデザインコースの白石晃一さんとともに,公開講座でクリエイティブコーディングのワークショップを行いました.公開講座の資料は以下のリンクから閲覧できます.3日間の長丁場のワークショップでしたが,p5.svg.jsとペンプロッタを使った出力まで行える内容で,とても充実した内容になりました.白石さん,助手の佐藤さんのサポートもあって,レクチャーに集中できて,自分にとっても大変良い機会になりました.

xtd-shira.github.io

あまらぶアートラボ(A-Lab)で開催された展覧会,A-Lab Exhibition Vol.22「アイデンティティのキキ」で,出展作家のグレゴリー・アンボスさん,鈴木哲生さんのデザインしたビジュアルアイデンティティ案にp5.jsでアニメーションをつけたバージョンを作成しました.ふわふわしたオバケにやどかりのようにロゴが乗ってゆらゆら動く様子をプログラムで作成しました.

www.ama-a-lab.com

コミュニティ活動

Processing Community JapanのDiscordが開設.参加してからは,日々何かしらProcessing関連の情報交換が行われるようになりました.以下のリンクからどなたでも参加できます.そういえば,この頃は「PCD関西ができたらいいな」と思っていました.

discord.gg

その他

👶の夜泣きが一番すごい時期.


https://www.openprocessing.org/sketch/872480 https://www.openprocessing.org/sketch/872480

4月

デイリーコーディング

この頃は,PCJでデイリーコーディングチャレンジの企画が開催されていました.乗っかってお題でコーディングを1ヶ月半ほどやり完走しました.普段は気の向くままにコーディングしているため,お題を受けてコーディングするのは大リーグ養成ギブスを着けてコードを書いているような感じがして,とても大変でした(笑).一方で「思いつかない」で悩むところから「まぁいいか適当で(MIT)」メソッドに至ってからは,お題でコーディングする気構えがなくなり,取り組むのがとても楽になりました.合わせて「自分らしい」コードについて考えるきっかけを得たり,そこから「らしさそれ自体へ」のこだわりが薄まり,むしろ日々のコーディングで自分らしさを広げていくことに意識が向かうようになりました.

対外的な発表など

4月10日に,IAMASの先輩である山辺真幸さんからインタビューを受けた記事が公開されました.山辺さんは,僕なんかよりずっと,ずっと前からクリエイティブコーディングで作品を作られてきた方なので(Designing Algorithm Groupは遡って追っていました……)もはや畏れ多さしかなかったですが(笑),終始なごやかな感じでお話ができました.記事自体もおかげさまで多くの方に閲覧してもらえたようで,大変ありがたいです.

valed.press

コミュニティ活動

ちょこちょことオンラインミーティングをDiscordやるようになりました.遡ると3月末からやり始めていたようです.週1ペースでコミュニティベースの活動のアイデアなどについて今も話し合っています.

その他

授業が始まって対面/オンライン対応などで落ち着かない感じでした.先行して私費で機材を買って試すなど,経験値積んでおいたおかげでそれなりの録画配信環境が用意できました.


https://www.openprocessing.org/sketch/898223 https://www.openprocessing.org/sketch/898223

5月

デイリーコーディング

デイリーコーディングチャレンジが終わり,再びのびのびコーディング期,いままであまりやってこなかった画像の再構成などにトライしてみたのが心境にハマった感じでした.座標変換や回転,剪断変形(shear),前述のdrawingContextなどを組み合わせると「VOGUEにイケるくないか?(※Unsplashの写真がどれも良い・笑)」と勘違いするようなグラフィックができてテンションがアガりました.今は画像解析や機械学習で人や顔を検出した情報を経て,再構成するあたりでもう一段階面白くできそうかもと思います.

対外的な発表など

PCJのお楽しみ企画として「30分のコーディングチャレンジ」を思いついたので,実験として@naoto_hiedaさんとそれぞれ30分の即興コーディングを5月31日に公開しました.

www.youtube.com

コミュニティ活動

5月16日に記念すべき「Processing Community Hangout Japan #01」を開催しました.今回のお題はデイリーコーディングチャレンジから日々コーディングすることについてで,今振り返っても豪華な出演者の方々にお話が聞けたのはとても良かったです!

www.youtube.com

その他

プログラミングの演習,電子工作,CGの座学,ゼミなど全てオンラインとなり基本毎日在宅.今振り返ると👶が目が離せない時期だったので,Zoomで授業後に子守できたのはとても良かったです.


https://www.openprocessing.org/sketch/917042 https://www.openprocessing.org/sketch/917042

6月

デイリーコーディング

色や形,配置によって,画面上を「構成する」ようなグラフィックを好んで作ってきたのですが,そこから少し逸脱したり,溢れたりするようなグラフィックも作るようになりました.パラメータ含めてカチッと作るのではなくて,グニャグニャの骨組みでギリギリ立つか立たないか分からない柱で家を建てるような感じというか.また「コードさえ書いていれば,どんなものでも自分は自分だな」と思えるようになった頃でした.

対外的な発表など

6月14日,ayato @dn0t_ さんが中心となって編集されたPCJ Zine vol.0に短いテキストとデイリーコーディングで作成した作品を寄せました.こういう活動が積み重ねていって,アーカイブになっていくことはとても意義があることだなと思っていますし,自分が関心をもつオンラインのコミュニティ活動も,細々とでも今後も続けていけたらよいなと思っています.

コミュニティ活動

火曜夜にDiscordやTwitterで告知して,ゆるくコーディングする会を週1ペースで実施していました(現在は休止中).途中から形式を決めて,90分コーディング,30分雑談のようなフォーマットで9月くらいまでやっていました.

その他

この頃に予定していた,生涯学習としてのクリエイティブコーディング講座がコロナの影響で中止になったのは,+60の方とコードが書ける機会で楽しみにしていたので.悲しかったです.関西ローカルでの活動も広げていきたいと思っています.


https://www.openprocessing.org/sketch/930629 https://www.openprocessing.org/sketch/930629

7月

デイリーコーディング

子育てで以前のように睡眠がまとまってとれなくなったこともあり,朝起きて集中してコーディングすることが難しくなりました.代わりに,5分や10分の合間に書いた短いコードを組み合わせたり,前日に書いたコードを数行書き換えたりする程度で作ることが増えました.また過去に書いてきたOpenProcessingのコードがいい感じにビジュアルのカタログのようになってきたので,そこを眺めているうちにアイデアが出したり,過去の「手を入れる余地がある」ようにみえるコードを探して少しだけ手直しするなど,老練なデイリーコーディングスキルが身につきました(笑).「大人には大人の戦い方がある」んですよ.

対外的な発表など

特になかったです.そういう月も普通にあります😃

コミュニティ活動

7月5日に「Processing Community Hangout Japan #02」を開催しました.カバーイメージは,僕がとても大好きなChe-Yu Wu @Majer666666さんにお願いしました.Wuさんの作品はどれも物語を感じる楽しさやユーモアと,その裏でアルゴリズムと確かな技術に支えられていてとても素敵なのでぜひチェックしてください.また30分のコーディングチャレンジにはいつもお世話になっている@deconbatchさん,@reona396さんに参加してもらうことができました.二人とも個性が感じられつつ,時間制限の中で緊張感のあるコーディングで必見です.

www.youtube.com

その他

夏は冬に比べてちょっと体調が良い.赤ちゃんに表情が出てきて,よく泣き,よく笑うようになりました.


https://www.openprocessing.org/sketch/942270 https://www.openprocessing.org/sketch/942270

8月

デイリーコーディング

過去のコードを見返していると,毎日違うトピックでコードを書いているというよりも,2-3日や最長でも1週間程度の周期で,グラフィックやWebカメラ,3D,文字や機械学習といったトピックをひょいひょいと移っているのが確認できます.我ながら,好き勝手,楽しそうにやっとるな,という印象.この👶の口から球がでてくるコードはデイリーコーディングならぬベイビーコーディングです(笑).

対外的な発表など

8月30日,FabLab SENDAI – FLATの大網さんと小野寺さんからインタビューを受けて,クリエイティブコーディングについて話した動画「TOPPING|Interview #02」が公開されました.大網さんは横浜で開催されたFab9(世界ファブラボ会議)の頃から,小野寺さんはMaker Faire Tokyoで活動を知ってから,お二方ともに「こういうアプローチでローカルで活動を続けるのは良いなぁ」と一方的にリスペクトしてきたので,お話をいただいたときは本当に嬉しかったです.作り続けることや,その中で失敗をポジティブに積み上げる話などをしました.

www.youtube.com

コミュニティ活動

8月30日に「Processing Community Hangout Japan #03」を開催しました.カバーイメージは@nasana_xさん.いつも柔らかい色使いとGLSLなどのテクニックの組み合わせが素敵で参考にさせてもらっています.イベントのトピックは1ツイート内でクリエイティブコーディングする「#つぶやきProcessing」で,30分のコーディングチャレンジは,つぶやき伝道師のはぅ君さん(笑)とブラジル,サンパウロ在住のAlexandre B A Villaresさんでした.#つぶやきProcessing はブラジルで続けられているクリエイティブコーディングのイベント「Noite de Processing」で取り上げられたり,海外のコーダーが参加するなど,今や国際展開していますね!

www.youtube.com

ちなみにAlexandreさんはsketch-a-dayというプロジェクトもやっているデイリーコーディング仲間です😃

github.com

その他

39になりました🎉漠然と「おじいちゃんになっても,コーディングを続けるために今からどうすればよいか」というようなことについて考えるようになりました.健康第一,目や腱鞘炎のような箇所には気をつけるようになりました.


https://www.openprocessing.org/sketch/961685 https://www.openprocessing.org/sketch/961685

9月

デイリーコーディング

この頃はグラフィックそのものやレイヤーを,コピー,マスク,一部削除してくり抜いたり,重ねたりするテクニックを手持ちの道具として,必要に応じて使い分けてグラフィックが作れるようになってきました.

また「楽しい」だけで毎日コーディングができたら最高なのですが忙しかったり体調が悪かったりする私生活の悪影響でどうしてもアイデアが詰まったりすることも出てきました.今考えられる解決方法は「散歩する」だったり「美味しいものを食べる」「好きな音楽を大音量で聴く」のようなコーディングと直接関係がないことです.生活とコーディングをつなぐ「ライフコーディング」実践の最中なので,その道程の景色も記憶に留めながら進んでいきたいと思っています.中でも,心身の健康はとても大事だなと気付かされますし,今それを支えてくれる家族に感謝です.

対外的な発表など

9月26日,ayato @dn0t_ さんが中心となって編集されたPCJ Zine vol.1に「つぶやきProcessing」で作成した作品を寄せました.普段はあまり書かないようなビデオフィードバックのようなコードです.次のZineはテーマは何が良いでしょうかね.

コミュニティ活動

週1のペースで続けていたゆるくコーディングする会を休止しました.原因は主に自分の時間マネジメントの問題.家族の時間を確保しつつ👶の寝かしつけや有事の対応などにリソース確保に注力したほうが今はよいと判断しました.

ゆるくコーディングする会は参加も出入りも自由で,コード書いて雑談するという形式でしたが,いきなり参加した人に「自由にコードを書いてください」というのも無茶振りなのかな,でもそういう経験もしないと自分のコードが書けるようにはならない気もする,というような逡巡する思いもあります.もう少しテーマやお題のようなものがあっても良いのかもしれないですし,再開するときはフォーマットを検討したいと思います.

その他

後期授業が開始しました.対面になって細々と楽になった部分もありますが,自分の演習系授業に関して言うと,特にプログラミングの教材開発では「もっとできるかも」と気づく部分が増えました.コロナ禍でのZoomでのオンライン授業期間を経て,人々の教育系コンテンツに対する質的評価の尺度が劇的に変化した(目が肥えた)と思うので,自分の技術もアップデートしていく必要性を感じています.


https://www.openprocessing.org/sketch/996261 https://www.openprocessing.org/sketch/996261

10月

デイリーコーディング

OpenProcessingに並んだ書いたコードを見返すと,我ながら好き勝手コーディングしているなと思いつつ,一つ一つの技法の理解が進んで,その組み合わせで遊んでいるのが分かります.自分の現時点でのコーディングの個性は,そういう手持ちのテクニックの組み合わせを,さほど脈絡なく日々場当たり的に試行錯誤し続けていることかもしれません.だとしたら,個々のコードにタグ付けしたりアーカイブとして活用することで,より明確に「テクニックの組み合わせの総当り」を進めることはできるかもしれない,と今書きながら気づきました(笑).

日々のコーディングはそれほど重たくなく,5秒でも取り組めたらOKとしていますが,それでも「バリエーション」と言えるような違いは出したいという欲は尽きず,完了できないと自分のプレッシャーになります.重く感じないために「あーネタがないのでリストの〇〇をやろう」のように,クリエイティブコーディングのネタ帳のようなものを自分用に作っておいて,複数のアイデアを貯めながら進められると良いのかもしれないですね.これも今思い付きました(笑).考えをまとめるのは大事ですね.

対外的な発表など

10月4日に,イベント「TDSW × PCJ Vernissage Choreographic Coding Lab Online」に出演しました.これはドイツで開催されるメディアアートの祭典 NODE フォーラムのオンライン・プラットフォームGreenHouse NAXOSを日本のTDSWとPCJでジャックするというイベントでした.VR空間上に作品を持ち寄って展示したり,神出鬼没の@deconbatchさんの作品を探したりと.結構カオスな感じで楽しいイベントになりました.

20.nodeforum.org

また,10月8日に,大阪電気通信大学の授業「3D造形・実習」で「デジタルテクノロジー民主化の動きとそれに伴う新しい表現について」というタイトルで特別講義を行いました.前半はプライベートな事柄についても話しているので資料は非公開ですが,後半に行ったワークショップ「写真から3Dモデルを作成する」は,PIFuHDを使った立体化で,楽しく時間も30分〜1時間かからないくらいでできるので年末にやってみるのもよいかもと思います.コツは光量の多い場所で撮影することです.

paper.dropbox.com

コミュニティ活動

10月11日に「Processing Community Hangout Japan #04」を開催しました.この回では,これまでのYouTube Liveでの配信から趣向を変えて,1)ZoomでのLT+トークセッション,2)Remoでの交流会の2部構成としました.これはイベント参加者のアンケートをもとに検討したものです.結果的にとても良い回になりました.

LT+トークセッションでは,クリエイティブコーディング関連の技術書を出された方々に執筆や刊行にあたっての工夫について話を伺ったのですが,どれも興味深い内容でした.特に 『超ビジュアル訳 ニーチェの詩: p5.jsでうたう「深夜の鐘の歌」 』は,詩をもとにクリエイティブコーディングするアプローチも,編集などまとめ方も秀逸で,大変参考になりました.後半の交流会も大変好評でした.

ちなみに,この回のカバーイメージは自分で作りました.物理演算エンジンのp5.matter.jsを使って,書籍が積み上がっているようなイメージでしたが,背表紙を着けたりブックカバーを作っても良かったですね.機会があればやってみようと思います.

その他

👶つかまり立ちするようになりました!


https://www.openprocessing.org/sketch/1011737

11月

デイリーコーディング

一周回って顔検出のような画像解析系のコーディングに質感表現を足してみるなどをやっていました.このあたりは@v_kaoruさんのTouchDesignerでのアプローチを参考に,p5.jsで書いてみたものでした.

過去に,今回のml5.jsのようなライブラリを触る中で「サンプル以上のことができない」と悩んだことがありました(2019年5月くらい).そこには思考と実装の乖離というか飛躍があったのかも,と今は感じます.具体的に言うと,サンプル以上のことをするためのアイデアの詳細と,それを表現するための技術や理解が足りていなかったことが原因のように思えてきました.「具体的には何も思いついてないけどサンプルより良くしたい」みたいなやつです.

コーディングの際に,思考(アイデア)と実装(コード)が対応する場合,極端な話アイデアを記述すればそれが機能するはずです.グラフィックのためのコードに取り組んでいたときは,思いついたアイデアもその実装も比較的素朴なものから出発していたため,考えたことを頭の中でコーディングして完結できた時期もありました.今は,関連するアイデアのバリエーションというか,手を入れられる可変のパラメータが増えたことで,書くコードがやや複雑化しているので,なかなか思考内で実装を完遂することは難しくなっています.他方で,過去にAができて,BもできたのでA+Bもできるかも,というようなフィジビリティ(実現可能性)の確認や,だめな場合のオプションを素早く検討できるようなところは身についてきているかなと思います.

ただ,これはあくまで目的もゴールも自分で動かせる「個人的なコーディング」に限った話で,ミッションオリエンテッドなコーディングはこれまでと同じく苦手意識があります.自分のコーディングには,パフォーマンスチューニングのような視点が欠けているので(今なめらかに動かなくても5年後,10年後にサクサク動くなら書いたコードを寝かせれば良い,くらいのノリ),もう少し素のJSに触れていくとかも必要なのかもしれないですね.

対外的な発表など

特にありませんでした😃

コミュニティ活動

12月のPCHJのイベント準備などをオンラインで進めました.

その他

京都芸術大学(旧:京都造形芸術大学)で,授業「プログラミング演習(ソフトウェアネットワーク演習Ⅱ)」を非常勤講師として担当.p5.jsを使ってクリエイティブコーディングを教えています.


https://www.openprocessing.org/sketch/1038378

12月

デイリーコーディング

コーディングを通じて色々とできることは増えたように感じていますが,一方で取り組むことに悩むこともまだまだありますし,コーディングとの付き合い方,距離感も考え続けていく必要がありそうです.

12月は口から顔を出すコードがSNSで少しだけハネました(笑).自分が気に入ってるスケッチとSNS上での評価は全く一致しないので,特に気にしないようにしていますが,このスケッチは大好きなモンティ・パイソンのアニメーションを手掛けたテリー・ギリアムのような発想で,とても気に入ってます.

対外的な発表など

特にありませんでした😃

コミュニティ活動

12月6日に,「Processing Community Hangout Japan #05」を開催しました.この回は「スケッチや作品のまとめ方」としてアーカイブやその利用について,出演者の方々にお話を聞きました.アーカイブの動画が閲覧できるのでよかったらご覧ください.

www.youtube.com

年に5回もオンラインイベントが実施できたのはコミュニティにとってもとても良かったですね.それも日本と海外のProcessing Community をつなぐ活動も積極的にされている.@naoto_hiedaさんの貢献あってのことだなと改めて思いました.ひえださん,いつもありがとうございます.

その他

👶がてくてく歩くようになりました!🌈


自分にとってはさまざまなサプライズがありつつ,概ね楽しいコーディングを通じて成長できた1年でした.できるなら来年もこの調子で続けていきたいと思います.ハッピーコーディング!