よしkernelの構築も終わったしgrubの設定をして再起動。いい感じにeth0も立ち上がったので
emerge rsync emerge -u worldを実行。今日はXFreeでもebuildして寝るかな。
Xの設定はまだしていないのでとりあえずnethackをインストールする。
emergeが良い感じに依存関係を調べてmake開始。・・・ん?
依存関係にqt2が含まれてる。うーん、また1時間くらいかかってしまうな。
qt2のmakeも終わったので早速X周りとkde3をemergeして学校に行く。
学校から帰ってきたらlogoutしてた。kde3自体はmake完了しているけど何だこりゃ?
再起動したらhda3(/にマウント)に深刻なエラーが発生しているとか何とかで起動できん。謎の再起動はハードディスクエラーかよ・・・。
まだこの番組やってたのか?10分くらい見たけどさよなら。この番組って結果が全てとか言っておきながら精神論を持ち出してくるところが嫌い。
tDiary+Blogkitかと思ったら全面Hikiだった。
祖母の家が台風の被害にあって牛の厩舎が結構やばいようだ。
研究室では無線LANを使っている。今回、学部4年が実務訓練で長期にわたって不在になるので、PCや設備管理をやることになった。ふと、無線LANの接続制限を調べてみたら、何も制限かけてなく外部から接続しまくり状態という…。
丁度良い機会なので、研究室で所持しているPC全てのMACアドレスをメモしてアクセス制限をかけたり、マシンにパスワードをかけてもらったり、未だに一回もWindows Updateをしてないマシンをアップデートしたり…。
ポート制限もやらんとダメかなぁ。何げにやばそうなソフトをちらほら見かけたし。
起きてから繋がらない。
なんかログを見てみると、
13:15 irc.tdiary.net:6667 に再接続中(41回目)... 13:15 接続しました 13:15 切断されました
という感じで秒殺。wide.ad.jpには繋がるのに何が原因なのかさっぱり。
PSUの方は相変わらず、認証サーバーで蹴られまくりの毎日。中にログインできるようになるまでひたすらログイン画面で連打推奨なシステムって何だからなあ。というか、メンテナンスの項目として
今回のメンテナンスにおいては、調査確認と不具合解消のため、各機器の設定と再起動を行っております。
というのが多すぎなんだよなあ。とりあえず再起動しておけば直るんじゃね?みたいな運用が何よりも不安だ。
そんな中、大航海時代オフラインがアップグレード記念に無料期間を設けているみたいなので、半年ぶりにログインしてだらだらと時間つぶし。浦島効果でさっぱりついて行けない新機能だらけだなあ…。とりあえず、新しい街でも巡ってみるか。
RubyのWindows用パッケージの一つであるActiveScriptRuby(ASR)の1.8.5版が出ていたので、手元の環境をアップグレード。
で、とりあえずバカが征く on Railsでの動作を確認してみると独自に改造したエントリのRSSを生成する部分で
rss/maker/taxonomy
がねーと怒られてしまう。controllerでrequireしているのはrss/makerのみなので、lib/ruby/1.8/rss/maker.rbの中身を覗いてみると確かに
require "rss/maker/taxonomy"
という行がある。んが、実際にファイルが存在するかどうかを確認してみるとrss/taxonomy.rbはあっても、rss/maker/taxonomy.rbは存在しないっぽい。
うーむ、自分が単にわかってないだけなのか、パッケージのミスなのか謎。よくわからないので、上記の該当行をコメントアウトしてアドホック対応。
最近はゲームネタしか書いてないなーと思ったら、しっかりとサイドバーのタグクラウドの「Game」が最大の大きさになっていた。なかなか良い感じに日記の傾向を表しているじゃないか!
今日、コミック14巻やマガジンを読んで気がついたんだけど、第一部完!!とか書いてんの。まじかー。
確かに浅井・朝倉を滅ぼした後から先は本能寺あたりに突入するだろうし、次のネタを暖めるために休載しちゃうのかなあ。
Mac の Software Update では QuickTime 7.5.5 しかでてこなかったので、 apple のサイトから直接ダウンロードしてインストール。
新型の中では nano か touch なんだろうけどどうしたもんかなー。Genius が結構ナイスな選曲をしてくれるので、それを活用するなら 32G の touch なのかなあ。
物欲ゲージと相談中。
Windows は Vista でいろいろと出てきて13件、Mac は QuickTime と Front Raw の2件。
いつからか LDR の右ペイン下部に R25 の広告が出てくるようになって、これがまた以外と目に入って邪魔なので stylish をインストールして
.r25_box{ display: none !important; }
とか書いて消すようにした。
最初は greasemonkey で何とかできるかなーと思ったけど id 属性ではうまく処理出来ないみたいなのでお茶濁し。
朝起きたらリリースされていたのでアップデートしてみた。iTunes 9 の方は Genius Mix が中々ナイスなチョイスをしてくるのが良い感じ。後はホームシェアリングで共有上でも動画も再生できるようになったこととか。iPhone 3.1.1 は touch だと何が変わったのかよくわからん。
新型 iPod をざっと見てみたけど、touch ユーザーとしてはカメラ無しだとイマイチ物欲オーラが出ないなあ。やっぱり iPhone か。
2010-06-06以来なのでだいたい3ヶ月ぶり。前回は2ヶ月だったのでちょっと間が空いてしまったかな。
debian のそれとはちょっと異なっていたのでメモ。
sudo emerge -Du supervise-scripts daemontools
で daemontools をインストールする。debian の svscan は勝手に起動するのだけど、gentoo はサービスを手動で起動する必要がある。
sudo /etc/init.d/svscan start
再起動時に自動起動する場合は rc-update しておく。
sudo rc-update add svscan default
debian は /etc/service が svscan の対象なんだけど、gentoo のは /service だった。これはディストリビューションだからというよりはバージョンで違うらしい。
あとは debian と同じなんだけど、daemontools は symlink で作った方が何かと便利みたいなので、~/service の下に atig とか tiarra を mkdir してから run という名前の実行スクリプトを書いてから
sudo ln -s /home/hsbt/service/atig /service/atig
して daemontools で起動するのを確認するなど。
daemontools 便利。
来週末からちょっと遠出するので、Wifi端末やiPhoneの非常電源として eneloop KBC-L54D を買った。
端子はUSB-Aが二口、USB-mini Bが一つの3端子となっていて、mini B で充電をしつつ、通常のA端子で充電したい機器を接続して使用する。
今まで使っていたのは何処かで買った 1300mAh なバッテリーなんだけど、L54D は 5400mAh と4倍近い電力容量なので長時間の充電にも耐えられるかな?
SANYO USB出力付きリチウムイオンバッテリー (高容量リチウムイオン3.7V5400mAh電池使用) KBC-L54D
三洋電機
(no price)
良書です。マネージャという肩書きを持っている人は必ず読んでください。そうじゃない人もソフトウェアをちゃんと作りたいと思っている人は読んでください。
この本は出来上がるまで何が面白いのか、ヒットするのかわからなく、利害関係者が大変多いゲーム業界でのソフトウェア開発をどのように進めて行くと良いのかということが、スクラムのフレームワークに則って実践的かつ詳細に解説されている。例えば登場人物、プロダクトバックログの作り方、スプリント計画などなど、スクラムで必要とされているプラクティスについてはこれでもかというくらい説明がある。
章の隙間に出てくるゲーム業界で起きた小話も大変面白く、中には日本のゲームメーカーの名前も出てきたりするのでとても読みやすかった。全体の総評としてはアジャイルサムライに書いてある内容をスクラムの視点から解説した本という感じかな。オススメです。
これからは fluentd + elasticsearch + kibana だぞ~というのを rebuild.fm で言っていたので早速とあるサービスに本番投入してみた。もちろん puppet で構築したのでどっかで公開します。
せっかくなので、同じ elasticsearch クラスタを使えばいいやということで前に作ったお問い合わせ検索君も elasticsearch で検索できるように書き換えてしまった。
solr は tomcat みたいに zip で渡されてもどうすればいいんや...みたいな感じだったけど、elasticsearch は rpm や deb があって運用しやすいですね。とはいえ使い始めたばかりなので、kibana を全社的に広げるのは様子見しながらちまちま進める。
今まで tDiary はリポジトリ直下を $LOAD_PATH に通して tdiary.rb をでーんと配置していたけど、4.1.0 ではこれを lib フォルダの下に移動して、rubygems 標準のディレクトリ構成にする予定。
https://github.com/tdiary/tdiary-core/pull/432
なので、今まで上書きインストール、ということをしていた人にはアップグレードがちょっと面倒になるかも。今から予告しておきます。
# なんとなく [http://tdiary-users.sourceforge.jp/cgi-bin/wforum/wforum.c..]
RubyConf Taiwan 2015 に参加するために台湾に来た。台湾へは ANA で直通便があるので、羽田空港から松山空港まで3時間弱のフライトで到着した。
今回はオランダ・ベルギー旅行同様にフリーSIMを買って過ごすつもりだったので、到着してからすぐに空港にある中華通信のカウンターへ。まず最初にプリペイドSIMの有効な日数とチャージされている通話使える金額、値段が書かれているメニューと待受番号の紙を貰えるので、のんびりとどのSIMにするのか考えながら待つ感じ。番号は 20-30 人くらいなので30分くらい待ってから、5days で 300 NTD(1200円くらい)のSIMを買った。SIMのアクティベートというかNexusへの装着と APN の設定などは全部カウンターのスタッフが対応してくれるので待ってるだけで LTE かつデータ転送量無制限のインターネットを入手できた。こういう奴に慣れてしまうと、もうSIMロック端末とか買う気なくなるよなあ。
インターネットの手配が終わってから、 @igaiga と一緒にタクシーを使ってホテルへ。RubyConf Taiwan 2015 の会場は Academia Sinica という総合大学で開催されるので、スピーカーは構内の宿泊施設に非常に安く泊まることができた。ちなみに2泊で 1250NTD と、5千円くらい。
大学の宿泊施設なので大丈夫かなあと思ったけど、カウンターはちゃんとあるし、インターネット、電源、エアコンも完備されていて設備自体は十分だった。
チェックインしてから日本から参加した組で夕食を食べに行こうということで、南港までタクシーで移動してからMRTで台北駅へ。
ここで @kakutani と永和、spicelife の若者と合流してから點水樓に徒歩で移動。點水樓は小籠包よりも海鮮料理のほうが美味しかった気がした。小籠包は鼎泰豐の方が個人的には好み。
この後は再びタクシーで南港のカンファレンス会場のホテルまで移動して終わり。
最終日はじまりはじまり。
この日の最初のセッションは Ruby コミッタを壇上にならべて参加者に展示するといういつものやつ、今年は黄色の T シャツでそろえてくるようにというスタッフからの依頼があったのでみんな着てきたけどだいぶ面白い感じだった。
壇上からみたホールの風景はこんな感じ。びっくりするほど奥行きがある。
壇上では akr さんや nobu と一緒にがやがやしながら質問の内容について話したり、stdlib の gem 化とか何かにコメントするなどしていた。1時間はあっという間だけど 2 時間やってもなあという気もするのでちょうどいい気がする。
この日はスポンサーブースに待機してお菓子コーナーの宣伝をしたり足を止めてくれた人とおしゃべりしていた。なので発表はほとんど聞けなかったのでスライドを見て把握するしかない...
成瀬さんのキーノートは最初はバグ報告のお作法か...?と思わせておいて後半はなるほどわからん、という内容に振り切っていたのがよかった。この時間、何か別のデバッグを手元でしていた記憶があるんだけど忘れてしまった...なんだったかな。
そんな感じで RubyKaigi 2016 はおしまい。今回は初めて東京以外で開催ということだったけど、京都と国際会館という会場はとてもよくて、これくらいなら毎年京都でも良いかなって気持ちになった(会場代がふがふがふが)。オーガナイザーとスタッフの皆さんお疲れさまでした。
本編の後はオフィシャル懇親会に合流して、しゃべれなかった人とおしゃべり。LT はだいぶカオスな感じだったけど、どれも面白いないようで良かった。クラブでやる LT、勢いと雰囲気が出ていいね。
最後は nobu による関係各所へのダメ出しをしてもらいつつ、 @inao メンバーとこういう記事読みたいなあと一方的に放言したり、リュック背負っているのに「あれリュックどこだっけ」と言い出す nobu をタクシーに押し込んだり、深夜の 1 時に「川に行こうよ!」と言い出す Jonan から逃げるなどしていた。鴨川近辺面白すぎでしょ...
お前はいくつバッテリーを買い続けるんだという感じだけど、USB Type-C で PD 対応な AC アダプタと ケーブルがついてまともなバッテリーが使えるならと買ってしまった。
バッテリー、届いてみたらさすがにでかくて普段持ち運ぶのはさすがにしんどい...という感じだったので旅行の時やカンファレンスなど一日中外にいることが確定してるときだけ持ち歩く感じかなー。
北海道で地震と大規模停電というのを見て、家でももうちょい震災対策グッズをそろえておかないとなという気持ちになったのでまずは USB 出力可能な太陽光充電のパネルを買ってみた。
テスト利用してみたけど、日光に当てたらすぐに充電できるというものでなかなか良かった。iPhone SE で試したところ、1時間照らして20%充電できたかな、というスピード。この手の製品、ちゃんと使えるのかな~という先入観があったけどどんどん試して知識をアップデートしていかないとね。
出張やなんやかんやが重なっていたので久しぶりの参加。神田の永和オフィスで開催でした。
https://asakusarb.esa.io/posts/955
RubyGems 3.1 のリリースに向けてブロックしているものをガチで対応しないとやばい!!1という状態になって来たので今日は XDG サポートをえいっと終わらせた。
https://github.com/ruby/ruby/pull/2174
マイグレーションパスというのがだいぶだるいのだけど
というフォールバックの順序でだいたい動くようになった。いくつか普段使いではないファイルがハードコードされて残っているのでその辺を対応したらマージします。
ポスト資本主義、てことで論考が中心の特集で「うーむ、難しい」という巻だった...。特集以外に COVID-19 が発生したから何か、というのも落ち着きつつあって、いつも通りの美術手帖に戻ってきたような印象がある。
Day 1 に続いて渋谷のオフィスに集合して開始。初日はタイムテーブルと CM と、録画済みと中継と、同時通訳と事前打ち合わせと、という形で相当に混乱していたけど、この日は色々と対策を全てした甲斐もあって朝からスムーズに進行していた。
昨日はサブウェイで流石になあとなったので、昼は渋谷ストリームにあるTHE GREAT BURGERに歩いて買いに行って配信メンバーで食べていた。なかなか美味しくて満足。
この日の発表だと、hasumikin さんのキーボードで mruby を動かすやつと、tagomoris さんの Ractor と沢登りの景色が記憶に残ってる。Ractor 周り、意外と動いてないですというのが多いので積極的に使ってどんどんバグ報告してもらえるのはありがたい。
Ruby Committers vs the World は、会場の別室から眺めるモードで参加しつつ、終わった後の延長戦をダラダラと眺めたり喋ったり参戦していた。in-person だと the World は終わったら「はい、終わりー」って感じだけど、オンラインイベントだととってもダラダラと続けていてなかなかよかった。5hくらい経過しても 100 人以上が視聴していたのもよかった。
3日目に続きます。
最終日始まり始まり。
この日は発表がある日なので、朝会場についてからすぐに通訳との打ち合わせ時間の確認をして、会場でスライドを軽く見直してうちに打ち合わせ開始、という流れで発表をゆっくりと聞くってモードではなかった。
通訳との打ち合わせで楽屋通路を通ってステージの裏へ移動したけど、今回の会場のステージはめちゃくちゃ大きくて観客席から見えてるのは全体の1/3くらい、ってのが驚きだった。もっと贅沢な使い方ができるとよかったですね(vs World でコミッタ全員とか)。
発表は、今回は中ホール、ではあったものの立ち見が出るくらい人が来てくれたぽく、Twitter やチャットの反応を見てると割と盛り上がったような気配でとても満足した。今後も自分が得意なことと他の人もハマってそう(または興味ありそう)なことを、延々と喋りまくるってのが良さそう。
今回は残念ながら海外からのゲストが少なく、聴衆のほとんども日本人ということだったのでスライドも頑張らずに日本語にして文字を大きくって感じにしたので見に来てくれた人にも見やすかった、と思う(実際に文字が大きくて見やすいという声があった)
細いテクニックついてはともかくとして
という2つのパンチラインがヒットしたようで思惑通りでよかった。この辺、僕は好きだから勝手にやってるけど、別にプロダクトのコードを書きたいっすって人にはどうでもいいことだと思うので、もっと楽にして多くの人が Ruby で楽しめるようにできればいいなあと思ってます。頑張ろう。
発表の後は各種反応を見ながら他のスピーカーの発表をのんびりと聞いていた。最近の RubyKaigi なんとなく最終日の発表が多くて、発表の前は最後まで準備というのと発表の後は燃え尽きて真っ白って感じな気がする。須藤さんの発表、この図がとても良くて負のスパイラルで〜ってところに「でも、やるんだよ」という技術力で世界を変えていくというのが表されててよかった。
だいぶ疲れでうとうとしながらクロージングを聞いていて、来年は松本リベンジという発表が出たのでやるぞーと気合を入れて 2022 は終わり。気がついたら9ヶ月あるかないかという日程になっていて今からやることとか何かを仕込んでおく必要がありそう。頑張ろう。
最終日まで海外スピーカーやコミッタ同士で夕食、ってのが続いていたのでこの日はペパボのメンバーとイタリアンに行って感想戦をしていた。適当に入ったイタリアンだったけど美味しかったなあ。お疲れ様でした。
https://github.com/rbenv/ruby-build/releases/tag/v20220910.1
めでたく 3.2.0-preview2 がリリースされたので、それを含む ruby-build を v20220909 としてリリースしたのだけど、 @tagomoris から YJIT 効いてなくない?という報告を RubyKaigi 中にしゅっともらったのでカンファレンス中にデバッグのやり取りをしながら直したのを v20220910.1 としてリリースし直した。
具体的に動かなかった原因は
enable_yjit
というオプションを 3.2.0-preview2 に追加し忘れていたという二段構えのバグだった。自分はパッケージバージョンはほぼ使ってなくて 3.2.0-dev を使っているので気が付かなかったというオチ。
自分の発表でも触れていたけど、まず試して動かしてみるというユーザーは本当にありがたくて、そこから動かない/動いたという報告をしてくれるとさらにありがたいので、モリスさんには大感謝だった。
Youtube で配信されている MGS シリーズのムービーシーンを中心にまとめて配信している動画を見た。それぞれ5時間というボリュームでなかなか時間がかかった。
MGS シリーズは4をプレイした、とりあえずクリアしたが内容はまるで理解していない、ピースウォーカーからアホみたいにプレイしてストーリーも満足行くレベルで理解した、5も同様。という状態だったので 1 と 2 は改めてストーリーを理解する意味でちょうどよかった。
1と2は PS と PS2 で発売されていたゲームということもあって、グラフィックは相当厳しいのだけどムービーシーン、というよりはラジオという感じで、顔が表示されつつ声優がストーリーテラーとしてひたすら喋るという内容だったこともあって、聞き流しにちょうどよかった。
妻が旅行に行ってしまったので、ずっと家にいてピザを食べてコーラを飲みながらゲームをしていた。これが大人の贅沢。
この日は Matz や笹田さんが Euruko に参加するために不在だったので、福岡どうでした?とか最近のイベントの話をしたり、nobu にあの件だけどさあみたいに最近の Ruby の開発の話をしていた。こういう日もある。
yhonda さんから、stringio が 3.1.2.dev になってから rails の CI が落ちるようになったという話をきいて、3.1.2 から 3.1.2.dev になったことで落ちるわけがなかろうと腰を据えて調べていた。
https://github.com/rubygems/rubygems/pull/8016
最初に出した修正は上のような内容。説明をすると bundler/inline を使った gemfile ブロック中に psych や stringio が含まれていると、それらをインストールしたあとに yaml として提供される gemspec 等のデータを読み込むために rubygems で require される default gems としての psych や strignio との間で、Bundler がライブラリとバージョンをロックするときに activate confilct が起きて落ちる、というものだった。ぐぬぬ。
これは Gemfile を使って bundle install と bundle exec をしているときには、 install は default gems の psych を使ってインストールされた gem を解釈して、その後にインストールされた指定バージョンの psych を使うという挙動のため問題は発生しない。
8016 では、psych や stringio が gemfile ブロックに含まれていたら強制的に除外するようにしたんだけど、deivid から default gems としての psych や stringio を gemfile の中に入れて resolution したほうが良くない?とフィードバックがあったので、それはそう、と昔にやりかけになっていた pull-req を掘り起こして動くようにしてマージした。
https://github.com/rubygems/rubygems/pull/5535
こっちの pull-req では、psych などを決め打ちで除外せずに、activation conflict が起きたらその都度、gemfile の中から除外、conflict としてすでに activate されている default gems とそのバージョンを gemfile の中に入れ直して resolve という処理にすることで、指定したバージョンそのものではないが、大体において適当に bundler が動くようにしてある。
この問題を根本的に解決するためにはモリスさんがやっている namespace を使って、インストールフェーズと実行フェーズとで namespace を分ける、などするしかないのだよなあ。モリスさんがんばってくれ!
今週も Discord に集まってアレコレしていた。
https://asakusarb.esa.io/posts/1217
自分は、というと yhonda さんから Ruby の開発状況と今後の Rails のリリースに合わせて、ライブラリの依存関係であるとか、どうするとよいか、みたいな雑談をしていた。ありがたい。
あとは 10 月にドリンクアップするかねえ、と適当な店探し。
Before...
# こ〜りん [どっか別のところに避難所作りますかね? > irc]
# しばた [wideがお手軽ですが、海外接続が面倒でしたよね。 irc.reicha.netの#tdiaryとかに作ってみました..]
# こ〜りん [irc.reicha.net って国外接続不可なのねorz]
# しばた [おおう、知りませんでした。>irc.reicha.net 場所はこ〜りんさんが決めるという方向で。]
# こ〜りん [irc.momonga-linux.org #tDiaryが一番簡単かな.]