SOLAR MODEL

SOLAR MODEL

Irrlichtの成果物。zlibライセンスでソースコードも入手できます。Irrlichtならではの描画速度で滑らかに再現される太陽系の運行をとくとご覧あれ。

操作方法はキーの1,2,3,4が公転時間調整機能(早送り)、メニューのCAMERAからFrom(観測者)、To(観測対象)設定、対象無しでW,A,S,Dとマウスにより自由移動(これは上手く動いてないような)

BorlandからCodeGearへ

今日、ボーランド社からのメールで知った事実。IED関連事業を分社化してCodeGearへ移管していた。調べたら去年の半ばには発表されていたらしい。Borland製品は使わなくなって久しいので、全くチェックせず。最近勢いが落ちたなと思ってたので、歓迎するニュースでした。

DevCo改めCodeGearの2006年10大ニュース(ボーランド(株)藤井 等氏のブログ)

私が学生の頃、MSのQuickCか、BorlandのTurboCを買うかで散々悩みました。悩んだ末、機能的に優れている(と思ってた)TurboCを購入したのでした。

購入当時のことを鮮明に覚えています。店頭で学割パックを見つけたとき、あいにく持ち合わせがありませんでした。仕方ないので、次回、買いに来ようと立ち去りました。すると、(あまり親しくない)友人がポンと万札を貸してくれたのです。もちろん遠慮したんですが、誘惑に駆られ購入。あのときはありがとう。すっかり名前を忘れて酷いやつだと思われそうですが。

思い出話は程ほどに、少し気になったのでBorlandについて調べてみました。そこには驚きの事実がありましたよ。特に創始者のことです!日本で毎日見かけるのに、彼の名前を知っている人は恐らく一握りの技術者だけ。

まずは、Borlandの沿革を見ていきましょう。

ボーランド(Wikipedia)

一時期、個人向けIDE部門に注力して革新的な統合環境Delphiをリリースしながらも後に衰退。マイクロソフトの姑息なヘッドハントで主要開発陣を持っていかれたのが原因の1つです。現在の.NETのGUIエディタは、初期Delphiデザイナー達の成果によるところが大きいでしょう。この移籍騒動がRADツールの普及を助けたのか、混迷の時代に誘ったのかは、判断がつきかねます。

では、最初に戻って創始者を見てみましょう。

フィリップ・カーン(wikipedia)

フランス系数学教師にしてアメリカ在住の実業家フィリップ・カーン氏です。MSの攻撃に耐え今でも健在なBorlandを始め、次々と斬新な事業を立ち上げていきました(残念な事に、経営方針の相違から、Borland社を1996年に離れてしまっています)

彼は、驚くべき事に、あの「カメラ付き携帯電話の発明者」だったのです!

カメラ付き携帯電話

日本人なら誰でも知っている生活必需品ですよね?私はてっきりJ-Phone(現Softbank)が立案者だと思っていました。J-Phoneは、「彼のアイディアを世界ではじめて商品化したキャリア(Sharpと共同)」という位置付けです。J-Phoneは、この製品群で一気に業界2位にまで伸し上がりました。それだけ斬新で人々が望んでいた発明だったのです。

まさか、慣れ親しんだ統合環境の配給元のトップがカメラ付き携帯の父だったとは…。彼は今度は生命科学とワイヤレス技術の統合を目指しているようです。なにやらワクワクしてくるお人です。

MODxをサブドメイン対応する方法

CMS(CMF)のMODxは、1つのスクリプトを共有して、複数のサイトを稼動させることが出来ません。そのため、修正をしない方法では、サブドメイン毎にMODxを設置するか、DBを共有したままプラグインによりスタートページを振り分けるもの(Subsites/subdomains 0.1)に留まっています。

それぞれ一長一短あります。前者はサブドメイン分のMODxを設置するため、リソース増加してしまいます。プラグインも共有出来ません。しかし、全てのリソースが分離されている分、メンテは容易です。後者は単一のMODxをおいて置けばいいのでリソースは少なくてすみます。反面、DBを共有しているので、ページ数が増えメンテが困難になります。また、閲覧者が適当なページIDをリクエストしたときに、隠しておきたいはずの他サブドメインページが表示されてしまう問題も残ります。

そこで私は第3の方法を提案したいと思います。物理的なファイルリソースを共有したまま、DBとキャッシュを分離する方法です。このケースで言うDBとは、コンテンツ、スニペット、プラグイン、MODxの設定です。

この方法はMODxのコアスクリプトを変更します。本体がバージョンアップした際には、私のリリースを待つか自分で再修正をするしかありません。その代わり、MODxコアをバージョンアップしない限り、あらゆる問題に対応できる利便性が売りです。

方法は至極単純、インストール時に出力されるconfig.inc.phpをサブドメインごとに分ければいいのです。ただし、これだけでは不十分で、不具合が多発します。というのも、cacheディレクトリの中身をMODxが頻繁に参照するからです。ここに、MODxの設定の一部もなぜか含まれています。生成されるキャッシュをそれぞれサブドメインごとに分別されるように修正してください。

そんなわけで、私が改造したMODxを公式にポストしておきました。

日本語サポートスレッド本サポートスレッドも活用してください。

Subsites the MAD [HACK] ver.2.0

ログ解析「Visitors」

1秒で10万行を処理するフリーの超高速なログ解析ソフト「Visitors」

Visitorsはapacheのログを僅か数秒で解析して表示してくれる、コマンドラインベースのプログラム。Graphvizを利用するとリファラーを利用して視覚的なユーザ追跡(Tracking)も可能。通常はCron tabで解析結果を自動出力することを想定していると思われます。

しかし、この解析速度であれば、日時範囲を指定してオプションを切り替えながら、ログを比較してみたいものです。使いやすいGUIフロントエンドはないでしょうかね?

ちなみに、これ、ソースコードで配布されてます。Windowsにはコンパイルしたお試し版がありますけど、完全版実行ファイルは有料サービスです。以下にVisual C++ 2005での修正個所を記しておきます。

#tail.c
#line3
- #include <unistd.h>
+ #include "unix2win.h"

#visitors.c
#line22
+ #include "unix2win.h"
unix2win.h
#ifdef WIN32
#define snprintf	_snprintf
#define vsnprintf	_vsnprintf
#define strcasecmp	strcmpi
#define strncasecmp	strnicmp
#define ssize_t	int
#define inline __inline
#include <io.h>
#define off_t _off_t
#define read _read
#endif