平成二十九年、夏のいろいろ。
平成二十九年六月のいろいろ - /var/lib/azumakuniyukiって題名で久しぶりにブログを書いて「よし大晦日までに七月、八月と月ごとの記事を書くか」と思っていつの間にか二週間が経って今日が大晦日、何も書かないまま大晦日になってしまいましたので、まとめて夏のいろいろ出来事を書いておこうと大晦日の夕方に決めました。
取材してもらった
夏で一番大きな出来事は「エンジニアHub」さんの取材を受けて「ニッチな領域に勝機あり!人生をメールサーバに捧げたエンジニアの生存戦略」ってタイトルで記事にしてもらいました。
取材していただいたのでSisimaiとかメールの話とか喋って高瀬川で写真を撮ってもらいました / “ニッチな領域に勝機あり!人生をメールサーバに捧げたエンジニアの生存戦略 - エンジニアHub|若手Webエンジニアのキャリアを考…” https://t.co/XNHDTYvcJY
— ネコ物質₁₈₄₁ (@azumakuniyuki) August 23, 2017
きっかけ
Perl入学式でおなじみpapixさん経由で「インタビューを受けてもらっていい?」って打診を七月中旬ごろにもらいました。
聞いてみるとメディアのエンジニアHubさんは「若手Webエンジニアのための情報メディア」って副題がついていて「僕は若手でもないしWebのことなんて何も知らんしなぁ」でサイトの趣旨と離れすぎてるから断るべきかと思ったのですが「地方でいろいろ開発してるエンジニアの姿が若手Webエンジニアのこれからのキャリアを考える上で役立つんちゃうかってコンテキスト」という説明をもらい、それならばと受けることにしました。
インタビューしてもらいに行く
八月一日、うちの会社は狭いので自転車で10分ちょいぐらいのはてなさん京都オフィスへ行ってインタビューをしてもらいました。テレビ(KBS京都)のインタビューや新聞(京都新聞)のそれとはまた違うやろうと、予めはてなさんからもらっていた「これとこれとこれを聞くからよろしくです」なインタビュー概要に対しての全回答を、かなり脇道に逸れた情報も入れた回答想定文書をMarkdownで書いたのを渡していて、それを元にインタビューを組み立てて進めてもらいました。
事前に「こんな感じの回答しますよ」なMarkdownファイルを作ったのはスタッフの皆さんに好評であったようで、スパーンと予定時間に収まった気がします、たぶん。回答するつもり、聞かれたら答えるつもり、話題として展開しやすい関連事項を雑に書いただけの文章でも結構役にたつもんやなぁと思いつつ、やはりインタビューアーさんはプロやし、うまいこと素材を預ければ最も良い感じに仕上げてくれはるもんやとも思いました。
最後は「京都っぽいとこ」で撮影、御池通の高瀬川で写真を撮ってもらいました。
いや、自分で言うのもアレですけど、僕が死んだら墓石に記事のURLへ繋がるQRコードを彫るべきなぐらい、すごく良い記事に仕上げていただきました。題名や見出し・小見出し・写真も全部良い感じでして、遅ればせながらはてなのスタッフさん、大変お世話になりました、ありがとうございました。
ご尊顔を初めて拝見しました。ツイッターのアイコンと違う…!!
— suno (すの) (@suno88) August 23, 2017
ネコの服
これはふざけているわけでもないですし、遊び半分でもないですし、インタビューアーさんの依頼でもない、ちゃんとした意図があるものでして、それは次の通りです。
- 記事になると僕・作ったプロダクト・所属会社の宣伝になる(僕が得る利益)
- はてなさんやエン・ジャパンさんが得る利益は何か(細かい中のことはわからん)
- 記事のPVやB!数にShare数が多くなれば運営側の利益に多少は寄与できそう
- 読んでいただく読者さんに役立つOR面白かったと思える話ができればなお良い
- ↑三方良しって言うしな
- 他の記事のShare具合をみるとアイキャッチ画像がある
- 内容の濃い記事は1000を超えるB!がついている
- 基本的にはメールとかSMTPとかそういう話になる予定やし
- その分野に興味がない人でも読んでもらえる動機付けは一つでも多く
- そこでネコの服(三枚あるうちの一枚)
- ↑普段から着てるしアイコンも全部ネコやしおかしくない
- むしろネコ派の正装
- メールやSMTPのことよりもB!コメントで言及しやすい(たぶん)
Macbook Airのネコ
これは春頃に出先の大きな喫茶店で全く同じMacbook Airを持っているお兄さんと隣同士の席で、双方トイレに立って戻ったタイミングで間違って持っていかれそうになったことがきっかけで、とりあえず間違い防止を目的として目立つよう、エンジニアのみんながやってるみたいにシール貼るか、の結果です。どう貼るのが綺麗か、あるいは収まりが良いか、あたりを思案して「ネコ」になりました。
ネコ関係
今年は異常に外猫と会う回数が多く、8月は1ヶ月で363匹の外ネコに会いました。平均値は11.7匹/日で、標準偏差や最大値は計算してませんが、最も多い日で30匹弱ぐらいのネコにあった気がします、たしか。363匹/月はこれを書いている大晦日の時点で年間の最高記録です。
ニャーン(今年2¹⁰匹目) pic.twitter.com/1zoDipG6Zp
— ネコ物質₁₈₄₁ (@azumakuniyuki) August 16, 2017
他、夏のいろいろ
錦湯でのライブイベント手伝い
祇園祭前、いつもお世話になっているxtetsujiさんの同級生である麻衣さん(とwacoさん)のライブを行きつけの銭湯である錦湯で開催するお手伝いをしました。
本日の錦湯劇場は「waco'sバラエティ&麻衣!」
— ネコ物質₁₈₄₁ (@azumakuniyuki) July 3, 2017
18時半開場の19時開演、中京区堺町通錦小路下ルの錦湯にて。
終演後の20時からは落語のThe錦湯( @TheNishikiyu )です! pic.twitter.com/VYlughcOHA
不動温泉へ行って、それから祇園祭
暑いし、左京区の山奥なら多少は涼しいかなって、避暑も兼ねて不動温泉へ行って、祇園祭神幸祭で西御座のお神輿に参加してました。
風呂あがりサッパリやし、ちょっとSisimaiの開発をする。まぁネコでいう爪研ぎみたいなモン。それとmineoでのテザリング通信速度とパケット使用量を把握したり。 pic.twitter.com/RlRq3frOzp
— ネコ物質₁₈₄₁ (@azumakuniyuki) July 15, 2017
御旅所の手前で待機してるとこ pic.twitter.com/ZOcfO7QeTg
— ネコ物質₁₈₄₁ (@azumakuniyuki) July 17, 2017
前回はしばらく筋肉痛で苦しんだ反省点があるので、今回はあまり調子に乗ってガンガン神輿を担ぐのを控え、適度に入って出て入って出て歩いて入って出てで八坂神社から中京区の東側をぐるぐる回って四条の御旅所へ着きました。
Sisimaiの開発
Ojの動作が...?
Ruby版Sisimaiで使ってるJSONライブラリOjで、特定のバージョンでのみシリアライズした結果が違う現象にはまりました。調べてみるとOj 2.18系のみ、Sisimai::Addressオブジェクトの中身が丸ごとシリアライズされる(想定しているのはメールアドレスのみやのに)ようで、 想定した動作に戻っているのを確認したOj 3.0.0以上を要求するようsisimai.gemspecに書いて解決しました。
纏めるとSisimai::AddressオブジェクトをシリアライズするのにOj使ってて
— ネコ物質₁₈₄₁ (@azumakuniyuki) August 28, 2017
2.17.5以前 = メールアドレスだけの文字列
2.18.* = アクセサ全部入ったハッシュ
3.0.0以降 = メールアドレスだけの文字列
で2.18系だけ意図してない動作やで、これ。
Sisimai::Addressの大幅改修
メールアドレスってRFCに従って割といろいろ形式があって、
- neko@example.jp
- Sironeko nyaan@example.jp
- "Team Kijitora" kijitora@example.org
このあたりは見慣れた形式でまぁ良いとしても、
- neko(nyaan)@example.org これはneko@example.jp
- neko(nyaan)chan@example.jp(cat) これはnekochan@example.jp
- Sironeko(White) <(nora)neko(nyaan)@example.(neko)jp> これはneko@example.jp
(nyaan)とかはメールアドレスのどこに何個書いても良いコメントってことで、滅多に見ない形式ではあるのですが、これらも有効なメールアドレスであって、さてSisimai::Addressでメールアドレスを取り出すコードに投げ込むと全然意図した結果にならなくて、かなり困りました。
結果、これらの多様な形式で現れるであろうメールドレスを正規表現で正しく取り出すのは不可能ってことで、一文字ずつ分解してオブジェクトを作ることにしました。メールアドレスの解析コードは全部書き換えた気がします、たぶん。
以上が平成二十九年の夏にあったいろいろです。九月は北海道へそばを食べに行っているので、さすがに大晦日に二本も記事を書くのはアレなので、できれば松の内にでもかければ良いかなぁってところで筆を置くことにします。