iA


Github製エディター、Atomがすばらしい

screenshot_144

テキストエディター何を使うかという問題、常に議論(炎上)の種になりがちなテーマでいろいろ断言すると反応が怖いのだけれど、ここしばらく使用してみてGithubで開発されたAtomが素晴しいということで、紹介記事を書いてみる。

これまでのエディター遍歴を思い返してみると、最初に習った本格的なテキストエディターがEmacsだったので、かなり長いことEmacs派として過ごしてきた。今でもEmacsキーバインドが使えない環境にはストレス感じる。かな漢字変換もSKKに無理矢理馴染んでみたので、他の変換を使えない体になってしまった。

そういう事情もあり、個人的にテキストエディタを選ぶ基準として、

  • できるだけオリジナルに忠実なEmacsキーバインドが使える
  • SKK系のかな漢字変換が使用可能

また、最近になって構造的な文章を書く際はMarkdownで記述することが多いので

  • Markdownモードがあり、簡単にプレビューできる

という基準が必須となりつつある。

そういった基準を満たすエディターとして、Sublime Textは良くできてると思う。ただし、有料なので大学の授業などで一斉に採用というのもちょっと難しい。あと、Aqua SKKとの相性がちょっと微妙な感じもした。

で、最近登場したAtomに乗り換えてみたのだけれど、最初のうちはちょっと設定が落ちつかず四苦八苦することもあったのだが、ここにきて大分落ち着いてきた。個人的な感想としては、Sublime Textの代替として十分使用可能なんじゃないかと感じてる。

さらに、Sublime Textと比較しても良いかと感じたのは

  • フリーソフトウェア (MIT License)
  • GitHub Markdownとの相性が良い(Github純正なので)
  • Emacsキーバインドをかなり忠実に再現可能
  • パッケージの管理が楽

といったあたりか。

いろいろ設定してみて、個人的に必須かと思ったパッケージはデフォルトで同梱されるパッケージを除くと

ここらへん入れると、だいぶ快適になった。

ちなみにキーマップは

'.editor':
  'ctrl-i': 'editor:auto-indent'
 
'.editor:not(.mini)':
  'ctrl-j': 'none'

こういう設定で、Xcode風にControl+iで自動インデントをするように。また、Control+jの機能を殺すことで、SKKとのバッティングを防いでみた。

そんな感じでAtom素晴しいので、これからもいろいろ試していきたい!

ちなみに、この投稿の原稿もAtomで作成。Markdownで書いたのを、HTMLに書き出してWordpressにコピペした。らくちん!


デザイン言語総合講座 – クリエイティブ・コーディング

2000年代に入って「クリエイティブ・コーディング」と呼ばれる、アート、デザイン、建築など、いわゆる「クリエイティブ(創造的)」な作品制作のためのプログラミング環境が登場し注目されるようになりました。この講座では、このクリエイティブ・コーディングの成り立ちを紹介し、さらに将来の展望を考えます。


Markdownでスライド作成する、Swipeが素晴しい

Markdownを使用してWebベースのスライドが作成できる「Swipe」というWebサービスが素晴しい。いくつか試しにスライドつくってみたのだけれど、Markdownはアイデアをリアルタイムにガシガシと記述できるので、ストレス無くて良いですね。問題は、このサービスが今後安定して続いてくれるか、というところか。GoogleやGithubといった会社にサービス丸ごと買収されたりしないかな…

先日、研究会用に作成したスライドをEmbedしてみるテスト


ゲストレクチャーのスライド

SFCの中西泰人さんの授業「オブジェクト指向プログラミング」で、ゲストとして30分ほど喋ったので、その際のスライドを掲載。この、Commodore 64での「10 PRINT CHR$(205.5+RND(1)); : GOTO 10」を切り口に、Processing、openFrameworks、Cinderなどについて紹介する流れ、もう少しリファインして持ちネタにしていきたい所存。何も見ないでもコードをスラスラ書けるくらいまでなれば、そこそこ説得力あるのではと…


Roppongi ArtTech Night #1 発表資料

Google Japan主催で開催された、アートとテクノロジーの交流の場「Roppongi ArtTech Night #1」で、トークしました。先日のJSSAの発表と重なる部分も多いのですが、発表資料を公開します!

スライド内で紹介している資料へのリンクです。


ARTSAT1: INVADER – realtime tracker α 公開!!

多摩美と東大による、世界初の芸術衛星「ARTSAT1: INVADER」の打ち上げが成功し、無事周回軌道に乗った。成功を祝して何かできことを、ということで、衛星の位置をリアルタイムで3D表示するWebページ作成した。

WebGLを用いた3Dグラフィクスの表示には、Three.jsを使用。こういうデータを元にした3D表示が非常にシンプルに実装できて、素晴しいライブラリということを改めて実感した。

表示している衛星の周回軌道は、北アメリカ航空宇宙防衛司令部(NORAD)が発行しているTLE(Two Line Element)という、衛星の軌道をテキスト2行で記述したフォーマットをもとに演算している。ちなみに今日現在のINVADERのTLEは下記。

2014-009F 
1 39577U 14009F 14061.38381964 .00092433 00000-0 11001-2 0 154
2 39577 65.0139 50.9298 0006596 319.5829 40.4842 15.60594203 404

この情報はオンラインで公開されている。この情報は今後変更されることもあるので、1日1回自動更新するよう設定した。

このTLEから実際の座標を算出するためのアルゴリズムが考案されている。しかし、内容はかなりゴリゴリの数学。今回用いたSGP4という方法も、論文を参照しても途方に暮れてしまう感じ。

というわけで、どこかにJavascriptで実装されたSGP4のライブラリがないか調べたところ、Isana Kashiwai氏の実装したorb.jsというライブラリを発見。今回はこのライブラリを全面的に使用しています。Isana Kashiwai氏に感謝します。

このバージョンはまだα版的な位置付けで、今後は衛星の状態などにアクセスしたりいろいろ拡張していきたい。

ソースコードは全てGithubに公開したので、興味ある方は覗いてみてください。



クリエイティブ・ミュージック・コーディング

先日行なわれた、先端芸術音楽創作学会(JSSA)の研究会で発表した資料公開します。内容は、Processing、openFrameworks、Cidnerなど、いわゆる「クリエイティブ・コーディング」と呼ばれる開発フレームワークでのコンピュータ音楽の創作手法についての現状の紹介です。

ペーパーはこちら。研究報告 「クリエイティブ・ミュージック・コーディング」 – オーディオ・ビジュアル作品のための、オープンソースなソフトウエア・フレームワークの現状と展望 –

(久しぶりにTexで原稿に、大苦戦…)

「クリエイティブ・ミュージック・コーディング」- オーディオ・ビジュアル作品のための、オープンソースなソフトウエア・フレームワークの現状と展望 from Atsushi Tadokoro


プログラム初級講座 – メディア芸術をはじめよう

プログラム初級講座 – メディア芸術をはじめよう from Atsushi Tadokoro

第17回、メディア芸術祭で行った、プログラミング入門のワークショップのスライド資料を公開します。このワークショップでは、ProcessingをRaspberry piで動かして、プログラムの楽しさに触れることを目的として、中学生、高校生を対象に行われました。

ワークショップで配布した、Processing、Google Coder、openFrameworks、Wolfingを使えるようにカスタマイズしたRaspberry piのディスクイメージは、下記からダウンロードして使用可能です。


coma Creators session vol.2 資料公開

coma Creators session vol.2 from Atsushi Tadokoro

coma Creator’s session vol.2 にお越しいただいた方、ありがとうございました。当日のスライド資料を公開します。

内容は、昨年末にcomaDiscotheque Ver0.03 に出演した際のライブパフォーマンスの技術的な解説となっています。

また、この中で取り上げられているサンプルプログラムのソースコードは、下記からダウンロードしてください。

イベントを主催していただいた、青木さん、ありがとうございました!!