今日は入学式があって昼からガイダンスがある。背広+自転車で行くっすよ。
今日は午前に入学式があって、午後からガイダンスが4時間くらいあったんですけど、はっきりいってサボりゃよかった。
ガイダンスって、住民異勤届を出せとかゴミの日はいつだとかそんなのばっかり、大学生ってこんなもんすか?
んー、長岡はあんましクラブ・サークルは盛んじゃないのかな??あんまし勧誘は激しくなかったぞ。
まぁ、適当に。
5/1で契約が切れるので引っ越しを計画中。週末か来週の頭に設定が完了するらしいので、設定完了後2,3日で引っ越しします。
旧育英会はもうやめにして財団法人の奨学金に申し込んでみる。
2月に部屋に戻ってからというもの、使用しているADSLモデム(NTT Web Caster 610M )のリンクがぶつぶつ切断される。
ん〜、住んでいる地域のBフレッツ開始に伴って、基地局のファームでもアップデートしてるのだろうか。とりあえずNTTに相談してみることにする。
今年度の時間割を入手後に研究室で奨学金関連の雑用をこなしてから、市役所へ行って手続き。
長岡市役所は合併の影響か、震災の手続き関連か、広場のホール全てに臨時の受付机が並んだり、案内の係員が受け付け机以外にホールに常駐して、老人を先導したりとなかなかあわただしかった。長岡はほんと市民サービス関連は優秀だよ。うん。
年金の手続き自体はなんてことなく終了。驚いたのは隣で学生特例の手続きをしていたのが、学生の親らしき人物だったこと。20歳を越えたら自分の将来の手続きくらい自分でやれよなあとか思いつつ市役所を後にする。
今日、OSSという言葉に反応してくれた同期の人を見つけたので、週末の飲み会に誘ってみたところ
そんな敷居の高いところにはいけませんよ
とのこと。話しを聞く限り、その人はWindowsプログラミングをしていてそれなりにソフトウェアは開発しているんだけど、OSSというのはLinuxやGNU softwareのようなものを指しているらしく、そんなソフトウェアを書いている人達はちょっと敷居が違うと感じているみたい。
いやいや、OSSに規模とか凄さとか利用度とかは関係なくて、参加する人の意識の問題ではないかと。どんなに小さなソフトウェアでも、極端にいってしまえばemacsのlispでもrubyのスクリプトでもOSSならOSSですから*1。この辺がOSS文化にふれてない人にはなかなか理解されないみたい。ぬーん、この辺の思考が普通なオレはOSS脳なのかなぁ。
*1 OSDとかの話は割愛
そういえば、仕事の服装について事業所の人に聞いてみたら、ネクタイどころかふつーに私服らしい。こいつは困ったぞう。ネクタイはいいとしてもスーツの方が服のコーディネートをする必要がなくて楽だったんだが…。
こいつは少しは服に金をかけろとのお達しか?結局のところネクタイなしなスタイルだけに軟着陸しそう。
社会人研修で講師が突然怒り出したりするのも研修の一環として上から命令されてやっているだけだから、従ってる振りだけで十分だぞ。
事例:「新入社員が挨拶・その他ができていないのは、担当講師が原因である。だからその上司の私は担当講師をしかって、反省文をかかせる」と言った具合に新入社員ではなく、ある程度うち解けた講師をしかりつけて、「自分たちのせいであの人たちが怒られてしまった…」と新入社員に自責の念を植え付けさせるって方法。
なんかさー、「こみゅにけーしょん」とか「にんげんりょく」ばかり普段言っている人たちがこういう手を使うんだから、大人って汚いって思うよね(中二病)
が、切りに行く時間がない。適当な日に半休でも取って行くかなあ。
久しぶりに Mac 電源落として寝たんだけど、朝起きて電源いれたら青い画面のまま停止中。なんだこりゃ。
とりあえず、セーフモードで起動はできたけど、これからどーすりゃいいんだ。
ググったり、アップルのサポートサイトを見るとログイン時の自動起動項目を無効にすると直ることがあるとか書いてあったので、試してみたけどやっぱりダメ。
しょうがないので、インストール DVD から起動して Time Machine で復元インストール。何とか昨日までの快適な状態に戻ったけど、せっかくの休みだと言うのにこんな作業で朝から数時間費やしちゃったよ。とほほ。
前から毛嫌いしてた ラージャン 2 体にチャレンジしてみたら、あっさり倒せてしまった。オレもやれば出来る子。
あと、金竜と銀竜 2体のクエをやってたら、紅玉を手に入れることができたので、ゲキリュウノツガイを作ってシェンガオレンをとっちめたりなんだり。そういえば、ここ2-3日は竜玉がでてないなあ。ついに運が尽きたか。
角谷さんが札幌に来たときに言ってた「アジャイルプラクティス」のジュンク堂書店池袋店の手書きポップをやっと確認することが出来た。引用元の表現が hsbt.org というのは始めてなのでちょっと恥ずかしいね。
書評といえば BEST SOFTWARE WRITING も読み終えて、ソフトウェア開発者採用ガイドも半分くらい進んでいるんだけど、MHP2G が忙しくてあまり手をつけてない。書評とか推薦文ってオレはあまり書いた経験が無いので、訓練の意味もこめていろんな文章をもっともっと書いていかないとなー。
アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣
オーム社
¥2,640
BEST SOFTWARE WRITING
翔泳社
¥3,278
ソフトウェア開発者採用ガイド
翔泳社
¥2,365
冬の間フル稼働させていた窓際の除湿器を片付けたり、観葉植物の移動をしたりしながらバイオハザード5を開始したり。
バイオハザード5は最初はメタルギアソリッドな気分でやってたけど、以外とあっさり死んでしまうのがやりにくいなー。そういうゲームだからしょうがないんだけど。もうちょい矯正が必要っぽい。
毎日電話してよーやく管理会社の担当の人が来てくれたので上の階の設備も含めて調べてもらった。なにやら、上の階の水道元栓のねじが一つゆるんでいて、そこからぽたぽたと水が漏れ続けていたとのこと。もっと早く(ry
何はともあれ、これで風呂にもゆっくり入れるようになったなー。やれやれ。
homebrew 使い始めてから、launchctl を多用するようになったんだけど、下のような現象になってしまいどうにもこうにも行かない状態になっていた。
% launchctl load -w /usr/local/Cellar/mongodb/1.4.0-x86_64/org.mongodb.mongod.plist Bug: launchctl.c:2325 (23930):13: (dbfd = open(g_job_overrides_db_path, O_RDONLY | O_EXLOCK | O_CREAT, S_IRUSR | S_IWUSR)) != -1 launch_msg(): Socket is not connected
数時間試行錯誤していたんだけど、わかったことは tmux 上では launchctl が使えないということだけだった。ふつーに Terminal.app や screen の上からだと使うことが出来る。
まあ、新しくタブを開いてから launchctl すればいいんだけど、何とかならんのかなー。
出ていた。関係者の皆さんお疲れ様です。
今回はチャド先輩のインタビューの翻訳記事がだいぶガチなのと、各種カンファレンスのレポートがとても丁寧なのが見所かなー。他の記事は明日読む。
クロヒョウ2も満足にプレイできてないけど、DL販売だと値下がりも期待できないので買ってしまった。引き継ぎデータはPSPから移動しておいたので、無事特典も受け取ることができた。
最近、ゲームの積みおきが貯まってきてるから休みでもとってプレイするかなあ。
新卒研修では実際のサービスの業務内容的な内容は一切するつもりがなくて、エンジニア(デザイナーも一部)として必要な教養や今から新しく物を作るなら、これくらい知らないといかんだろという項目ばかりなので公開してみました。
https://gist.github.com/hsbt/5318109
実際には、今からデザインパターン話してもしょうがないだろとか、全文検索の基礎くらいは入れた方がいいんじゃないという感じにもう少し入れ替える予定。皆さんの会社の研修内容も頂けると各社捗ると思うのでご検討をお願いいたします。
@_ko1 さんと @yotii23 さんの結婚式のパーティーに参加してきた。
開始前から新郎新婦席に座り出す竹内先生。自由とは聞いていたけど自由すぎる。
夫婦の共同作業=ペアプロは笹田さんのいつものレッツノートで。
@_zzak が日本語で乾杯の挨拶をしたり
@mametter さんが quine を披露したり。右後ろの画像、プログラムだ...と...
@a_matsuda さんは、ささだけ目撃情報の報告など。オレが最初に気がついたのは電車でなんか杖で叩いてくる人がいて、「うわー、何か絡まれるのかな」と無視していたら、実は足を怪我して鳥井さんに連れられて電車にのっている笹田さんだったというのが最初だった。5月の頃だったから、初回目撃陣からは1ヶ月遅れくらいかなあ。
最後に笹田さんから鳥井さんにお手紙を渡してパーティは終わり。お二人ともお幸せに!
rake が test-unit, minitest 同様に ruby 本体には同梱しないでリリース済みの gem を使ってインストールするという bundled gem になった
https://github.com/ruby/ruby/pull/862
この流れで json や bigdecimal あたりも bundled gem にして良いのではなかろうか。
5000円支払ってメンバーズクラブの会員になると、本人と同伴者1名の入場が1年間無料になるということで2回もいけば元手が取れる計算なので受付でさくっと会員になった。他にも内覧会や会報ももらえるみたいなのでお得。
今日は若冲と蕪村展をやっていたので会員パスを使って展示を観てきた。チケットを買うために並ぶ必要もないので便利。
個人情報保護法、ちゃんと理解しないとなあと思いシュッと読んだ。ひとまず個人情報とは何を指しているのか、という法解釈と概念は理解できたけど、じゃあそれで実務でどうすればいいの、というあたりは「ちゃんと規約作ってがんばれ」以上のことがなくて、頑張らないとなあという感じだった。
あと、最初から最後まで対談形式の書き起こしなので、またもや個人的に読みにくくてつらかった。
3/31 で Ruby 2.2 がセキュリティメンテナンスも含めて完全終了したので Ruby CI の実行する対象バージョンから除外した。
https://github.com/ruby/chkbuild/pull/37
1-2週間は結果の表示が残るけど、そのあとは 2.3-2.6 のみになる見込みです。もし、お手元のアプリケーションで 2.2 がまだ動いている環境がある場合は 2.4 ないし 2.5 への移行を強くお勧めします。
snap という canonical が進めているアプリケーションパッケージの仕組み(deb や rpm と違って 1 パッケージ内にオールインワンのバイナリや環境を提供している)に Ruby の 2.5.1 を candidate チャンネルとしてリリースした。
https://dashboard.snapcraft.io/snaps/ruby/
ubuntu 16.04 なら OS のインストール直後から snap install ruby --candidate
とかやると Ruby 2.5.1 がインストールされます。まだ調整中なんですが ruby.bundle
というコマンドを実行すると bundler も動きます。これは snap の仕組みでこんな名前になってるんですが canonical の中の人と調整して bundle
というコマンドになるようにするつもりです。
なお、confinement とかまだ試行錯誤中なので、実際に使おうとすると権限などがだいぶ怪しいと思う。
https://github.com/ruby/snap.ruby
rbenv とか入れてインタプリタをビルドしたくないけど、最新の安定バージョンは使いたいという人には嬉しいソリューションだと思うので、stable チャンネルに出す前に試してフィードバックをくれると嬉しいです。よろしくお願いします。
連休前後の土日が埋まりつつあるので、平日だけど夜間までやっている森美術館の六本木クロッシング2019を妻と見てきた。3年前は見たっけ...というのを覚えてないけど、現代アートが盛りだくさんて感じだった。中でもニーアオートマタぽい世界観のアートが良かったかなあ。
森美術館の後はヒルズの近くにできたというシェイクシャックというハンバーガーの店で夕食。店内、ほとんどが海外の人でなんか新鮮だった。ハンバーガーはまずまずって感じだけど、ポテトはおいしかったかなー。
あまりに歩かない状況が続いているので、西浅草のルスルスが持ち帰り専用のロールケーキを限定発売をするというのを知って、ある程度時間をかけて歩いて買ってきた。
浅草方面、「こんなところにこんな店があったんだねえ」など発見があったりして、妻とおしゃべりしながら歩く時間になったのでちょうどよかった。
割と年内ずっと、しばらく在宅が続く、みたいな規模になってきたので、徒歩をして体を動かすというのを習慣にしないとなあ。リングフィットアドベンチャーが買えればいいのだけど...
CVE を取るような脆弱性がいくつかあったのでそれらを修正したバージョンがリリースされた。一緒に溜まっていた不具合も結構直ってます。
1-3 月はやたら忙しくて、今回は CVE をとってアシストします、くらいしかできなかった。リリース関係者の皆さんお疲れ様でした。
ruby-build の方も特に何もしてませんが上記のバージョンをビルドできるようになったバージョンを eregon がリリースしていました。便利便利。
いつも通り discord で開催したのでいつものメンバーで雑談ワイワイって感じで過ごしていた。
https://asakusarb.esa.io/posts/1085
そろそろ in-person なイベントやりたいですねえという話題から、東博や科博の講堂も借りることできますよ、とか話してて楽しかった。大江戸Ruby会議、会場は東博です。とか字面が凄くて面白いのでいつかやりたいなあ。
https://www.ruby-lang.org/en/news/2022/04/03/ruby-3-2-0-preview1-released/ にある通り、Ruby の時期バージョンのプレビュー版である 3.2.0-preview1 がリリースされたので、いつも通り all-ruby の docker image も更新して push しておいた。
https://github.com/orgs/ruby/packages/container/package/all-ruby
preview 版は、次のバージョンはこんな感じですけどどっすかね、というバージョンなのでみなさん是非お試しください。
本当に細かすぎて伝わらない上に困っているのが世界で @k0kubun くんと僕くらいというバグなのだが、ruby/erb
のリポジトリの直下で bundle exec irb
で irb を起動すると
$ bundle exec irb
Ignoring erb-4.0.2 because its extensions are not built. Try: gem pristine erb --version 4.0.2
>>
というような warning が出て、実際には rake-compiler
によってビルドされているのに、RubyGems 的には erb
の C extension がビルドされていないという状態になる不具合を直した。
最初は RubyGems の missing_extension?
の判定処理がおかしいので、その判定処理を直すことにしたのだが、このメソッドはあらゆる gem を require する時に呼ばれるメソッドで、その度に full_require_paths
, すなわち gemspec で指定されている、ロード対象となるパスすべてを操作するのはコストが高い、ということで最終的には bundler の方に処理を移動して、bundle exec して、直下に gemspec がある時だけ判定を行うということにした。
この判定というのがものすごく微妙な状態になっていて、普通に gem install
をした時は rubygems は gem.build_complete
というファイルを extension_dir
に作成し、そのファイルがある時はビルドされているという判定をしているのだけど、ruby/erb
などリポジトリの下で rake-compiler を使ってビルドする、irb を起動する、テストするというようなときは gem.build_complete
ファイルがないので C extension がビルド済みなのかを判定できない。
なので、ヒューリスティックに、lib
ディレクトリの下に gem と同名のバイナリ、または namespace の下に何かしらのバイナリがあるかなどで判定している。これ、rake-compiler の方と共同で同じようなビルド済みを判定するファイルを置くようにするのがいいんだろうけど、rake-compiler は tmp ディレクトリを使うなどしているので、上手なアーキテクチャが思いつかず一旦はこんな感じで直すことにした。
CodeEurope という 6 月にポーランドの Krakow で開催されるカンファレンスに OSS や Ruby の開発者という文脈で登壇します。
https://www.linkedin.com/posts/codeeurope_ruby-codeeurope24-oss-activity-7178335404775919616-ZbYM/
CodeEurope は以前にポーランドの Wroclaw と ワルシャワで開催されたときに登壇して、その時は Ruby のリリースのあれこれを話したのだけど、思いの外 Ruby とかよくわからん、という人が多かったので今回はもうちょい抽象度を OSS 一般の話に寄せて話す予定。
そんなわけでポーランドの Krakow に行くルートを検討したら、One World だとヘルシンキ経由かフランクフルト経由が便利なので、行きはヘルシンキ、帰りはフランクフルトにして、フランクフルトでは乗り継ぎ待ちの数時間で軽く観光してこようと、積んだままだった地球の歩き方ドイツを読んだ。
フランクフルトには、シュテーデル美術館というフェルメールの地理学者を所蔵している美術館があるのでちょうどそこだけを見に行くと良さそうだった。時間があればゲーテと現代美術館かなあ。ドイツ、あとはベルリンには行っておきたいのだが、それはまた今度。
Ruby 3.4 で "Array#each" を Ruby で書き直してから以下のような <internal:...>:...
という表示が出るようになって、何だこりゃ?と mame さんと話していたのだが、これは rake の対応が必要というのを今日 mame さんが見つけたので僕の方でシュッと直して 13.2.1 をリリースした。
rake aborted!
Command failed with status (1)
<internal:array>:52:in 'Array#each'
<internal:array>:52:in 'Array#each'
https://github.com/ruby/rake/releases/tag/v13.2.1
Rake が backtrace を filter していたなあというのは把握してたけど、そこの対応が必要とは思わなかった。偶然ではあるけど、見つけて直せて良かった。
暑くなる前に上野公園周辺の美術展見ておくか、と東京都美術館からスタート。
朝イチのスロットだと相変わらずフロア1は混んでいるけど、そのあとはまばらかつゆっくりと見ることができるというやつでよかった。ミロ、年代を見ると岡本太郎と同じ時期の人で交流は多少なりともあったとはいえ、世界のあちこちで同時多発的に似たようなものが生み出されたのは面白いな、と思った。
ミロ展の後は藝大に移動して相国寺展へ。珍しく、藝大にしては入場に行列ができていてびっくりしたものの、最初のフロアが混み合ってる以外はゆっくりと見ることができた。3階に展示されている若冲の襖絵は大変よかった。
藝大のあとはちょうど昼時だったので東京都美術館に戻ってレストランでカツサンドやパフェを食べていた。いつもヒレカツなどが入ったミューズプレートを食べてしまうのだけど、グッと堪えてこの日はパフェにした。
アサシンクリード・シャドウズは別枠としていつもプレイしている皆さん。
ZZZ は新キャラのトリガーの期間になったのでキャラクターのストーリクエを終わらせてからミニゲームへ。いつもは戦闘が多いのだけど、今回は素朴な射撃ゲームだった。高難度の戦闘イベントは苦手なので、たまにはこういうのを混ぜてくれるとありがたい。
鳴鳥は放置していた期間限定イベントを消化。久しぶりに雷パーティーを出したけど、バフが豊富なこともあってかボコボコ感があってなかなか良かった。いつもこれくらいボコボコにできるなら爽快感があるんだけどなあ。
原神の方は塩漬けにしていた連作クエの方を進めて新しいエリアも含めて一通りクリアした。
ナタのストーリーはこれでエピローグっぽい感じになってひと段落かな。まだイファが残っているけど、ナタキャラクター全集合のこの画像には入ってくるのかなあ。位置的にシロネンの上とは思うけど、このまま出てこないとかあったりして。
# えぐぞせ [うちは、事業所内は上下作業着なんで、通勤時の服に気をつかわないどころか、つい何日も同じ服…。]
# ただただし [そういう職場でばしっとスーツで決めれば、目立っていいじゃん!]
# Diablo [ネクタイなしでも仕事となればきれいめスタイルが求められるのかしら? 多少お金がかかっても仕事の後、まっすぐお出掛けで..]
# しばた [なるほど仕事後のことは考えてなかったなー。 ビシッと決めて仕事場では目立ちつつ、オシャレな格好を目指すかな。]