ブックマーク / yoppa.org (17)

  • 『演奏するプログラミング、ライブコーディングの思想と実践 – Show Us Your Screens』 ―はじめに

    『演奏するプログラミング、ライブコーディングの思想と実践 – Show Us Your Screens』 ―はじめに 演奏するプログラミング、ライブコーディングの思想と実践 Show Us Your Screens はじめに ほとんどの場合、プログラマーという職業は裏方の仕事で、表に出てくることはありません。そうした裏方の人々による成果であるアプリケーションやシステムのソースコードも、多くの製品/プロダクトにおいて外部から秘匿され、開発に関わった関係者しかその内部を見ることはできません。一般の利用者にとって、ソースコードはブラックボックス化された謎の存在であり、それを生み出しているプログラマーたちも得体の知れない存在です。 外部から秘匿されることで、コードは神格化され、魔法のような存在として奉られるようなります。ブラックボックス化した箱は、人々から多額の金を吸い上げ、資家にとっての価値を

    『演奏するプログラミング、ライブコーディングの思想と実践 – Show Us Your Screens』 ―はじめに
  • 第5回: 生成的な形をつくる – p5.js オブジェクト指向プログラミング入門

    今回はp5.jsで生成的(Generative)な形態を生みだすにはどうすればよいのか、試行錯誤しながら実験していきます。まず初めに、コードを用いた生成的な表現の実例をいくつか紹介した後、実際にp5.jsでプログラミングしていきます。 まず始めに、完全にランダムな確率で動きまわる「ランダムウォーク」な動きをする点の動きをつくり、その軌跡を描いてみます。次にこのランダムな動きを増殖させていきます。増殖の際に今回は全てを一つのプログラムに書くのではなく、それぞれの点を細かなプログラムで実装し、その小さなプログラム達を組合せることで一つの機能を生みだすような設計にします。この小さなプログラムを「オブジェクト (Object)」と呼び、オブジェクトを構成単位にしてプログラムを作成していく手法を、オブジェクト指向プログラミング (OOP) と呼びます。このOOPの考え方は今後も重要な内容となってきま

    第5回: 生成的な形をつくる – p5.js オブジェクト指向プログラミング入門
  • ガイダンス - Bio Media Art Workshopについて、Processingの復習 - yoppa org

    このワークショップの目標 Bio Media Art Workshop (略称 BMAW) では、Processing および Arduino とそれらを組み合せて、センサーで環境の情報を計測したり、音や光、動きで 環境に働きかける方法を学び、植物と電子工作、プログラミングやネットワークを組み合せたバイオ・ガジェットを制作します。 作成したバイオ・ガジェットはTwitterやFacebookなどのSNSや、xivelyなどの計測データの共有サービスを利用して、積極的に世界中とシェアすることを目指します。 このワークショップでは、以下のツールやネットサービスを使用して作品を制作していきます。 Arduino センサーで計測した周囲の環境に関するデータを取得してMacなどのPCに送出します。デジタルとアナログの入出力ポートを備えたマイコンを搭載した専用の基板と、専用の開発環境から構成されていま

    ガイダンス - Bio Media Art Workshopについて、Processingの復習 - yoppa org
  • 人工知能、機械学習、ライブコーディング - yoppa org

    先日「計算美学しよう!」という研究グループで、ライブコーディングについての簡単なプレゼンとデモをした。その後のディスカッションで人工知能、人工生命、美学といった様々な専門家の議論を専ら横で聞いていていろいろ刺激され、アイデアが湧いてきた。 その後、TidalCyclesの開発者のAlex McLeanによる “Lessons from the Luddites (ラッダイト運動からの教訓)” という記事を読んで、研究会での議論ともかなり重なる部分もあり、人工知能機械学習とライブコーディングの関係についていろいろ思いを巡らせた。アイデアを忘れてしまわないようにメモ的に記録してみる。 個人的には、現在のAIブームにはちょっと懐疑的な部分もある。現在の深層学習のアプローチ、巨大なデータを処理して効率的に学習しながら最適解を見つけていくような方法は、今後もどんどん発展し様々なジャンルに適用されて

    人工知能、機械学習、ライブコーディング - yoppa org
  • 詩的なコンピューティング

    前回の続き。 2013年、openFrameworksの創始者であるZach Liebermanさんが、パーソンズ大の先生を辞めて“School for Poetic Computing (sfpc)”という私塾を立ち上げた。その名前を最初に聞いた時、個人的には、正直ちょっと戸惑った。 それは、今、日における「ポエム」という用語の意味が歪んでしまって、軽い蔑みの対象になってしまったところにも原因はあったのかもしれない。今日で「ポエム」というと、いわゆる「意識高い系」のスローガンみたいな印象がついてしまっていてちょっと意味を曲解してしまう。しかし、真面目に「詩的なコンピューティング」と訳して考えてみても、それでもなかなかしっくりと理解できなかった。 しばらくして、Zachさんがほぼ毎日プログラムを作成してその成果を動画でアップしているというのを知り、その活動をフォローするようになった。そ

    詩的なコンピューティング
  • openFramewoks – OSC (Open Sound Control) を利用したネットワーク連携

    今回は、ネットワークを使用したopenFrameworks同士の連携と、openFrameworksと他のアプリケーションとの連携について取り上げます。openFrameworksでネットワークを利用す方法はいくつかありますが、今回はその中で比較的扱い易いプロトコルである、Open Sound Control (OSC) についてとりあげたいと思います。 Open Sound Control (OSC)とは Open Sound Controlは、カリフォルニア大学バークレー校にある CNMAT(The Center for New Music and Audio Technologies)が開発した、通信プロトコルです。その特徴について、CNMATのページではOSCについて下記のように要約されています。 Open Sound Control (OSC) is a protocol for

    openFramewoks – OSC (Open Sound Control) を利用したネットワーク連携
  • 第1回 : Sonic pi入門

    このワークショップでは、Sonic Pi を使用して、音楽や音響作品をプログラミングによって生成する基礎を学び、その成果をもとにライブパフォーマンスを行います。また、Sonic Piに備えられた機能のひとつ「ライブ・コーディング (Live Coding)」を活用して、プログラムを実行した状態でリアルタイムにコーディングを行う手法を体験します。 今回は、このワークショップでメインに使用していくプログラミング言語であり開発環境である、Sonic Piの基について学習していきます。 スライド資料 Sonic pi入門

    第1回 : Sonic pi入門
  • 第4回: Web応用1 – Webブラウザでプログラミング、p5.js入門

    この講義のここまで前半3回では「Web基礎」と題して、HTMLCSSの基、そしてTumblrを使用したオンライン・ポートフォリオの作成について解説してきました。前半のまとめとして、作成したオンライン・ポートフォリオのベースとなる部分を提出してもらいます。提出方法は授業内で指示します。 いよいよ後半は、サウンド&ネットのサウンドのパートとも協力して、Web上で音を使用した作品を公開することを最終目標に、新たな内容に進んでいきます。 JavaScript – Webブラウザでプログラミングする これまで取り扱ってきた、HTMLCSSは人工的に仕様が策定された言語ではありますが、プログラミング言語ではありませんでした(HTMLはマークアップ言語、CSSはスタイルシート言語)。 HTMLCSSとは別に、Webブラウザ上で動作させることのできるプログラミング言語が存在します。その代表的な言語

    第4回: Web応用1 – Webブラウザでプログラミング、p5.js入門
  • 第4回: openFrameworks基本 – 動きを極める、アニメーションのための様々なアルゴリズム

    第4回: openFrameworks基 – 動きを極める、アニメーションのための様々なアルゴリズム 今回は、前回の内容をさらに発展させて、動きを生みだすための様々な手法について、サンプルを参照しながら解説していきます。 扱う動きは、実際に自然界に存在する様々な現象をシミュレーションします。以下のような内容を取り上げます。 引力、反発力万有引力ばね、弾力 こうした様々な動きを生みだすアルゴリズムを理解することで、作品の表現力が格段に高まります。徐々に難易度が増してきましたが、ステップバイステップで、少しずつ理解していきましょう! 前回までの内容 前回は、動きを生みだす3つのベクトル(ofVec2f)を使用しました。 位置ベクトル速度ベクトル力ベクトル これらのベクトルとくみあわせて、動き、摩擦、重力などを表現しました。それらの動きを1つにまとめてParticleと名付けて再利用可能なクラ

    第4回: openFrameworks基本 – 動きを極める、アニメーションのための様々なアルゴリズム
  • C++の疑問: 値渡し、参照渡し、ポインタ渡し

    ※ 末尾に追記あり。 C++、いろいろ未だにわからにことだらけなのだけれど、関数に値を送る場合の 値渡し 参照渡し ポインタ渡し の違いがいまだにすっきりと整理できていない。 C++、自分の場合はoFで使うことがほとんどなので、oFのコードで実験してすっきりしてみようとシンプルなコードを書いてみた。 力をベクトルで与えると運動するParticleというクラスを以前から作っていたいので、これはそのまま流用。長くなるのでコードの内容は割愛。 Particle.h Particle.cpp Particleを操作するためのMoverというクラスをつくってみた。このMoverクラスは3種類の方法でParticleのインスタンスを受けとることができる A: 値渡し B: 参照渡し C: ポインタ渡し Mover.h #pragma once #include "ofMain.h" #include

    C++の疑問: 値渡し、参照渡し、ポインタ渡し
  • CCSS 2014 第4回: openFrameworksで アルゴリズミック表現

    参加予定のみなさんへ、事前準備のお願い 「クリエイティブ・コーディング・スクール in さっぽろ 2014」の第4回「openFrameworksでアルゴリズミック表現」が9月13日に開催されます。半日(13:00−18:00)とはいえ、いろいろ作業をしながらだと、あっという間に時間は過ぎてしまいます。そこで、このワークショップに参加される皆様に、事前に環境のセットアップの部分は準備していただき、スムーズに内容に入っていければと考えています。 以下の解説を呼んで、事前準備を済ませた状態で参加していただくようお願いいたします。もし、うまくいかない点や不明な点があれば、下記のemailにご連絡ください。 tadokoro[at]gmail.com ※ [at]を@に変換 1. openFrameworksの最新版のダウンロード Mac OS XとWindowsでは、ダウンロードするファイルが異

    CCSS 2014 第4回: openFrameworksで アルゴリズミック表現
  • Github製エディター、Atomがすばらしい

    テキストエディター何を使うかという問題、常に議論(炎上)の種になりがちなテーマでいろいろ断言すると反応が怖いのだけれど、ここしばらく使用してみてGithubで開発されたAtomが素晴しいということで、紹介記事を書いてみる。 これまでのエディター遍歴を思い返してみると、最初に習った格的なテキストエディターがEmacsだったので、かなり長いことEmacs派として過ごしてきた。今でもEmacsキーバインドが使えない環境にはストレス感じる。かな漢字変換もSKKに無理矢理馴染んでみたので、他の変換を使えない体になってしまった。 そういう事情もあり、個人的にテキストエディタを選ぶ基準として、 できるだけオリジナルに忠実なEmacsキーバインドが使えるSKK系のかな漢字変換が使用可能 また、最近になって構造的な文章を書く際はMarkdownで記述することが多いので Markdownモードがあり、簡単に

    Github製エディター、Atomがすばらしい
  • プログラム初級講座 – メディア芸術をはじめよう

    第17回、メディア芸術祭で行った、プログラミング入門のワークショップのスライド資料を公開します。このワークショップでは、ProcessingをRaspberry piで動かして、プログラムの楽しさに触れることを目的として、中学生、高校生を対象に行われました。 ワークショップで配布した、Processing、Google Coder、openFrameworks、Wolfingを使えるようにカスタマイズしたRaspberry piのディスクイメージは、下記からダウンロードして使用可能です。 メディア芸術祭ワークショップ用 Raspberry Piイメージ (2GB)

    プログラム初級講座 – メディア芸術をはじめよう
  • PdとArduinoの連携 1 – Pduinoをつかってみる

    今日の内容 今回からいよいよ火曜日のワークショップでとり扱かってきたArduinoと、この月曜のワークショップでやってきたPdを接続します。PdとArduinoで相互に通信ができるようにすることで、例えば曲げセンサーや加速度センサーを「楽器」のコントローラーとして使用したり、逆にPdで作成したパターンをLEDへにフィードバックさせたりといった相互の連携が可能となります。 PdとArduinoを連携するには「Pduino」という外部オブジェクトをダウンロードして使用します。 今回はまず、このPduinoを利用するための環境設定と動作確認を確実に行います。設定が完了したら、Pduinoを使用した簡単なパッチを作成し、実際にArduinoとの相互の連携を試してみましょう。 必要となるハードウェアとソフトウェア 今回必要となる機材は、以下の通りです。接続の方法やセットアップの方法は、手順を追って解

    PdとArduinoの連携 1 – Pduinoをつかってみる
  • 第4回:Maxuinoを使用して、Max/MSPとArduinoを連携する

    今年度のSSAWは、月曜日は主にArduinoを使用したセンサーの制作、火曜日はMax/MSPを使用した音響合成やサンプリング・プレイバックについてとりあげてきました。今日はいよいよこの両者の技術を統合してオリジナルの「楽器」を制作していきます。まず前半で、Max/MSPとArduinoを連携するための環境「Maxuino」について解説します。後半はMaxuinoを活用して、課題として作成してきた自分の「楽器」をArduinoからコントロールできるよう改造します。 サンプルパッチ5月24日 (Google Docsにリンク) Daisuke Tsukada — 14 November 2012 01:00 八王子のoFセミナーではお世話になりました、九州の束田です。 この度、田所先生の講義資料を元にMaxuinoの実験をさせて頂きまして、アナログ信号を取得できてMaxuinoが使えました。

    第4回:Maxuinoを使用して、Max/MSPとArduinoを連携する
    prototechno
    prototechno 2012/08/09
    Max Arduino
  • 第7回: 衛星アプリを作る3 – 衛星音楽アプリを作る

    衛星アプリの制作演習の第3回目は、衛星が取得した時系列のデータをつかって、「音楽アプリ」を作成してみます。まず始めにopenFrameworksで音を扱う方法について解説した後で、実際の衛星データで「衛星音楽」の生成に挑戦します。

    第7回: 衛星アプリを作る3 – 衛星音楽アプリを作る
    prototechno
    prototechno 2012/05/28
    これやりたいなぁ〜
  • ライブのパッチを公開してみる、という実験

    Loop-lineでのライブ、無事終了。来てくださった方、ありがとうございましたー。対バンのグループ2組とも面白く、とても刺激になりました。 で、ライブのために久しぶりにSuperColliderでコードを書いたのだけれど、いろいろ忘れていてしまって、けっこう手間取ってしまった。そして、SuperColliderで実際にライブをしようとした際に、まだまだ日語の情報が少ないなあと実感。もちろんSuperCollider Japanなど積極的に情報を発信しているのですが、Max/MSPやPdなどに比べるとまだまだマイナー感が漂う。 とても重宝しているSuperCollider界隈に少しでも還元できればということで、ライブで使用した実際のコードを晒してみるという実験をしてみようかと。今回は自分的な冒険として、音源は全てギターを使用して、その入力をリアルタイムに加工した音だけでライブをしてみた。

    ライブのパッチを公開してみる、という実験
    prototechno
    prototechno 2012/02/29
    素晴らしい♪ #SuperCollider
  • 1