2007年6月雑記ログ

2007-6-29-1[日記]BBS爆撃撃退法

 わがBBSも、週に一つくらい広告記事が貼られるようになった。現在の所、その消去作業は15秒ほどでできるくらいのインターフェイスを用意してあるのだが。前のBBSは、それが原因で記事が増えすぎて、タイムアウトして読み込み不能な事態に陥ったわけで、何とかそれを回避できないだろうか。わがBBSへの爆撃の場合は、コンピュータがBBSを解析して記事を送りつけてくるだけで、Googleの検索みたいにロボット式で、人の手による物ではない。よって、コンピュータさえ欺ければよい。

 そこで思いついたのは、Yahoo!のID登録のように、認証キィの入力を求めることだ。別に画像化する必要はない。ただ、文字を読み取らせて、それを入力するという作業を与えればよい。おそらくロボットは最低限の能力しかもたないはずだ(mail欄によく記事が混じっている)。なので、簡単な作業をさせればよい。

 時間ができたら、その実装をしよう。久しぶりに昔作った74thBBSのソース見るのは怖いけど。

 写真は昨日の。しまった、闇に同化する、、。

2007-6-28-1[日記]くそ忙しい

 バイトと、研究と、プログラミングゼミと、てんやわんや。コピーロボットが居てくれたらいいのにな。生身が面倒な方やっても良いから。

 あと、妹が、クロブーくれた。車に一緒に乗る。載る? たれどらは、部屋に飾られる事になった。クロブーも、たれてこないでくれよ。

2007-6-25-1[PC]透過PNG

 某所の仕事で、ロゴにpng画像を使っている。さらに、CSSを利用したサイトでその画像を使っており、CSSでデザインを切り替えると、ロゴの背景を編集し直さねばならない。そんな事をしなくても良いよう、通常はgif画像の透過機能を使う。しかし、gif画像はライセンスの都合、高いソフトがないと作成できない。

 で、png画像を用いる。自分の使える画像編集ソフトがpixiaしかないので、pixiaにプラグインを組み込んで、透過png画像を作った。しかも、png画像だと、gif画像のように256色ではなく、フルカラーでも透過画像を作る事ができる。

 しかし、Sleipnirで見てみるが、透過しない。なぜだなぜだ。画像の作り方が悪いのかといろいろいじってみる。やっぱりできない。

 結論を言うと、InternetExplore6はフルカラーpng画像の透過機能を許していなかった。FireFox、Safari、Operaで見てみると期待通りに表示される。しかし、「IE6で使えない=世間の3/4は見れない」になるので、あきらめるしかなく、わざわざ256色に減色して利用することにした。

 世間でもっとも使われるブラウザの責任は大きい。ならば、どんどん技術を吸収していってほしいものだ。

2007-6-24-1[日記]ACM模擬戦

 前日書いた通り、今日はACMの模擬戦でした。模擬と言えど、本番と同じ雰囲気の問題、同じように順位がつく。本格的な、まさに模擬戦。

 チーム3名、コンピュータ1台。問題発表と同時に、3部印刷。まず、誰でも解けるProblemAを俺が解答する。ひっかけにひっかかってしまい、解答に30分を要する。遅い。

 コードは1人しかできないので、ここで交代。次の人がコーディングする間、他の問題を見ておく。ProblemDがすぐ解答が浮かび、浮かれる。オーダはnの4乗だが、動けばいいと思い、ソースを手書きで書き起こして、fixできた気分になる。そして、前の人が詰まっているようだったので、交代してProblemDをコーディングする。

 あっさり分ほどでコーディング終了。実行。止まらない。「fprintf(stderr,"%d/%d",now,all);」と追加して、進捗状況を見る。おそらく、5分で終わると勝手に判断し、計算を続けさせる。

 これが間違いだった。待てど暮らせど計算は止まらない。確かに一歩一歩計算は進んでいるのだが、それがいつか終わるのではという期待をさせる。しかし、終了30分前になっても終わらない。もっと早いアルゴリズムも思いついたのだが、それをコーディングするだけの時間はなかった。

 結局正解数1/6問。目標の2問に達せず。後から他の問題を見てみると、過去にコーディングした経験のある問題も含まれていて、悔しい思いをする。

反省
・6分以上かかるプログラムは駄目。
・もっと早いアルゴリズムができないかきちんと考えること。
・自分の知らない言語は使わないこと。
・一人で悩まないこと。
・一人に任せないこと。
・人の言うことは聞くこと。

2007-6-23-1[日記]ACMの簡単な方の問題

 日曜日に、ACM参加者のOB主催による模擬戦が行われる。それまでに基礎演習せねばならない。昨日は、去年出題された中でも、簡単な部類(解けないと二回戦進出できない)の問題にあたった。

 単純明快な問題と思いきや、コードしてみると、考えなきゃ行けないことが次々と出てきて、コーディング能力がそれに追いつかなくなって、結局時間を要してしまう。後で考えると、もっと関数化して問題一つ一つを局所化してしまえば、扱いやすい事に気づく。しかし、string.hが全く使えないのも問題だ(使い方をしらないので、わざわざ作った)。

 それにしても、去年の模擬戦参加者を見ると、皆拡張子が.cppになっている。俺はc、perlしか使えないので、そのc++の恩恵にあずかる事ができず、結果としてコード量が増えていく。やはり、JAVAかC++は使えないといかんなぁ。

 あと、ひとつ勘違い。いままで入力指定ファイルを、「./program.exe data.txt」として、「fopen」等を使って開いていたが、本番は「./program.exe < data.txt」と読み取らせなければならんそうな。ゆえに「scanf」を使えと言うことだが、その訓練もまた必要になる。

2007-6-22-1[日記]プログラミングコンテストが近づいてまいりました

 プログラミングゼミを企画して二ヶ月が経った。その初戦としては十分すぎる、むしろ手に負えない、学生界世界最大級(?)のプログラミングコンテスト、ACM国際大学対抗プログラミングコンテストの開催日が近づいてきた。今プログラミングゼミは、その対策になっている。

 一応、6問中、3問解ければアジア大会進出となる。少ないように思えるが、決して楽な問題ではない。その模擬戦が今週の日曜日にあるので参加することになった。

 しかし、プログラミング以前の問題が多数発生している。印刷ができないとか、コンパイラがおかしいとか、WindowsかLinuxかとか。前途多難。

2007-6-21-1[開発]BCCの恐怖

 BorlandC++Compilerでは、fseekがまともに使えないという事実にたどり着くのに、3時間かかった。もういや。VC++使ったところ、正常に動きました。もう、BCCは二度と使わない。

 観念してデュアルブート環境か、cygwinを導入せにゃならんと言うことが良く分かった。プログラミングをするために、まず最良の環境を。

2007-6-20-1[日記]戯言

 うちの先生(もちろん情報の先生)が「ざれごと言ってないで」と言ったので、あらら、「たわごと」が「ざれごと」として認識される世の中なのだな、などと思っていた。しかし、辞書引いてみると、「ざれごと」という言葉が載っていた。西尾の当て字じゃあないのね。

(追記)勘違いしていたことに、『戯言』の読み方は、「ざれごと」の方が一般的で、「たわごと」の方が普通ではない読み方だそうで。指摘してくださった方(3名!)ありがとう。

2007-6-17-1[日記]父の日

 今日は研究室で、月曜日のゼミ発表の準備。夕方に、母親から父の日の準備したか電話がかかる。やっべえ、正午まで覚えてたのに忘れてたと。ゼミ準備を切り上げて(明日午前登校決定)、父のために第七餃子と、ポロシャツを買って帰る。

 父の日イベントは、家で、第七餃子の夕食と、プレゼント進呈は30秒で終了。まぁ、そんなものか。

2007-6-16-1[日記]日本語検定

 日本語検定当日。その後バイトなので、スーツで行く。現役の国語の先生と一緒に受けに行く。

 受験者少ない。受験番号が1番だった。

 3級受験。模擬問題よりやたら難しい。問題文良く読まなかったせいで、多肢選択に気づかなかったり、音読みで答えなかったり。うわー。もしかしたら、落ちるかも。

 2級受験。3級より解きやすく感じた。知らない、慣用句と四字熟語がいっぱい出る。やばいです。

 なんとなく、3級も2級も同じ点数とかになりそう。

2007-6-15-1[日記]サークル新歓

 今頃なサークル新歓。定着した新入生のみが誘われる、本当の新歓。今年は男の子が多い。

 3つ年下の新入生と戯れる。なんか、俺の新しいキャラが決まった。新入生から、ヘイ、ボス!と呼ばれる。酔ったときの態度がマフィアっぽいらしい。なんか、むずがゆい。

 翌日の日本語検定のために2次会でおさらばする。

2007-6-14-1[PC]よく「http://~」を隠すために「ttp://~」になってるけど

 この場合、「http://74street.ddo.jp」としておくと、元リンク解析に引っかかるため、それを避けるためには「ttp://74street.ddo.jp」とするのが一般的になっている様子。この操作、アドレスをコピペしたあとに、わざわざマウスから手を離して、「h」を打鍵せねばならない。日本語入力モードになっていたりして、かなりめんどくさい。

 実は、そんな事しなくても良いらしい。昨日、友人Yのその操作を見たとき、衝撃的だった。友人Yは、「http://」以下、つまり「74street.ddo.jp」のみを、アドレスのところにコピペした。すると、ブラウザが自動的に「http://」を補ってくれる。これは、超便利じゃあないか。

2007-6-13-1[日記]そふとぼぉる②

 昨日の話。ソフトボールの二回目の本格練習。疲れた疲れた言う人と、もっとやろうぜと言う人に分かれる。俺は残念ながら前者。

 その後、少し論文読んでから、学内バイト。学内バイトが早く終わったので、友人と汗を流しに銭湯に行こうという話になる。所謂スーパー銭湯、和おんの湯に行く。二時間近く、男二人風呂で語り合ってさっぱりする。やっぱり、広い風呂と気の置けない友達は良い。

2007-6-11-2[日記]テクニカルエンジニア、情報セキュリティ、敗北

 今日、結果発表だって事を、叔母からのメールで思い出し、すぐに結果を見に行く。結果は、公式サイトで、受験番号とパスワードを入力することで見ることができる。

 午前は、クリア。しっかり、反復学習行っただけはある。
 午後Ⅰで、敗北。流石に、試験当日に初めて過去問題見たんだしな。

 当日やってみて、意外と解けることに嬉しくなって、さらに午後Ⅱはかなり解けて、合格する自信はあったんだが。まぁ、絶対に今後合格しなさそうな点ではないので、また、出直すことにする。

2007-6-11-1[本]漫画『ひぐらしのなく頃に 暇潰し編』

 省略。

2007-6-10-1[本]漫画『ひぐらしのなく頃に 祟殺し編』

 省略。

2007-6-9-1[先生]じゅくの先生は生徒のためにある

 毎週担当のはずなんだが、生徒の都合で不定期な授業を行っている。

 担当教科は物理。今日は、テスト前最後の授業、しかも3コマ連続担当予定。みっちり(この時間数じゃ範囲終わらないけど)、テストでなるべく点数とれるようやるつもりだったのだが。

 学校の先生が、物理を「皆模試とかで大変だろうから、基礎問題にしておいてあげる」と宣ったとかで、じゃ、今日数Cやってほしいとなった。しかも1コマだけ。

 やったけど、やったけどさ。俺に物理を指導させてくれ。頼むから宿題もしてきてくれ。俺とあんたのタッグなら、一単元、4回の授業で終わって、全単元、4ヶ月で終わらせてみせるから。

2007-6-8-1[本]漫画『ひぐらしのなく頃に 綿流し編』

 妹に、一晩一話、というペースでひぐらし漫画を渡される。こわかった、こわかた、こわか…。

 おもしろかったし、第一話の感想と同様、やっぱりあのときやらなかったのは勿体なかったなという思いが募る。

2007-6-6-2[日記]研究室そふとぼぉる

 電気情報系学科で、研究室対抗ソフトボール大会というものがある。そこまで大きなものでもないかなと思っていたら、結構教授に先輩方に皆倒したい研究室がある様子。昨日、その練習をやった。

 ボールと戯れるなんて何年ぶりか。学部4年生は皆そんな感じだった。研究室内に野球経験者がいて、その人にしごいてもらう。しかしまだ、キャッチするのがやっとという感じ。練習していると、去年の優勝研究室がきて、練習試合をすることに。結果は……。

 まあ、楽しかった。普段してない運動だと思ってがんばろー。

2007-6-6-1[本]漫画『ひぐらしのなく頃に 鬼隠し編』

 いつの間にか、家にひぐらし漫画が揃っていた。いつでもゲームができるよう、モバイルパソコンに入れてあったのだが、やる時間もなかったので(というかいつ終わるか分からないものをやるのは面倒)、一般大衆同様に漫画で摂取することにした。

 まぁ、怖かった。今更思ったのは、毎話毎話友人達と謎について話し合うには非常に面白そうだということ。そうやって楽しむには既に遅すぎる。友人に今やらないのは惜しいと言われて二年経った。そのとおりだった。

2007-6-3-1[本]読了『狼と香辛料』支倉凍砂2006

 商人の話というのに惹かれて、読んでみる。いや、商人に関する話の部分は、そんなに凄いなと思うことはなかったが、この調子で4巻まで続いているなら期待する。それよりもだ。ヒロインが可愛い。うん、可愛い。それに尽きる。

2007-6-2-1[moodle]コースをcsvファイルでアップロードして一斉に登録する

 「ユーザのアップロード」のように大量の空のコースを一気に登録できる。一個一個手で作っていた手間が省ける。

 http://rory.allford.net/moodle.htmlで、uploadcoure.phpが入手できる。

 指示通り、「あなたのmoodleのフォルダ/admin/」に置いて使う。管理者権限でログインしたら、おもむろに「http://あなたのmoodleのリンク/admin/uploadcourse.php」とブラウザのアドレス欄に入力すると、そのページが開ける。csv

 使い方は、「ユーザのアップロード」みたいに、csvファイルを書いてアップロードするだけ。そのはずなんだが、何故かエラーが出る。

 俺は、Excelで作成し、TeraPadを使ってUTF-8にデコードしたのだが、バイナリエディタのStirlingで開いてみたところ、先頭3バイトになにか入っている。この3バイトを削ったら、普通にアップロードできるようになった。「ユーザのアップロード」の際には、同様にこの3バイトが入っていても大丈夫なのだが。

 csvファイルの書き方は、「ユーザのアップロード」のヘルプを参照。フィールドとして、最低限fullnameとshortnameが無ければエラーが出る。それ以外はデフォルトがある。フィールドの使い方に関してはまだ調査が必要そうだ。

○俺がテストに使ったcsvファイル例
category,fullname,shortname,format,guest,metacourse,newsitems
4,CSVコース,csvc,topics,0,0,10

○分かってるだけ(末の括弧はデフォルト)
・category……カテゴリのidを入れる。カテゴリのidは、「コースの追加/編集」で出てくるカテゴリ一覧をクリックすると、アドレスに「category.php?id=1&」とか出てくるこのidだ。
・fullname……コースのフルネーム。日本語を使う。
・shortname……短縮名。英語を使う?。
・format……ウィークリーフォーマットなら、weeks。トピックフォーマットなら、topics。ソーシャルフォーマットなら、socialと書く。(ウィーク)
・numsections……上の「週/トピックの数」(52!)
・guest……ゲストによる閲覧が0なら無し、1なら有り。(0無し)
・metacourse……メタコース、0なら違う、1ならメタコース。(0メタコースではない)

○わかってないけど、使えそうなの
・sortorder……コース一覧でずらずら並ぶ時に、この数値の若い順に並ぶっぽい。けど、設定してもシステムに勝手に上書きされそう。

2007-6-1-1[日記]緊張の6月投稿

 6月になったら、新しいファイルが自動生成されるはず。

 きちんと動きますように。

close