2011/10/26 水

蘇るBASICプログラミング プチコン公式活用テクニック

LEGO MINDSTORMSの本を共著したりなんだりと、日頃とてもお世話になっている松原拓也さんのオフィスに遊びにいったときに、著書である「蘇るBASICプログラミング プチコン公式活用テクニック」を献本頂きました。ありがとうございます!

蘇るBASICプログラミング プチコン公式活用テクニック
松原拓也
アスキー・メディアワークス
売り上げランキング: 8608

みなさん「プチコン」って知ってますか? プチコンとは古き良き時代のBASICをDS上で再現したゲーム、というか開発環境です。通じるかわかりませんが、ファミリーベーシックのDS版みたいなものです。Nintendo DSi / 3DSのダウンロード専用ソフトで、なんと800 DSiポイント(800円相当)で買えちゃいます! 開発会社である「株式会社スマイルブーム」の社長いわく「採算度外視の販促価格」らしいです。やすい!

プチコンはやりだすと絶対にハマってしまうのがわかっているので、あえてダウンロードせずに我慢していたんです。でも、松原さんに色々なデモや開発の様子を見せてもらったら、もしその日DSiを持ってきていたらその場でダウンロードしてしまいそうな勢いでした。DSの表現力を生かしたプログラムをBASICで簡単に記述できて、入力に十字キーやボタンだけでなくタッチパネルまで使えるんだから楽しくないはずがありません。

公式サイトのサンプルギャラリーやYoutubeにあがっているたくさんの動画をみたら、その楽しそうっぷりが伝わると思います。

松原さんが今回書いた本には、このプチコンを使いこなすためのあれこれが凝縮されています。文字コードやキャラクタの一覧、関数リファレンスだけでなく、BASICの超基本やテクニック、たくさんのサンプルプログラムが掲載されており、プチコンを遊ぶ上で手元においておくと重宝すること間違いないです。PC上でのプログラミングと違って画面も小さいし、DS単体ではWebで調べながらのコーディングもできないですしね。

また、この本は古きよきマイコン時代を知るための、そして知っている人のための本でもあります。「こんにちはマイコン」のすがやみつる先生の書き下ろしイラストがあったり、「べーしっ君」の荒井清和先生のインタビューが載っていたりするという情報だけで、内容と愛情の濃さとがわかると思います。こんにちはマイコンのMSX版はほんと擦り切れるまで読んだなぁ...。

目次はこちら。1画面プログラムとか懐かしすぎる!

オフィスに遊びにいったときには執筆にあたっての裏話もたくさん聞かせて頂いたのですが、そういう本に載らなかった話(の一部)はご自身が以下にまとめています。こちらも必読。松原さんの記憶力と情報収集力ははんぱないっす...。

また、松原さんが制作したベーマガ同人誌 「マイコンBMFANマガジン Ver.1.0」の印刷版も一緒に頂きました。これまた濃くて濃くて...。プチコン本とあわせて読むと、なつかしのマイコン時代をより深く回想できます。

プチコン本とベーマガとベーマガ同人誌

ここまで書いておいて、いまだ頑なにプチコンをダウンロードしていない僕ですが、いまはこの本に載っているサンプルコードを脳内実行してるだけでかなり楽しいので、それで我慢できなくなってきたら購入したいと思います!

Posted from DPad on my iPad

Posted by ooba at 2011/10/26 13:48 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2011/06/15 水

DPad HTML Editor 1.1をリリースしました!

@drikinと一緒に開発しているiPadアプリ「DPad HTML Editor」のバージョン1.1がついに公開されました!

DPad HTML Editor 1.1がAppStoreに登場しました。#dpad - Drift Diary XIII

上記エントリーのとおり、今回は上下左右の矢印キーや、一部で待望されていたブックマーク機能など結構大きな変更になりました。その中で、僕はブックマーク機能を含むブラウザ周りの改良とクリップ機能の実装をメインに担当しました。1.0.xまでは元々drikinが作ったUIや設計を変えてしまうような関わり方はしませんでしたが、1.1からはその辺にも手を出していっています。

といっても、ブックマーク機能とクリップ機能は内部的にはほとんど同じだし、データ管理関係は木下さん著「iOS開発におけるパターンによるオートマティズム」のCore Dataのパターンをほぼそのまま使ったので、今回のコーディング量も相変わらずdrikinの1/4くらいだと思います(^^;

iOSアプリの開発は公私共々いくつかやらせてもらっていますが、実は他の開発者と一緒に開発しているプロジェクトはDPadだけで、おかげでよい刺激を受けながらいろいろと勉強させてもらっています。SkypeとGitHubさえあれば、時差のあるサンフランシスコに住むdrikinとも、お互いのペースを乱すことなく、いい関係を保ちながら共同開発ができることもわかりました。なんか時差があるほうが「寝てる間にやっとくよー」的な感じでうまく回る気がしてます。

いまは次のバージョンに向けて構想を練っているところです。これからだとiOS5&iCloud対応は必須ですかねー。のんびりしたリリースペースになると思いますが、末永く使って頂けば幸いです。

Posted from DPad on my iPad

Posted by ooba at 2011/06/15 22:48 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2010/12/11 土

iPadアプリ「dPad」リリースとiPhone・iPadアプリ大賞2010!!

去年からiPhoneアプリの制作を公私で進めていたのですが、ようやく一つリリースすることができました。drikinと一緒に作ったiPad用HTMLエディタ「dPad HTML Editor」です。

dPad HTML Editor開発秘話 - Drift Diary XIII

僕はサブプログラマとして裏方系の実装をしました。UIや基本設計は全部drikin任せ。上記リンクにあるように、元々はHTML5系のWebアプリとして作り始めたのですが、いくつかの壁にぶちあたったためにiPadネイティブアプリとして作り直し、最後にコンセプトを変えてもう一回実装しなおしています。その後ベータテスターのみなさんに使ってもらいながら、機能の取捨選択や調整をして今の形になりました。長い道のりでしたが、最終的にシンプルかつパワフルなアプリに仕上がったと思います。

そんなdPadですが、12/12にお台場のTOKYO CULTURE CULTUREで開催される「iPhone・iPadアプリ大賞2010!!」というイベントで発表することになりました! drikinは現在アメリカに住んでいるので、僕とベータテスターの一人であるブログ神平田さんとでプレゼンとデモをやります。よかったら見に来てください!

iPhone・iPadアプリ大賞2010!! TOKYO CULTURE CULTURE:@nifty

開発を助けてくださったベータテスターのみなさんと、支えてくれた人たち、このようなきっかけを与えてくれたdrikinに感謝致します。

Posted by ooba at 2010/12/11 12:13 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2010/10/06 水

僕の関わったレゴ本まとめ

Amazonに著者セントラルという機能ができたので早速登録してみたのですが、著者欄に自分の名前がないと著書として登録できない仕様でちょっとがっかり。まあ当然の仕様ですけど。

Amazon.co.jp: 大庭 慎一郎:作品一覧、著者略歴

というわけで、この機会に自分が執筆に関わったレゴに関する本をまとめてみました。

入門LEGO MINDSTORMS NXT 第2版 入門LEGO MINDSTORMS NXT レゴブロックで作る動くロボット LEGO MINDSTORMS NXTグレーブック プログラムノツヅラ ロボットレースによる 組込み技術者養成講座 初めてのロボコン―WRO(ワールド・ロボット・オリンピアード)公式ガイドブック (日経BPムック)

入門LEGO MINDSTORMS NXT 第2版
入門LEGO MINDSTORMS NXT レゴブロックで作る動くロボット

僕が初めて書いた本で、かつ唯一の単著です。おかげさまで第一版は完売し、NXT 2.0対応の第二版を出すことができました。LEGO MINDSTORMS NXTのプログラミングに重点を置いた本で、ロボットプログラム初心者から上級者まで幅広く読んで頂ける内容になっていると思います。

LEGO MINDSTORMS NXTグレーブック プログラムノツヅラ

松原さんと二人でかっきり半分ずつ書いた本です。NXTのセットを二台持っている人や、より高度なハードウェア/ソフトウェアを作りたい人向けです。残念ながら現在絶版。

ロボットレースによる 組込み技術者養成講座

ソフトウェアデザインロボットコンテスト「ETロボコン」の実行委員会メンバーで書いた本です。UMLによる「見える化」とLEGO MINDSTORMS RCXによる「動く化」で、組込みソフトウェア開発の全工程を体得できる内容になっています。僕は企画から関わり、MINDSTORMS RCXの基礎とロボットプログラムの実装などを担当しました。

初めてのロボコン―WRO(ワールド・ロボット・オリンピアード)公式ガイドブック

世界規模で開かれているロボコン「WRO (World Robot Olympiad)」に関するあれこれを濃縮した、ロボットコンテスト入門ムックです。ロボコンに参加したい子供達と、参加させたい保護者のみなさまに向けて書かれています。僕は企画から関わり、本の中で開催したサンプル競技の競技ルール立案とその章のまとめをやりました。

Software Design 2007年3月号

書籍ではなく雑誌です。巻末特別企画の「LEGO MINDSTORMS NXTであそぼう!」を丸々書きました。マインドストームNXTの紹介を6ページしたあとは、残り10ページをかけてフリーの開発環境である「NXC」と関連フリーウェアの紹介、NXCプログラミングの解説をしています。愛読していた雑誌に書くことができてとてもうれしかったことを覚えています。

Posted by ooba at 2010/10/06 19:41 | Comments (1) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2010/04/08 木

ギズモードで「入門LEGO MINDSTORMS NXT 第2版」プレゼント中!

※ プレゼント企画は締め切りました。ご応募ありがとうございました!

なんと、ガジェット好きなら誰もが読んでる「ギズモード・ジャパン」様が、拙著「入門LEGO MINDSTORMS NXT 第2版」のプレゼント企画を実施してくださっています! 至極光栄です!

みたいもーど:レゴだけで作った「宇宙エレベーター」競技会にいってきました。(プレゼントあり) : ギズモード・ジャパン

今回レゴブロック宇宙エレベータークライマーレースでも審査員を務めた大庭慎一郎さんからマインドストームNXTの最新書籍「入門LEGO MINDSTORMS NXT 第2版」のご提供をいただくことができました!

そうそう、先日JSEA 一般社団法人 宇宙エレベーター協会が開催する「レゴブロック 宇宙エレベーター クライマーレース」というレゴブロックを使った競技会の審査員をやってきたんですよ。そこへ僕のTwitterを見た「みたいもん!」のいしたにさんが遊びにきてくれて、いろいろ話しているうちにこんなありがたい話になりました。

みなさん、どしどし応募してくださいね!

続きを読む...
Posted by ooba at 2010/04/08 01:07 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2010/04/07 水

アフレルで「デスクロボ・ハイパーセット」販売&キャンペーン中!

教育用レゴ マインドストームの販売代理店である「株式会社アフレル」にて、教育用レゴ マインドストームNXT2.0を使った「家庭学習用ホームスクーリング・デスクロボ」と拙著「入門LEGO MINDSTORMS NXT 第2版」がセットになった「デスクロボ・ハイパーセット」が販売されています! いつもありがとうございます!

いまなら出版記念キャンペーンとして、特別価格販売だけでなく、僕もちょっと参加している「初めてのロボコン ~WROJapan公式ガイドブック~」もついたお得なセットになっています。

日本語対応のレゴ マインドストームNXT2.0は現時点では教育用セットしかありませんので、興味のある方はこの機会にどうぞ。

Posted by ooba at 2010/04/07 01:49 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2010/03/31 水

「入門LEGO MINDSTORMS NXT 第2版」を出しました!

絶賛品切れ中だった「入門LEGO MINDSTORMS NXT」がバージョンアップして帰ってきました! その名も「入門LEGO MINDSTORMS NXT 第2版」です。名前だけだとわかりづらいですが、新しい「レゴ マインドストーム NXT2.0」向けに内容を大幅修正した、2.0対応&英語版対応のバージョンになります。黒本から白本へ、装いも新たになりました!

入門LEGO MINDSTORMS NXT 第2版

レゴ マインドストーム NXT2.0の玩具用セットは日本語版が出ていないという悲しい現状の中、少しでも多くの人にNXTを触ってもらいたいという一心で執筆しました。

まえがきから文章を転載します。

初版の流れを活かしながらバージョン2.0の新要素や変更を各所に入れ込み、全体的に大幅な改訂を行っています。玩具用セットで大きく変更されたパーツ構成にも対応しました。また、玩具用NXTソフトウェア2.0英語版の表記や画面を教育用日本語版と並記することで、英語が苦手な人でも日本語と見比べながら読み進められる構成にしました。残念なことに、日本で手軽に購入できる玩具用のセットは、現時点では英語版しかリリースされておりませんが、本書が英語版セットの購入やプログラミングの手助けになれば幸いです。

レゴ マインドストーム NXT2.0は、玩具用セットと教育用セットの内容に多くの差別化がされているため、玩具/教育両対応、バージョン1.0/1.1/2.0対応、日本語/英語対応というのはかなり大変でしたが、なんとか盛り込めたと思います。初版を買い損ねた方も英語版であることに躊躇していた方も安心してご購入下さい。

初版にしか載っていない内容はオリジナルの二足歩行ロボットだけです。玩具用セットで作れなくなったので削りましたが、まあ、あれは見なくてもよいと思いますw 代わりにに載っているお茶運びロボットが掲載されています。簡単な構造のロボットですが、プログラミングし甲斐のあるかわいい子になっていると思います。

今回の改訂版を出版できたのは、初版を全冊ご購入してくださったみなさんのおかげです。本当に感謝しております。この本を皮切りに、しばらくお休みしていたレゴ マインドストーム関連の活動を少しずつ再開したいと思っていますので、今後ともよろしくお願いします。

Posted by ooba at 2010/03/31 00:38 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2009/11/13 金

LEGO MINDSTORMS NXT 2.0発売開始! (ただし英語版)

Amazon.co.jpに「発売日:2009/10/8」と書いてあるくせにいつまで経っても購入できなかった「レゴ マインドストーム NXT 2.0」が、ようやく出荷できる状態になったようです! さっそく1セット注文しました! 待ちくたびれたー。

レゴ マインドストーム NXT2.0 (英語版) 8547

ただし、ご覧のように「英語版」です。海外向けの英語版を売り出したってことは、日本語版は出ないんでしょうね、おそらく...。しかも、今のところAmazon.co.jp以外で販売されているのを確認できていません。レゴの専門店である「レゴクリックブリック」に電話してみましたが、現時点では販売の予定は立っていない模様...。クリブリで買えないうちは他のお店でも買えないでしょうね...。うむー。

まあ、英語だとプログラミングで多少困るくらいで、基本的にはレゴブロックなので問題ないでしょう (たぶん)

僕が把握している玩具用NXT2.0「のみ」の新要素は以下です。

・カラーセンサー
色を識別できるセンサーです。サードパーティではすでにありますが、ついに純正でも登場! しかも、いまのところ単品販売はなく、玩具用NXT2.0を買わないと手に入れられないというレアモノです。ちなみに光センサーとしても使えます

・いくつかの新パーツ
最近のTechnic系セットに入っている新パーツがいくつか同梱されています。詳しくはこちら長さ9のシャフトとか結構うれしい

・Sound EditorとPicture Editor
これまで外部ツールで編集していたNXT用の画像ファイルと音声ファイルを、公式ツールでも編集できるようになりました。これは便利!

・Remote Control
PCからNXTを操作するコントローラです。これも外部ツールで出ていたのが公式に取り込まれた感じですね

他にもNXT2.0にはいくつかの新要素があるのですが、その辺はすでにリリースされている教育用NXTソフトウェア2.0リリース (from アフレル) を見ていただくのが早いと思います (データロギングと温度センサーは教育用のみの新機能です)。ちなみに教育用NXTソフトウェア2.0はもちろん日本語版ですよ。

無事に届いたら簡単なレビューをしたいと思いますー。

Posted by ooba at 2009/11/13 14:04 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2009/11/11 水

LEGO MINDSTORMS NXT向けロボコン本「初めてのロボコン - WRO Japan公式ガイドブック」

日経BP社から「初めてのロボコン - WRO Japan公式ガイドブック」というムックが出ました。出ました、といっても8月の話ですが(^^;

初めてのロボコン―WRO(ワールド・ロボット・オリンピアード)公式ガイドブック (日経BPムック)

この本は、世界規模で開かれているロボコン「WRO (World Robot Olympiad)」に関するあれこれを濃縮した、ロボットコンテスト入門ムックです。ロボコンに参加したい子供達と、参加させたい保護者のみなさまに向けて書かれています。目次はこんな感じ

表紙を見てもわかるように、ロボット作成にLEGO MINDSTORMS NXTを使っており、僕も少しだけ執筆に参加しています。もし本屋で見かけたらチェックしてみてください!

Posted by ooba at 2009/11/11 22:28 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2008/08/29 金

レゴ マインドストームでETロボコンを体験できる本「ロボットレースによる 組込み技術者養成講座」発売!

僕が技術委員長をやっているソフトウェアデザインロボットコンテスト「ETロボコン」の実行委員会メンバーで書いた本「ロボットレースによる 組込み技術者養成講座」が、つい先日の2008年8月26日に発売になりました!

ロボットレースによる 組込み技術者養成講座

ETロボコンの長年の活動から得た経験や実績を元に、UMLによる「見える化」とLEGO MINDSTORMS RCXによる「動く化」で、組込みソフトウェア開発の全工程を体得できるという、ちょっといままでにないタイプの本です。出版社である毎日コミュニケーションズの商品ページから概要を抜粋します。

この本は、「LEGOブロックで作ったロボットを、コース上でいかに速く走らせることができるか」という課題を通じて、組込みソフトウェアの開発がひととおり体験できる本です。PCの画面の上だけで動くシステムの開発ではなく、実際にモノを動かすことを体験します。センサやモータの制御に必要な技術要素がどのようなものであるかを知り、それをUMLを用いてモデルに表し、JavaやC言語による実装を経て、ロボットの動きとして「見える化」されるわけです。この本を読み終える頃には、組込み技術者としてのスキルが身につき、キャリアアップにつながる知識や経験を得ることができているでしょう。

目次はこんな感じです。制御対象であるロボットの組み立てから開発環境の構築、要求定義からUMLによる分析・設計モデリング、JavaやCによる実装やテスト、モデルの改善や機能・性能の向上まで、組込みソフトウェア開発に必要な行程が網羅されているのがわかると思います。この本に加えてレゴブロックとPCさえあれば、これらをすべて体験できてしまうわけです。

ちょっと堅いタイトルですが、参加者としても運営者としても実感している「ETロボコンに参加することによる教育効果」を、参加したことのない人やできない人にも組込み技術者向けの読み物講座としてフィードバックしよう!という想いが込められています。ETロボコンは個人一人で参加するには少し大変なコンテストですが、この本なら自宅にいながらETロボコンの一通りの流れを疑似体験できると思います。歴代の優秀モデル図も掲載されているので、同じ課題の分析・設計を複数チームで競い合うというETロボコンならではの醍醐味も味わえます。実際に個人や組織でロボコンをやりたくなったら、巻末の「ミニETロボコンをやろう!」もどうぞ。

ハードウェアもソフトウェアも自由自在のLEGO MINDSTORMSは、組込み技術者の教育に最適な教材だと思っています。この本をきっかけに、その魅力をみなさんと共有できれば幸いです。そして、もっと濃い現場体験や教育効果を体感したくなった際には、ぜひETロボコンにご参加下さい! やはり現場は熱量が違いますよ、熱量が!


※ 最後に念のためですが、この本で使っているのはLEGO MINDSTORMS NXTではなくRCX (黄色いブロック) のほうです。これはETロボコンが現在LEGO MINDSTORMS RCXを共通機体として使っているからです (近い将来NXTになる予定です)。RCXをお持ちでない方はETロボコンの事務局でもある株式会社アフレルなどからお買い求めくださいませ。

Posted by ooba at 2008/08/29 07:15 | Comments (2) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2008/01/08 火

トランスバイブレーターをMacでUSB制御する

PS3でRez+トランスバイブレーターを遊ぶ」でも紹介したUSB振動ユニット「トランスバイブレーター」は、パソコンからもUSBで制御することができます。例えば、CatHandさんが作成された「Vibrator 0.2」というMacアプリを使うと、スライドバーで振動具合を制御して遊べます。

動画にしてみたのでご覧下さい。ブルブル震えているのがわかるでしょうか。

すごくシンプルなハード&ソフトですが、なかなか楽しいですよコレ。USB制御できることがわかると、複数個つなげて遊んだり、ネットワーク越しに相手のトランスバイブレーターを振動させたり、と夢が広がります。改造したり互換デバイスを作るのも面白そう!

おそらく世界で一番シンプルなUSB機器だと思うので、制御プログラムやドライバ作成の入門にもよいかも。「オレもプログラム書きたい!」と思った人は続きをどうぞ。

続きを読む...
Posted by ooba at 2008/01/08 13:02 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2008/01/03 木

PS3の振動コントローラー「DUALSHOCK3」をMacにUSB接続する

昨年末に発売されたPS3用の新コントローラー「DUALSHOCK3」によって、我らがPLAYSTATIONに振動機能が帰ってきました! カラーバリエーションも2色になりました。シースルーじゃなくなくなったのが残念。

ワイヤレスコントローラ(DUALSHOCK3) ブラック ワイヤレスコントローラ(DUALSHOCK3) セラミック・ホワイト

USBやBluetooth対応の周辺機器が出たら、とりあえずパソコンにつなげてみたくなるのがオトコの性。買ってからしばらく放置していたのをこの連休で試してみたのですが、DUALSHOCK3もSIXAXISとまったく同じやり方でUSB接続できました。MacでUSB接続する方法は「PS3のコントローラー「SIXAXIS」をMacにUSB接続する - bricklife.weblog.*」などをご覧下さい。WindowsやLinuxでもこれまでと同様でいけます。

詳しく調べてませんが、HIDデバイスとしての仕様はSIXAXISと同等な模様。上記ツールで接続中のUSB機器がSIXAXISかどうかを判別するのに使っているベンダーIDとプロダクトIDも、どちらも同じ値 (それぞれ 0x054c と 0x0268) でした。接続ツールやドライバを変更しないで済むのは助かりますが、ずいぶん手抜きな互換性対応な気がします(^^;)。PS3につなげた場合はHIDデバイスとしての通信内容を超えた情報をやりとりしているので、そもそもPS3ではこの値を見ていないかも知れませんが。

さて、気になる振動ユニットの動かし方ですが、これはPS3との通信内容を解析しないとわからなそうです。DUALSHOCK3が海外で発売されたら誰かが解析してくれるでしょう、きっと。

Posted by ooba at 2008/01/03 02:00 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2007/06/11 月

DarwiinRemoteをKeynoteでプレゼンしやすくするhack

WiiリモコンがMacにつなげられるようになる画期的ソフト「DarwiinRemote 0.5」を、これまた画期的なアップル社製プレゼンソフト「Keynote」で使いやすくするhackです。

DarwiinRemoteがリリースされてからというもの、Macでプレゼンするときはいつも「Keynote+Wiiリモコン」のスタイルになりました。DarwiinRemoteでの操作は非常に使いやすくて気に入っているのですが、一点だけ不便なのは僕がKeynoteでよく使う「Home」キー (最初のページに戻る) に対応していないこと。そこで、Cocoaアプリ開発の勉強をかねて公開されているソースをプチhackしてHomeキーとEndキーに対応させてみました。

Wiiリモコン iWork '06

■ ダウンロード

上記ファイルは作者であるHiroakiさんの許可を得て配布しています。改良版本体は、下記の改良点に加えバージョンを「0.5 (Keynote mod)」としてあります。設定ファイルなどはそのまま使えるので、オリジナル本体に上書きしても大丈夫です。自分で改良・ビルドしたい人はパッチファイルのほうをどうぞ。

■ 改良点

  1. 環境設定で使えるキーに「Home」と「End」を追加
  2. Keynote用のデフォルト設定を追加
  3. 環境設定で最初に出てくる画面を「Wii Remote」に変更

1は現行の設定ファイルに影響しないよう、リストの一番下に追加しました。2は初回起動時などバージョン0.5用初期設定ファイル (‾/Library/Application Support/DarwiinRemote/DarwiinRemote0.5.xml) がないときのみ、デフォルト設定に僕が使っているKeynote用設定が追加されます (設定内容は後述)。3はそのままだと使いづらかったので(^^;)。これだけはnibファイルの編集が必要なので、上記パッチをあてても変更されません。

■ Keynoteでプレゼンしやすくしよう

僕が使っているKeynote用設定はこんな感じです。

Keynote_conf.png

1/2ボタンでプレゼンの開始と終了を切り替え、左クリックを割り当てたAボタンでページをめくっていきます。ページを前後したい場合は状況に応じて十字キーや+/−ボタンで操作します。Bボタンでセンサーバーを使ったポインティング機能のON/OFFができるので、プレゼン中のポインティングや他アプリの操作も可能です。そして、プレゼン終了時など最初に戻りたいときはHomeボタン。これがやりたかった!

最初にプレゼンで使ったときはBボタンでページを戻るようにしていたのですが、Wiiリモコンを机においたときに自然に押されてしまうことが多いためやめました。他の設定にしようと思っている方は注意したほうがいいと思います。また、ポインティングはセンサーバーの使用を前提にしてますが、もちろんモーションセンサーでもOK。でも操作しづらいので、可能ならセンサーバーを使った方が快適にプレゼンできると思います。ちなみにセンサーバーを使う場合は自作してしまうのが手っ取り早いですが、もちろんWii本体をもちこんでもOKです(笑)

KeynoteとWiiリモコンの操作に慣れると、Macの前にいなくても自由自在にプレゼンテーションできるようになります。しかも一般的なプレゼン用コントローラーよりだいぶ安い3,800円! プレゼン手法「もんたメソッド」とともにぜひ一度お試しください(^^

Posted by ooba at 2007/06/11 02:38 | Comments (0) | TrackBacks (3) | このエントリーを含むはてなブックマーク

2007/06/08 金

Software Design誌にLEGO MINDSTORMS NXTと「NXC」の記事を書きました

今年の2月に発売された技術評論社の「Software Design」に、巻末特別企画としてマインドストームNXTの記事を書きました。だいぶ前の話ではありますが、すっかり告知を忘れていたので記録として残しておきます。

マインドストームNXTの紹介を6ページしたあとは、残り10ページをかけてフリーの開発環境である「NXC」と関連フリーウェアの紹介、NXCプログラミングの解説をしています。NXCは、C言語ライクな記法でロボットプログラミングができる、大変強力な開発環境です。ロボット開発とは少し分野の違うSD誌の読者に、マインドストームの魅力を少しでも感じてもらえればという気持ちで書きました。自分がMacユーザであるのもあって、WindowsだけでなくMacでも楽しめるようになっています。

解説したNXCのバージョンは、まだ発展途上中だった「1.0.1.b23 beta」です。そのときはドキュメントやサンプルも英語版ですら全然そろっていない状況で、記事の執筆には大変苦労しました。そして、入稿直後に大幅な機能追加とドキュメントの整備が行われて、ちょっと悔しい思いをしたのを覚えています(^^;

# そういう事情もあり、当初サイトで公開予定だった日本語による追加資料は、内容不足などの理由から公開を見送りました。記事を読んで楽しみにしていた方、大変申し訳ありません。

自分が愛読していたソフトウェア雑誌にレゴネタで記事を書くことになるとは、夢にも思いませんでした。2冊の書籍から続く一連の執筆活動の機会を与えてくださった方々に、改めて感謝いたします。本号はもうAmazonにもありませんが(汗)、技術評論社にはまだ在庫があるみたいです。興味のある方は取り寄せていただければと思います。

Posted by ooba at 2007/06/08 07:07 | Comments (0) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2007/06/05 火

PS3のコントローラー「SIXAXIS」をMacにUSB接続する

PS3購入後の最初のエントリーがこれなのもどうかと思うのですが、PS3のコントローラー「SIXAXIS」をMacにUSB接続するコマンドを作りました。PS3発売直後に「SIXAXISをWindowsPCでつかう」というWindows向けのコマンドが出ていたのですが、それのMac版+αです。USBドライバではありません。SIXAXISに「USBモードで動け」という命令を出すツールです。ソース付。

■ 必要なモノ

  • PowerPC Mac または Intel Mac
  • Mac OS X 10.3 以上(たぶん…)
  • SIXAXIS と USBケーブル(Aオス - miniBオス タイプ)

PS3を持っている方は気にしなくていいですが、SIXAXIS単品でチャレンジしようと思っている方は、なんでもいいので「Aオス - miniBオス」タイプのUSBケーブルを用意してください。Mac OS Xのバージョンは全然検証していませんが、新しい機能は使っていないので大丈夫だと思います、たぶん…。

ワイヤレスコントローラ(SIXAXIS) USBケーブルポータブル ストレートタイプ


■ 使い方

  1. sixaxis-usb.tgz をダウンロードして適当なフォルダに解凍する
  2. ターミナルを起動してそのディレクトリに移動する
  3. sixaxis コマンドをオプションなしで実行する
    $ ./sixaxis-usb 
    SIXAXIS[1]
    set usb-mode
  4. ゲームコントローラーが使えるゲームなどを起動する
  5. SIXAXISのボタンや十字キー、アナログスティックを押しても反応がない場合は「PSボタン」を押す

以上の操作で、SIXAXISが2つのアナログ入力と19個のボタンを持つUSBゲームコントローラーに変身します。ボタンアサインは省略しますが、十字キーがボタン扱いとなり、アナログスティック左が方向キー(X軸とY軸)、アナログスティック右がZ軸とZ軸回転になる点に注意してください。6軸検出システムやボタンのアナログ入力は使うことができません (データ上はきているようです)。

十字キーがXY軸にならないため、それに対応していないゲームは動きません。とりあえず MacMAME はボタンアサインを変更すればちゃんと遊べました。振動機能がなくなったおかげで DUALSHOCK 2 より軽くなって、かなりいい感じです、これ。6軸検出システムやBluetoothが使えるようになれば最強コントローラーかも…。SCE公式でドライバ出してくれないかしら。

→ 【追記】 これのUSBドライバ版を作っている人を発見しました。以前Xbox360のドライバを作っていた人で、「Tattiebogle.net - Ps3Controller」からSIXAXIS用のドライバをダウンロードできます。キーコンフィグとかはありませんが、挿しただけで自動認識です。ソースが非公開なのが残念!

続きを読む...
Posted by ooba at 2007/06/05 03:13 | Comments (6) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2007/05/26 土

NXT本2冊目「LEGO MINDSTORMS NXTグレーブック」

もうご存知の方もいるかと思いますが、今年の2月にマインドストームNXT本の第二弾として「LEGO MINDSTORMS NXTグレーブック 〜 プログラムノツヅラ」という本を毎日コミュニケーションズから出しました。告知していなかったのを思い出したので、いまさら告知。マインドストームの他にも色々お世話になっている松原拓也さんとの共著になります。

LEGO MINDSTORMS NXTグレーブック?プログラムノツヅラ

この本は、NXTプログラミング入門がメインの「入門LEGO MINDSTORMS NXT」に対して、NXT応用編といった感じの位置づけになっています。マインドストームNXTをはじめて触る人は、毎コミのNXT本シリーズ第一弾である五十川さんの「オレンジブック」で仕組みの作り方を学び、入門NXT (一部ではブラックブックと呼ばれているようですw) でプログラミングを学び、グレーブックで応用にチャレンジするのがいいかも知れません。

本の内容は毎コミのサイトをご覧下さい。僕は前半の3章までを担当しました。1章がプログラミングの基本と応用、2章が複数のセンサーやNXTを使ったより高度なロボット、3章がLEGO用CADソフトや音声/画像編集ツールの紹介となっています。1章では配列や三角関数を使うことにチャレンジしたり、いきなりPerlのプログラムが出てきたりとかなりプログラマー寄りな内容です(^^;

松原さんが担当した4章以降では、NXT用の最強(?)プログラム言語「NBC」によるプログラミング解説にはじまり、RCXのモーターやセンサーを使う話、PCからBluetoothやインターネット越しに操作する話、NXTを2セット使った本格二足歩行ロボットの話ときて、最後にファームウェアのビルド方法まで、かなりディープな内容になっています。変換ケーブルを自作したり携帯電話からNXTを操作したりと松原節全開で、正直僕も全部理解できていません(汗)。これが唯一かもしれないNBCの日本語解説もかなり重宝しています。

元々遅筆なのに加えブラックブックの執筆と重なったこともあり、関係者のみなさまには大変なご迷惑をおかけしましたが、おかげさまで大好きなレゴブロックについて2冊も本を書くことができました。この場を借りて改めてお礼を申し上げます。どちらの本もいま見返すとつたない部分も多いですが、レゴブロックで育った恩返しのつもりで書きました。このブログを読んでいる方も、よかったらご覧になってください。

Posted by ooba at 2007/05/26 23:15 | Comments (0) | TrackBacks (4) | このエントリーを含むはてなブックマーク

2007/05/19 土

ポッドキャスト「LEGO MINDSTORMS Education」配信開始

先日の配信記念イベントも無事終わり、キャスタリアによるポッドキャスト「LEGO MINDSTORMS Education」がスタートしました。

どこで配信されているのかわかりづらかったのですが、以下のページが配信ページのようです。音声じゃなくてビデオポットキャストですね。第一弾は「FIRST LEGO League (FLL)」に関する内容です。

Castplant edu

レゴ社がMIT(米国マサチューセッツ工科大学)と共同開発したロボティクス製品がレゴ マインドストームです。教育用として科学・技術・情報・工学を体験的に学習するために大きな意義を持ちます。このポッドキャストでは教育においてのさまざまな使い方や事例などをわかりやすくお伝えします。

また、Robot Watchにキックオフイベントのレポートがあがっています。僕も行ってきましたが、最初に行われたレゴジャパン樺山さんのプレゼンに感動しました…! レゴ社の信念やレゴブロックの歴史を、レゴトリビアを織り交ぜながら巧みにプレゼンされていました。話されていた内容も知らないことが多く、久しぶりにとてもいいプレゼンを見ましたよ。

ちなみに、レゴ社にはMacを使っている人なんていないと思っていたら、樺山さんはかなりディープなMacユーザで、プレゼンもデモもMacでばっちりこなしていました。会場がアップルストアだったので、Windowsを使うわけにもいかなかったんでしょうけど(^^;

○ 追記

どこにあるかわからないと書きましたが、早速レゴ マインドストーム公式サイトにポッドキャストのバナーが貼られました。

Posted by ooba at 2007/05/19 21:45 | Comments (0) | TrackBacks (9) | このエントリーを含むはてなブックマーク

2007/01/22 月

Robot Watch連載第二回配信

Robot WatchのMINDSTORMS NXT連載の第二回が本日公開されました。今回はMINDSTORMS NXTの目玉のひとつでもある二足歩行型ロボット「アルファレックス」の解説ネタです。書籍執筆などの影響で第一回から少し間が空いてしまいました(^^;

コラム: 大庭慎一郎のレゴマインドストームNXT研究室〜二足歩行型ヒューマノイド「アルファレックス」を遊び倒す

まだMINDSTORMS NXTを持っていない人でも雰囲気を掴んでもらえるように、各動作の動画を5つ用意してみました。プログラミングする際のポイント解説に加えサンプルプログラムをダウンロードできるようにしてあるので、アルファレックスを組み立ててみたものの「どう動かしたらよいかわからない」という人もご覧頂けたらと思います。

次回はアルファレックスを改造して遊ぶ内容をお届けします。

Posted by ooba at 2007/01/22 21:19 | Comments (5) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2006/12/19 火

「入門LEGO MINDSTORMS NXT」ができました

手前味噌ですが、わたくし大庭がずっと執筆していたLEGO MINDSTORMS NXTの本「入門LEGO MINDSTORMS NXT 〜 レゴブロックで作る動くロボット」がようやく完成しました! ソフトバンククリエイティブから12/23頃に出版されます。今日見本誌を頂いたのですが、初の単著なのですごく感動しております。Amazonではもう予約開始されていますね!

入門LEGO MINDSTORMS NXT レゴブロックで作る動くロボット

副題にもあるように、この本は「ロボットを動かす」ことに重点を置いた内容になっています。LEGO社謹製の標準開発環境であるNXTソフトウェアの解説と、ロボットプログミングの入門から応用までの話に、ページのほとんどを割いています。NXTソフトウェアにでてくる全てのプログラミングブロックを使い、基礎から順番に学べる内容になるようがんばりました。

  • いままでにプログラムをやったことのない人
  • NXTソフトウェアを使いこなしたい人
  • 動きが目でわかる題材を使ってプログラムを教えたい人
  • とにかくロボットを動かしたい人

このような方々のお役に立てれば幸いです。

なお、前述のようにハードウェアの話、すなわちレゴブロックを使って機構を組むことに関しては、あまりページを割いていません。そういう内容をお求めの方は、心の師匠である五十川芳仁さんの「LEGO MINDSTORMS NXTオレンジブック 〜 アイデアノタマテバコ」をお買い求め下さい。名著「レゴのしくみで遊ぶ本」のNXT版ともいえる内容で、超オススメです。

LEGO MINDSTORMS NXTオレンジブック?アイデアノタマテバコ

ちなみに、このオレンジブックの続編も現在執筆中です。こちらはよりディープな内容になる予定です。

最後に、この本の執筆にあたり数多くの方々にご協力頂き、大変感謝しております。特に編集の星野さんの叱咤激励と多くのヘルプがなければ、この本は出版されなかった可能性が高いです(^^;)。この場を借りてお礼申し上げます。

Posted by ooba at 2006/12/19 18:27 | Comments (1) | TrackBacks (3) | このエントリーを含むはてなブックマーク

2006/11/24 金

Robot Watch でレゴ マインドストーム NXT の連載をはじめました

毎日チェックしているインプレスのロボット専門サイト「Robot Watch」で、なんとマインドストーム NXT の連載をすることになりました! その記念すべき第一回がついさきほど公開されました。

コラム:大庭慎一郎のレゴマインドストームNXT研究室

タイトルがベタベタな以前に自分の名前が入っていて恥ずかしいのですが、こんな感じで毎月数回の不定期更新コラムとして続けていくことになりそうです。

この連載は、主に「玩具用マインドストームNXTを買ってみたけど、どうやって遊んだらいいかわからない」という方をターゲットにしています。マインドストームNXTを持っていない人でも、どんな感じかわかる内容にしていくつもりです。マインドストームNXTでどんなことができるかなどの軽い内容からはじめて、段々と海外のサードパーティ製パーツや改造などのマニアックなネタにシフトしていこうと企み中です。

レゴ マインドストーム NXT 体験ブログより写真も動画も多めになると思いますので(笑)、両方合わせてチェックしてみて下さい。

# 実は書籍2冊を出すことも決定しています。この話はまた次の機会に…。

Posted by ooba at 2006/11/24 01:13 | Comments (2) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2006/10/05 木

教育用レゴ マインドストーム NXT 本日販売開始!

えーっと、何日ぶりのブログ更新かわかりませんが、ついにファン待望の「レゴ マインドストーム NXT」が日本でも販売されたので急いで更新してみました。僕が書いている「レゴ マインドストーム NXT 体験ブログ」でも取り上げています。販売開始されたら「体験ブログ」っていう名称はおかしい気がしますも、気にしないことにします。

今回発売されたのは、マニュアルやソフトウェアがローカライズされた日本語版です。レゴマニアな方はすでに英語版を海外から購入していることと思いますが、ようやく英語地獄から解放されますね。僕は NXT ソフトウェアの扱いに関しては英語版でほぼマスターしてしまいましたが、改めてマニュアルやヘルプを読んでみたいと思います。

教育用レゴ マインドストーム NXT とその周辺パーツは、教育用マインドストームの販売代理店である株式会社アフレルなどで購入可能です。セットはもちろん NXT 本体やモーターなどパーツ単位でも購入できます。リチャージャブルバッテリーもありますね。ケーブルや変換ケーブルはバラで購入できないのかな?

ツクモ ロボット王国に問い合わせたところ、玩具版は 10/14 頃の発売だそうです。ただ、教育版が最初9月発売だったのが今日になってしまったので、玩具版もどうなるかわかりませんね…。とりあえず予約しておきましたが。

みなさん何セット買うのかわかりませんが、僕は複数の NXT で遊ぶ楽しさを知ってしまったので、もう1セットじゃ物足りません…(笑)

Posted by ooba at 2006/10/05 20:19 | Comments (1) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2006/06/14 水

「レゴ マインドストーム NXT 体験ブログ」はじめました

先日プレスリリースがあった LEGO MINDSTORMS ファン待望の「レゴ マインドストーム NXT」を、なんと発売前にいじれる機会に恵まれました! ツイてる! LEGO の神様ありがとう!

で、その体験模様を報告するブログを開設したのでご報告します。

レゴ マインドストーム NXT 体験ブログ

2006年秋発売予定の「教育用レゴ マインドストーム NXT」を発売前から体験しちゃうブログ。

超激務の合間に睡眠時間削っていじっているので倒れそうです。LEGO を使った新たな拷問かも知れません。でも楽しい! いじる度に感動の嵐が押し寄せ、ネタが洪水のように溢れ出ます。僕の手が4本あったら、一日10エントリーでも書けそうな勢いです。でも残念ながら2本しかないので数日に1エントリーしか書けませんが、浅いネタから深いネタまで色々お伝えできそうです。

これまで MINDSTORMS に触ったことがない方や、興味はあったけど敷居が高そうで手が出せなかった方でも、今回の NXT はかなり楽しめると思います。ブログでもその辺の魅力をお伝えできればと思っています。LEGO 社としては初めて Mac に正式対応したので、これまで指をくわえて眺めていた Mac ユーザのみなさんもぜひ。

なお、諸事情によりしばらくコメントできないようになっています。すみません。しばらくしたらコメント解放するかもですが、ご意見やご要望がある場合はこちらにお願いします。もちろんトラックバックも歓迎! ただ、今使っている NXT は借り物なので、分解とか改造とかあまり無茶なことはできません。すみません。分解したいよう。

Posted by ooba at 2006/06/14 16:39 | Comments (0) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2006/05/25 木

「MacBook Canvas」で MacBook 2台所有の気分を味わう

発売日に白黒2台大人買いをしている人を見てうらやましがっていたら、白黒のキーボードを入れ替えて模様を作ってる人まで出てきました。

MacBook 市松 - Engadget Japanese

2万円高い黒よりももっとスペシャルなMacBook Ichimatsu仕様が登場。

どうも、これを見たひらたさんもキーボード入れ替えにチャレンジするとか。「みんないいなー」とか思っていたら、いつの間にかこんなものを作っていました。

MacBook のキーボード部でお絵かきをするツールです。ポチポチやってるだけで割と楽しめます。キー部分も画像にする予定だったんですが、切り出しがめんどくさすぎてやめました…。

これを見て現物でやりたくなった人は以下のリンクからどうぞ(笑)

Posted by ooba at 2006/05/25 13:33 | Comments (1) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2006/04/12 水

2ちゃんねるの RSS を取得する Bookmarklet

ついに2ちゃんねる本家で RSS 配信に対応したようです。読むだけの人には便利っぽい。

2ちゃんねるがRSSに対応。スレッドや書き込みの新着がRSSで取得可能に

2ちゃんねるのスレッドがカテゴリごとRSS化されており、各カテゴリの新着スレッドをRSSで取得できる。また、RSSを登録して表示される各スレッドのRSSをさらに登録することで、スレッドの新着書き込みもRSSで取得できる。

肝心の RSS は「2ch RSS menu +」にいって取得するのですが、RSS Auto-Discovery には対応していないため今見ている板やスレから直接 RSS を取得するようなことはできません。こういうときは適当 Hack で解決です。Bookmarklet にしてみました。

板、スレ、レスの3階層に対応しています。ブックマークに登録した上で、僕が最近よく見ている「とりあえずヘボリスやっとけ/Heboris その4」とかで試してみて下さい。こんな RSS になります。

今回は RSS の URL をプロンプトで出力していますが、location.href でも window.open でも Bloglines に食わせるのでも何でもいいと思います。適当に改造して適当に使って下さいませ。ちょっとの不便から勢いだけで作ったので有用かどうかは知りません。

Posted by ooba at 2006/04/12 12:59 | Comments (1) | TrackBacks (3) | このエントリーを含むはてなブックマーク

2006/04/04 火

ETロボコンの参加チームが100を超えました…!

「UMLロボコン」という名前だった第一回から関わり続けている、組込みソフトウェア技術者教育をテーマとした大会「ETソフトウェアデザインロボコン」が今年も7月に開催されます。

先日その参加募集を締め切ったところなのですが、なんと今回の参加チーム数は「106チーム」だそうです…! 前回のほぼ倍ですよ、倍。内訳は「企業:学校:個人=4:4:2」くらいで、かなり無差別級というか異種格闘技というか、入り乱れた感じになってきました。100台以上の LEGO Mindstorms が集まるのかと思うと鼻血が出そうです(笑)

GQ JAPAN」のサイトでも取り上げられたように、僕はこの大会の技術委員長というのをやっているのですが、参加数増大につき競技内容も大幅変更が必要となり、その調整にかなりてんてこ舞いです。前回レベルで写真のようなにぎわいですから…。うれしい悲鳴ではあるのですが、運営委員全員ボランティアという体制はそろそろ厳しいかもしれません(^^;

img2006040401-thumb.jpg img2006040402-thumb.jpg

現在、いままで1つだったコースを2つにする計画を進めています。4台同時並走で並列的に数をこなす作戦です。それに伴い、コースの作成方法も発泡スチロール+ビニールテープから、量産が効く印刷や染色などに切り替える検討を進めています。これが実現できれば各地で開催とか夢が広がるのですが、はたしてどうなることやら…。

競技への参加は締め切りましたが、ETロボコンでは企業、学校、個人問わず幅広く門戸を広げています。より多く、より幅広くなった参加者達に対し、自らの存在をアピールするチャンスでもあります。興味がありましたら気軽にご連絡下さい。スポンサーも絶賛募集中です(^^

Posted by ooba at 2006/04/04 23:01 | Comments (1) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2005/11/03 木

いま Perl で一番イケてるオブジェクト指向プログラミングを学ぶ

最近、現実逃避で「CPAN author にでもなるか」と思い、Perl でちゃんとしたモジュールを書くにはどうしたらいいかをチマチマ勉強しています。

で、そうなるとやっぱりオブジェクト指向なわけです。が、Perl は Java などに比べるとオブジェクト指向的な記述を前提としていないユルユルなプログラム言語 (あくまで主観ですが) なので、書き方も使い方も実現方法も色々あってどういう風にやるのが一般的なのかよくわかりません。普段から CPAN のモジュールを使っていればそれでもなんとなくわかるのですが、モジュール探すより先に手が動いてしまうタチなので深く経験・学習する機会もなく。

実は過去にオブジェクト指向っぽい書き方にチャレンジしてみたものの、書いてるうちに「一人で使っている分にはベタで書いたほうが早い」とか思い出してめんどくさくなってやめた経験もあったりします。Java だったら「やべー、このクラス超使える」とかいいながら toString() に無駄に凝ってみたりして楽しめるんですが、なんででしょう(^^;

とはいえ、実際に CPAN に登録するかは別として、再利用しやすいモジュールを書くには避けては通れない道なのは確か。なので、ある程度は自分で調べてそれなりに知識を蓄えた上で、いつもどおり naoya 先生にメッセで聞いてみました。

perlで一番イケテルOOなクラス&モジュールの記述方法はどんなんでしょうか (注意:原文ママ)
続きを読む...
Posted by ooba at 2005/11/03 03:30 | Comments (4) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2005/10/28 金

「組込みプレス Vol.2」に LEGO Mindstorms の記事を書きました

技術評論社が最近「組込みプレス」という組込みエンジニア向けの雑誌を創刊しました。昨日発売されたその Vol.2 に「ET ソフトウェアデザインロボコン (ET ロボコン)」がらみで記事を書かせてもらいました。「LEGO MINDSTORMSではじめる[オブジェクト指向]組込み開発」という、ETロボコン実行委員会メンバー数人で書いた30ページほどの巻末特集です。

技術評論社といえばブログ業界では「WEB+DB PRESS」や「Web Site Expert」などが有名で記事を書いているブロガーも多いと思いますが、意外な雑誌で技術評論社デビューを飾ることになりましたよ(^^

ET ロボコンというのはこのブログでも何回か紹介してるイベントで、LEGO Mindstorms で作られた自走ロボットをオブジェクト指向で設計されたプログラムで走らせ、そのタイムとモデルの優劣を競うコンテストです。なんか知りませんが、僕が技術委員長という CTO みたいな役をやっています(^^;)。このコンテストでは LEGO Mindstorms 向けのフリーなプログラミング環境を使っていまして、参加者は C/C++ 用開発環境である「brickOS」や Java 用開発環境である「leJOS」などで開発をしていきます。

この環境構築が結構めんどくさくて毎年新規参加者が苦労しているのですが、この特集は CD-ROM との連動企画となっていまして、CD-ROM 起動する Cygwin+brickOS を同梱してあります。なので、Mindstorms さえ持っていれば買ってきてすぐにプログラムを体験することが可能です。超お手軽。

ET ロボコンは、大手企業から学校までの全参加チームが同一の目的に向かってソフトウェアを設計し、それを見せ合うという世界にも稀なコンテストです。組込み開発にオブジェクト指向を導入するテストケースとしても活用することができ、教育面でも高い評価を得ています。この特集でもオブジェクト指向による分析・設計手法について多くのページを割いていますので、気軽にその雰囲気を体験することができます。また、FPGA によるハードウェア設計に関する説明など、より高度な話についても触れています。

組込み業界に限らず、興味のある方はぜひご覧になってみて下さい。

また ET ロボコン自体は、11/16(水 )にパシフィコ横浜でチャンピオンシップ大会を開催します。こちらもぜひお越し下さいませ。

Posted by ooba at 2005/10/28 02:45 | Comments (0) | TrackBacks (3) | このエントリーを含むはてなブックマーク

2005/09/16 金

LUMINES remixer 製作記 #2 〜 作り始める前に

白 PSP が発売されて、ますます v2.0 の PSP が欲しくなってきた今日この頃です。今回例の「□ボタン」の構造も改善されて、初期型ユーザとしてはかなり心が揺れます。が、PSP プログラミングの楽しさを味わうためには v1.50 は死守必須。もしくは2台持ちか(^^;

さて、本題です。LUMINES remixer を作り始める前に、確認しておかなくてはいけないことがいくつかあります。

  1. PSPSDK での音の鳴らし方と出力の仕様
  2. LUMINES のデータ格納の形式
  3. LUMINES の音楽データの形式
  4. LUMINES のスキンデータなどの形式

とりあえず入っている音を鳴らすだけであれば、1〜3まで確認できればなんとかなりそうです。曲のように鳴らしたり、各音の意味を把握するにはスキンデータなども解析する必要があるでしょう。以下で簡単に説明します。とりあえず途中まで。

続きを読む...
Posted by ooba at 2005/09/16 03:03 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2005/09/10 土

LUMINES remixer 製作記 #1 〜 LUMINES をしゃぶりつくそう

PSP アプリの開発環境を導入してからというもの、PSP に触る機会が非常に多くなってきました。ゲームは「LUMINES」と「WIPEOUT PURE」しか持ってませんが(笑)

ちょこちょこ自作のテストアプリを作りながらも上記ゲームで遊んでいるんですが、僕の LUMINES は水口さんのサイン入りなのであまり出し入れしたくないのです、ほんとは。できればしまっておきたい。そんなわけで、最近は UMD を吸い出してメモリースティックから起動して遊んだりしています (Mac OS X での吸い出し方法は後述)。LUMINES はスキンが変わるときの長い読み込み時間のせいで没入度をダウンさせている点が非常にもったいないのですが、メモリースティックからの起動だと読み込みがかなり速くなってとても快適です。おそらくこっちのほうが制作者のイメージに近いんじゃないでしょうか。SCE にはオリジナルの UMD 必須でいいからメモリスティック起動を正式にサポートしてほしいです、まじで。

で、吸い出した UMD の内容を眺めているときに(ISO イメージなので普通にマウントできる)、「これはまだまだ遊び倒せるな」と思いました。大きく以下の3つの遊び方があると思います。

  1. 絵や映像、音の素材ファイルやデータを PC 向けに変換して活用
  2. バイナリを変更・改造してメモリースティックから起動して遊ぶ
  3. UMD 内の素材ファイルを自作アプリで読み込んで利用する

1は、PS や PS2 の CD/DVD-ROM を PC につっこんで中に入っているデータを変換して遊んでいた人にはおなじみの遊び方でしょう。ゲーム中の素材がデジタルデータで手に入るので、いろいろと活用の幅が広がります(もちろん私的利用の範囲で)。また、ゲーム中のデータやパラメータを覗くのもなかなか楽しいです。どんな素材やデータが入っているかわかってしまうので、ゲームを普通に遊び倒してからじゃないと興ざめしてしまいますが…。

2は、メモリースティック起動の際に読み込むゲームデータをあらかじめ改造しておく、というやり方です。プログラムの動作を変えたり、素材データを入れ替えたりすることで、自分の好きなゲームバランスに仕上げることができます(もちろん要スキル)。僕はこの方法で、LUMINES のスキンの出現順番や難易度の変更、曲の差し替えなどをして遊んでます。「SHININ'」 → 「SHAKE YA BODY」 → 「I hear the music in my Soul」 → 「Lights」とか歌ものを並べたりするとかなり熱いです♪

で、僕が注目しているのは3です。UMD を外部記憶装置としてとらえ、そこに入っている素材をメモリースティックから起動した自作アプリで読み込んでゲーム中に使う、という遊び方です。素材を吸い出して自作アプリに組込んで配布というのは法的にもいろいろと問題がありますが、「素材は UMD の中。自作アプリはそれを再活用するだけ」というスタイルであれば、その辺の問題はクリアされるのではないでしょうか。素材自体はゲームを買わないと手に入らないのですから。要するに remix です。流行の WEB 2.0 っぽいのもいい感じです。

■ LUMINES の音楽データを remix するアプリ「LUMINES remixer」を作る

前置きが長くなりました。というわけで、愛する LUMINES をもっと遊び倒すために、音楽データを読み込んで自由に再生して遊ぶシーケンサみたいなアプリを作ろうと思いました。LUMINES は音がメインのゲームなのにサウンドテスト機能がないので、それを自分で作ってしまおうというわけです(実はそれらしいデータは入っているんですが、諸事情により未実装なのかな…?)。「LUMINES remixes」という remix CD も出ていますが、大沢伸一氏の曲は入ってないですし、やっぱり自分で remix したいじゃないですか!

まだ妄想段階で具体的な機能は決めてません。とりあえず選んだ音を鳴らせるところまで作ったら公開しようかと思っています。あとはシーケンスデータに沿って一曲再生したり、重ねと順番を好きなように組み合わせてオリジナルミックスにしたり、効果音系を打ち込みしたりできればなぁ、と思ってます。自分で組んだシーケンスをスキンデータに吐き出したりできるとより楽しいかも知れませんね。

開発コードというか名前は remix CD の一文字違いで「LUMINES remixer」にしてみました。「re:LUMINES」とか「luMIXnes」とかわけわからない名前をいっぱい考えたのですが(笑)。毎日少しづつ作っていくので、製作ペースはのんびりだと思いますが、興味のある方はご意見やご指摘など頂ければと思います。

続きを読む...
Posted by ooba at 2005/09/10 18:00 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2005/08/27 土

PSPSDK による PSP 自作アプリ開発環境構築とサンプルアプリ

しばらく PSPKick と PSP Rhythm Composer で遊んでいたら、突発的に自作アプリを作りたくなったので、Mac OS X 上に PSP アプリの開発環境を構築してみました。

PSP 関連のツールはどうしても Windows 用ばかりになってしまい、開発環境もそうかと思っていました。が、PS2DEV が提供している PSPSDK を始めとする各種ツールは UNIX 系 OS で利用することを前提に作られているので、FreeBSD ベース の Mac OS X でも利用可能です。もちろん Cygwin をいれた Windows でも OK で、どの OS に入れても基本的に使い方は変わりません。

以下にその環境構築手順と使い方をまとめておきます。ついでに、PSPSDK に付属のサンプル2つを組み合わせて作ったポリゴンの立方体をアナログスティックでグルグル回して遊ぶ(?)サンプルと、偉大なる先人SEC (Saturn Expedition Commitee) の nem 氏が公開している「HelloPSP R1」を PSPSDK 環境向けに port したものを置いておきます。興味のある方はいじってみて下さい。

img2005082702.jpg img2005082701.jpg img2005082705.jpg

さて、何から作ろうかなぁ。グラフィック系のサンプルを動かしているだけでもかなり楽しい♪ Let's hack PSP !

続きを読む...
Posted by ooba at 2005/08/27 08:08 | Comments (5) | TrackBacks (6) | このエントリーを含むはてなブックマーク

2005/06/03 金

Ajax で文字化けする条件を調査してみた

Blog Hackers Conference 2005 補足エントリー その2】

発表時間が全然足りなくて一言もしゃべれなかった「Ajax で日本語文字化け」ネタの調査結果をエントリーしておきます。

Safari ユーザのみなさんは Ajax なページを見るときに「文字化けすぎで見れん!」という経験を一回はされていると思います。例えば「WEBプログラミング NOW!: Googleサジェスト--Safariで文字化け」で述べられているように Google サジェストが化け化けになったりして、枕を涙で濡らす日々を過ごしていることと思われます(v1.3 では動作すらしません(泣))。この文字化けは、どうもデータを XML ではなくテキスト形式で受け取っているときに起こるようです。詳しい原因は「WEBプログラミング NOW!: Googleサジェスト--Safariで文字化け」や「ヘチマ_BLOG : Safari の XMLHttpRequest」などをご覧下さい。毎度のことながら Safari はおばかなやつです…。

回避策としては、結論から言うと UTF-8 で書かれた XML データでやりとりさせれば Safari を含む大抵のブラウザで大丈夫なようです。とても詳しい調査が「JavaScript++かも日記: 【Ajax】responseされる文字コードの調査」にまとめられています。超必見。というわけで、テキストでやり取りしているサービスを作っている方は「mizzy.org - Mac SafariでのxmlHttpRequest文字化け」で述べられているようにデータの先頭に「<?xml version="1.0" encoding="euc-jp"?>」と書くだけで回避できますので(もちろんパースに影響が出るかもですが)、XML 化をご検討していただけると幸いです。

で、上記のサイトを見た後で出すのはアレなのですが、僕もちょっと調べてみたので、もったいないので公開しておきます。調査のポイントは「1. 呼び出し元(HTML)の文字コード」「2. 呼び出しデータの文字コード」「3. 呼び出し方法(フォーマット含む)」です。データを CGI 出力するかどうか(CGI 出力時は HTTP response header に charset を吐いている)も区別してみました。あとはついでに Ajax(XmlHttpRequest) だけでなく、外部 js ファイル include による document.write (script 要素で charset 属性の指定あり) も対象にしてみました。

  • 対象ブラウザ: IE(win)、FireFox(win)、Safari(mac)、FireFox(mac)
  • 呼び出し元 HTML の charset: UTF-8、EUC-JP、Shift_JIS
  • 呼び出しデータの charset: UTF-8、EUC-JP、Shift_JIS
  • データ表示方法: XmlHttpRequest(XML)、XmlHttpRequest(テキスト)、js include
  • データ出力方法: 静的ファイル、CGI 出力

これらの組み合わせは「4×3×3×3×2」で 216 通り(泣)になるのですが、Javascript 日本語文字化けテストというページを作って、Mac と Virtual PC でがんばりました…。以下のプレゼン資料そのままな画像がその結果と調査の様子です。Web アプリ開発中は大抵こんな感じで動作確認をしていて、いつもどれがどのウィンドウだかわからなくなります(^^;) 元の Keynote ファイルやスライドの抜粋などはここにアップしてあります。

img2005060201-thumb.jpg img2005060202-thumb.jpg

この方法できちんと検証できているかは自信がないのですが、このように CGI 出力して HTTP response header に「Content-Type: text/xml; charset=EUC-JP」などと吐いてあげれば、結構大丈夫みたいですねー。テキスト出力でも CGI 出力してあげれば Safari 1.3 以降なら文字化けを回避できます。Safari 2.0 だとどうなのかな…。あと、おまけの調査になりましたが、js include はまったく問題ないですね、やっぱり。ちなみに Opera は調査してないのであしからず(^^;

川o・-・)<2nd life な人の情報によって、Safari でも「How To Use Unicode Strings in Rails」の下の方に書かれている方法で文字化けを回避できることがわかったのですが、これに関してはまたあとで追記する、かも。

こんな感じで Safari ユーザは Movable Type の Bookmarklet 以来苦しんでいるわけですが、僕はいつまでもこのバカなブラウザとつきあって行こうと思います。単に Apple プロダクトが好きなだけなんですけどね。というわけで、Safari での動作確認など承りますので、気軽に声かけて下さい。また、間違っているところや追加情報などありましたら教えて下さい。

Posted by ooba at 2005/06/03 02:27 | Comments (0) | TrackBacks (4) | このエントリーを含むはてなブックマーク

2005/05/18 水

Safari が JavaScript ファイルを動的ロードできない件

Mac OS X の標準ブラウザである Safari だと、createElement で生成した script 要素を appendChild しても、src 属性に指定した JavaScript ファイルが読み込まれない、という現象についてです。って、日本語とは思えない文ですね、これ。

少し前に「最速インターフェース研究会 :: [Ajax] JSAN構想とリモートデータの取得とUserJavaScript」や「川o・-・)<2nd life - bookmarkletの文字数制限を無くす」で話題になっていましたが、JavaScript 上で上記のようにしてやることで外部の JavaScript ファイルを動的にロードできる! ウマー! という話。bookmarklet の外部ソース化ができたり(活用例:川o・-・)<2nd life さん、fladdict.net blog さん)、最速インターフェイス研究会さんのデモ「GoogleSuggestの補完候補を取ってくる」のように XMLHttpRequest なしで Ajax ライクなこと、いや、それ以上のことができるとあってなかなか注目な技術なのですが、我らが Safari ちゃんでは動かないっぽいです。なんかもう慣れっこですが、正直しょぼーんです。

img 要素などは生成・表示できるので、createElement と appendChild はちゃんと動いているのですが、script 要素の場合は src に指定された JavaScript ファイルを有効にしてくれないようです。以下のことを試しましたが、どれも動きませんでした…。なんだよー。

  • 読み込み先の js に直に「xxx()」と書く → 実行されず
  • 読み込み元の html から 読み込み先の js 上の関数 yyy() を呼ぶ → 実行されず
  • 読み込み先の js から 読み込み元の html 上の関数 zzz() を呼ぶ → 実行されず

これが同じ Mac の人気ブラウザである FireFox では動くんですよねー。いまや blog 界隈では FireFox ユーザのほうが多いかも知れませんが、Safari は Apple 謹製の標準ブラウザだけに悩ましいところ。バグというよりポリシーの違いな気もしますが。もし情報が間違っていたり、どんなブラウザでも動く解決策がありましたら教えて下さい。あ、Tiger の Safari では試してません。Tiger いつ買おうかな…。

ちなみに Safari は JavaScript における日本語の扱いも微妙なようで、最速インターフェース研究会さんのかっこいいナビantipop2.0 さんのインクリメンタル検索などは日本語がバケバケだったり機能しなかったりします(悪い例としてあげてしまってスミマセン)。FeedAmazon のインクリメンタル検索Amazon Explorer ではなんとか回避できているのですが(たぶん)、この辺の話はまた次の機会に…。

あと、ちょっと期待したのですが、WIPEOUT PUREなどに載っている PSP の Web ブラウザでも動きませんでした。createElement とかの DOM 関係は動かないようです。せっかく「PSP で Ajax!(疑似ですが何か?)」とかいって遊ぼうと思ってたんですが、非常に残念。

続きを読む...
Posted by ooba at 2005/05/18 22:02 | Comments (1) | TrackBacks (3) | このエントリーを含むはてなブックマーク

2005/04/28 木

萌える SE 業界ノベルズ 〜 お兄ちゃんはプログラマ

FeedAmazon: RSS - Amazon.co.jp: 本 / ジャンル別 / コンピュータ・インターネット [販売開始] をチェックしていたら、「<萌えるSE 業界ノベルズ> お兄ちゃんはプログラマ」という本を発見。狙い過ぎ感たっぷりですが、とても気になるのはなぜでしょう。てゆうか、「萌える」以前に「SE 業界ノベルズ」ってなんだよ!

フェーズ#3「デバッグ」の「βと言い張ればソレがβだ!」にいたく感動しました。βと言い続けてはや半年(汗)

Posted by ooba at 2005/04/28 04:28 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2005/03/09 水

サイト外へのクリック追跡サービス「MyBlogLog」を導入&解析

数日前に激務の現実逃避で作ろうと思っていたサービスがすでにあってちょっとびっくり、かつ、がっかり、かつ、手間が省けました(笑) 「MyBlogLog」は、自分のサイト以外のどのリンクをクリックしたかを集計してくれるサービスです。うっかり未読をためてしまって最近読んでなかった百式で紹介されているのを blog.bulknews.net 経由で知りました(^^;

百式: 興味の流れ

MyBlogLogでは、あなたのブログの読者が、あなたのサイト以外のどのリンクをクリックしたか、ランキング表示してくれる。つまりあなたが紹介した他のサイト、もしくは他のサイトの記事が、どれだか読者の興味をひいたのかが一目瞭然なのである。

先週、Ajax で何か実用的なアプリ作れないかなぁ、と現実逃避していたときにふと思いついたのが「onClick のトラップと XMLHttpRequest を使ってページ上の全クリックをトラッキングできるのでは?」というモノでした。「外部リンクのクリックが監視できるとうれしいかも。でも忍者TOOLSとかですでに提供されてるんだろうな・・・。あれ、ないや。お、作ろうかな・・・。んー、できそうだけど、統計画面どうしようかなー。」というところまでいってめんどくさくなってやめたんですが(笑)、その数日後に同等のサービスに出会えるとは! シンクロニシティ?

で、僕は同じことを XMLHttpRequest でやろうとしていたんですが、これだと JavaScript のアクセス制限の関係で自分のサーバ内でしか動かないんですよね。じゃあ MyBlogLog はどうやって各サイトに公開してんだろう、と JavaScript ソースを覗こうと思ったら、やっぱりソースを読まれないように制御してました。ちょこざいな。でも読めないわけはないので、ごにょごにょやって覗いてみると・・・。

続きを読む...
Posted by ooba at 2005/03/09 00:25 | Comments (2) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2005/03/05 土

FeedAmazon で Ajax 〜 登録ジャンルのインクリメンタル検索を導入

FeedAmazon の登録ジャンル数が500を超えてしまい、登録ジャンル一覧が激しく見にくくなったり、リスト表示でタイムアウトしてしまったりとご迷惑をおかけしております。

ちまたでは「Ajax」が流行っているようで、hacker なみなさんは「手段が目的」となって遊んでおられるようですが、blog 効果もあって短い期間で濃い成果が出てきています。そんな中のひとつである antipop2.0 さんの「antipop2.0 - Movable Type な Blog の全エントリを JavaScript with XMLHttpRequest でインクリメンタル検索する」を大々的に拝借(=コピペ)して、FeedAmazon に登録されているジャンルの検索をできるようにしてみました。かなりとってつけですが、なかなか便利です。ただ、この動作原理だと Ajax とはいえないかも知れませんが。

JavaScript で HTTP通信を介さない UI を作るのは結構好きなんですが、ブラウザ間の実装差があったり、ほとんどの場合一から作り直さなきゃいけなかったりと割と面倒で、だいたい途中までつくって飽きてしまいます(^^; 「直感ヒトフデ チェックメイトステージ生成」を公開したときに作りかけたステージエディタもそんな残骸のひとつです。この機会になんか面白いアプリを作ってみたいなぁ。

Posted by ooba at 2005/03/05 03:05 | Comments (3) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2005/03/03 木

Mr.Children と JavaScript の意外な関係

ミスチルの活動前期のベストアルバム「Mr.Children 1992-1995」のジャケットを見て、通称「サイ本」を思い出してしまう、そんな昼休みでした。ねむいよう。

Posted by ooba at 2005/03/03 13:33 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2005/03/02 水

ETロボコン参加受付開始

昨日3/1(火)より「ET ソフトウェアデザインロボコン」の参加申し込みが開始されました。参加申し込みのページをご覧の上、どしどしご応募下さい。

先週2/22(火)に開催された実施説明会の模様は以下のリンクよりご覧下さい。当日は技術委員長として説明をさせていただいたのですが、ITmedia の記事には僕のメガネ+スーツ姿という珍しいショットが掲載されています(^^

「良いモデルなら高速?」,ロボット制御のコンテストが始動 : IT Pro ニュース

ITmedia ライフスタイル:レゴや飛行船を使ったロボコン、今年も開催

Posted by ooba at 2005/03/02 11:34 | Comments (0) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2005/01/13 木

「ゲーム開発者のためのAI入門」

naoya氏が以前「ゲーム開発者のためのAI入門 」というオライリーらしからぬ本が出ると紹介していたので、FeedAmazon で「本 / ジャンル別 / コンピュータ・インターネット / 出版社別 / オライリージャパン [予約開始]」をウォッチしていたところ、最近販売が開始されたようです。早速注文。

Amazon.co.jp: 本: ゲーム開発者のためのAI入門

本書は、ゲームプログラミングにはじめて取り組むプログラマと、AI技術を理解する必要のあるゲームプログラマの両方を対象に、(従来の)決定論的なAI技術と、(新しい)非決定論的なAI技術を紹介します。本書で解説するのは、「追跡と逃避」「パターンムーブメント」「フロッキング」「ポテンシャル関数に基づくムーブメント」「基本的な経路探索とウェイポイント」「A*アルゴリズムによる経路探索」「AIのスクリプト化とスクリプティングエンジン」「有限状態機械」「ファジー理論」「ルールベースのAI」「確率の基礎」「不確定な状況下での意思決定 ─ ベイズ法」「ニューラルネットワーク」「遺伝的アルゴリズム」など。豊富に掲載された図版とC/C のサンプルコードが読者の理解を助けます。

ロボット研究室時代のトラウマか、ファジーとかニューラルネットワークとか遺伝的アルゴリズムとか聞くと脊髄反射的に「どうなのよ?」とか思ってしまうのですが、オライリーが出すとあってはイヤでも期待してしまいます。なんとなく学術レベルな話ばかりな気もしますが、サンプルコードがついているのは安心感がありますね(^^

現在ゲームを作る仕事をしているとはいえ仕切る側の立場なので、所謂「ゲーム開発者」ではないのですが、個人的にこういうテーマは大好きなんですよね。中学生のころからこんなことばかり考えていました。ゲーム開発に限らず、検索やKMなどの情報処理系システムやコミュニティ系システムを作っている方にも役に立つのではないかと思います。

ゲームプログラミング」以来の名著となるか、期待して到着を待ちたいと思います。

Posted by ooba at 2005/01/13 11:05 | Comments (2) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2005/01/09 日

「シューティングゲームアルゴリズムマニアックス」

vas-animatum」のTakaさんが紹介していた本「シューティングゲームアルゴリズムマニアックス」を買ってみました。

古今東西の60以上のシューティングゲームによる実例と、サンプルプログラムに組み込まれた80以上のアルゴリズム例(ソース&実行ファイルが収められたCD-ROM付)が圧巻の、まさにマニアックなアルゴリズム本です。弾、自機、武器、特殊攻撃、敵、背景、システムの章立てで、それぞれ紹介されていないモノはないんじゃないかというくらい幅広く、かつ詳しくまとめられています。弾や敵の動かし方は、シューティングゲームに限らずグラフィックを動かすプログラムを作るときにも有用です。オススメ。

続きを読む...
Posted by ooba at 2005/01/09 07:24 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2004/12/16 木

Shibuya Perl Mongers テクニカルトーク #5 開催

明日は神保町で「Shibuya Perl Mongers」主催のテクニカルトークイベントが開催されます。

Shibuya Perl Mongers : Shibuya Perl Mongers テクニカルトーク #5

日時 - 2004年12月16日 (木) 18:30?21:00 (18:00 開場)
会場 - 神保町三井ビル 17F 株式会社インターネットイニシアティブ (IIJ) 大会議室
料金 - 無料

仕事がやばくならなければ見に行く予定です。PSP と DS の両方を持っていくので、誰か対戦かピクトチャットしましょうw

Posted by ooba at 2004/12/16 02:49 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2004/11/25 木

アーキテクトという選択

なかなか面白そうな本が発売になりました。その名も「プログラマの「本懐」 ‾アーキテクトという選択」です。

最近、僕の周りに「○○アーキテクト」と名乗る人が増えてきました。最近になって普通に使われるようになった役職(?)ですが、技術者にとって「○○アーキテクト」とは一種のアガリといえるでしょう。そんなアーキテクトに言及した本はこれが初めてかも知れません。以下は内容説明からの抜粋ですが、これを読んで「おー、目指しているのはこれだ!」と思う方は多いのではないでしょうか。

モノづくりのプロとして納得のいく仕事をするそれがプログラマの本来の望みではないでしょうか。プロジェクトマネジャーやコンサルタントではなく、あくまで技術畑で腕を磨きたい。そんな根っからのプログラマの方にお勧めしたいのが、技術のスペシャリストである「アーキテクト」という仕事です。

内容も「10年後も技術者として活躍するために」「アーキテクトがいると本当に順調に進むの?」「過剰は不足よりも悪い」「アーキテクトは技術と人の橋渡し」「もっとテストを楽しむ」「「テストをしっかりやって品質向上」は無理」「世の中は技術的に納得のいかないことばかり」「非技術者が技術的決定を下す」「スーパーハッカーとアーキテクト」「アーキテクトなんてバズワード?」などの興味深い項目がいくつも並んでいます。

「技術で食っていきたいけど・・・」と思い悩んでいる方は一読してみてはいかがでしょうか。

Posted by ooba at 2004/11/25 23:37 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2004/08/29 日

「Markdown」- テキストとしてもイケてる HTML 記法

hail2u.net で、「Markdown」という HTML 文章の簡単記法(?)が紹介されていました。いわゆるマークアップではなく、普通のテキストにちょっとした記述を加えることで文章を構造化しよう、という試みのひとつです。Markup に対して Markdown というネーミングがなんかカッコイイ。

hail2u.net - Weblog - Markdown

いろいろなWikiでの記法を始めとして、HTMLに変換することを前提とした記法はいろいろあります。その中で、僕が最もtxtとして可読性が高いんじゃないかな?とおもっているのがMarkdownです。

kyo さんもいっているように、HTML 変換前でも普通に読める美しいテキストになっているのがポイント高いです。こういう美しいルールって好きなんですよねー。Markdown Web Dingus で記法を試す事が出来るので、ぜひこのすばらしさを体験して下さい。

また、Markdown は Movable Type や blosxom などにも組み込むことができます。ポイントは、HTML で書かれた部分はそのまま生かされるところです。いままで Bookmarklet などで HTML を記述していた人でも、そのまま移行することができます。早速導入してみました。かなりイイ!

残念な点は、Perl 5.6 以上じゃないと動かないところですね。うちのサーバは大丈夫ですが、Perl 5.0 系のところはまだまだあるようですね。あとは表組みですか。滅多に使わないけど。

Posted by ooba at 2004/08/29 06:44 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2004/07/29 木

本に載ります!「Blog Hacks」&「アフィリエイトで驚くほど稼げるネット通販」

関係者各位のおかげで、「Blog Hacks-プロが使うテクニック & ツール 100選」というおそらく日本初の blog 技術本と、「成功者30人に聞いた"儲けの法則" アフィリエイトで驚くほど稼げるネット通販」という宝島のアフィリエイト本に載ることになりました。わーい♪

Blog Hacks は miyagawanaoya のカリスマ blog hackers が書いた本です。「mt-link-number」がらみの記事を書かせていただきました。1/100だけですが(^^) 校正時に内容を見ましたが、blog 関連に限らずネット系技術者には必見の本です。オライリーのサイトで目次が見られますので、興味のある方は内容をチェックしてみてください。

Blog Hacks サポート blog もできました → 「Blog Hacks

アフィリエイト本では、blog や FeedAmazon でのアフィリエイトの利用方法やスタンスについて取材を受けました。取材なんて初めて受けましたよ(^^) しかも、見本誌に加え取材料までいただけることになっています! 宝島社様、ありがとうございます。

まだ現物を見ていないのですが、1/2ページくらいは載っていると思います(^^) 他にどんな記事が載っているか楽しみです。

2004/07/02 金

OpenSNS - オープンソースのソーシャルネットワーキングシステムプロジェクトがスタート

miyagawa 氏が面白そうなことを始めたので ML に参加してみました。orkut も gree も mixi も入ったっきりほとんど活動していませんが、SNS のシステム自体には非常に興味があります。

blog.bulknews.net: OpenSNS - オープンソースのソーシャルネットワーキングシステム

ある程度コントロールされたエリアの中でのSNSもあってもよいとおもうし(イントラネットでの利用なんかはまさにそれ)、コミュニティごとにデータを共有したり、開示する情報を制限したりするといった使い方をしたいこともある(既存の GREE や mixi ではそこまでのコントロールはできない)。 どういう風な使い方があるのかもうちょっとアイデアを練って、SourceForge あたりでプロジェクトを立ち上げてみようかしら。

プロジェクトページはこちら → SourceForge.jp: Project Info - OpenSNS

というわけで、誰かキヌガサ誘ってください(^^

■ 追記
キヌガサはグーグーさんに招待して頂きました。ありがとうございます!

Posted by ooba at 2004/07/02 15:24 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2004/04/19 月

「i18n」の意味

Web やプログラムなどの「国際化」の場面でよく目にする「i18n」という文字列、みなさん意味知っていますか?

ちょっとしたメモ - i18nへの遠い道

i18nとはinternationalizationという単語が長いので、両端のiとnを取って、その間に18文字あるんだよ、という略語。

し、知らなかった・・・(恥) なんかの規格か団体の名前かと思っていました。まるで圧縮アルゴリズムのようなノリにちょっとセンスを感じたり。

Posted by ooba at 2004/04/19 00:44 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2004/04/16 金

日本初「アスペクト指向プログラミング本」本日発売!

UML 業界ではおなじみテクノロジックアート長瀬嘉秀さんらが書いた「AspectJによるアスペクト指向入門」という本が、本日発売されました。

「アスペクト指向プログラミング (AOP)」という言葉は、オブジェクト指向や開発手法を勉強している方なら聞いたことがあると思います。数年前から研究されている「横断的関心 (Crosscutting Concerns)」に注目したプログラミング手法で、日本では最近になって注目されることが多くなってきました。その流れを受けての出版でしょうか。長瀬さんが書いていることもあって、日本での「AOP のバイブル」となりそうな予感です。

以前から「アスペクト指向」という名前と概要は知っていたんですが、実はあまり理解していませんでした。先日のUML ロボットコンテストの会場で、審査員をしていらした平鍋健児さんと話しているときに少し話題になったので、これを機に改めて勉強し、簡単にまとめてみました。

続きを読む...
Posted by ooba at 2004/04/16 22:04 | Comments (1) | TrackBacks (0) | このエントリーを含むはてなブックマーク

UML ロボットコンテスト

去る 4/13 に「UML ロボットコンテスト」というものにいってきました。これは OMG の日本代表であるオブジェクトテクノロジー研究所が主催している「UML Forum/Tokyo 2004」内のイベントです。LEGO で作ったロボットに UML でモデリングした制御プログラムを載せて、自律行動させる競技とモデルの優劣を競うコンテストで、今年で三回目を迎えます。

第一回と第二回は参加者として参加したのですが、今回は技術委員として運営側で参加することになりました。コースの設計や技術的な支援をやったのですが、やるたびに進化する競技とモデル、参加立場の違い、関係者との交流などから、今年も得るものが非常に多いコンテストとなりました。

みなさん、本当にありがとうございました。そして、お疲れ様でした。

続きを読む...
Posted by ooba at 2004/04/16 03:48 | Comments (3) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2004/03/20 土

Bulkfeeds を使って特徴的単語を表示

Bulkfeeds: Similarity Search を表示していると、ときどき「これどの単語でひっかけてんだよ」という謎の記事が関連付けられることがあります。記事一覧と一緒に関連付けに用いられた特徴的単語も表示できるといいなぁ、と思っていたら、特徴的単語を取得する API が用意されました。

blog.bulknews.net: Bulkfeeds: Similarity API 更新

Bulkfeeds の Similarity REST API で、どの単語が特徴的単語かを bulkfeeds:similarTerms というエレメントからとれるようにしました。 ... 単語だけほしいんだ!というひとは、similar.xml の方をつかってください。

早速 quick hack。similar.xml のほうを使って、エントリーの特徴的単語の表示する JavaScript を出力する CGI(ややこしい)を作ってみました。

続きを読む...
Posted by ooba at 2004/03/20 01:35 | Comments (2) | TrackBacks (2) | このエントリーを含むはてなブックマーク

2004/01/13 火

RssMemo を Safari で使う(暫定版)

hail2u.net の kyo さんが「RssMemo」という、気になった記事を RSS 形式でどんどんクリップできる Web アプリを開発されました。これは便利そうなので早速も導入(Cookie 対応とかしてみました)。

このアプリは Bookmarklet や右クリックメニューからサクっと登録できるのが魅力のひとつなんですが、当然というか Win IE 専用となっております。右クリックはしようがないとして、Bookmarklet はなんとかしないなぁ、ということで暫定対応してみました。以下のリンクかソース(実際は一行)の"http://your/rssmemo/pass/rssmemo.cgi"の部分をご自分の環境に合わせて変更して下さい(RssMemo のソースいじるのが一番早いですよ(^^)。

RssMemoに投稿するBookmarklet(Safari)

javascript:
  sT=document.title;
  sL=escape(location.href);
  sD=window.getSelection();
  if(sL!=''){
    uri='http://your/rssmemo/pass/rssmemo.cgi?t='+sT+'&l='+sL+'&d='+sD;
    location.href=uri;
  }

各種ブラウザ対応はもちろん、変数汚染などまったく気にしてない暫定版(文字列生送信だし(^^;)なので、ご使用の際はその辺をご理解の上でお願いします。

Posted by ooba at 2004/01/13 23:36 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/12/10 水

7行プログラミング

hail2u.net - Weblog - 7行blosxom」より。WEBプログラミング@2ch掲示板にこんなスレッドがありました。

七行プログラミング

・7行x79文字
・Perl
どうぞ。

ちょっと前に似たようなネタをエントリーをしましたが、かなり前からあったんですね。知らなかった・・・(汗)

Posted by ooba at 2003/12/10 02:15 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/11/22 土

Software Design 2003/12号

Apache モジュールダイジェストに始まり、 JCSP、 Maven、 Checkstyle、 Clover、 Scarab、 Jameleon とネタが豊富で大満足♪

  • Apacheモジュールダイジェスト
    題名どおり Apache モジュールでできることの特集。ポインタとしてとても有用。エッジ色強し(^^
  • JCSP
    Java による簡単並列プログラミングライブラリ。普通こういうのは実際に組んで動かさないと理解しづらいですが、これは読むだけで理解できました。ほんと簡単。先月号と合わせてご覧あれ。
  • Maven
    プロジェクト(プログラム自体のほうです)管理ツール。ant と JUnit でどうやって環境作ろうか悩んだことがある人には、かなりオススメな感じ。
  • Checkstyle
    コーディング規約チェックツール。自分で規約をカスタマイズできますが、デフォルトはやっぱり Sun Java だそうで。商用では JTest がなかなか良かったけど、これも一回使ってみよっと。
  • Clover
    カバレッジツール。仕事的には注目ツールですが、個人的には使いません(^^;
  • Scarab
    障害管理システム。これはさすがに使ってみないとどんなもんかわからないですねぇ。
  • Jameleon
    総合テスト&受け入れテストツール。Web アプリのテストもできるようで、試してみる価値アリかな?

次号は 1CD Linux の KNOPPIX で Wiki ですって。面白そー。

Posted by ooba at 2003/11/22 01:46 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2003/11/21 金

Monday Module - HTML::LinkExtor

Kyoさんのいいだしっぺで、おもしろそうな企画が始まりました(引用元は NDO::Weblog です)。CPAN は普段あまり使わないので、勉強のために参加してみます。

NDO::Weblog: Monday Module ひとり - HTML::LinkExtor

Perl Hacker な人たちと IRC でチャットしていて、Monday Module とかやらないかっていう話が出ました。要は Photo Friday のパクリで、一週間に一回ネタ出ししてそれについてのエントリを書く、それの Perl スクリプト版。CPAN から適当なモジュールをピックアップして、それをお題として、何かスクリプトを書いてみたらどうだろうという。

予行練習のお題は「HTML::LinkExtor」。これは HTML ページ内からリンクを抽出するモジュールです。これを使って僕が作ったのは「リンクチェッカー」。いまさらこんなの作っても意味ないのですが、これしかネタが思いつかなかったので(^^;

続きを読む...
Posted by ooba at 2003/11/21 03:23 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/11/12 水

ゲームを解くための本「ゲームプログラミング」

bricklife.weblog."コンピュータと対戦し続けるチェス名人"で思い出した本があるので紹介します。僕が「ゲームを解く」という遊びのために、唯一参考にしている名著です。Deep Blue vs カスパロフ氏の詳しい記事も載っています。

ゲームプログラミング

「ゲームを解く」というと聞いてピンときますか? 誤解を恐れずに簡単にいうと、「ゲームを解く」とは「ゲームをパズルと考え、その解法すなわち必勝法を考える行為」のことをいいます。

続きを読む...
Posted by ooba at 2003/11/12 01:38 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2003/10/28 火

現在見ているページへのリンクを作る Bookmarklet

すごく簡単なものですが、よく使うのでエントリーしておきます。

現在見ているページへのリンクを作成する 

以下がこの Bookmarklet のソースです(実際は一行)。「"」だけ文字参照に置き換えています。

javascript:void(prompt('',
  '<a title="'+document.title.replace(/"/g,'&quot;')
  +'" href="'+document.location.href+'">'
  +document.title+'</a>'))

リンク貼るたびに手でタグ打つのがめんどうだったので、これ作るまでは MT の Bookmarklet で同じことをやっていました(笑)いちいち mt.cgi へアクセスしにいくから、重いったらありゃしなかったです。

Posted by ooba at 2003/10/28 21:54 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2003/10/25 土

「全ての応用は基本の延長線上にある」

表題は NDO::Weblog から Wataru's memo(2003-10-18) にたどり着いて拝見した言葉です。いい言葉です。

会社や世の中のSEやプログラマに対して、最近よく思うことがここで書かれています。まあ、この時代に「おまえら全員アセンブラからやり直せ」とは思いませんが(というか、そしたら自分もやりなおし(汗))、少なくとも「基本」は押さえておいて欲しいと思う今日この頃です。メモリや処理効率といった話はおろか、再帰やソートを理解していない人が結構いて、かなりの危機感を覚えます。

ただ、最適化されたコンポーネントやフレームワークをきちんと利用することは、ヘタに自作するよりリソース面でも有効、という話もあります。基本がない人には、そういったコンポーネントを使う技術を学ばせた方が、確かに全体的な効率がいいのも事実だとは思います。でもそれにしたって、基本があるかないかでは、理解度も効果も全然違うと思います。「苦労」と「楽」の両方を知っている人と、「楽」しか知らない(しかもそれが楽だと気付かない)人では、すし職人とすしロボットくらいの差があるかと(^^

ソフトウェア業界の敷居が低くなった今だからこそ、コンピュータの仕組みから、リソース、基本アルゴリズムなどを対象とした、「ソフトウェア・リテラシ」みたいなものを学ばなくてはいけないのかも知れません。

Posted by ooba at 2003/10/25 00:55 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/10/20 月

Biferno

もひとつオマケ。

ADC News より。新しい Web Scripting Language 「Biferno」。なんじゃこりゃ。

TABASOFT - Biferno

Biferno is a new generation, Cross Platform Web Scripting Language that allows developers the rapid implementation of dynamic Web applications and of Web sites that offer a high degree of user interactivity.

Server Side + HTML-embedded + OOってな感じですか。

Posted by ooba at 2003/10/20 01:56 | Comments (0) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/10/17 金

「Perl 一画面プログラム」なんてどうかしら

「Perl は省略の美学」なんていうのをどこかで聞いた気がしますが、その美学をパズル的に堪能する「Perl 一画面プログラム」という脳内企画です(^^ すでにあったらごめんなさい。

MSX というパソコンで BASIC を打ち込んで遊んでいた方には、「なつかしー」と思わせるであろう「一画面プログラム」。要するに一画面(サイズ忘れた)でおさまるプログラムで、いかにすごいもの(主にゲーム)を作れるか、という、いかにも日本人が好きそうなプログラミング手法(?)のひとつです。「MSX Fan」などの雑誌に、毎号変態的なプログラムが投稿されていました。

あれから10年以上たった今、これを Perl でやったらおもしろいかなぁ、というただの思いつきです(^^

以下が、僕が思いついたレギュレーションです。

続きを読む...
Posted by ooba at 2003/10/17 01:24 | Comments (0) | TrackBacks (2) | このエントリーを含むはてなブックマーク

必見 Cookbook「関心空間の RSS を作成する」

miyagawa氏がんばってます。以前に紹介した Blog Developer's Cookbook (旧名 Weblog Programming Cookbook)に新しい Cookbook がエントリーされました。

Blog Developer's Cookbook : 関心空間の RSS を作成する

ここでネタとなっている関心空間やはてなアンテナに関しては、僕は使っていないためよくわかりません(情報に敏感な Blogger 達にはキャッチーなテーマでしょう)。が、Cookbook を実現している技術と知識にいつも注目させられます(特に今回は)。ここに表出している以上の「引き出し」がないと、なかなかここまで書くことはできません。有用な情報がいい感じにちりばめられていて、perl や WEB関連の技術に興味がある方は必見です。タダだし(^^

以下、雑感。

続きを読む...
Posted by ooba at 2003/10/17 00:45 | Comments (2) | TrackBacks (0) | このエントリーを含むはてなブックマーク

2003/10/07 火

Weblog for Weblog

blog.bulknews.net のmiyagawa氏が、Weblog 関連の技術を Cookbook 形式で紹介する Weblog をはじめました。こっちは blosxom を使っています。

Weblog Programming Cookbook

RSS, Trackback, Weblogs.com Ping, Blogger API などの Weblog コアテクノロジや、 Google API, Amazon Web Service (AWS) といった関連する Web サービスをネタにして、プログラミングテクニックを Cookbook 形式で紹介していきます。

miyagawa氏の書く技術文章は、非常にわかりやすく面白いネタが多いので好きなんですが、それが毎日(?)配信されるなんて、Weblog 様々です。雑誌と違って RSS だけチェックしていればいいし。出版社も書籍の RSS 配信してくれないかしら。

Weblog っていわゆる Weblog 的な使い方はもちろん、こういう風にネタ帳的に使うのにも適していると思います。日頃から考えているネタや手をつけだした技術なんかを、日々少しづつためていってあとでまとめる、といったことがやりやすい仕組みだと思います。簡単にエントリーできるので、精神的にも楽ですし。僕が Weblog はじめた理由も正にこれです。

miyagawa氏が、本当に書籍発行までたどり着けるか見ものです(^^

Posted by ooba at 2003/10/07 23:50 | Comments (0) | TrackBacks (1) | このエントリーを含むはてなブックマーク

2003/10/03 金

Webアプリから2行でExcelファイルを出力する方法

Webアプリから Excel や Word のファイルをたった2行で生成する方法です。

この方法を使えば、Spreadsheet::WriteExcel/ParseExcel などを使わずに、かつどんな環境のどんな言語で記述されているWebアプリケーションでも、Excel文章を出力できます。厳密に言うと、「ExcelやWordでも開けるファイル」なんですけどね(^^;

はじめて教えてもらった時に、感動というか拍子抜けしたので、みなさんも同じ気持ちを味わって下さい(^^

続きを読む...

2003/09/30 火

Bookmarklet による変数汚染

Bookmarklet - ブックマークレットを作成する際のポイント

varをつけても、ブックマークレットで使用した変数は、ページ内でグローバルになってしまいます。表示中のページの動作や、他のブックマークレットの動作を変えてしまう可能性があります。

以下のエントリーを公開したとたんに見つけました(汗)
MTオリジナルのものがすでにグローバル変数になっているので、僕のせいじゃない、と・・・(^^;

いろんな Bookmarklet を作って遊んでいる方は、ひととおり読んでおいた方がいいかも知れません。

Posted by ooba at 2003/09/30 20:52 | Comments (0) | TrackBacks (3) | このエントリーを含むはてなブックマーク
Powered by Movable Type 4.0