読者です 読者をやめる 読者になる 読者になる

データモデル試作中

XC

触ってみた中では一番イメージに近かった CoreData を参考にインターフェイスと試験実装を始めた。 XCube_PHP5 の最初のコードとして週末にはvalidation と relation のない簡易版だけでもコミットしたい。詳細は当然ドキュメントをアップしますが、イメージ…

デリゲート

XC

さっきの話は、デリゲートの存在意義とも関係がある。サブクラスを作ってカスタムコードを記述するやり方は、 Instantiation シーケンスを変更できんことにはオンステージさせられん。ほとんどの言語ではインスタンスのクラスを hot swap することはできんの…

Instantiate

XC

オブジェクト指向のプログラムでは、わしらプログラマはクラスを書くが、実際の動作は基本的にインスタンスが担う。XCとかで、そのインスタンス化(instantiate)の処理で考えられる方針は、 すべてプログラマがコードで instantiation を適宜記述する。それは…

XCL 2.2 は PHP5 専用へ

XC

XCL 2.2 は PHP5 専用でいくぜ!という話: http://sourceforge.net/apps/phpbb/xoopscube/viewtopic.php?f=3&t=168 まぁそうじゃろうね。 はぁPHP4はサポートされとらんし、ブランチプロジェクトも特に派生しとらんみたいじゃけん、世間的にも PHP4 を維持し…

インターフェイスだけ書けばよい

XC

いよいよ大詰めに入っとる気がする。適宜コミットして Phased Release に備えよう。 データモデル周りは、SDK、ビジュアル開発ツール、自動ツールが通信をとるための機械同士の決め事の規定にすぎんけん、リリースするコードのーはインターフェイスだけ書け…

定義ファイルの利点

XC

定義ファイル、設定ファイルは、ツールやエディタに食わせて情報を読んだり書いたりできる点がメリット。型やアトリビュートのある言語なら、ソースコード自体が一種の定義ファイルじゃけー、ソースを解析することで、大量の情報をゲットできる。型のない言…

データの保存は何単位?

XC

今日日のデータは、データ同士に関連があるけん、複数のデータを同時にセーブせんといけん場合が多い。この状況を、「ストレージからメモリに読み出したデータ群を加工した。さて、どこにセーブをオーダーするか」と言い換えると、 加工されたデータひとつひ…

MVC2

XC

Webアプリの MVC では、 Controller の処理が先んじんと View が決定できんというシーケンスが大勢を占めとる。これは MVC2 というネーミングで Java 界隈で提唱されたもんらしい。 WebアプリケーションにおけるMVC MVCを用いたWebアプリケーションの代表と…

Rubyで書いたと申せども

XC

並列対策のテスト用じゃったんじゃけど、その目的で、かつ、スクリプト言語で……となると Python がいっちゃん便利みたいなですね。ネイティブスレッドが取れるんがデカいよなぁ……タスクシステムを固める前に一度ポートしてみたい。

昨日書いた件 訂正

XC

XoopsObject は確かに型情報をインスタンスが保持してるけど、動的プロパティを alloc してるってほどではないです。 XCube_ActionForm とゴッチャになっとった。これでパフォーマンスに関しては PHP の中をしっかり覗いてみんと分からんくなった。

動的な型定義情報

XC

XoopsObject は動的プロパティをインスタンス単位で構築しとるんで、結構重い。ただし操作感はイイんよねぇ。いくつかのWebフレームワークは動的プロパティを避けるためにソースコード生成を用いて操作感と速度の両立を図っとる。 他のやり方としては、デー…

アドオンを繋げる

XC

Nuke タイプの惚れるスペックに、 コア機能はほとんどなく、モジュールで実装される どのモジュール(アドオン)が入っているかはユーザーによって異なる にも関わらず、モジュール間のタイアップが求められる あろうことか、モジュールの複製サポートがデフ…

本体に取り込む?(2)

XC

「こうパッケージングしたい」→「言い出しっぺの法則が発動するとたいぎぃ」→「開発者に頼んでみるか」 くらいのノリじゃないんかと思うけど。(^^; できることといったら、そのパッケージングを少しでも楽にするために、ロボットを作って提供するくらいよね…

本体に取り込む?

XC

「設計士が完璧さを達成したと確信するのは、それ以上付け加えるものがなくなったときではなく、それ以上取り去るものがなくなったときだ」 by wikipedia:アントワーヌ・ド・サン=テグジュペリ 「Aというプロダクトは甲という機能を内蔵していますが、Bと…

残業200h

XC

先月の残業時間は200時間越えとった。労働時間で300時間くらい。 先々月が残業時間130時間。 コンスタントなのが残業40から50時間で、これが労働時間で200時間にあたる。 本来ゲーム業界はIT業界ほど労働時間が長い業界じゃないんじゃけど、…

データバインディング

XC

ウェブアプリケーションのデータバインドは少し癖がある。というか、最近のWebフレームワークを見る限り、データバインドという概念はそこまで強うのうて、もっぱらデータベースのモデル化に力が入っとるみたい。これはRailsからの流れなんじゃろうか?Webサ…

アセットパイプライン

XC

ゲームコンストラクション環境ではアセットパイプラインが非常に重要視される。アセットパイプラインとは「システム外で作成されたものを、システムのアセットにするための流れ」のようなもので、 エンジニアがコマンドを叩かないとダメなもの 特定のディレ…

初心者向け

XC

初心者向けとか、分かりやすいものへのアプローチが、今イチ技術者ウケせん理由に、「アプローチが技術的じゃないけー燃えん」というんがあると思う。 以前、「お子様やご年配の方にも使いやすいケータイ」というのに、ボタンが3つだけついとって、押せばプ…

コンストラクションツールの道

XC

エンドユーザーは素材をヒト弄りしてモノを作る。 開発者は、コンストラクションツール用の素材を開発頒布する立場なので、受注開発納品で体験したフィーリングはほぼ流用できないだろう。 当然ながら生産性重視のフレームワークとも真っ向から価値観がぶつ…

XOOPS Cube コア 0.9 のデリゲート

XC

v1.0では新しいメッセージ通信機構を取り付ける予定なんじゃけど、その前に v0.9 レベルで実装されとるデリゲートについて、もっぺん考えてみる。 v0.9 のデリゲートシステム XCube_Delegate は「コールバックのための統一手続き」という仕様で、間接ジャン…

MODな依存性

XC

MOD対応ゲームは組み合わせて自分だけのゲームプレイを作れるし、MODの改良版が出てきたりもしてもおもろい。一方で改造関係にあるMODは一緒に突っ込めんし、(ゲームでは滅多にないけど)依存しているMODに改造版が存在した場合、ユーザーは自分で把握して…

依存性解決その1

XC

今日も出勤なけー、すぐできるとこだけ組んどこー思うて、今までのテスト部分をモジュール化して、依存性の解決を追加した。まぁただの連動ダウンロードじゃけど…… ぼちぼち、一回ダウンロードできるとこに置こうかのーと思って、リークチェックかけたら、 G…

ダウンロードまで作成

XC

出勤前にダウンロードまで作った。FoundationのAPIを呼ぶだけの簡単なお仕事です。 AIR で FTP の既製実装がないことが判明した id:tohokuaiki 神のほうが大変じゃないんか……つーか面白そう…… しかしこれ OS X だとダウンロードしたファイルをディスクに書い…

とりあえず追いつけ

XC

うあああ、id:tohokuaikiさんがどんどん先に行きよーる。終電レギュラーじゃけど、家に帰れるうちに追いつとかにゃーいけん。とりあえずリスト出しゃあ追いつく。 今気づいたけど Name にバージョンまで入っとんは変じゃねぇ。 さて、とりあえず、次に実装す…

これはおもしろいことになってきた

XC

AIRでXOOPSCubeレポジトリマネージャクライアントの最初の一歩前に「頒布ツール作りたいな〜ってか勝手に作っちゃうよ」とか書いたのに、いつの間にか2か月が過ぎていて、id:minahito_carpがMac版自動メンテツールを作りだしてしまった・・・ありゃ〜(また…

自動メンテツール

XC

前々から作りたい作りたいとばかり言うとって、時間を割り当てとらんかった自動メンテツールにようやく着手しました。まず受信部のモジュールから作っとります。 これでXMLの受信はできたんで、パースしてリストビューに出して、クリックしたのをダウンロー…

Get Involved を見直す(2)

XC

フォーラムにも投稿したが、4カテゴリに分けてみるんはどうじゃろう。 フィードバック ソフトウェア開発 リソース開発 マネジメント フィードバック バグレポートの記入(現ドキュメント+トラッカーリスト)と、フィーチャーリクエストへの投稿がこれにあ…

Get Involved を見直す(1)

XC

XCプロジェクトは、やり方としては、OGREプロジェクトとblenderプロジェクトのやり方を採用しとる。どちらも一般的なOSSプロジェクトで、 blender は今でいう Git っぽいコンセプトを持っとるのが特徴。 これらの体制に移行した際、コアチームのようなチーム…

フォーラムのログインが切れとる

XC

夕べ、httpではプロジェクトのフォーラムにアクセスできんことに気づいて、sourceforgeのチケットにサポート申請を出したんじゃけど、ブラウザによっちゃーちゃんと開けるねぇ……ただ、ログインリンクが切れとって、自力でURLをhttpsに変更せんとログインフォ…

XOOPS Cube Legacy 2.2 スナップショットリリース

XC

XCL 2.2 のスナップショットをリリースしました。仕事に出ちゃったので、日本語版のリリース文は帰ってくるまでお待ちください。日本語ファイルを組み込んでからリリースする予定だったのですが、バタバタしてて忘れちゃいました。それも帰ってからやります。

メールボックス

XC

以前のスライドで気づいた人もおってかもしれんけど、XC v1.0 の仕様にしれっとメッセージシステムを追加してある(すみません……)。 これは今のところ、描画シーケンスからメインシーケンスへの通信に使うつもり。 送信元から発信されたメッセージは、受信…

新しい描画プロセス

XC

XC v1.0 では描画プロセスも刷新して、テンプレートから起動に必要なモジュールを読み取る方式へのサポートが入る。「はてなダイアリー」みたいにモジュールのタグを書いときゃプログラムが起動されるような仕組みね。ちぃとおさらいしとくと、X2やXCLでは、…

裏読み裏書きは"非同期クエリ"というらしい

XC

いったいどがぁな調べ方をしたら見落とすんか自分でもよう分からんのじゃけど、事実として完全に見落としとった…… データベースへの非同期アプローチ(裏読み、裏書き)は「非同期クエリ (async query)」と呼ぶらしく、この専門用語を使って検索したら実装の…

対応環境調査と感想

XC

XOOPS Cube はタスクシステムと再整理された描画パイプラインで色んなガジェットに対応させる BASE を開発できる(ようにします)。わしのほうで出す BASE で対応予定なんは前に書いた PS3, Wii, PSP, iPhone/iPod touch, DS/DSi の5種類。はぁPS2持っとら…

D4の稼動時間を考える

D4 XC

わしがどんだけOSSでコード書けるかは、D4をどんだけ使いこなせるかにかかっとるんじゃけど、D4のワイドキーボードもさることながら、バッテリーの稼動時間の短さもだいぶネックになってきようる。 D4のType Lについてきた大容量バッテリーの稼動時間は約3…

個人用CMSはモバイル対応が必須

XC

前も書いたが、「ブラウザから簡単にコンテンツが更新できる」システムがあっても、個人個人には「ブラウザの前に座って自分のコンテンツを更新する」時間なんかえっとありゃあせん。最近はてなや、ついったーばっかり更新しとるのもそれ。こっちはiPhoneか…

なぜ私たちはRuby版XOOPS Cubeを開発したか (3)

XC

こっからはタスクシステムの話で、なんべんか書いとる話なのでさっくりいきます。 XOOPS Cube というか、 XOOPS の時点でモジュール開発者には色んな意識づけがなされとります。 Nuke 系のコアは CMS というより、モジュールランタイム環境なんじゃけど、そ…

なぜ私たちはRuby版XOOPS Cubeを開発したか (2)

XC

OSC2009Shimaneの担当コマのスライドまとめ第2回です。前回はこっちにあるけー。 具体的(?)な並列の話に入る前に、背景を共有しとこーや。 並列化の時代はすべてプログラマのあり方を変える! これはマイクロソフトの偉い開発者の人が言うた「フリーランチ…

なぜ私たちはRuby版XOOPS Cubeを開発したか (1)

XC

あの壮大な釣りタイトルセッション「なぜ私たちはRuby版XOOPS Cubeを開発したか」 OSC2009 Shimane で使用したスライドをダウンロード用にクリンナップしょーります。あのスライドは口で説明するんが前提じゃったけーね。 そもそも XOOPS Cube とは何か? 会…

sf.net は同名ファイルを上書きしない?

XC

昨日、 XCL 2.0.7 の正式版をリリースしたんじゃけど、 include/version.php のバージョンが RC のままになっとるというミスがあっていま修正作業中です。上げ待ち下げ待ちって感じじゃけど…… sf.net のリリースシステムでは、 リリースを作成 一時領域へフ…

Cube コアメモ

XC

タスクシステム ネイティブスレッドでの検証と、OSC2009 Shimane でお話したシングルスレッドでも効果が見込めるラウンドトリップタイムや非同期ファイルアクセス時間の活用の検証が終わっとらん。ふっと思ったんじゃけど、 RTT の検証に関しては、 Ruby や …

島根より帰還

OSC 2009 Shimane から帰ってきたで〜 旅の概要は、 14日(木) 夜に横浜より寝台特急サンライズ出雲で出発。 同じ便に MySQL の sakaik さんたちが乗り合わせとるはずなんは知っとったけど、にわか朝型の体には 22:20 出発はあまりにも眠く(ホームで寝てしま…

頒布パッケージに含まれるもの

XC

次BASE群をサポートするためのレギュレーションと、コアシステムについて考えてみました。 モジュールパッケージが含むもなぁ、 マニフェスト ソースコード リソース とあって、リソースに、 テンプレート 画像ファイル メッセージカタログ が入るじゃろう。…

gigamaster in Tokyo

XC

突然ですが、スイス在住のギガさんが日本に来ておられます。 今日みんなで会いに行くんじゃー (^^)v昨日ちょっと電話で話した。 英語でした。 やっぱ英語は世界共通語じゃのー。 ポルトガル語と日本語が母国語の人間同士が電話で話せるんじゃもん。 まぁギガ…

XOOPS Cube Legacy 2.2 のスナップショットを出します

XC

プロジェクトフォーラムで話があがっていますが、現状の 2.2 ブランチのスナップショットをリリースすることになりました。スナップショットというのは、αとかβとかではない、単なる最新作業版です。 XOOPS Cube Legacy はスクリプトプログラムなので、単に …

Zaurusの後継環境

XC

長年Zaurusを使ってきましたが、PDAとしてのZaurusは完全にiPhoneに置き変えることができました。しかし、Linux ZaurusシリーズはEmacsとLAMPが動く環境として、 XOOPS Cube の開発に多大な貢献をしてきたという側面があります。ただ、ApacheとMySQLだけで相…

高速化のために

XC

XCL2.2では管理テーマ機能をデフォルトではオフにしようと思っているのですが、「管理テーマを導入しようと思ってるユーザーに優しくない!」とか突っ込まれそうだなぁ……v2.2は約1割の速度向上を目指しているので、原則として、開発者からみて使われている…

XCL 2.1.7 よりコアモジュールの全換装サポート

XC

近日中にリリース予定の XCL 2.1.7 には XC v1.0 の実装が一部バックポートされます。今回バックポートされるのは、コアモジュール(マネージャクラス)をすべて site_config で指定できる起動シーケンスです。これにより、デリゲートマネージャの変更も容易…

実現への道筋を練る

XC

さっきの話ですが、 誰でも思いつくもので、 技術的にも開発が可能であり、 まだ誰もやってない ものは色々な意味でオイシイですよねぇ。時間さえあれば作れる上に、斬新性はなくても類似品がないから、 "作った感" が凄くあるもんねぇ。。。 そのうえ、年末…

こんなのを作りたい

XC

眠い目をこすりながら、 iPhone/iPod touch を持って電車に乗る。さぁモジュールの開発の時間だ。専用アプリを立ち上げて、データの型を作り、APIのロジックをキュンビットをタッチして作成する。仕事を終えて帰宅したら、 iPhone/touch を mac に接続しよう…