今日の研究会はラピッドプロト工房の最終発表。俺はハードは飽きてきたのでソフト班で、ここ3ヶ月ぐらい実験した物とかを紹介した。

コレが発表資料。リンク先をでAllSizesをクリックするとさらに大きくなる。

Rapidproto-soft slide

やった事は主に2つ。



1つはwebサービスという得体の知れないサーバ側技術を調べて、色々作ったりして理解した。Ruby on Railsという、MVCモデルとwebアプリケーション実装に必要な機能からGET・POST・EDIT・DELETEの実装をすばやくやるのに特化したwebアプリ開発環境を触ったりしながら、やっぱ自分でも一から作らないと理解できないだろうという事でORFのインフォメーションテーブルAPI(ModelとControl)と閲覧ソフト(View)を作った。ウィノグラードはデカルト的なMVCモデルを批判し、現象学を用いる事で新しいコンピューティングの設計方法を模索した(してる)けど、やっぱり裏のシステムとしてのデータ管理とかはMVCモデルで考えられたソフト群がとても優秀で、学ぶ所が多いし、もう社会の中で稼働しているので上手につきあっていかなくてはならないと思う。

OkudeLab ORF2005 InformationTable REST API(内部用パスワード付き)

s.h.log: 10分で作るRuby on RailsアプリRailsインストールと、おまけにはてなブックマークAPIから本棚をblogに読み込むFlash

2つ目はプログラミング環境の流れが2種類になってきているように思えるので、今後どう立ち回っていくと良いか考える為に色々調べた。

1種類目は万能の開発環境で、MicrosoftのVisualStudioとかJava、あとアセンブラやCで書くマイコンプログラミング。単独で何でも実装できるが、言語自体が難しい。そもそも多人数で分担実装する為に、大きな設計図を書いてクラスを実装していくような作りになっている。言語が複雑な分を、強力なコンポーネントをマウスでぽんぽん配置するだけで作れちゃうIDEで補っている。最近無料で公開されたVisualStudio2005ExpressEditionなんか、プロト作る分には何が制限されてるのかわからないような良い物が手に入れれたりと、色々熱くなってきている。

2種類目は特化の開発環境で、Wiring、Proce55ing、Ruby、JavaScriptなど。LightWeightと言われる言語で、用途に特化させる事で構文を簡単にできた言語。例えば WiringでServo(角度)とかやるとサーボモータがジコジコ回ってしまう。WinAVRでマイコンを直にプログラミングすると軽く30行ぐらい書かなければならない所が、一瞬で実装できてしまう。

万能の開発環境に対して特化の開発環境の組み合わせで素早く作っていくか、それとも…という所。特に奥出研は社会システムを踏まえつつハードとソフトを両方やってデバイスをデザインしていく研究室なので、設計図が普通のクラス図とかみたいにはならない。

最初に作るのはプロトだけど、技術が追い付かないとサイズがとんでもなく大きくなって検証不能になってしまったりするので、複数の実装技術の摺り合わせがとても重要になってくる。

ArmadilloLinux + 組み込みFlashが割と楽しみな気がする。乗り換えも楽そうだし。

VC#2005 Express Editionが超使える 無料の開発環境

Wiringでできること Wiringの全機能まとめ

s.h.log: C#2.0 – テープ起こし用メディアプレイヤー 万能のVisualStudioでラピッドプロト的に1時間ちょっとで作った

s.h.log: Wiring – デジタル入出力、シリアル通信、Proce55ingと連携 特化のWiringとProce55ingでPhysicalComputing。15行ぐらいしか書いてなくて、20分しかからなかった。

他にも、浜さんのシェーとか、野人がトレジャーホルダーの新しいガワを作ってたりとか、和田さんが便利なFlashとPHPのクラスを作ってたり、樹が基盤両断したりしたのが面白かった。あと天谷さんのひどい歌。

onomatope新トレジャーホルダーガワ