グッズは増えるが空間は有限
日記
久しぶりにマスクをせずに外出した。といっても自宅とコンビニを往復しただけだが……。
<お知らせ> これまで屋外では、マスク着用は原則不要、屋内では原則着用としていましたが 令和5年3月13日以降、マスクの着用は、個人の主体的な選択を尊重し、個人の判断が基本となりました。 本人の意思に反してマスクの着脱を強いることがないよう、ご配慮をお願いします。
日記
鷲見セリナさんに狂わされる
— うたがわきき (@utgwkk) 2023年4月11日
鷲見セリナに狂わされる
— うたがわきき (@utgwkk) 2023年4月26日
鷲見セリナ
— うたがわきき (@utgwkk) 2023年5月25日
linterを導入していなかったプロジェクトにlinterを導入しようとするときにまずやること
今どきlinterを使っていないプロジェクトなんて、と思われるあるかもしれませんが、歴史の長いプロジェクトだとそういうこともあるでしょうし、あるいは一部のDSLやスキーマ*1に対してのみlinterを走らせたいということもあるでしょう。
そういったプロジェクトに対してlinterを導入する前に、デフォルト設定でlinterを走らせたときにどういう出力になるのかを一通り眺める、というのをやっています。
どういうエラーがどこで何件出ているのか、warningなのかerrorなのか、linterのルールがプロジェクトにとって妥当なのか、一通り吟味した上で設定を調整してからlinterを導入するようにしています。なぜなら、linterのノイズが多いとlinterの言うことに従うモチベーションが下がる (と自分では思っている) からです。
最初からlinterが入っているなら、とりあえずlinterの言う通りにする (あるいは設定を変える) ことはできると思いますが、途中からlinterを導入するとプロジェクトのこれまでのコードとlinterの出力が噛み合わないこともあると思います。linterの噛み合わせをよくする*2のがよいと考えています。
具体例として、Perlプロジェクトに対してperlcriticを導入するときにやったことをまとめた記事を紹介します。
心構えの話をしておこうという気持ちに急になったので記事にしました。
RubyKaigi 2023に参加した #rubykaigi
RubyKaigi 2023に参加しました。
トーク
印象に残ったトークについて簡単な感想を書きます。
The future vision of Ruby Parser
Rubyには4種類の do
がある、という話がおもしろかったです。
Fix SQL N+1 queries with RuboCop
RuboCopにN+1クエリを自動修正させる、というなかなか野心的な取り組みの話でした。最近だとChatGPTにコードを修正させるという向きもあると思うのですが、今後どうなるのかが気になります。
Splitting: the Crucial Optimization for Ruby Blocks
TruffleRubyの最適化手法の話でした。けっこうアグレッシブに最適化しているけど、最適化フェーズに必要な計算資源がけっこうありそう? というのが気になりました。
Ruby Committers and The World
今年はYJITなど言語処理系内部の話題が多かったように感じました。型注釈の話は意見がそこそこ割れていそう? 自分も型が書けるなら書きたい (補助輪が欲しい) 側なので、うまく表現できるとよさそうに思います。
例年は議論を発散(プロレス)するために荒れやすいネタを入れていました
— _ko1 (@_ko1) 2023年5月13日
Build Your Own SQLite3
自作キーボードの中でSQLite3が動き、キータイプの統計情報から最強のキー配列を作った結果hjklが人差し指に来る、というオチになったのがとてもおもしろかったです。File.open
をSQLite3に使わせるためになかなか力いっぱいなことをしているという印象でした。
NOC
今年はNOCとして参加しました。会場のあちこちにケーブルを引きまくる、ねじりっこを切る、迷子になる*1など活動は多岐にわたります。前日にまる一日かけて準備をして、最終日の午後になったら順に撤収していく、などでけっこう動き回っていました。
あとで聞いた感じだと、大きなネットワークの不調もなかったようで快適にWi-Fiを使ってもらえたのではないでしょうか。NOCとして参加すると、NOCやってますという話ができる (ネットワークの設定の話はそんなにできない) という点がお得だと思います。
次回の課題は、ケーブルを引くよりも高度な活動を行う*2、迷子にならないように気をつける、などがありそうです。Webアプリケーションより後ろ (後ろってどっち??) の話にまだついて行けていないので、もうちょっと解像度が上がると話について行けるようになるのではないか。
よいとき
今回は飲酒する前によいときを飲むようにしました。その結果、ほとんど二日酔いになることがありませんでした。20粒ぐらい持ち込んでいたはずだけど、2粒以上飲むなどしているうちにRubyKaigiが終わる頃には無くなっていました。すごいね~
次回は沖縄開催ということで、泡盛を飲みすぎても破滅しないように引き続き飲酒補助アイテムについて検討しようと思います。ミラグレーンが手に入るといいけど……
オフライン
去年に引き続きオフライン参加して、なかなか人が多かったな~という印象でした。ツイッターでしか見たことのない人と話すこともできてよかったと思います。
アイコンのステッカー入りの名札を持参していたのですが、次回は名札に貼れるような小さいステッカーを用意したいですね。GMOペパボさんのブースで作ったステッカーぐらいのものが欲しいです。
最新の自撮りです #rubykaigi pic.twitter.com/l19jghC3Nv
— うたがわきき (@utgwkk) 2023年5月13日
でかいステッカーでよければSUZURIで販売しています。
suzuri.jp
治水
長野県の治水について学びました。
おわりに
今年もにぎやかな感じでよかったと思います。オーガナイザーの皆様、スタッフの皆様、日本Rubyの会の皆様、参加者の皆様ありがとうございました。もうちょっとRubyを書いたほうがいいかな? という気がしてきたので来年のRubyKaigiまでに考えることを今後の課題とすることにします。
GW日記2
5/5
マリオの映画を見た。マリオが動きまわっていてよかった。
マリオみました
— うたがわきき (@utgwkk) 2023年5月5日
死こそ唯一の救済くんは何だったの??
— うたがわきき (@utgwkk) 2023年5月5日
5/6
スーパー銭湯のビールイベントに参加して飲酒した。
開始してます pic.twitter.com/PWJvdosYtt
— うたがわきき (@utgwkk) 2023年5月6日
5/7
RubyKaigiに備えて荷物の準備をしていた。あとスプラトゥーン3のフェスをちょっとやった。力パワーを見たので満足。
GW日記
4/29
無限に寝ていたような気がする。
4/30
飲みに行った。
I'm at EL LATINO in 京都市, 京都府 https://t.co/phSOHkDzHN
— うたがわきき (@utgwkk) 2023年4月30日
終わりです (@ 焼肉 龍豊 in 京都市, 京都府) https://t.co/kAO3wOzzoc
— うたがわきき (@utgwkk) 2023年4月30日
5/1
奈良に行った。アパホテルを取って1泊することに決める。
シバッ pic.twitter.com/3FZxElH9L1
— うたがわきき (@utgwkk) 2023年5月1日
駅構内でビールを飲めて嬉しい
— うたがわきき (@utgwkk) 2023年5月1日
マアーボー pic.twitter.com/D8QgmS6D7g
— うたがわきき (@utgwkk) 2023年5月1日
5/2
奈良でビールを飲んでいた。
I'm at Naramachi Brewery in Nara https://t.co/NirNx1dN7k
— うたがわきき (@utgwkk) 2023年5月2日
5/3
飲みに行った。
I'm at PUB Karr in 京都市 https://t.co/o7S0GDtz6H
— うたがわきき (@utgwkk) 2023年5月3日
I'm at うまいもん焼参 in Kyoto, Kyōto https://t.co/Z4h7XtIF6e
— うたがわきき (@utgwkk) 2023年5月3日
5/4
爆走を見ていた。
爆走見てる pic.twitter.com/M7Zw7K73yC
— うたがわきき (@utgwkk) 2023年5月4日