明日の旅行の食料を買いに行く。といっても二人ともぜーんぜん食べる量が少ないので安上がり。
チェスの対戦をまたやるらしいね。そういや将棋は取った駒をもう一度使えるからアルゴリズムが難しくなるらしい。
ちょっと前はコンピュータ将棋は初段レベルだってのは覚えてるけど,今の最高レベル(東大最強将棋だっけ?)ではどれくらい何だろう?
今日は母方の祖母の墓参りへ。
村に着いたら何故か小さな商店へ。はて、何用?と思えば、寺の住職が既に他界しており墓地、本堂は村で共同管理という状態。さすがに驚いてしまいました。
本堂に到着後、粛々と掃除を終えてお参り終了。この年になって墓参りも良い物だなぁと思えるようになってきました。
1週間ぶりに最寄の本屋へ行って、モーニングやらイブニングやらをまとめ立ち読み。
中学時代の同級生のI沢からパークゴルフの誘いがきたので、3ホール周りながら同級生のだれそれが結婚して子供が出来ただの、何処そこで働いているだのそんな話をする。
これを作ったときに思ったのが、他社がAccount Auto-Discoveryを利用して他のサービスを実装したときにどうすりゃいいんだってのがあったんですけど、MovableTypeのプラグインのように呼び出し時にパラメータを指定する方法はあまりスマートでは無い感じがしたので、contribに突っ込んだような形になってます。
せっかく設定画面を利用してパラメータを指定することが出来るのに、パラメータをいくつも記述してプラグインを呼び出すというのが何かやだというだけなんだけど。
他社が同じようなサービスを始めた時が問題だよなあ。設定画面からの編集のみで複数のAccount Auto-Discoveryを埋め込むのはかなり冗長になってしまいそうだし。結局、MovableTypeの場合と同じようにAccount NameとAccount ServiceをパラメータとしてAccount Auto-Discoveryを埋め込むのがスマートな方法なんだろうか。
kdmsnrさんがhiki用の変更点を書いてくれたので、ローカル変数とかをいじってhiki用のバージョンを用意しました。 account_ad-hiki.tar.gz からどうぞ。
簡単な変更だけで動くので楽だわぁ。
作業用ノートのメモリは512MBで128MBはVMware用として予約済み。こんな状態だとFirefoxとiTunesを起動しただけでスワップ発生しまくりで一杯一杯なので、メモリを増設しようかなと計画中。
最近はメモリだとかCPUだとかのスペック関係の話は全く追いかけてなく、適切な価格帯がさっぱりわからないので0から調査。なんか最安値の店は発送手続きとかが面倒だから、価格は1.5倍だけどAmazonで買ってしまいなみたいな堕落モードの思考回路が優先的に出てくるのが老いたなあと感じる。
del.icio.us からのリンクタイトルの続き。いまいち [from username] がつく条件がわからなかったので、 IRC で聞いてみたら del.icio.us/network の RSS のタイトルにくっついているとのこと。そういうわけで、単純に del.icio.us から開いたページにはタイトルが付かない。
なるほど、next 1470.net に URL をメモした時に [from username] がくっつくのは、内部でクロールしているデータが del.icio.us/network の RSS だったりするのが原因だったりするのかな。
例によって、円筒型の冷凍ラム肉とベル食品のタレで食べるジンギスカン。北海道人的には、この組み合わせが家庭的なジンギスカンなので、今後ジンギスカンの話をするときはそこの所よろしく。
とりあえず写真だけ。中身は後で書く。
朝は結局だらだらと9時まで寝てしまったので朝風呂とかバイキングとかは行けずに送迎バスに揺られて大通りまで帰還。その後は軽く apple store で遊んだり、パルコの8階でうどんを食べたりしながら帰宅。
暑さと蒸してダレ気味だったので冷やし中華はじめてみた。ごちそうさまでした!
ニコニコ動画をダウンロードする Plagger で使っている FLV::Info が一部の動画で動いてなくて調べてみたら
Failed to read FLV file: Tag size is too small (0) at byte 42551195 (0x289479b)
なんて怒られて ffmpeg にファイルが渡されていない状態だった。
とりあえずぐぐる先生に聞いてみると mizzy さんも同じ問題に遭遇しててパッチ作成済みだったのでローカル環境の FLV::Info に当てて場当たり対処した。mizzy++
久しぶりの平日休暇なので金融機関関係の処理。とりあえず、小銭貯金箱が満期になったので毎度おなじみ郵便局で両替してから、以前にセゾンの機能が切れたゆうちょ銀行のキャッシュカードの切り替え申請。
このカードの切り替えだけど、古いカードは郵便局に預かり状態になった上に申し込んでから3週間もかかるんだな。期限が来ると自動的に切り替えが行われるとはいえ、会社(民営化だけど)の都合でクレジット機能を外しておきながら、カード番号を残したまま1-2年放置ってのはどうなんだろうね。
オレの場合はゆうちょ銀行はメインバンクではないのでカードが手元に無くてもそんなに支障はないけど、ゆうちょ銀行をメインバンクにしている人はめんどくさそうだ。
Pathtraq の page_counter APIを使って tDiary の設置 URL の Pathtraq 定番/人気/注目 Hit 数を表示するプラグインを作ってみた。
http://coderepos.org/share/browser/platform/tdiary/plugin/pathtraq_counter.rb
保持するデータはキャッシュにしたりしようかなとか考えたけど、わざわざ計量な JSON で取得できるものを PStore なんてのに保存するのも微妙だし、かといって Plain text で保存しておくのも何だかなあと思ったので、この辺は表示するたびにアクセスするようにした。
最初はカウンタだけではなくて my_hotentry のように注目の URL を羅列するプラグインにしようかと思ったんだけど、pathtraq API の page_counter が返す JSON フォーマットが JSON.parse できなくて時間をつぶしてしまったので今日はここまで。結局、JSON.parse できない問題は、JSON のハッシュキーが文字列として表現されていなかっただけだった。この辺は中の人に連絡して修正済み。pathtraq++
API を呼んでデータ持ってきてるだけなんで、あんまり面白くないなー。どうせならグラフくらい書きたい。帰省中にやるか。
TVよりもWassrやTwitterで見て地震があったということを知るそんな最近。
今年の夏は函館の方へ長距離ドライブの旅行に行くことにした。火曜日はまだ高速道路のETC割引始まっていないので、定山渓からニセコを抜けて長万部を経由するルートで函館まで5時間ほどドライブ。
今回は特に行く場所も決めないで寄り道がコンセプト。
長万部を抜けた当たりで噴火湾の撮影でもしようと思って、道の駅的な施設に行ってみたら、すぐ近くにハーベスター・八雲という農場施設が会ったので寄って昼ご飯を食べてみた。
なにやら企業と八雲が共同出資して建てた施設みたいで、カーネル直伝のチキンや農場で育てた作物を使ったできたてのピザを食べることができるというすばらしい寄り道施設。
草原も良い感じで子供連れとかで賑わってたなあ。あんまり食べ過ぎると眠くなるので、フライドチキンとピザを軽く食べてからドライブ再開。
八雲を抜けてから森町に入ったところで第二の寄り道ポイントとして濁川という温泉郷に行ってみた。ここは、温泉はおまけで、むしろ地熱発電や農業利用が主な地域らしい。
温泉は濁川温泉の一番奥にあるふれあいの里というところの、貸し切り露天風呂(1時間3000円)に入った。泉質はふつーの温泉な感じだったけど、貸し切りで露天風呂にしては安くて、施設もきれいなのでオススメだと思う。
というか、貸し切りには露天と内風呂タイプのがあるんだけど、内風呂タイプのはその辺の家よりもでかいコテージってのが「なんだこれ」だったなあ。グループで借りると良いかもしれんね。
そんなこんなで19:00くらいに函館に到着。この日の夕食はご当地バーガーでおなじみのラッキーピエロのハンバーガー。相変わらずここのハンバーガーはうめーな。
ホテルについてからは相変わらず温泉に入ってから就寝。
Vista で 17 件、7 で 15 件であった。
何を言っているのかわからねーと(ry
パッケージ名は ruby1.9.1 なんだけど、入っているバイナリの RUBY_VERSION は 1.9.2 という話。この日記も squeeze の ruby1.9.1 を使うように変更してみたので、この前いれた野良ビルドはさっくり削除してしまった。
RubyKaigi でも紹介したtravis-ciのtDiary が1ヶ月くらいテスト結果がレッドの状態が続いていたんだけど、オールグリーンに戻ったのお知らせ
http://travis-ci.org/#!/tdiary/tdiary-core
というのもテストに関係ない部分の大きな問題として10分以上かかってしまうテストは途中でkillされてしまうというのがあって、tDiary ではなぜか 1.8 系で10分を必ず超えてしまってテストが失敗してしまうという状態だった。これは1.9系だと 5-6 分で終わるのでずっと謎だったんだけど、つい最近の travis では 1.8 も 1.9 も平均して6分程度で終わるようになったのでオールグリーンになったのであった。
他にも travis では rbx もサポートしたり、JRuby もサポートしたりと 複数のplatform での build matrix を構築するのに Ruby の CI としては、一歩抜きん出た感じがするなー。
今は travis-ci 上で間借りしてるだけだけど、これだと github の private repo が使えないので、そのうち社内でも構築してみるつもり。
誕生日にもらった「100人のプロが選んだソフトウェア開発の名著」の中で3人の人がオススメしていたので、amazon を眺めていたら kindle 版がでているので買って読んでみた。
顧客の声をちゃんと聞いて、真面目に経営していたはずなのに、新しい技術によってもたらされる市場に対応できなくていつの間にか負け組に...みたいな話をちゃんと分析している良書だった。とくに後半の破壊的技術の市場においては「学習」して「変化に対応しなければいけない」と書いてあるので、昨今のリンスタとかアジャイルに触れている人は読んでおくと良いと思う。
100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊
翔泳社
¥1,980
イノベーションのジレンマ 増補改訂版 (Harvard Business School Press)
翔泳社
¥2,160
rubocop はとても便利だけど eval とか別に知ってて使ってるし、if foo = bar
やめろとかまで言われると知ったことかとなってしまうので ~/.rubocop.yaml に下のような内容を書いて動かしている.
Lint/Eval:
Enabled: false
Lint/AssignmentInCondition:
Enabled: false
あと、「今すぐ直せオラオラ」みたいなやつは Lint/UselessAssignment くらいなので最近は
$ rubocop --only Lint/UselessAssignment
だけで十分な感じになっている。これでもかなりゴミコードを検出できるので rubocop 素晴らしい。
術というか単なる設定コピペである。
https://www.howtoforge.com/running-mailman-on-nginx-lemp-on-debian-squeeze-ubuntu-11.04-11.10 にあるように以下の location directive を nginx の conf に雑に追加する。
location /pipermail {
alias /var/lib/mailman/archives/public;
autoindex on;
}
これで http://lists.ruby-lang.org/pipermail/jruby/ が使えるようになった。便利。
夏休みの自由研究その2(その1は mailman のアーカイブ)
Redmine 3.1 が出ていたので 3.0 で動かしている bugs.ruby-lang.org をアップグレードした。アップグレード自体はとにかく楽になるようにしていて
という感じ。bugs.r-l.o 自体は heroku で動かしているので pg:backup で db のバックアップを作ってから、デプロイと heroku run bash
してから bin/rake db:migrate RAILS_ENV=production
して heroku restart
って感じで終わり。便利。
数ヶ月前に入会したサントリー美術館のメンバーズクラブでは、展覧会の期間に1日だけメンバーズクラブ会員のみが入場できる内覧会というのを開催している。今日はちょうど藤田美術館の曜変天目茶碗の展示の内覧会だったので妻と見に行ってきた。
内覧会、ほんとに人がいなくて曜変天目も一人で独占して360度ぐるりと回ってみることが出来て大変良かった。
日本の街中でふと海外の観光客のカップルが片方が背負っているリュックからチューブを出して水を飲んでいたのをみて、これはいいなと思いモンベルで探して買ってみた。
シンガポールに行った時に実際に水を入れて散策するときに使っていたのだけど、水を飲みたいというときに海外でリュックを下ろして前に出すということやボトルを開けるのに荷物を置いて、ということをしなくてもすぐに水分補給ができるので機能的にもセキュリティ的にも良いことずくめで大変良かった。おすすめ。
スープカレー食べたいなあという気持ちが高まったので神田の秋葉原よりの位置にあるカムイでスープカレーを食べてきた。今まで全く知らない店だったけど、トマトベースのスープで美味しかった。
昼食の後は神田鍛冶町方面へぶらぶらっと散歩して近江屋洋菓子店でケーキを買ったり、志乃多寿司で寿司を買ったり。たまに来るけど神田のこの辺の雰囲気たいへんよい。
そのまま散策してから mAAch で軽く買い物をして再び秋葉原駅から帰宅
なんで今頃、と思ったけど Nexus 6 に Android 7.1.1 のアップデートが来ていたのでアップデートした。
さすがにもう枯れているのか、特に問題はなくて何が変わったのかはわからない、という感触。もうアップデートは来ないみたいだし、Pixel も期待できないし、このままだと iPhone 8 Plus などに移行して終わりかなあ。
最近、gentoo の organization や、npm で広く使われているライブラリの乗っ取りなどが流行っていることもあるので github.com/ruby を 2FA 強制にして、設定してない人は organization から remove という感じにした。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/88332
設定後に再追加すると以前の権限やチームの設定がそのまま復活、というのはよくできてるなと思った。
GitHub が GitHub Actions という built-in CI/CD をローンチしたので夏休み1日目はひたすら触って完全理解していた。
https://github.com/features/actions
これ、バックエンドは Azure Pipelines で public repository だと無料、並列数も 20 という内容なので他の CI サービスは CPU/RAM で殴り合いしても MS には勝てないので、Developer Experience(DX) で戦うしかなくなるんだけど、そこも GitHub がちゃんとハンドリングするだろうから、中期的にはとにかく厳しい戦いになると思う。てか、撤退じゃないかな...。
あと、以前にリリースした HCL バージョンの GitHub Actions と混同しやすくて、機能追加というよりは以前の HCL バージョンで作ったフックの口などをそのまま活用した Azure Pipelines インテグレーションです、というピボットという形だと思う。思ったより利用者いなかったのかなあ。
ただの利用者としてはソースコードリポジトリと密結合した CI は gitlab やAWS などではすでに提供されていたものなので便利だし、ライブラリのメンテナとしても Linux, Windows, macOS のマルチプラットフォームのサポートをするために Travis, AppVeyor, AzurePipelines... など複数の CI のアカウント管理や yaml の書式を学ぶのは本来必要のない学習なのでよかった。まだベータバージョンという状態だけど、ruby org では使えるようになったので、面倒見ているライブラリは GitHub Actions にせっせとマイグレートすることにした。
できたのはだいたいこの辺。ベーシックな形式としては以下のような内容です。rdoc のフォルダの yaml ファイルたちをコピーするだけでほとんどのライブラリで使えるんじゃないかな。
name: ubuntu
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: [ '2.6.x', '2.5.x', '2.4.x', '2.3.x' ]
steps:
- uses: actions/checkout@master
- name: Set up Ruby
uses: actions/setup-ruby@v1
with:
version: ${{ matrix.ruby }}
- name: Install dependencies
run: |
gem install bundler --no-document
bundle install
- name: Run test
run: rake
いくつか触っていて気が付いたポイントをつらつらと書く。
Travis と違って、RVM が integrate されているというものではなく、 https://github.com/actions/setup-ruby というリポジトリによって開発がなされている action という task の塊を使って ruby のインタプリタをインストールする形式になっている。なお、この setup-ruby が動くのは今の所 ubuntu, windows vm だけなので要注意。また、setup-ruby で提供されているバイナリは 2.4-2.6 なので ruby-head や jruby-* のテストを実行するために ubuntu vm に RVM をインストールしてバイナリをセットアップするということで Travis でやっていたことはほぼ移行できた。
ビルドマトリックスは Azure Pipelines で提供されていたように、自分で自由に変数を定義して step に渡すことで可能となる。とりあえず OS, Ruby のバージョンなどで組むのが良さそう。ただし、allow_failure に相当する機能は今の所見当たらないので、とりあえず走らせておくか、という物をどうするかはまだ探している最中。
通知機能についてはまだまだというレベルで Azure Pipelines もこの辺が微妙にしょぼくて @k0kubun くんと唸ってたというのはあまり変わってないぽい。GitHub Actions については GitHub から設定できる secrets や Slack action 、そして HCL バージョンで培ったイベントフックを多用して構築するということになりそう。こういうのやりたくないから pull-request の通知に紐づいて通知、されるだけではなく、cron などで定期的に回したものについても、失敗したら通知するなど、投げっぱなしものものについても GitHub でサポートしてほしい。
ひとまず ubuntu と macOS についてはほぼ完全に移行できる、Windows については extension のビルドに必要な環境を手探りで探しているという状況なので、pure ruby なライブラリやプロジェクト、Windows のサポートは不要というリポジトリについてはとにかく移行するのが良さそうです。
20並列、本当にすごくて、全部横に並べればすぐ終わるという状態で AppVeyor や Travis の pending はなんだったんだ...というくらい最高の DX なのは間違い無いです。(MS の)マネーはパワー。
rubygems の gem をすべて検索できる gem-codesearch で扱う gem やファイルが増えすぎて cindex のインデックス上限である 4GB を超えてしまってどうにもできなくなっていたので、同じく google が作ってるコード検索ツールの zoekt に置き換えた
https://github.com/akr/gem-codesearch/compare/9130e93...3efbaa3
置き換えて検索はできるようになったんだけど、だいぶ遅くなって 90sec くらいかかるようになってしまった。インデックスをインメモリにできる仕組みがあればいいんだけど、シュシュっと検索するようにはちょっと厳しくなったなあ。
他の書評にもあるようにだいぶ中だるみというか何か繰り返すんだこれというのが続く中で、やっと最初に出てきた彼女を救うという目的は達成した...はずなのにまだ続くのか!というところまでだった。23 の展開でさすがにこれで最後の流れかなあとは思うけど続きは気になる、というレベルなので最後まで追ってみることにした。
この日は札幌市内ではなくて、前から気になっていた美唄周辺にある美術施設を梯子してきた。札幌から高速道路に乗って滝川まで走りまくってから普通道をのんびりとドライブ。
まずは「かぜのび」という滝川町の外れにある閉校した小学校の跡地に作られた五十嵐威暢というアーティストのアトリエ兼美術館へ。この施設は雑誌で眺めて知ったんだけど、今までこんな場所が滝川にあったなんて思いもよらなかった。
で、五十嵐威暢というアーティストも初耳だったのだけど、この施設で色々みていると札幌駅の時計盤や東京の施設にある色々なデザインやアートも手掛けているというのを知れてとてもよかった。この手の、自分の目や知識の解像度を上げてくれる体験は本当に貴重でありがたい。
静かでとてもいい施設なんだけど、春から夏にかけてのみ開いているというのと、行く途中の道もなかなか狭くて要注意という感じなのでちょっと気合を入れないといけないかも。
ちょうど昼時だったので滝川から美唄の方へ南下して、途中にあるストゥブというパンをメインとしたカフェによってランチタイム。ここは Google Maps をぶらぶら眺めてたまたま見つけた店だったのだけど、店内の雰囲気といい出てきた食事といい大変良くて満足。ついでに 35MAGAZINE という北海道ローカルのフリー雑誌も知ることができたのでよかった。
昼食の後はやや東に移動してアルテピアッツァ美唄へ。ここは札幌駅の入り口にある待ち合わせ場所としてお馴染みの彫刻の作者である安田侃の作品が置いてある場所で、ここもぶらぶら歩いて散歩ついでに「あー、みたことある」というのをやるのにちょうどいい場所だった。
ここも廃校になった後の敷地をリニューアルして活用しているという美術スペースになっていて、旧校舎にあるミュージアムショップで図録などをいくつか購入した。北海道は各所に廃校となってしまった建物が点在しているけど、それらをアートスペースとして活用するのは個人的には賛成なので、引き続き頑張ってほしい。
美唄の後は再び高速道路に乗って札幌まで帰還。お疲れ様でした。
この日は札幌近郊を観光して自分の実家である室蘭に移動しよう、という計画でレンタカーを借りてまずは東の厚別の方へ。
開拓の村と同じエリアにある北海道博物館に行って化石や開拓の歴史資料を眺めてきた。写真は道民にはおなじみのナウマンゾウの化石。
ちょうどこの時期は縄文関連の企画展をやっていて、国宝の中空土偶や火焔式土器などが展示されていた。都内だとこの手の展示は大行列に大混雑という内容なんだけど、のんびり見ることができる上に撮影もできるという感じなので本当に良い。
野幌付近から南下して、北広島のハズレにある広瀬清香園という盆栽園へ。ここは以前にベランダガーデンの手入れで参考にするのに見つけた盆栽チャンネルの主催で、動画でいつも解説をしている主人に会いたいと思って来てみた。ちょっとだけ芸能人に会いに行こう、という感じになってしまった。
園内をぶらぶらしていたら、主人らしき人が盆栽の手入れをしていたので挨拶をした後に盆栽を見て回って、タイミングを見て話しかけて見たら、動画通りの語り口で盆栽の紹介をしてくれたので「あ、本人だ」となって妻と一緒にテンションが上ってしまった。
最終的に、深山霧島という小ぶりで花をつける盆栽を買うことにしものの、主人が延々とこの深山霧島について喋り続けて「お会計は...」って感じで面白かった。飛行機に乗って運ぶ必要があるので、大きいものは買えないのが残念。定期的に寄って盆栽を揃えたいなあ。
北広島に来たのでエスコンフィールドを見てこようか、と思い日ハムの試合の日程を調べてみたらちょうど試合がなく、空いてるのでよさそうとなり、エスコンフィールドまで行ってみた。北広島の駅から距離がある、という記事を見てどういう位置にあるのか気にはなっていたけど、バスがあるといいとはいえ、別に歩いていけない距離じゃないじゃん、とはなった。むしろ、1-2区間のためにバスに乗るか...?という感想だった。
この日はキッズデーでお祭りっぽい出し物がたくさんあって家族連れが多かったのもあるけど、レストランエリアで食事を買って、グランドの観客席で食べるというエンタメになっていて、それなりに良かった。
エスコンフィールドは日ハムの直営のレストランがあって、前から目をつけていたミートフルというレストランで肉プレートを頼んでみた。日ハムの中でもカール・レイモンブランドの食材を使ってるようでとても美味しかった。店内では日ハムのハイライトシーンを大画面で放送していて、プロ野球に全く興味がない自分でも1試合くらいは見てもいいかなあという気持ちになった。むしろ妻と自分の両親それぞれを招待するのがいいかもしれない。
最後にグッズショップなどを眺めていたら、nanoblock のエスコンフィールドが限定発売していたので買ってしまった。こんなモデルを販売していたというのは全く知らなかったので大収穫。他にはシャケ丸という鮭のぬいぐるみやお菓子をいくつか買って、再び移動開始。なかなか楽しかった。
北広島から室蘭までは高速道路で移動して、途中で夕食用の持ち帰り寿司を東室蘭で買ってから実家へ。
家についてみたら、5月には耕しただけの畑が野菜だらけになっていて、すっかり農家になってしまっていた。やることがあるのはいいことだ。
妻と一緒に畑をウロウロして、この辺の野菜は箱に入るだけ東京に送って、とかやったりしていた。とりあえず作るものの、実家では食べきれないのであちこちに配ったりしてるらしく、うちとしては毎月着払いでもいいので送ってくれ、とか話していた。
実家で夕食を食べた後に、この日の宿泊地である東室蘭のルートインgrandというホテルに移動。ドーミーインがダイナミックプライシングを導入した結果なのか、1泊15000円とかになっていて、「ドーミーインってそういうブランドじゃないじゃん?」と最近はイマイチな評価になってきたのでルートインgrandにしたのだけど、ドーミーインに求めているものがそのまま提供されていて値段も1人6000円ちょっと、という感じだったのでとても良かった。
今年のお盆は父親の実家に集まろうと北海道の北東にある枝幸まで行くことにした。枝幸というのは紋別から北に100km、稚内から海岸線を時計回りして120kmという場所で、レンタカーを借りていくのは必須としてどうしたもんかなと考えたところ、妻も運転できるし、交代しつつ、札幌か新千歳から車で行くことにした。それでもお盆ということで午前から昼にかけては飛行機代が一人3-4万だったりして、流石に無理ーって感じなので夜の便にして、この日は札幌の妻の実家に宿泊という日程。
羽田は流石に混んでいたものの、夕食がわりで蕎麦とカツ丼を食べておいた。結局、札幌に着いたのは20時くらいで、妻の実家で軽く挨拶をして風呂に入って寝る、って感じだった。
puma のメンテナでもある Nate が Ruby on Rails パフォーマンス アポクリファ という面白そうな本を発売したので、サクッと読んだ。
https://nateberk.gumroad.com/l/apocrypha_ja
Nate のコンサルの経験から得られた知見の積み重ねの紹介という本なので、Heroku や Newrelic 推しなのはしょうがないものの、Ruby やプログラミング全般におけるパフォーマンスとビジネスバリューなどとの考え方を俯瞰するには良い本と思う。
ただなあ、Newrelic を heroku 経由で使う以外の価格の高さであるとか、スタートアップはデフォルトで死んでいる、という文脈で toC と toB とでは求められる品質特性が違うので何を優先すべきかは変わるとか、そういう話をもう少し書いてあっても良かったかなとは思う。
# ただただし [10分を切るようになったのはTravis側の性能があがったからかな?]
# しばた [裏で何かのチューニングがあったんですかねえ。10分で切られなくなったのと、全体的なスピードアップが会ったような気がし..]