WCG-Team 2chを調整しました

個人、板チーム内チーム、板チーム、チーム別のpointsグラフが見えるようになりました。
http://wcg-team2ch.no-ip.info/stat/transition.cgi?member_id=351765
ひさしぶりにGD::Graphをいじったので、すっかり忘れていましたが、なんとか見えるようにだけはなりました。
細かな調整はやってないというか、GD::Graphの使い方をしらないので、今はこれが精一杯。

日報スクリプトを弄りました

アイコン周りが自分でもわからなくなってきたので、文字にしました。
板チームを対象としたものが「板」
板チーム内チームを対象としたものが「群」
個人を対象としたものが「個」
AA周りや細かい部分がまだ残っているので、もうちょっとかかります。
1万人行くまでに稼動させたいなぁ・・・

またちょっと弄りました

アイコンが付いて、リンクの移動が若干しやすくなりました。
また、昔のデータを登録していますが、1ヶ月毎の推移が見られるように1日、データ取得に失敗している場合は2日のデータを登録しています。
理解が間違っていなければ、1日のデータは前月最後のデータが繁栄されているわけで、1日を基準にしていけば月毎の推移がわかると思います。
今後のデータですが、基本的に取得は毎日です。
といっても、xmlファイルは自力で取得していないので、人頼みのままですが・・・
とりあえず、3ヶ月ほど保存しておいて、それより昔は1日のみデータベースの残しておいて後は削除します。
データベースの設計のプロではないので、肥大化するほど影響が出る可能性と、残しておいてもあまり意味もないし、バックアップの手間にもなる(差分バックアップとか復元の方法もわからない)ので、このあたりで妥協しておきます。

日報以外の部分でもいろいろ考えてはいますが、まあ、サーバマシンが悲鳴上げそうなので、金銭的にサーバと回線を増強できるまではあまり遊ぶことはできないようです。

とりあえずいまの環境を変えないと、ポイント目当てのクレジットカードも審査が通りません。orz=3

また、ちょっと弄りました

メンバ検索の方法を変更します。
今までは、ヒットしたメンバの最新の状態が表示されていましたが、そのメンバのステータスと、意味深なプロフィール表示が追加されました。
詳細ボタンで、そのメンバの最近30日のstatが表示されます.
グラフ化もできるといかもしれませんね。

wcg日報のシステムをちょっとだけ更新しました

今までデータはファイルから参照していたのですが、次期バージョンではmod_perl化とDB化を予定しています。
といっても、ファイル書き出しも一応残してあります。
今回の更新で、国情報以外はDBから参照するようになりました。
体感若干早くなっている機がします。
DBになったことで、今までよりも柔軟に比較ができるようになるはずです。
特定のいたチーム同士やメンバ同士の最近の1ヶ月の動きを比べる・・・など。
その準備として、チェックボックスが追加されました。まだ機能はしてませんが。
DB化で、多少メモリも必要になるでしょうが、今でも100%に張り付くわけでもないし、それは作り方の問題だろうと考えてます。
すでに指摘されているもんだhなまだ未解決ですので、しばらくお待ちください。

脳みそコネコネ

なかなか更新できなくてすいません。
こっちを見に来ている方がどれぐらいいるかわかりませんが、頭の中だけに保存しているのももったいないので、ちょっとだけ書いておきます。

日報をゲーム化できないかと考えています。
まぁ、ゲーム化だなんていうと語弊がありそうですが、気持ちはそれぐらいということで。
BOINCのメンバ情報は、ある方法でアカウントを特定できます。
まず、こちらの管理するシステムに、現在の名前と改名予定の名前を登録してもらいます。
次の更新で改名が確認できれば、そのアカウントのidを登録した人のidをリンクさせることで、メンバを特定できます。
これができれば、後はメンバ同士のstat情報からいろいろとできますよね。
数でバトらせたり、SNS的な紹介ページも作れるし、いろいろと・・・

まぁ、そんなこんなで、アイデアはあるんですけど、時間の使い方が下手というか、お給金以上に働いてしまっているというか根つめてるだけというか、世渡りが下手なんですねぇ。
このアイデアは別にパクってもらってもかまいません。
にぎわえばそれでいいですから。

忘れないようにメモ

522 :WCG週報@みさき先輩萌@one ◆MisakigHDA :2009/02/17(火) 21:26:01 ID:???
>515 404さん
修正ありがとうございます。

一点、改善依頼を…

>476を表示させると、13位と14位が
┃◎13 kan@LeafKey.      2(-6)人   3,081,895( +983,143)Pt.↑   7,457(+2,445)Res.   3:035:08:27:09(-2:206:11:07:41)
┃◎14 Kan@LeafKey      8(+6)人   2,141,066( -940,829)Pt.↓   5,082(-2,375)Res.   5:270:03:19:37(+2:234:18:52:28)
となります。

チーム名の大文字と小文字を同一視していないように見えます。
宜しくお願い致します。

553 :名無しさん?:2009/02/18(水) 22:29:33 ID:???
404氏の日報サイトを利用している者です、いつもお世話になっております
次期バージョンにて不具合を発見したので報告させていただきます

ttp://wcg-team2ch.no-ip.info/stat2.cgi?c=itamem-aa&b=all%40livevenus&s=point&u=&m=&bit=0-1088&t=20090217&f=20090215
内容:転出者の名前が表示されない

578 :名無しさん?:2009/02/19(木) 23:44:45 ID:???
>>558 404さん
いつも日報サイトを利用させていただいてます。お世話になっております。
現在次バージョンの日報支援開発中のところ,現行バージョンの話で
申し訳ないのですが,うちの板のメンバーから現行バージョンの不具合が
報告されましたので,お伝えしておきます。

URL: http://wcg-team2ch.no-ip.info/stat.cgi?c=ita-aa&b=utu&s=point&u=&m=&bit=4608-0&t=20090217&f=20090216
エラーメッセージ:
Illegal division by zero at /home/wcg-team2ch/public_html/stat.cgi line 3170.
For help, please send mail to the webmaster (root@localhost), giving this error message and the time and date of the error.

調べてみたところ,拡張設定で「変化のない行も表示する」だけにチェックが
入っている場合に0除算が起きているようです。
次バージョンでは問題なかったので,報告してくれたメンバーには,次バージョン
で見るか,拡張設定を外すように伝えておきました。
対応は急がなくて構いませんので,次バージョンの開発頑張ってください。

WCG-Team2ch次バージョンの構想

現在は取得元のxmlから直接ファイルに書き出しています。
この方法ではメンバー(個人)を対象にした解析が不可能でした。
個人的には、この機能はほしいもので、どうにか対応できないかと考えていました。
いろいろ考えましたが、メンバーのxmlファイルデータをDBに書き込んで、日付で集計したファイル(yyyymmdd_member.tsv)を書き出して、さらにメンバid別にファイルを書き出す。
データベースに入れてしまえば、スクリプト的にはかなり楽になりますが、問題はレコードの数です。
現在は9000人を超えていますので、1日に9000レコードを消費します。
さらに、その期間を保持するかを考えると、1ヶ月で9000×30=27000レコード、1年で9000×360=3240000レコード・・・
まあ、どうにかなるでしょう。

さて、個人の履歴が見えるようになると、推移を見たくなりますね。
グラフ化されたりするといいかもしれません。
問題は転送量に耐えられるかどうかですが・・・
場合によっては、皆さんに金銭的な支援を求めるかもしれません。
もしくは、昔のようにFTPでえっちらおっちらアップロードする方法に戻るかもしれません。
どの方法がいいのかは、実際に走らせないと分かりませんが。
一応この内容は仮のものですが、現実味はあります。
時間があまり取れなくて遅いだけで、何もやっていないわけではありません。
もしご意見やおご感想があれば2ちゃんラウンジスレか、ここのコメントにでも書き込んでください。

BOINCをLinuxにインストールする方法

WCG-Team 2chのサイトに「Linuxにインストールする」ページを追加しました。
余ったパーツでマシンが作れるなら、LinuxでBOINCしない?って感じです。
team2ch.infoにあるものとは異なる方法で、初めてLinuxに触れる人のために全手順スクリーンショットが付いてます。
Fedora10でBOINCして見ませんか?