2016-04-22 吉祥寺.pm7 に行ってきました


4/22 に開催された、吉祥寺.pm7 に行ってきました。

だんだん記憶が薄れゆく感じなので、雑な感想を書きます。

Talk1:Perl の use strict をもっと活かすための,fields、保存時検査、そして import の使い方(hkoba501)

fields はなんとなく知ってるけど、全く使ったことなくて、なかなか面白い話だった。

オブジェクト指向Perlマスターコース(↑)くらいの時代に考えられてた、理想のオブジェクト指向Perlの完成系がこんな感じなのかなー、とか思いながら聞いてた。

Talk2:技術的負債だらけのチームで技術マネージメントしてみた(やっさん)

チームのマインドを変えながら勉強会を立ち上げたり色々やる話。大変そうな環境だけど、ちゃんと変えられているっぽくて、なかなかすごいな、と思いました。

Talk3:その時、君にガンダムに乗る決意をさせたものは何だ(i47_rozary)

ブライトさんの名言を中心にマネージメントについて、もしくはマネージメントをどうして志すことになったか、と言う話。(変な方向に?)完成度が高くてとても面白かった。

特別企画:PCバッグ現状確認会

PC バッグについて、どんなのを使ってて、どういうところがコダワリかという話。凝っている人は凝っているみたいだし、papixさんみたいに徹底的にこだわらない(YAPCのトートバッグを使ってる。あれはあれで確かに便利なやつだ)人もいるし、みなさん色々ですね。

LT1:Perl入学式と現場のギャップ(htk291)

Perl 入学式を終えて、実際に Perl を使う仕事をするようになって、そこで知ったこととか。ソートとか、なるほど確かに、って思った。

LT2:「超カジュアルかつ自由にモジュールを使う方法」(karupanerura)

fatpack とか大変なので、一枚スクリプトを実行したタイミングで、一時ディレクトリにモジュールをインストールして実行する、というやつ。キワモノなのかと思いきや、本番とか安易にモジュール入れられないところで使うスクリプトを想定してるみたい。

LT3:タイトル未定(papix)

あれ?なんだっけ?マジで思い出せない。タイトル見れば思い出せそうなのだが。。。

LT4:PerlでBDD(dokechin)

Perl で Cucumber 使って BDD する話。最近僕も Selenium WebDriver 使ってテスト書いてたので、なるほどと思いながら聞いてたけど、BDD はやっぱり大変そうだなー。

LT5:LT about Moosex-App (https://metacpan.org/release/MooseX-App) in English(Maroš Kollár)

Moosex::App なかなか便利そうだな、と思った。コマンドラインツール作ることあんまり無いけど、今度作る時は検討してみてもいいのかなぁ。

懇親会で、「日本だと Mouse とか Moo とか使うけどやっぱ Mooseなんですか?」みたいなことを聞いてみたら、やっぱり「Moo がちょっと使われてるけど Moose が多い」(僕の聞き取りが間違ってなければ)とのことでした。

LT6:(すいません、タイトル覚えてないです)YAPCの話(makamaka)

YAPC::Asia Hachioji 2016 mid in Shinagawa の宣伝的な話。楽しみ。

懇親会

なんかデータベースマイグレーションの話とか、海外の話(Maroš さんとちょっとだけ話した。上述のやつ)とか、金沢行くとミルキィが見れる話とかをしてた。

と、いうわけで今回もとても楽しかったのでまた参加したいです。



2016-04-17 宇都宮の天馬に行ってきました


宇都宮の天馬といえば、我々ミルキアンの界隈では最高の餃子屋の一つ、というか、橘田さんが最高の餃子屋さんとして掲げていることであまりにも有名ですが、ミルキアン以外ではほとんど知られていないと思うので、ちゃんと記事を書こうと思います。

4/17 に宇都宮で最高に面白い映画がやっていたので、見に行ったのですが、映画だけのために宇都宮まで行くというのはちょっとさすがに微妙すぎるので、観光したりあれこれしてた一環で行ってきた次第です。

声優として、ミルキィホームズとして絶賛大活躍中の橘田いずみさんですが、大の餃子好きとしても知られており、餃子屋さんを紹介する本まで書いていたりします。それがコチラ(↓)

で、この中で「ナンバーワン」として紹介されているのが、宇都宮にある「天馬」というお店です。

宇都宮ちょっと遠いし、天馬は東武宇都宮から2駅ほどの江曽島というところなので、(本数があんまない)電車かバスか、車で行かないとなかなか厳しい感じの場所ではあるのですが、実際に行ってみたら最高に良かった。

外観はこんな感じで、普通の中華屋さんです。住宅地の真ん中にあります。

そして店内はこんな感じです。

大変落ち着いた雰囲気であります。(橘田さんが送ったものとか、橘田さんのファンの方が送ったグッズが所狭しと並んでします。それ以外は昔ながらの中華屋さんといった雰囲気です。)

メニューはこんな感じです。

リンゴとかカボチャとか、めっちゃ気になるのですが、まずはオーソオドックスなニンニクと干しエビの焼き餃子を1枚ずつ頼みました。それがコチラ(↓)

と、いうわけで、焼き加減の絶妙さが本当にすごくて、あれ何がどうなってるのか意味がわからなくて、本当にすごい。言葉になってないけど、いや言葉にならないんですよ。tweet した通りで、皮厚めなのに、焼き目はパリッとしてて、皮自体はちゃんとふっくらと火が通ってて、餡も絶妙な感じで、本当にすごいとしか言いようがない。レシピも相当ですよ、今回食べてないからわからないけど、普通リンゴ餃子作ろうとは思わないでしょ?

僕は自分も料理するし、餃子は結構好きなので、それなりに分かっているつもりで、例えば肉汁出したければスープと脂入れればどうにでもなるし、旨味が出したければいい肉使うとかダシ入れればいいとか、そういうのは分かるので、そういうのじゃない凄みがあって本当に凄いなぁ、と思ったのでした。

しかもコレ、1枚400円なので、たった800円なんですよ。「いや、2000円くらい取ってくれてもいいのよマジで」って思えるくらいのクォリティでした。

餃子食べただけで、「最高の体験だった」と思えることって、なかなか無いと思うのですが、少なくとも僕にはそう思えたので、宇都宮に行った際にちょっと時間があれば是非立ち寄って欲しいです。 ではでは。



2016-03-26 Hachioji.pm #57 に行ってきた


久しぶりにHachioji.pm #57 〜かふんの国から〜 に行ってきました。

私のLTの資料はこちら

(いつも通り)全力でミルキィホームズを宣伝しつつ、最近やってる E2E テストの話をしました。

以前にも書評 Selenium デザインパターン&ベストプラクティス という記事を書いたのですが、ここに書いてる内容というか、「最初は ad hoc で雑な感じのテストをだんだんといい感じにしていくのが大事」みたいなことを話しました。

うずらさんにも言われたんですけど、綺麗なページオブジェクトを作るのは結構手間で、大変なんですけど、だからこそ資料にも書いた通り、最初は雑でも汚くてもいいからとにかく作ってみて、だんだん綺麗にしていくのがいいのではないかなー、と思っている次第。

はちぴーとても楽しいので、予定が合えば今後も是非是非参加したいです。



2016-03-13 ミルキィホームズ第2幕の話


「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」、現在絶賛公開中ですが、ここであえて、「探偵オペラミルキィホームズ第2幕」(2期)の話をしようかと思います。

なぜあえて、今更2期の話をするかというと、第2幕を観ると「今回の映画の良さがさらに分かって良いな」、と思ったからです。

「探偵オペラミルキィホームズ第2幕」ってどんな話?

よく言われるのが、「1期のノリをさらに強化したドタバタカオスアニメ」みたいな言説で、それは一面の真実でもあります(公式もそれっぽいこと言っているし)、しかしながら、今回、映画公開直前(公開日だったかも。公開日は僕は仕事の都合で観に行けなかったので)に、第2幕を見直してみたところ、ちょっと違ったふうに見えてきたので、そのことについて書きます。

喜劇と悲劇と

ドタバタな感じで進む第2幕ですが、前半から中盤までは、実は「悲劇として描かれているのではないか」と今回見直してみて思いました。

ミルキィも怪盗帝国も学校でのアンリエットさんも、みんながみんな、それなりにベストを尽くして一生懸命です。でも、ハッケイジマで囚人を脱獄させちゃったり、カマクラの探偵博のシンボルを爆破しちゃったりしていて、その度にアンリエットさん(=アルセーヌ)はミルキィホームズにイライラを募らせていくんですね。

最初見たときは面白おかしく笑いながら観ていたのですが、今回改めて見直してみたら、痛々しいし悲しいなと思ったのでした。

トイズとダメダメと

第2幕においては、ミルキィホームズは(1期のように)「トイズを失ったからダメダメになった」のではありません。実際に何度かトイズは戻っています。1期はアンリエットさんの幻惑のトイズの中とか一瞬だけ戻るとかですが、戻った時はダメダメではなく、ちゃんと目的を果たしています。でも、第2幕では、ラードの神とのバトルより前では、トイズが戻っても終始ダメダメなんですよね。(農家とか寝相とか)

探偵の本分と怪盗の本分

第2幕のメインテーマは、おそらく「探偵の本分とそれを取り戻す話」だと思います。アンリエットさんやアルセーヌに「あなた達は何なのですか(何になりたいのですか)?」と問われても、「探偵です」とは言えず、「歌手になりたい」とか的外れなことを言っていたり、「探偵」と言おうとしたのに噛んでしまって言えなかったりとかしています。(探偵の本分を見失ったミルキィホームズを言葉遊び的な描写でうまく描いていて面白いですね。こういうところも好きです)

一方でアルセーヌも自分の美学というか、やはり本分を見失っているんですね。ダメダメなミルキィホームズを見限ったアンリエットさん(=アルセーヌ)はホームズ探偵学院を破壊するわけですが、その直前、ストーンリバー(だよね20だっけ?)に「破壊とは美しくない」と言われてしまうわけで。

みんなそれぞれ頑張っていたにもかかわらず、探偵も怪盗も、自らの本分を失ったヨコハマ。これが悲劇でないとしたら、何なのでしょうか?

ダメダメなミルキィホームズ

第2幕では、ミルキィホームズは終始ダメダメとして描かれています。極め付けは、ラードの神に「もっとも恐ろしいダメダメのトイズ」を食らっても何も変わらず、「そんなものは効きません!なぜなら私たちは最初からダメダメだからです!」とシャロが言っていたりします。最終的にラードの神に勝利して麦わらのストローを使って、トイズをひきはがす時も「すいません、吸います」とか完全にギャグでダメダメな感じです。(この時はすでにトイズも戻ってる)

取り戻した探偵の本分

で、最終的にラードの神を倒して無事ハッピーエンドを迎えるわけですが、その直前では、「私たちは探偵」「あなたを逮捕します」と、よどみなく、迷いなく言えているわけでして。そのことが第2幕におけるミルキィホームズの復活なんですね。

で、ミルキィホームズってどんな話?

というわけで、ミルキィホームズ第2幕は、「ダメダメでも、トイズがなくても、健気に頑張って怪盗を逮捕する、それが探偵である」という心を取り戻す話なんじゃないかなー、と思うわけです。

ミルキィホームズの成長と劇場版について

1期では(夢と)友情がメインテーマ(だと思っている)なので、ミルキィホームズのチームワークがガタガタになる話が何度か描かれています。でも最終的にはチームワークを取り戻して、あの感動的な11話のシーンがあるわけですね。一方、第2幕では、ミルキィホームズは終始仲良しで、チームワークが乱れることはほとんどありません。

そして第2幕で見失っていた探偵の本分を取り戻したミルキィホームズは、今回の劇場版では決して見失うことはありません。相変わらずダメダメですが、ちゃんと成長してるんです。

だから、どんなに酷い目にあっても、ピンチになっても、トイズがなくても「探偵ですから!」と力強く言い切れるわけですね。トイズがないダメダメミルキィホームズが、根拠がないのに、力強く「探偵ですから!」と言い切るのは、何も知らないとギャグなのでしょうが、この辺の話を踏まえて見ていたミルキィおじさんのワタクシとしては、「おかしいな、目から汗が。。。」となってしまうわけです。

ふぅ。最後の1文を書きたいがために、長々と書いてしまいましたが、まとめると「ミルキィホームズ最高」ということと、「劇場ミルキィは今世紀最高のアニメ映画だ!」と言うことです。



2016-03-05 ミルキィはいいぞ


「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」の感想的なやつです。ちょっとネタバレ含んでる気がするので、そういうの絶対に嫌な方は閉じるボタンとか戻るボタンとかクリックしてください。

過去の感想エントリはこちら

2回目なので、雑なtwitterまとめ的な感じで。

いやはや、本当に劇場版ミルキィホームズ、マジ最高ですね。twitter にも書いたけど、可愛いし面白くて最高なんだけど、見るたびに発見があって本当にすごい作品だな、と。

ミルキィホームズ、最高に面白くて最高ですけど、ハイコンテキストで難しい部分もあったりしますが、なんとびっくり、3/11 に製作者の舞台挨拶があったりします。製作スタッフの話を聞けると難しいところも分かったりしていいんじゃないかなぁ、と期待しています。

これ、まだチケットあるみたいなので、裏話とかそういうの聞きたい方は是非(↓)



2016-02-28 (注意ネタバレ有り)「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」が最高に良かった件


ネタバレ嫌な方はこちら(↓)をご覧ください。

(ネタバレなし)「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」はココが凄い!

こちらはネタバレを含む感想です。

「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」 を見てきました。いや本当に最高に面白い映画でした。

伏線とミッシングリンク

約1年前、僕はこんなことを書いていました。

探偵歌劇ミルキィホームズTD がとても良かった件

これで、これまでのミルキィホームズシリーズにあった様々な伏線は、森アーティ以外は大体全部解消されたのではないか、と思います。今回のシリーズは綺麗に終了したので、次はどこにでも進める、 そういう状態にあると思います。1期2期のようなマジキチカオスアニメにもできるし、森アーティと対決するようなガチ的なやつもできるし、普通に推理モノにしたっていいし、たぶんどこにでも進む事ができます。

だいたい綺麗に回収された、これまでのミルキィホームズシリーズの伏線。劇場版で描かれたのは、その最後に残されたミッシングリンクでした。昨日第二幕見直しつつ、過去のミルキィの記事を観てたりしていたので、衝撃とともに、それだけでも十分すぎる感動でした。(モランとかフェルダーとか出てくるのは予告されていたから、だいたい分かっていたとはいえ)

ミルキィホームズとは

ミルキィホームズって、どういう話でしょう?

アホでバカな可愛い見習い探偵のドタバタカオスアニメ、というのはまあ正しくて、それもそれで大切な一面であると思います。カオスアニメ楽しいですよね。最高です。

しかしながら、ミルキィホームズにはそれだけじゃない一面もあって、それは失いかけた夢と友情を取り戻す話であったり、忘れかけていた探偵の/怪盗の本分を取り戻す話であったり、憧れていた存在に少しでも近づくために奮闘する話であったり、失われた自分自身の大切なものを取り戻す話、でもあるわけです。

それはもしかしたら人生の縮図なのかもしれません。ちょっと大げさなのかもしれませんが。

でもね、例えば1期のような、夢と友情を取り戻すストーリーに感動できるのって、どうしてなのかなぁ、って時々考えるんですよ。それに感動できるのは、「それが大切だけど得難いものだから」なのかなぁって。

生きていると辛いこともたくさんあるけど、健気に頑張るミルキィホームズ観てると元気になれるんですよね。ミルキィホームズには、大切だけど得難いものがいっぱい詰まっているのです。

七転八倒

今回のミルキィホームズで描かれていたのは、「七転八倒」です。「七転び八起き」ではない、「七転八倒」なのです。それはこれまでのシリーズでも描かれていた、ある意味ミルキィホームズの本質なのかもしれません。何度転んでも立ち上がる、でもやっぱり転ぶ。そうやって前に進んでいく。僕はそういうミルキィホームズが本当に大好きなんだなぁ、と今回の映画を見て思いました。

敗者復活

今回はミルキィも、G4も、怪盗帝国も、そして敵方のモリアーティ一味も、全て敗者としてスタートします。敗者復活の様子はそれぞれで、またその個性の違いも魅力的だな、と思いました。特に怪盗帝国(というかアルセーヌ)は、これまで見れなかった一面が見れてとても良かったな、と思いました。

ミルキィホームズの復活と成長

その中で、ミルキィホームズの復活はやはり特筆すべきものでした。1期11話を踏まえつつ、今度はネロがいいところをみせてくれて、ってか、この作品ネロ可愛すぎるな。いやみんな可愛いんだけど反則だ。。。。それは置いといて。。。

1期というか、これまではシャロの主人公力でなんとかしてた面が無きにしも非ずだったので、今回は3人がシャロを盛り上げる展開だったの最高に良かったと思うし、これもミルキィホームズの成長なんですね。このシーン、大好きです。

そんなものはなかった

ラストで、モリアーティに対して、シャロは「敗者復活の宝石、そんなものは最初から無かったんです!」と言い放ちました。そして、トイズが復活したのに、トイズを使わずに(多分。ここもう一回ちゃんと見ないとダメだね)、モリアーティを退けました。

ここ、すごく良かったです。

敗者復活の宝石が無かったかどうかは分かりません。むしろ以前モリアーティは持っていたのだから、あったのだとさえ思えます。でもシャロには、ミルキィホームズにはそれは必要無かった。敗者復活の宝石があろうと無かろうと、ミルキィホームズは、いつも七転八倒だから。何度でも立ち上がる、そして転ぶ。これからも、そうやって前に進んでいくのでしょう。

トイズ?(3/8追記)

ラストシーンのあれはトイズなんでしょうか?トイズ忍法なんでしょうか?トイズが復活している描写はありますが、これはこれで謎ですね。

集めてよかった、ミルマーク(3/8追記)

書き忘れてた!この21世紀最高のアニメ映画に、自分の名前がクレジットされているの最高ですね。最高の誉れです。

2期を見ると良い(3/8追記)

ちょいちょいつぶやいていますが、2期を見ると本作の良さがさらに分かって最高に良いです。これについては第二幕(2期)の解説記事をそのうち書こうと思っています。

小衣ちゃんのIQ(3/8追記)

今回の、冒頭の小衣ちゃんのIQは190でした。元々(1期)は130だったし、「190ってなんかすげー半端だなー」、と思っていたのですが、これにもちゃんと意味があります。ってかまじすげぇなミルキィホームズ。こういう小ネタというか、微妙な伏線がすごくうまく撒いてあって本当に凄い。

バリツ(3/8追記)

バリツ、1期でネタとして始まったものなのに、第2幕でホンモノ(1期のあれが正しかったというメタなギャグでもあるのだけど)となり、今回では名シーンですよ。どういうことだ!?最高すぎるでしょ。バリツのところ、シャロとホームズおじいちゃんが目を合わせるんですが、そこが最高に良いですね。

ホームズ家とシェリンフォード家(3/8追記)

本作とは直接の関係はないのですが、そういえば、シャロとおじいちゃん、姓が違うんですよね。これ裏設定みたいのがある、ってのぶPが言っていたのですが、これ、明かされることはないんでしょうか?ないのかもしれないですね。もうこの際だから、墓場まで持っていってほしい気持ちもちょっとあるし、知りたい気持ちもあるなぁ。(のぶPは本作あまり関わっていないようだし、今後関わることは無いはずなので)

残された伏線(3/8追記)

これまでの集大成っぽい本作ですが、なんとびっくり、本作で撒かれている伏線があります(3回目の視聴でようやく気づいた)。これについては公開終了後あたりに書こうかなぁ、と思っています。

まとまってないけどまとめ

とにかく本当にめっちゃ良かった。やっぱりミルキィホームズは最高です。この次は何を見せてくれるのだろうか。本当に楽しかったし、これから先が楽しみです。



2016-02-28 (ネタバレなし)「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」はココが凄い!


ネタバレ無しで頑張って書きます!

昨日、2/27より、「劇場版 探偵オペラ ミルキィホームズ 〜逆襲のミルキィホームズ〜」 が遂に公開されました。

公開初日は仕事で見に行けなかったのですが、本日無事に見ることが出来ましたので感想を。。。と思いきや、やっぱり感想を書くとネタバレっぽくなってしまいそうなので、ネタバレにならない範囲で劇場版ミルキィの良さを紹介できれば、と思ってこの記事を書いてみました。

その1 可愛いキャラクター

ミルキィといえば、やっぱり可愛らしいキャラクターかなぁ、と思います。ゲームもたにはらさんの元のキャラデザもふたミル/TD系もどれも可愛いんですけど、やっぱり1期2期の丸っこくて表情豊かなやつ最高です。冒頭7分の公開映像(↓)にも出てくる魔法少女風の変身シーンとか最高に可愛いですよね。ネロの髪のところとか本当に最高です。(今回のキャラデザは1期2期の沼田さんです。マジかわいい。)

その2 可愛いキャラクターを崩す

すましているととても可愛いミルキィですが、1期2期もそうでしたけど、「表情豊か」というには度がすぎるほど、ぶっ飛んだ変な表情をしていたりします。それもそれで愛らしく、とても可愛いです。

その3 作画の遊び

ぶっ飛んだ変な表情もそうですが、よく見るとシャロリングが飛んでいたり、変なことしてたりするのが面白いです。1期の「空気読め」とかもそうですね。これらは時に監督のこだわりであったり、作画の担当さんの暴走であったり色々らしいのですけど、こういうのが許容されているのって、すごいことなんだろうな、と思います。(今回のパンフレットにもこの話はちょっと書いてあって、必見です。僕は感動した)

その4 ゲスい小衣ちゃん

天才美少女、明智小衣ちゃん、今回もゲスいです。いつも以上にゲスいです。いつものあのテンションがずっと続いていてマジ楽しいです。

その5 いつものミルキィホームズ

ミルキィホームズ。冒頭でトイズを失い、いつものダメダメミルキィホームズです。アホでバカで可愛いです。おっと、「いつものミルキィホームズ」ってのはもうちょっと深遠な意味もあったりしていてなんだけど、そっちはネタバレな方で書こう。

その6 劇場版らしいストーリー

劇場版にふさわしい、ハイスピードかつしっかりしたストーリー展開でした。70分とは思えない高密度で、でもあまりに楽しいので70分があっという間な、そんな映画です。

その7 劇場版らしい、注意事項

上映前に、オリジナルの注意事項ムービーがあります(騒がない、とか前の人蹴らないとかのアレ)。ホントかどうか知りませんが、週替わりらしいです。これも面白かった。毎週見たい!

まとまってないけどまとめ

今世紀最高のアニメ映画といっても過言ではありません。マジですごく面白かった。できるだけたくさんの人に見て欲しいな、と思います。



2016-02-23 インフルエンザを発症した話


まだ完治してませんがほぼ復活したので記事を書こうと思う。

2/19(金)

なんかノド痛いなー、風邪でもひいたかなー、と思う

2/20(土)

「関節も痛いなー。これインフルかもなー」、と思い熱を測ってみたが平熱。とりあえず1日家で大人しくしていた。

2/21(日)

基本家で大人しくしていたが、さすがに暇すぎたので近所には出歩いていた。まだ平熱。

2/22(月)

異常に寒くて、びっくりして起きる。僕は寒がりなので、「今日は寒い日なのかなー」と最初は思っていたが、震えるほど寒いのは常軌を逸しているので、熱を測る。37度あった。

熱はたいしたことないけど、異常に寒いし、体は痛いし、これではどのみち仕事にならないので、会社に休みの連絡を入れて病院に行く。病院で再度熱を測ると、38度あり、「あ、察し…」という気持ちになる。

医師の診断を受けて、簡易検査キットで検査したところ、インフルエンザB型とわかる。薬をもらって、家に帰る。

イナビルという吸入の薬を使って、昼御飯食べて、その他の薬(抗ヒスタミン剤と解熱剤と咳止めと胃薬が出てた)を飲んで寝る。幸いにして、食欲はずっとあった。

あとは起きて、水分摂って、時々ネット見て、会社で破滅的な事象が起きてないことを確認して寝て、起きて、水分とって、テレビ見たりちょっとゲームやったりして、ご飯食べて、寝た。熱は夜の時点で37度代になったので、お風呂もさっと入った。

2/23(火)

昨日の夜はかなり調子が良かったので、今日から復帰できるかなー、と思っていたけど、いざ起きてみたら寒いし体は痛いし最悪の目覚めだった。解熱剤が結構効いていたらしい。会社にもう1日休む連絡を入れて、ご飯食べて、寝て、起きて水分とって(以下略 みたいな生活をしていた。

多分明日からは復活できる気がする。(熱下がっても2日は出社しちゃダメよー、と言われているので、しばらく自宅作業にはなるけど)



2016-02-17 Test::More で xUnit ライクな setup/teardown とかをやる話


昔々、subtest と Hook::LexWrap を使って xUnit みたいな setUp, tearDown をするというのを書いてたのですが、もっとシンプルで良い感じなのができたのでご紹介。

ほぼほぼ、@lestrratさんのRe: “Test::Moreのsubtestのテストはどう書くのが一番きれいなのか” のパクリなんですけどね。

subref でやる方が、柔軟性は高いと思うのですが、setup は一つのテストファイルで共通化しといた方が良い、というか、共通化できないのはやばいので、subref にするのはやりすぎかなぁ、と思ったので、普通のサブルーチンにしてみた感じです。

use strict;
use warnings;
use Scope::Guard;
use Test::More;

BEGIN {
    # startup の代わり
    diag "startup\n";
}

END {
    # shutdown の代わり
    diag "shutdown\n";
}

sub teardown {
    #...  ここに teardown でやりたい終了処理を入れる
    diag "teardown\n";
}

sub setup {
    #... ここに setup でやりたい初期化処理を入れる
    diag "setup\n";
    return Scope::Guard->new(\&teardown);
}

subtest 'テストケース1', sub {
    my $guard = setup();
    #...以下テストケースを実施
    ok 1; #dummy
};

subtest 'テストケース2', sub {
    my $guard = setup();
    #...以下テストケースを実施
    ok 1; #dummy
};

done_testing;

xUnit 系に馴染みにない方のために、一応説明しておくと、

startup: 最初に1回だけ実行
shutdown: 最後に一回だけ実行
setup : テストケース毎の、最初に1回だけ実行
teardown: テストケース毎の、終わりに1回だけ実行

といった処理です。重いけど必要な奴は startup で初期化し、shutdown で廃棄。テストケース毎に必要なリソース(大抵DBとかそういうの)は、setup で初期化して、teardown でキレイにする。といった感じですね。

実行すると、こんな感じになります。

$ prove -MTest::Pretty test.t
/Users/tsucchi/test.t .. # setup
    # startup
    # teardown
/Users/tsucchi/test.t .. 1/?     # setup
    # teardown
# shutdown
/Users/tsucchi/test.t .. ok   
All tests successful.
Files=1, Tests=2,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.01 cusr  0.00 csys =  0.03 CPU)
Result: PASS

上記の通りに初期化・終了処理が実行されてるのが分かるかと思います。



2016-02-15 jekyll 3.0 に上げてみました


jekyll の手元の環境を jekyll 3.0 ベースに更新してみました。

この blog は github pages + jekyll でサーブしてるのですが、なんか最近、github から page build warning とかなんとかで、「redcarpet サポートしなくなるから、kramdown に変更してやー」って来ていて、とはいえ、ここに書いてある手順通りにやってても、fenced code blocks が動かなくて、

こんな感じで、半ギレだったのですが、ようやく原因がわかりました。

現時点でリリースされている、最新の jekyll は 3.1.1 なのですが、github pages で使われているのはどうやら 3.0系(3.0.3?)のようです。

何も考えずに gem install jekyll ってやると 3.1.1 が入ります。しかしながら、3.1 系は fenced code blocks がサポートされていないのか、バグってるのかよく分かりませんが、とりあえず僕の blog だと動きません。3.0.3 に下げ(?)たら動いたので、github pages で blog をサーブしたい方は 3.0系に下げるのが吉っぽいです。

これ、バグってるのか 3.0系の方が github pages 周りの機能が進んでて、フロントポート(?そもそもバックポートってあるけど、フロントポートって今回初めてだぞ)されてないのか、よく分かりませんが、そういうことです。今後のことはよく分かりませんが、とりあえず今は 3.0.3 を入れとけ、ということです。現場からは以上です。