2004/11/29

週末コーディング

ひっさびさに1日中コーディングして12時間ねるとかいう生活を繰り返した週末でした(とりあえず頭使ったらたっぷり寝ておけっていうポリシー)。

ってことでメインサイトの方もbeatsync.netのほうに移転してみましたが、これ、本当は10月にはサクッと出来てる予定だったんです。実際はなんだか研究室周りがやけに忙しい案件ばっかり降ってきて(なんか毎週でかいイベントやら発表やらデモやらがあって、毎週打ち上げがあったりとか)まったく進んでなかったんですね。

で、先週金曜日が中間発表でべっこり凹まされた後、とりあえず凹まされたときはひたすらまったく関係のないことにエネルギーを注力するのが私のいつもの立ち直り方なので(とりあえずたくさん寝てひとりの時間を大切にしてじわじわと充電、みたいな)、よしやろうということでWindowsのローカル鯖で動いてたのを本番環境であるXREAのLinux鯖で動くように修正開始。

とりあえずディレクトリのエントリ列挙部分がWindows依存だったので(_findfirst系CRT関数を使ってたので、これはそのままWin32APIのラッパにしかならないのでWindows以外じゃ動きません)、これを#include <dirent.h>してscandirを使うように修正。ちなみにfindfirst系とscandir系、どっちがコーディングしやすいかと言えばfindfirst系なんですが(まぁ処理がおきまりなので世間からソース拾ってきてそれ見ればOK)、scandirだとファイル名マッチングの取捨選択がワイルドカードじゃなくて直接コールバック関数を渡せるということで、こっちのほうが柔軟性が高いですね。とりあえず逆にVCコンパイラではscandirなんて使えませんので、#ifdef _MSC_VERでMSCとGCCの切り替えってことで。

ということで、ローカルのgcc on cygwinでコンパイルして実行! サクッといくだろーとか思ったら普通にいかなかったー。っていうか最初のContent-Typeしか吐き出してないし…。ってことで、地味にprintfデバッグ開始…というか、C++で書いたのでcoutデバッグなんですが。

プログラムのメインルーチン自体はLFでもCRLFでも動くようになってたんですが、プログラムのconfファイルを読むルーチンがCRLFにしか対応していないとかいうことを突き止めて、そこを修正すると、さっくり動作。…ってまだ微妙に動作が怪しいなぁというところをいろいろ修正。

ってことで直ったところでXREAにもっていってコンパイル。……XREAにSSHで入ってC++コマンドでコンパイルしようとしたら、リンク出来ないわけで、調べてみたらCGIでコンパイルしてくださいとのこと。あぁなるほど、perlのsystem関数とかでコンパイルするコマンドラインを書いて、それをCGIとしてHTTPでコールしてやればいいのね。……失敗(なんで)。

まぁよくわかんないので、困ったときのt-baseってことでt-baseにSSHで入ってコンパイル……しようとおもったらt-baseはGCCあるんだけどG++ないみたいで(ないってことはないと思うんだけど、とりあえずg++にはパス通ってないから、gccでc++ファイルコンパイルしてもincludeでエラー吐いてるし、できない)、t-baseじゃできないってことになり、仕方ないので研究室のLinuxサーバーに入ってそこでコンパイル。表示されないなぁとおもいつつ怪しいところを直してとりあえずQUERY_STRINGを指定してHTTPから表示できるように!

ってことで、このコンパイルしたバイナリをローカルにもってきて、そこからXREAにコピー。……QUERY_STRINGで呼び出しても画面真っ白。って、.cgiファイルがアスキーモードが転送されてるじゃないかということに気がついて、バイナリで転送し直してみると、うん、XREAで動いた。

あとはmod_rewrite使って普通のスタティックなURLでアクセス出来る風味のRewriteRuleをつけてやり、ひとまず現状バージョンの移植終了、とりあえずこれをもってt-baseから移転ということにしました。

といいつつ、まだBlog風味に記事にコメントつける機能とか、RSSを吐き出す部分とかはまだなので(RSSのほうはたいぷちゃんが軽くRSSテンプレを作ってくれてるのでサクッといけそうです)、これをさらにまだ追加しなきゃならないんですが、今週末はとりあえずドメインとってサイト立ち上げの作業でタイムアップ。

月曜火曜は集中講義でぐったりしてる予定なので(大学4年間の中で1,2を争うぐったりする集中講義です)、本格的にそっちらへんの作業をするのは水曜以降かなーと。とりあえず中間発表終わって研究室関係はわりと手の空けられる時期になったっぽいっていうか、これからは年末になるのでビシビシ自分の時間を作ってモリモリ今年中にやるコーディングをやっつけたいところです。

  • webout: コメント機能、RSS機能(coutならぬwebout、とかいう適当なネーミング炸裂)
  • tasktrap: v0.40系の機能(WindowRuleと設定保存関係)
  • bullet: OpenGLで弾幕書いてみたいなぁって話のやつ(既に一応プロトタイプは完成したけどどっちにしろ観賞用)
  • tasktrapの某プラグイン: 某っていうか、自分用にいろいろプラグイン作ってひとりで楽しんでます

まぁなんだかんだ言ってどうせこのうちできるのは1,2こなんだろうなぁ…。とりあえずbeatsync.net体制になって更新がめちゃ楽になりましたんで(なんてったってただ単にオレはdatファイルっていうXHTMLの断片を書いて、それをアップロードすればあとは勝手に最新のやつから表示してくれるステキっぷり)、メモ帳とFTPクライアントさえあればどこでも更新できるのがメリットですね。

年末支出予定

今年の年末はやーたら出費予定がおおいなぁ。

Talby

もういい加減今の携帯使い始めてから2年半になるんですが、その間に出たauのストレート携帯ってINFOBARぐらいで。で、デザイン携帯第3弾でひさびさにまたストレート携帯がでるんです。しかも、INFOBARはイマイチ角張ってて使いづらそうだったけど、こっちなら手にフィットはしなさそうだけどとりあえず角がないからINFOBARよりはまぁマシでしょう、みたいな。

今の携帯使用期間経過2年半でこれに機種変更するといくらぐらいになるんだろうなぁ…。15,000円ぐらいに収まって欲しい所なんですけど。

beatsync.netドメインとXREAの広告免除

うん、無事に立ち上げました。ドメインが990円/yearで、広告免除が2,400円/year、足して3,390円で、WebMoneyで支払って10%の手数料とられたから3729円ってところですか。WebMoneyの支払いだとさすがにちょっと10%の手数料って痛いなーとはおもった。

そういえばメールアドレスもbeatsync.netドメインに変えたいんだけどどうしよう、まだ何もきめてないや。

ゲーム

なんかPSPとかニンテンドーDSとかいろいろ出てるみたいですが、特にこれといったキラータイトルはないかなぁ。わたしゃRPGやらない人なんでドラクエ8とかは関係ないですし、他のやつで知ってるのと言えば「君のためなら死ねる」とかぐらいしか…。

まぁ買うとしたらbeatmania IIDX 8th(家庭用)とかArmored Core Nine Breakerとからへんになりそうですが、後者はなんか今回はイマイチっぽいんだよなぁ、ミッションないし、そもそも次作のFormula Frontの日程もなんかおおよそ決まってる(2月下旬らしいとか)っぽいので、正直これはどうなんだ…。

ダーツ

なんか私の周りでやたらダーツが流行ってて、それなりの投資してみたいなーとは思ってるんですが、なんかいろいろ選ぶのが面倒で放置中だったり…。個人的には短いバレルと長めのシャフトがいいんですけど、なんか友人に言わせると「それってたかいんじゃねー?」とのこと(短いバレルってそれなりに材質が高いやつになるんだとかなんとか)。

宴会

まぁどのぐらいあるかわかんないけど忘年会チックなやつはいろいろやるんじゃないですかね。そういえば12/10は誕生日だし、去年は深夜に大学近くの喫茶店のパフェ2個の刑だったんで、今年もなんかあるかもないかも?(今のところなんも聞いてないけど)

はぁ、思ったよりも出費が多くて微妙だなぁ…。適当に重要度の低いやつは切っていかないと資金ショートに陥りそうです。

うされもん @acidlemonについて

|'-')/ acidlemonです。鎌倉市在住で、鎌倉で働く普通のITエンジニアです。

30年弱住んだ北海道を離れ、鎌倉でまったりぽわぽわしています。

外部サイト情報

  • twitter
  • github
  • facebook
  • instagram
  • work on kayac