LLセットでコーラ缶グラスをコンプリート

某ハンバーガーチェーンMでLLセットを頼むとコーラ缶型のグラスをもらえるキャンペーンをやってるらしい、と言うのを耳にして実際に行ってみた。 どうやら3色の中からランダムらしく、緑を入手。 あと2色もらうには何食LLセット食べればいいかなと思い、確率…

Pac-Manシミュレーター改

twitterの#devquizや#gdd2010jpにいろんな方の回答が上がってきたのでトレース機能を追加。 [twitter:@tet_rw]な人の581点の動きが素晴らしい。 HとVの誘導が絶妙。 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = …

CakePHPのURLエンコード

CakePHPではapp/webroot/.htaccessに RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] という記述があり、オリジナルのURLを$_GET['url']にいれた状態でRouterに渡…

GDD2010JPのDevQuizで使ったPac-Manシミュレーター

回答期間も終わったので公開。 少しずつ機能足したので節制無いソースですがご容赦を。 http://www.mizote.com/gdd2010pacman.html 矢印:自機移動(キーアサイン:カーソルまたはhjkl) ・:足踏み(キーアサイン:ピリオド(テンキーも)) 1,2,3:ステージ切り替え(…

GDD2010Jp-DevQuiz完了

お盆の帰省とちょうど時期がかぶったので充実した暇つぶしを。 無事完了。JavaScirptでPAC-MANシミュレータ実装したり、楽しいひと時でした。 せっかくなので回答期間(〜8/23 10:00)終了後、公開しようと思ってます。

シンボルテーブルとmy

my,our,localについて勉強しなおしていて下記サイトのコードサンプルを実行中に疑問がわいたので記す。 Perl/codepiece/my_and_locals1 - Glamenv-Septzen.net http://www.glamenv-septzen.net/view/139 こちらmyの挙動を試しているのが下記。(以下:コードm…

XML1.0にvalidな文字列の出力

RSSパーサーを使っていて、たまに外部のblogサービス*1のRSSが変な文字を含んでいてパースできないことがあるので、XMLの仕様を再確認してみた。 許可されるのはC0制御文字集合(0x00〜0x1f)のう水平タブ=HT(0x09), 改行=LF(0x0a), 復帰=CR(0x0d)とC1制御文字…

GmailのSMTPを利用してPerlからメール送信(添付ファイル付)

さて、前稿でモジュールの準備ができたのでPerlからGmail経由で添付ファイルを送る。 #!/usr/bin/perl use lib '/home/xxxxxxxx/local/lib/perl5'; use Jcode; use Net::SMTP; use Net::SMTP::SSL; use MIME::Entity; my $smtp_server = 'smtp.gmail.com'; m…

sakuraのレンタルサーバにCPANをインストール

cronで添付ファイルを飛ばすスクリプトをGmail経由にする。 Net::SMTP::SSLなどを使いたいのでCPANをユーザー領域にインストールする。 localディレクトリに入れることにする。 mkdir -p ~/local CPANの初期設定ファイルを作る。 echo no | cpan ~/.cpan/CPA…

Attacking PHP

PHP

盛り上がってるみたいなので便乗。 もともとは、 Mindblind - making web development suck less » Attacking PHP http://mindblind.net/2008/01/24/attacking-php/ こちらの記事で、それにいろんな人が意見を書いてるようです。日本語で分かりやすくまとめ…

DoCoMoからシフトJISのメール

最近DoCoMoのSMTPサーバーの仕様が変わったのか、DoCoMoからのメールがシフトJISで届くようになった。 しかもSubjectまで、 Subject: =?shift_jis?B?hogefuga=?= こんな感じで。 PHSにきたメールをSOFTBANKにスクリプトで自動転送していたのですが、雑なつく…

複数セッションでのhistory共有

Ctrl+PやCtrl+Rで利用できるBashのコマンド履歴、実体は~/.bash_historyだが標準の動作ではセッション閉じた時に上書きなので、複数のセッションを同時利用してるとちと不便だ。 ってことでプロンプト表示のたびにリロード、追記を行うことで共有する。 ~/.b…

認証サイトのcrawler

無事にCrypt::SSLeayがインストールできたので、当初の目的のスクリプトを作成。 use strict; use LWP::UserAgent; use HTTP::Cookies; my $ua = LWP::UserAgent->new; my $url = 'https://www.example.com/login'; my $req = HTTP::Request->new('POST' => …

HTTP::Responseのis_hogehoge

PerlのHTTP::Responseモジュールだがis_successというメソッドがある。 前回のHTTPSのクローラーでも正常な通信の判定に利用していたが、これに落とし穴が。 サーバーが302のMoved Permanentlyを返した時にFALSEとなるのである。CPANにあるドキュメントを読…

SubVersionで更新があったファイルのみ抽出

パッチじゃなくてそのまま上書きすればいいように、ディレクトリ構成を保持して更新ファイルを抽出したかった。 manを読むと、 $ cp -RP でもいけそうに思えたが、全ファイルが同じディレクトリにコピーされてしまった。 探してたらcpioなるコマンドが見つか…

trunkをbranchにmerge

branchで作業しててtrunkの修正をmergeしたいことがある。 手順をいつも忘れるので備忘のために。 $ cd work-directory/branch $ svn merge -r xxx:yyy https://example.com/repos/hoge/trunk/ . branch作業してるワークディレクトリで上記コマンドを。 xxx…

HTML5の草案発表

W3CのHTML Working Groupから最初の草案が発表されました。 W3C Publishes HTML 5 Draft, Future of Web Content(W3CのPR日本語) http://www.w3.org/2008/02/html5-pressrelease.html.en Web コンテンツの将来を担う HTML 5 草案を公開(W3CのPR日本語1/23付)…

ActivePerl(x64)にCrypt::SSLeayのインストール(成功)

前回バイナリ版のOpenSSLを利用したせいでCrypt::SSLeayのインストールに失敗したので。 OpenSSLをソースから自前でコンパイル http://www.openssl.org/source/ からopenssl - 0.9.8g.tar.gzをダウンロードして解凍。 中に入ってたINSTALL.W64を読むと Micro…

ActivePerl(x64)にCrypt::SSLeayのインストール(失敗)

https通信をする簡単なcrawlerをPerlで書こうと思った。 Crypt::SSLeayモジュールを使おうと思うが、x64版のActivePerlでは、ppcでCrypt::SSLeayのインストールはできないようなのでCPANを使うことに。 まずはOpenSSLをインストール こちらのWindows32用バイ…

Gmail日本語UIのIMAP設定

いつのまにかGmailの日本語UIでもIMAP設定ができるようになっていた。 今までは一旦表示言語をEnglish [ua]にしてからIMAPを有効にして、その後で日本語表示に戻していた。 何度もいじる設定ではないけど新規アカウントを設定するのは便利になっただろう。