人間インストラクターに代わって電脳靴下がダンスの正しいステップを教えてくれる

人類がロボットに支配される時代になり、彼らとの社交も強要されるなら、そこにはダンスも含まれるだろう。そんなときわれわれにダンスを教える方法として、モーターを詰め込んだソックス(靴下)以上に優れたものがありうるだろうか?

デザイナーのPascal Zieglerは、ダンスをするペアにステップを教えるために、そんなすごいウェアラブルを作った(上図)。要するにそれは、振動するソックスだ。その作り方と使い方はここにあるから、振動モーター2基とセンサーとArduinoボードを用意すれば自分用に一足作れる。そして振動するタイミングをアプリが教えるから、正しい足の位置が分かる。フィードバックループがシステムをコントロールして、ユーザーにフォックストロットやマンボ、チャールストンなどの踊り方を教える。

Zieglerは曰く:

ソックスに圧力センサーと振動モーターを装備して、ペアのダンサーの足の動きをモニターしガイドする。これらをコントロールするアプリケーションはAndroidスマートフォンの上で動く。足が特定の位置に来たときに、振動によってステップを指示する。ここはかかとで前進、などと。ユーザーが間違えたり、音楽と同期しなくなったら、負帰還を与える。このソックスをはいていても、数分ぐらいは間違えずに踊ることが可能だ。

このソックスの名目上のミッションは、インストラクターの長時間の注視なしで、新人ダンサーに教えることだ。ひまができたインストラクターは、ほかのことができる。たとえば2001 Space Odysseyにおけるビッグカップルのダンス決戦の準備をしたり、あるいはあなたがそうだったように、ブルックリンのベイリッジの心の狭い連中から逃れてビッグシティの生活を体験したいと思っている、すでに大人なのに混乱している若い女性を助けたり。

Zieglerはさらに語る、“目標はダンスのレッスンそのもののクォリティーを上げることだ。ダンス教室では、たくさんの新しいステップを短時間で教わる。彼らにとっては、先生が教える理論的な動きを、音楽とリズムに合わせた実際のダンスステップに翻訳することが、難しい場合が多い。しかしダンスの先生には十分な時間がないし、生徒には一対一で教わるほどのお金がない。何度練習してもうまくいかないと、双方に不満が溜る”。

そこで、ソックスにハンダ付けをしてDancing Kings and Queensをかけ、Electric BuggalooでもElectric FugでもElectrified Mashed Potatoでも、何でもできることを見せつけてやろう。でもソックスのアンペア数が、低いことは期待できないだろうな。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))

50歳を迎えたBASIC

50年前。すなわち1964年の今月、新しい世代のコンピュータ言語が生まれた。

そういうと、多くの人がUnixの誕生や、今でも人気のコンピュータ言語のことかと思うかもしれない。しかし今日の話題はそうではない。1964年5月1日に、BASICというプログラミング言語がダートマス大学で産声をあげたのだ。この日から、歴史の流れは大きく変わることとなった。

新言語を生み出したのはジョン・ジョージ・ケメニーとトーマス・E・カーツ、そして学生プログラマのグループだ。Beginner’s All-Purpose Symbolic Instruction Code(BASIC)という言語を生み出したのだ。コンピュータの仕組みを学習させるのに最適で、メインフレームコンピュータでは必要な制御機能などが無用となっていた。「EBCDIC ARRAY E [0:11]」といったコマンドは無用となり、単純に「HELLO」と開始の挨拶を送れば「READY」と応えてくれるものだった。

BASICは、確かに誕生当初より初心者に親切な言語であった。分かりやすい言語構造を持ち、プログラムの各行には行番号が付される。言語構造的にリニアな思考を促すようにもなっていた(最近は流行らないのかもしれないが)。最近ではBASICの人気はなくなってしまい、初心者用ということでは他の言語が使われるようにもなっている。しかしダートマスがその後に生まれた何百万というプログラマにさまざまな影響を与えたことは間違いない。

初期のBASICにはいろいろな不備もあったが、徐々になんでもできる言語へと発展していった。最初期のホームコンピュータは標準でBASICを搭載しており、筆者自身もダートマスBASICをフェラーリ化したようなTurbo Basicでいろいろとプログラムを組んだものだった。ウェブ時代になってBASICを見ることも少なくなったように感じるが、しかしまだまだOS Xでも、Windowsでも、あるいはLinux上にても現役の処理系だ。ほとんどの人が知らないかもしれないが、AndroidiOSで動作するものもある。

多くのプログラマーが以下のコードを打ち込んで実行した経験があるのではないかと思う。最初に触れた言語がBASICだったという人も非常に多いのだ。

10 PRINT “HELLO WORLD”
20 GOTO 10

「HELLO WORLD」の部分をお下品な言葉にして叱られたりしたこともあった。PRINT行でセミコロンを付ける付けないまた出力結果が変わって面白さを感じさせられることもあった。

BASICについて、もう少しく淡しい記事がこちらにある。また、ダートマス大学もこちらに記念ページを解説している。さらにオリジナルのマニュアルも公開されている。

原文へ

(翻訳:Maeda, H