トップ «前の日(02-19) 最新 次の日(02-21)» 追記 RSS feed

HsbtDiary


2002/02/20 (水)

卒業研究発表会

午前中は最後の練習と準備。わたわた(汗)。

(コ)の業界のオキテ

お気に入りを整頓していたら面白いリンクが出てきたので紹介、URLはここ。内容はちょっと古いので、すでに解決してるような話もあるけど、こんなん読むと会社って抵抗勢力だらけだなと思ってしまう。

むねお

だめだ。

X on Windows の PostgreSQL

何かがおかしい。postgresをシャットダウンしてもPIDが残ってしまう。むう。

珈琲

自分は珈琲が好きな人間で、クリスマスにもらったコーヒーミルで豆からおとして珈琲を飲むのが一週間の楽しみ。最近はブルーマウンテンとモカレプケンディのブレンドにはまっている。


2003/02/20 (木)

[Game][PS2] 真女神転生3

ついつい 真・女神転生III-NOCTURNE (通常版)(-)を買ってしまった。

それにしてもamazonのカスタマーレビューって何で発売日前に載ってるの?参考にも何にもならん。

[porn] エロカレンダー

毎日体位を変える方にお勧め

from Crescent is in the blues.

[Game] 真女神転生3レビュー

戦闘がさくさく進むのが非常に良い。装備が無いので主人公や仲間のレベル上げ、つまり育成に自然に力が入ると思う。

RPGはひたすら戦闘してレベル上げだこのやろう。という人にはお勧めです。

って、こんなレビューなんて参考にならんな…。


2004/02/20 (金)

日本の技術者列伝

たださんの写真が3枚も載っているということでSoftware Design 3月号を立ち読み。

春の陽気

京都は4月中旬の平均気温らしい。

Wikiの更新履歴

昨晩からPHPが

Maximum execution time of 30 seconds exceeded

と怒っているので、なんだろうと調べてみた。どうやらPukiwikiは更新履歴の作成に

  • ページの更新時に全データを配列に読み込み
  • 更新順番に並び替え
  • 配列を履歴ファイルに書き出す
  • 指定した件数だけ切り出したものを履歴ページに書き出す

という動作を行っているらしく、全データを配列に読み込む辺りが原因の模様。

独自拡張で履歴を書き出す部分も指定した件数で制限するようにしたけど、あまり効果は出ず。履歴ファイルを参照して今現在更新しているページをスタック式に追加していく方法が良いのかな…。

根本的な原因は6000件も項目が膨れ上がるような状態まで対策を練らなかった自分が悪いのだけども…_|‾|○

週末に他のwikiでの更新履歴管理部分を眺めてみよう。

pukiwiki-mode

hiki-modeを試して、中々使い勝手がいいなぁと思ってる矢先に、pukiwiki-modeも発見。家のMeadowに入れて実験してみよう。


2005/02/20 (日)

長岡に帰還

ホテルから空港までは無料の送迎バスを利用する。ホテルウイングは部屋もなかなか綺麗で空港を利用する時にはかなりのお薦め。

午前中の便だったのが良かったのか、天候による欠航もなく無事に新潟に到着。空港から長岡まではリムジンバスと高速バスを数分単位で乗り継ぎして2時には部屋に到着。

郵便物は大家が管理していてくれたおかげで雪にぬれることはなかった。1通だけ期日的にやばい郵便物があったけど他は特になし。電気・ガス・水も通常通りの状態に戻り、明日から部屋の掃除を開始予定。来年には部屋を引き払うので今のうちからいらない物は実家に送ったり、リサイクルショップ、研究室にもっていかねば。

確定申告

郵便物を処理していたら、去年のTAやインターンシップでの給与の源泉徴収票が来ていた。

合計支払金額を計算したら57万円弱、サラリーマンの必要経費の概算計算によると、65万円以下は確定申告しなくていいようなのでセーフなのかな?

今日のアップデート

WindowsUpdateを筆頭に各種アップデートをひたすら実行。coLinuxのgentooもお約束の

emerge sync && emerge -uD world

を実行したら、xorg-x11とxfce4が自分自身でblockだと怒られる。emerge -Cした後に再度実行して放置。187個の更新だけど、24時間で終わるだろうか。


2006/02/20 (月)

[livedoor_weather.rb][tDiary][plugin]livedoor 天気情報プラグイン(6)

livedoor 天気情報プラグイン(livedoor_weather.rb) への要望 - muneda's diary (2006-02-19)経由

おそらく、www.hsbt.org宛てではなくhsbt.que.ne.jp宛てになっているのでTrackbackがはじかれている模様。時間をみてこの辺も統一していかないとなあ…。

で、気温に関するキャッシュなんですが、気温のみ保持というのはちょっと難しそう。アドホックな対応としては、キャッシュの自動更新を行わない/自動更新間隔を任意で設定可能にするくらいしか思いつかないなあ。XMLではなく、別の形式で保存しだすと後々めんどくさそうだし。とりあえず、時間見てこの辺はいじります。

というか、朝や前日には気温情報が取得できるのに、夜や当日になったら欠落してるってのは非常に不便。LWWS側で何とかして欲しいなー。

[Life]今日の引越し作業

  • 賃貸契約書に記入して郵送
  • 転出届の発行
  • 銀行口座の解約
  • 郵便物転送届けの提出
  • 今の家のガス会社に閉栓の連絡
  • 新居のガス会社に開栓の連絡
  • 内定先と関係機関に住所変更の連絡
  • 新居の固定電話設置の申し込み

かなり早くからとてとて作業していたんだが、忘れていることがありそうなのが怖い。固定電話の手配は遅すぎたかなあ。来週、入居と同時に使えるかどうかかなり怪しい。引越し後にIP unreachableな日々が続きそうな予感!

[Food]バケツプリン

今日はjtsune企画のバケツプリンを食す会。何でもプリンの素32箱で12リットルだとか何とか。

どんぶりで3杯食べたけど、最後の方はプリンを食べているんだか、カラメルシロップを食べているんだか、よくわからない状態。もう2年分は食べたのでプリンはしばらくはいいや。

[Game]ゲーム大会

今日は某所でゲームをやりながら飲み会。何故か3時くらいまでT羽さんが研究室にいたのは覚えているんだが、それ以降の記憶がない。


2007/02/20 (火)

確定申告のシーズンですね

何年か前に聞いた

「税務署の人間もそんなにヒマじゃないので、一般人の数万程度なんて華麗にスルー」

という話を思い出した。

[firefox][bookmark]ブックマークが無くても何とかなる

2月4日に firefox の profile が吹っ飛んで以来、ブックマークを保存しない生活を続けているんだけど、意外と何とかなる物だなあ。以下使い方。

Ctrl + l

一度訪問したことのあるサイトや頻繁に訪れるサイトは Ctrl + l でロケーションバーへフォーカスを当てた後にキーボードを数回打ち込むだけで出てくるちなみに今のキーと出てくるサイトの関係はこんな感じ。

  • r で LDR
  • m で Gmail
  • d で del.icio.us
  • a で Amazon
  • h で自分のサイト
  • z でゼルダ攻略サイト

ほとんどの情報は LDR と Gmail,del.icio.us に蓄積しているので毎日のネットライフなんてこんなもんで十分。

Ctrl + k

どうしても探したい物がある場合は Ctrl+k で検索ボックスから検索、Google と Yahoo で見つからないサイトは無いも同然なので、放っておくことにしている。

bookmarklet

bookmarklet は主に del.icio.us の拡張でクリップする時と、copy url+ で hikidoc style か IRC 通知用のリンク作成程度。Javascript Actions を入れると任意の JavaScript をコンテキストメニューに作成できるんだっけ?(まとめサイトの説明を読んだだけで試していない)

これはひどい

古いコードを読みながら、あまりのひどさ*1にいわゆる暴言に準ずる言動*2を思わずぼそっと発してしまい、周りの女性社員にドン引きされるの巻

*1 変数名で a と b とか使っているとかその他色々

*2 f**kとかその他色々


2008/02/20 (水)

[Sony][Bluray][HDDVD]Blu-ray と HD-DVDのこと

PS3 はもっているけど Blu-ray ディスクはゲームのみというオレなんだけど、いかんせん TV がしょぼすぎて今流通しているような Blu-ray の映像のみを金出して買う気にはなれないんだよね。

世界遺産の日本編コンプリートボックス1万円とかが出たら買うかもしれないけど、DVD でなおかつ 2 話 48 分しか収録してねーのに 4800 円とかじゃ期待できないしなあ。画質は DVD のままでいいから単純に量をもの凄くして発売とかしてくれんかな。一時期あったような FC のソフト全部入ってますみたいな奴。

で、HD-DVDだけど再生・録画機がたかだか1万-2万台くらいしか売れてない日本でTVやネット上で「消費者保護がうんぬん」っていってる人達が不思議。君ら買ってないだろ。

新しい規格で普及せずに消え去った、消え去りそうでハードウェアの方が無くなりそうなメディアなんて他にも腐るほどあるのに、なんで HD-DVD だけ大騒ぎするんだろうねー。メモリースティックとかメモリースティックとか。

id:moro の格言

この前の飲み会で諸橋さんが

「生産性って言葉を使ったら負けかなと思っている」

と言っていた。

いやあ全く、最近は特に生産性とか効率とか品質とかそんなキーワードにまみれているので、少し自重することにします。

本日のツッコミ(全2件) [ツッコミを入れる]

# まちゅ [HD-DVDだけ大騒ぎ < リーダの単価の違いでしょうね。カードリーダなら数千円で全フォーマット対応できますし。]

# noplans [SSS = 生産性]


2009/02/20 (金)

半分休み

週明けから続いてた首の痛みがひどくなって、激痛モードになったので早退して湿布貼ってひたすら寝てた。とほほ。


2010/02/20 (土)

[Life]湯島天神の梅祭

SANY0008

takkanm から誘いがあったので、takai さん、_dot さんと一緒に湯島天神で梅の花を眺めてぶらぶらしてきた。梅の花はまだ五分咲きかな−、今週の中頃か来週くらいに満開になりそう。湯島天神は天満宮ということもあって、この時期は合格祈願と合格御礼の絵馬の量が凄かった。

そういや、湯島に到着してから御朱印帳をもってくれば良かったと後悔。集めていたこと自体を忘れていたよ。これは改めて参拝しないとダメだなあ。

[Life]上野動物園

SANY0064

湯島天神の後はそのまま徒歩で上野動物園に向かってみた。

時間の関係で動物園の半分しか見ることができなかったけど、良い感じにオライリー成分を補給できたので満足。特に爬虫類館がオススメ。

[Life]合羽橋の道具街

SANY0075

上野動物園の後は上野でとんかつを食べてから、合羽橋で a_matsuda さん夫妻や ngtyk さん達と合流。ぶらぶらと鍋や調理器具の下見をしてきた。

とりあえず鍋の店は目星を付けたので、妻が東京に来てから本格的に買い物かなー。

本日のツッコミ(全3件) [ツッコミを入れる]

# かくたに [帰りに借りて、翌朝出勤前に返却すれば当日料金だよー]

# しばた [mjd! # ブラウザでツッコミを開き直したら日記の内容とずれていて何のことかわからなかった…。]

# かくたに [うは。すんません……]


2011/02/20 (日)

[Game] 今日のキャサリン

6-3までクリアしたところで詰んだ。もっと時間をかけて自分自身を鍛えればいいんだろうけど、ちょっときついわ。とか言ってるうちに難易度修正パッチが出るとかそんな情報を入手したのでそれ待ちな感じ。

そういや、今週はアイマス2とか3DSも発売するのか。どう考えても24時間では足りなすぎる。

[capybara][rspec] capybara/rspec というのがあった

みんな大好き Capybara だけど、Rails以外で使う時には capybara/dsl を require して config.include Capybara して…みたいな手作業を各所に書く必要があったりして割と面倒だった。

けど、いつからか capybara/rspec というのが出来ていて、これを Gemfile で require するだけでだいたいの環境は揃えてくれるみたい。

何をしてくれるかは上記のコードを読むとだいたいわかる。rspec の filter で :js とか :driver とか指定するだけで柔軟に切り替えられるのは便利だなー。


2012/02/20 (月)

[emacs]anything-filelist+ を入れた

http://d.hatena.ne.jp/higepon/20120219/1329636071 経由

オレも gem の中身を見ることがだいぶ多くて、そのたびに bundle open を叩くのがだるかったので、anything-filelist+ を入れてみた。ただ、higepon さんとは違って、filelist にするのは ~ 以下にした。crontab はこんな感じ。

10 3 * * * ruby ~/misc/make-filelist.rb ~ > ~/.emacs.d/all.filelist

これでも多いくらいなので、開発ディレクトリと .rbenv のみに限定した方が良いかも。


2013/02/20 (水)

技術基盤チームが発足しましたのお知らせ

昨年から mizzy さんを中心として隣席のパーラー氏と二人で社内をリンスタだインセプションデッキだ、スクラムだと行脚したり、デプロイ自動化だ仕様化テストを構築するんだと手を動かしてきたんですが、1月から @hiboma が同じ所属になったこともあって、経営会議を経て正式に「技術基盤チーム」として発足しました。ちなみにやることは何も変わっていません。

あと、春くらいにミスターXが加入して、mizzy さんをリーダーとして4天王が構成されるのでお互いに得意な分野の Perl であるとか Kernel hack とかインフラとか、Ruby とかスクラムとか継続デリバリで戦争を繰り広げて最弱を決定することになると思います。

まあ何というか特に計画とか定例ミーティングを内部でしてタスク割り振りとかしなくても、それぞれが勝手に社内の問題を見つけてきて、自分の得意な分野でオラオラなんかするみたいなそんなチームなので引き続きよろしくお願いします。


2014/02/20 (木)

[Vita][Game] 今日の GE2

FFX に微妙に飽きて来て FFX2 って気分でもないなあという感じになってきたので、ランク6まで進めて中断していた GE2 を再開してランク10まで進めた。やっと前作から引き継いだランク10武器を使えるようになった。

22日に PS4 が届く予定なので、それまでは未クリアミッションの穴埋めをやるつもり。


2015/02/20 (金)

若手インフラエンジニア飲み会

image

自称若手のインフラメンバーで現状確認会を開いてきた。「TeraTerm にコピペするときに改行が含まれてるとダイアログでるのはすげー便利なんだよ!!!」みたいな話題で盛り上がってゲラゲラ笑っていた。


2016/02/20 (土)

箱根旅行一日目

そうだ箱根の美術館めぐりをしよう!ということで、北千住からロマンスカーに乗って箱根まで行ってきた。ロマンスカー、2時間くらいで終点の箱根湯本駅に到着。列車の中ではひたすらドラクエビルダーズの4章を進めていた。

駅についたらあいにくの雨だったので、この日は屋内の美術館を中心に巡ってみることにした。まずはバスで箱根ラリック美術館へ。

家具とジュエリーを見た後に昼ご飯を館内のレストランで食べて一休み。美術館の中のカフェにしては本格フレンチで良い。ラリック美術館、目録の郵送サービスというのをやっていて驚きだった。目録、重くて旅行だととても荷物になりがちなので美術館が郵送してくれるのはとても助かる。この後は再びバスで移動してポーラ美術館へ。

ポーラ美術館、外観も楽しみにしていたけど雨はひどくなる一方で外から見て回るということは諦めてささっと中に入って印象派を中心とした絵画を鑑賞してきた。ポーラ美術館、都内の美術館よりも品揃えは良いんじゃないかな。

美術館を2つ巡った後で宿の小涌谷温泉へ。歩き回って疲れたところを温泉で一休みして、夕食食べてから、また温泉へというのを繰り返しつつ、合間合間でドラクエビルダーズという充実した休日だった。


2017/02/20 (月)

Day One 2 から Notes.app に移行した

ここ最近 Day One で何か書いていたら突然クラッシュしたり、Activity Monitor を見ていても CPU をかなり使っていたり、ちょっと重い処理を他で実行すると No response で固まったりとメモとしてまともに使えるようなものではなくなったので、えいやっと公式アプリの Notes.app に引っ越してしまった。

手順としては export json でカテゴリをすべて json で出力してから https://github.com/hsbt/scripts/blob/master/dayone2note.rb のようなスクリプトを回してエントリごとの .txt に分割してから、Notes.app の import 昨日でそのディレクトリを取り込むという感じでうまくいった。

Notes.app は Apple Pencil で絵をかくときにも使っているので、当面は情報をここに集める感じで暮らしてみようと思う。

RIMOWA の Salsa を買った

一人で 4-5 日旅行したり、妻と二人で海外に旅行するときにちょうどいいサイズのトランクケースがなかったので RIMOWA の Salsa の 60l サイズを買った。

https://www.rimowa.com/ja-jp/salsa-polycarbonate-suitcase

今までは Salsa Air を選んでいたんだけど、三つ同じ種類にするのもいまいち高ぶらないので、軽さは負けるものの取っ手がしっかりしてる Salsa にしてみた。引っ越しの片づけもそろそろ飽きてきたので、このトランクを使ってどこかに旅行に行きたい。


2018/02/20 (火)

Treasure Data PLAZMA 2018 に参加してきた

東京駅前のオアゾに再び行って、 https://plazma.red/ に少しだけ顔を出して来た。

同僚の zaimy が社内で取り組んでいるデータ分析の発表をしていたので、最前列でガヤガヤしたり、展示をぶらっと眺めて雰囲気を感じるなどしていた。PLAZMA, 発表後に話者に質問のために行列がどの発表でも起きていて、活発な感じでいいイベントだなあって思いました。

Ruby 開発者会議 2 月

今月は田町の MF さんで開催でした。色々立て込んでいたので 2h 弱だけ顔を出してきた。

https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20180220Japan

今月は特に何かの提案はなかったので、来月に向けて頑張るぞ、という感じで...

サントリー美術館の寛永の雅展をみてきた

丸の内からの田町からの六本木でサントリー美術館の内覧会に妻と参加してきた。今回は寛永の雅ということで、当時活躍していた3人に絞って茶器や絵画の展示が中心という感じで。これは!!1というのはなかったけど、ふむふむ眺めて息抜きにちょうどよかった。

観覧の後はいつものトンカツ屋で夕食を食べてから帰宅。


2019/02/20 (水)

東京国立博物館の賛助会員を継続した

賛助会員の期日がくるぞ、と案内が来たので今年も 5 万円の維持会員で継続することにした(控除対象)。引き続き今年も内覧会や夜間展示にぶらぶら遊びに行く感じで。

しぐさで読む美術史を読んだ

絵を見て読み取るシリーズの最終巻としてしぐさで読む美術史を読んだ。

これまではモチーフということで描かれているものが中心だったけど、こちらは宣誓はどういう意味があるのか、とかピースのサインはどういう意味があるのか、というあたりに主眼を置きつつ、時々漫画も題材にして解説しているという感じで面白かった。

あとがきを読んで相変わらず社会を感じてしまったのだけど、人間それでも生きていかないといけないんだなあという感じでがんばろ、ってなった(書いてある内容自体は良い話です)


しぐさで読む美術史 (ちくま文庫)
宮下 規久朗
筑摩書房
¥836


2020/02/20 (木)

東博の賛助会員の継続申し込みをした

今年も期限が切れる時期がやって来たので昨年同様に賛助会員の継続申し込みをした。歩いていける距離なので、特別展だけではなく散歩のついでに常設展も見に行きますって感じで。

RubyGems 3.2.0 または 4.0.0 では gem コマンドが結構早くなります

RubyGems のマスターブランチで Deivid が以下のような変更を出してきたのでマージした。

https://github.com/rubygems/rubygems/pull/3108

内容は読んでもらえればいいのだけど、RubyGems にはプラグインという仕組みがあって、$LOAD_PATH に追加されるパス、例えば lib などの下に rubygems_plugin.rb というファイルがあれば、それを gem コマンドを起動した時に同時に実行する。

で、この rubygems_plugin.rb を RubyGems がどう見つけているか、というとインストールされている gem 全てを探索して探している、という富豪的な仕組みになっていて、development な環境で何も考えずにドカドカ bundle install または gem install を実行してると100+にはすぐになるので、そりゃ遅いという状態だった。

Deivid が入れた変更は、全部を探索するのではなく、gem install などが実行される時に rubygems_plugin.rb というファイルがあったら、それを実行する wrapper を別のフォルダに作り、gem コマンドの起動時には wrapper のフォルダにあるファイルだけを実行するので速いという内容になっている。

ベンチマークも自分の手元で試した限りは二倍くらいに早くなっていてだいぶよかった。次のバージョンのリリースを楽しみにしてください。


2021/02/20 (土)

散髪記録

前回が 2020-12-19 でちょうど2ヶ月、今年初めての散髪だった。

引き続き家に引きこもっているので、久しぶりに家の周辺以外に出かけるってこともあって東京駅から日本橋にかけてのお菓子を買ったり、東京駅のラーメンストリートに行くなどしてきた。高島屋、相変わらず店舗の閉鎖が相次いでいるっぽいけど、春には新店舗もいくつか入るようでちょっとだけ安心した。

シダキュアが効いているのか、マスクをしているからかはわからないけど、花粉症の症状がほとんどなくて快適。


2022/02/20 (日)

macOS が IOUserEthernetController で kernel panic していた

M1 Max の macOS 12.2.1 で IOUserEthernetController と言うダイイングメッセージとともに kernel panic して再起動という症状が頻発していて、ん〜、と困っていた。

最初は Rancher Desktop をアップデートして、その構成が原因かなとか思って色々調べていたけど、結局原因は有線 LAN アダプタで作成されているネットワークアダプタがぽよって Self-assigned 状態になっているのが原因だった。ケーブル差し直してちゃんと疎通するようにすることで症状は出なくなったけど、いきなり kernel panic ってのはなんだかなあ。

もし、同じ症状の人がいたらこの辺を疑ってみると良さそうです。

Horizon Forbidden West をひたすらプレイしている

めちゃくちゃ面白くて、土日にかけてひたすらプレイしている。惜しいのはランドマークっぽいところが出てきた時にカリフォルニア周辺のことは知らないので、へ〜レベルが下がってしまうことかな。Youtube で実際の建物と比較したという映像があるので一通りクリアした後に確認する。

ストーリーも面白いんだけど、出てくるキャラクターが Diversity にめちゃくちゃ配慮した結果、アジア系、アフリカ系のキャラがたくさん出てくる割には混血キャラがおらず、ディズニー版のスターウォーズの映画を見ているような気分になってしまうのは違和感がすごい。


2023/02/20 (月)

東京に移動

この日は朝の6:00に起きて8時台の飛行機で東京へ。だいぶ早く起きて行動してても帰宅するのは11:00とかそんな感じなんだなあ。機内では引き続き本を読みまくっていたのでいいけど、近郊の旅行に比べるとやたら時間かかるなと感じるようになってしまった。

これ、気持ち的に色々アップデートしないと海外とか厳しそうだ。

d design travel YAMANASHI を読んだ

松本の RubyKaigi 2023 のあとにどこ行くかねえと長野か山梨じゃね?と考えた結果、山梨では、という結論になったので d design travel の山梨を読んでしまった。

恵林寺や白州の蒸留所などは山梨だったんだ、という感想だったが他にも近郊を調べてみると甲斐善光寺、キースヘンリング美術館、平山郁夫シルクロード美術館などこれは行っておかないとなーというスポットがたくさん出てきたのでよかった。行くのが楽しみ。


d design travel YAMANASHI
D&DEPARTMENT PROJECT
ディアンドデパートメント株式会社
¥1,540

learning.oreilly.com を使い始めた

昨年の末のセールの時に learning.oreilly.com が少し安くなっているのをみて、「オライリーの本とか年間で買ってる技術書の数を考えたらもうサブスクでいいんでは」という気持ちになったのでこっちに切り替えてしまった。

ほとんどが英語なので一旦そっちの活用は置いておいて、翻訳だけでも半年くらいするとサブスクとして出てくるので読むペースとしてはちょうどいい気がする。ちょうどこの日に確認したら2022/11月ごろまでに発売したソフトウェアアーキテクチャハードパーツやマスタリング Linux シェルスクリプト第2版、マイクロサービスアーキテクチャ第2版など、これは読まないとなー、という本が出てきたのでサイクルが3ヶ月くらいまで短縮しているのかも。

DeepL と組み合わせるとか、とにかく検索で使ったほうがいい、とかそこまではまだ使いこなせてないけどぼちぼちやる感じで。なお、オライリージャパンの本は https://learning.oreilly.com/publisher/oreilly-japan-inc/ のリンクで出てきます。現在 204 タイトルあるらしい。


2024/02/20 (火)

Ruby office hour

今週は以下のようなことを話していた

最後の PRIsVALUE とかはビルドエラーなどでよく見るマクロだったので、どういう意味なのか、ということを akr さんなどに解説してもらってとても勉強になった。ありがたい。

RubyGems で C/Rust 拡張を使いたいなら extensions ディレクトリを参照する

昨年 gem-ext-cleaner の時に軽く触れた話なのだけど、 RubyGems 3.4 では ext 配下はインストール後に make clean されるようになっている。つまり、ext の下に .so などがあるのを期待しているコードは動かなくなるので、以下のような対応をあちこちで必要となっていた。

僕の方でめぼしい gem については全部直したのだけど、あるから使うというのは良くない文化に思う。そういう話でRubyGems は伝統的に lib の下に lib/foo.so というようにコピーしているので、それを使っていたり、nokogiri のように lib/3.3/ というディレクトリを掘った上で .so などを配布しているのだけど、これらは全部間違いで、gem のインストールディレクトリの extensions フォルダの下にある .so を使うのが正解。

このフォルダはハードコードじゃなくても以下のようなコードで取得できるし、gem の activate の段階で勝手に $LOAD_PATH に追加される。

>> Gem.loaded_specs["date"].extension_dir
=> "/Users/hsbt/.local/share/gem/extensions/arm64-darwin-23/3.4.0+0-static/date-3.3.4"

見ての通り、アーキテクチャや Ruby のバージョンも含まれているので、これを参照する限りは OS のアーキテクチャが変わったとか、Ruby のバージョンが変わったという外部の変更にも耐えることができる。自分は複数の Ruby バージョンや amd64 と arm64 を具ちゃ混ぜにして使っても別に問題ない、という日々なのでこれを標準にしたいのだけど、どうやっていくかなあ、ということで、まずは lib の下にコピーするという機能を無効にできるようにしてみた。

gem-ext-cleaner を使い始めてから半年くらいにわたって lib の下の .so を消して暮らしていても何も困ることはないので、別に大丈夫なんじゃないかなあ。.so が2つあるの、エコじゃないのでなんとかしたい。

Asakusa.rb 第754 回

今週も discord で開催...していたけど、仕事環境の都合でこの日はテキストで軽く眺める程度だった。

https://asakusarb.esa.io/posts/1186

予告に書いた通り、RubyConf AU のフライトの手配と来週の in-person での Asakusa.rb の準備をして終わり。