Page 14 of 17

HeartBleed の時にRaspberry Pi のOS をArch に変えたので、nginx 1.6 が簡単に使えるみたいだったので、乗りかえた。

nginx 1.6 ではなんとデフォルトでSPDY に対応している!

というわけでnna774.net もSPDY に対応しました。

quic も試してみたいけれど、まだ対応してるものは無いっぽい?ですね……

KMC で2048 のAI の強さを競うコンテストがあった。

2048 as a Servise を使ってたたかうもので、言語や環境等は自由であった。

まず始めにruby のサンプルコードを書いた。サンプルコード

そのまましばらくruby で書きつづけていた(mikutter のプラグイン以外でruby を書くのは初めてだった)。 このへんまで書いた。 nna774/2048-ruby

ナイーブに全探索を数手先までしているようなかんじだった。

どうにも遅かったのでC++ で書きなおした。実際に使ったのがこれ です。モンテカルロも実装しかけてたけど、バグバグだったのであきらめた。レポジトリはココ。 名前はkoyone です。

結果はこんな感じ。

かろうじて5位でした。

もっと次回までには強くしないといけない。

次回コンテストは6/4。 それまでに強化しよう……

ref

2048AIコンテストを開催します! - KMC活動ブログ

最近CI tool について調べていた。

以前から使っているJenkins氏も、CI tool(継続的インテグレーション, continuous integration) の一種だ。

使ってみたCI ツールについて、ちょっとだけ書いてみる。

drone.io

drone.io はいろいろな言語に対応していていい感じだった。

生成物を保管しておいてくれるので、そこからダウンロードしたりできていい感じ。

Travis CI

Travis CI は .travis.yml を書いて

昨日(暦としては18日の夜)、ミッドナイト念仏に行った。

is 何

公式ページ

知恩院で行なわれる法然上人の法要のイベント(?) のうちの一つである。

set

夜通し木魚を叩きつづけるイベントである(こんなふうに書いたら怒られそうだ)。

普段は入れない知恩院三門に入ることができるイベントでもある。

かなり低く見積っても数万回のBeat

三時ぐらいに知恩院に行って朝まで木魚を叩きつづけた。

中で撮影は禁止されていたけれど、特に録音は禁止されてなかったので、すこしだけ録音した。

nenbutsu.ogg

謎のトランス感のあるイベントであった。

現状、このページは、静的html等は事前にgzip で圧縮して、それをmod_rewrite でいいかんじにURL を書きかえてAccept-Encoding: gzip があればgzip版を返すよう設定してある。 ……と思ってたんだけれども、Accept-Encoding: gzip がついてなくても、gzip で返したり、対応するgz ファイルが存在しないと404 になったりしていた。

RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)\.css$ $1.css.gz [QSA,L]
RewriteRule ^(.*)\.js$ $1.js.gz [QSA,L]
RewriteRule ^(.*)\.html$ $1.html.gz [QSA,L]

のように書いていた。

調べていると、結局、RewriteCond が影響するのは、次のRewriteRule だけであることがわかった。 それでAccept-Encoding: gzip のないindex.html へのアクセスにもgzip圧縮されたものを返したり、index.html.gz がないと404 になったりしていたのだ。

RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)\.css$ $1.css.gz [QSA,L]
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)\.js$ $1.js.gz [QSA,L]
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)\.html$ $1.html.gz [QSA,L]

のように書きなおした現在、期待どうりの挙動をしているように見える。

最近流行りのOpenSSL のバグですが、うちのRaspberry Pi の上のRaspbian にすぐにアップデートが来なかったので、これを機にArch Linux に乗り変えることにした。

まだいろいろ設定している途中ですが、とりあえず80番と443番だけNAT を通すようにしてここも復活。

SSL の秘密鍵とりかえたいけどStart SSL は再発行にお金かかるらしいし、うーん ってかんじだ。 そもそも攻撃に狙われた可能性は低いとは思うけれど……(よくない考え方だ。安全側に倒すべきではある)

11歳ですよもう

鉄腕アトムも11歳。 だいぶ未来に来てしまった……

もざいく

アトムの誕生日は、電気の恋人の歌詞で覚えている。

歌詞: Sham Studio (リンク先音注意)

2003年4月7日に 未来のロボが生まれなくても

電気の恋人

私の小さな時にはもうPC 98 ではなくて、Windows 98 が家にあったような時代であったので、この曲の歌詞の最初のほうのような事は実際にはやったことは無いのだけれど(私の初めて触ったBASIC はWindows98 の上での十進BASICだ。プログラムの意味もよくわからないまま、豊富に同梱されていたサンプルプログラムを改造してみていた)、それでも、この曲を初めて聞いてからだけの機械の進化はすさまじくて、この曲自体を機械が歌うほどだ。

小さい時に聞いていたこの歌をミクが歌うというのは、なんというか、機械の進歩を強く表わしている気がして本当に好きだ。

この曲の入ったCD は現在入手困難ですが(わたしも欲しい)、AmazoniTunes なら購入することができます。

Heartsnative は他にも、「みんなみくみくにしてあげる♪」は"機械と人間" って感じがしてすごくいいと思う(そういう意味では、Heartsnative2 のほうはミクしか歌っていないので、比べると好きじゃない)。

何が言いたいかよくわからない記事になってしまった。アトムの誕生日はどっかにいってミクが好き って記事になってるし。しかも遅れて公開だし。

適当なメモなエントリだ。 もしかしたらまとめるかもしれない。

rx-elf-gcc

ここ のソースコードをビルド中にたたかったメモ。

基本的にこれ を参考に

binutils

http://trac.cross-lfs.org/ticket/926

sed -i -e 's/@colophon/@@colophon/' \
    -e 's/doc@cygnus.com/doc@@cygnus.com/' bfd/doc/bfd.texinfo
sed -i -e 's/@colophon/@@colophon/' \
    -e 's/doc@cygnus.com/doc@@cygnus.com/' ld/ld.texinfo
sed -i -e 's/@itemx/@@itemx/' binutils/doc/binutils.texi
sed -i -e 's/@itemx/@@itemx/' gas/doc/c-mips.texi
sed -i -e 's/@itemx/@@itemx/' gas/doc/c-tic54x.texi
sed -i -e 's/@itemx/@@itemx/' gas/doc/c-score.texi
gas/doc/c-tic54x.texi に
@code expected braces
らしいので適当に追加
./c-arc.texi:223: command @bullet not accepting argument in brace should not be on @table line
よくわからんけど、
gas/doc/c-arc.texi:223 の
@table @bullet
を
@table @code
にした
./c-arm.texi:401: command @bullet not accepting argument in brace should not be on @table line
うえとおなじ
./c-arm.texi:477: node `ARM Floating Point' lacks menu item for `ARM-Relocations' despite being its Up target
そことその下を@@ にして、22行目のメニューからARM Floating Point を削除

gcc

../../gcc/doc/invoke.texi:5644: @itemx must follow @item
sed -i -e 's/@itemx/@@itemx/' gcc/doc/invoke.texi

newlib

rx-elf-gcc -B/home/nona/build/newlib-1.20.0-20121219/rx-elf/newlib/ -isystem /home/nona/build/newlib-1.20.0-20121219/rx-elf/newlib/targ-include -isystem /home/nona/build/newlib-1.20.0-20121219/newlib/libc/include -B/home/nona/build/newlib-1.20.0-20121219/rx-elf/libgloss/rx -L/home/nona/build/newlib-1.20.0-20121219/rx-elf/libgloss/libnosys -L/home/nona/build/newlib-1.20.0-20121219/libgloss/rx    -DPACKAGE_NAME=\"newlib\" -DPACKAGE_TARNAME=\"newlib\" -DPACKAGE_VERSION=\"1.20.0\" -DPACKAGE_STRING=\"newlib\ 1.20.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -I. -I../../../.././newlib/libc/argz -ffunction-sections -fdata-sections  -DMISSING_SYSCALL_NAMES -fno-builtin      -g -O2 -c -o lib_a-dummy.o `test -f 'dummy.c' || echo '../../../.././newlib/libc/argz/'`dummy.c
/home/nona/local/rx-tools/bin/rx-elf-gcc: 行 498: 対応する `)' を探索中に予期しないファイル終了 (EOF) です
/home/nona/local/rx-tools/bin/rx-elf-gcc: 行 5038: 構文エラー: 予期しないファイル終了 (EOF) です

うーん って感じ まだ未解決

Page 14 of 17