Emacs 環境を刷新した

金曜日の終業間際に Emacs 環境が壊れてしまい。週末はその復旧にあてがった。 おそらくアップグレードした Emacs 29 と Helm の噛み合わせが悪くなったことが原因 (かもしれない) 。 もともといい加減 Helm から Ivy に変更したかったのと、el-get もあまり…

RuboCopのメンテナンスポリシーを更新した

以下のように RuboCopのメンテナンスポリシーを更新することにした。 docs.rubocop.org これまでは Ruby バージョンの EOL 後に1年猶予をもってから、RuboCop のランタイムサポートからもドロップしていた。つまり Ruby 2.6 が EOL を迎えた際は、その 1 年…

GemfileでのRubyバージョン指定を.ruby-versionから読む

Gemfile での Ruby バージョンの指定を、値の直書きではなく .ruby-version からの読み込みに変更する設定です。 https://github.com/rubygems/rubygems/pull/6876 例えば、Rails アプリケーションなんかで Gemfile に .ruby-version と同じ 3.3.0 を指定し…

2023年にしていたGitHub遊び

2015年から行なっている Write Code Every Day というか、GitHub に草を生やす活動は、2019 年から JST では途切れることなく続いている。去年 2022 年には rubocop org だけでも毎日草が生えるようにしようとしていて達成していた。 毎年同じ草の生やし方を…

vscode-rubocopをOpen VSX Registryに公開した

RuboCop LSP の VS Code 拡張である vscode-rubocop を VS Code ベースの VSCodium や Eclipse Theia といった IDE で使いたいので、Open VSX Registry に公開してもらいたいというリクエストがあって対応しました。 https://open-vsx.org/extension/rubocop…

RWCスポンサートークで構文解析器研究部のスーパーLTした

RubyWorld Conference 2023 に参加した。オフライン参加の現地参加は4年ぶり。聖地「やぁ」や、かつて @kakutani に教えてもらったうどん屋の「のび太」がなくなっていたりと変化はあったものの、久しぶりの松江も楽しめました。 勤務先の永和システムマネジ…

『JavaScript Primer』を読んだ

『JavaScript Primer』を読んだ。Web でも読めることは知っているものの、それなりにページ量が多いので Kindle で読もうということで電子書籍版とした。そして、書籍や記事で重要なのは誰が関わっているかというところで、実績と信頼の azu さんが著者のひ…

大阪Ruby会議03に登壇した

大阪Ruby会議03 に登壇しました。大阪開催の地域Ruby会議での登壇は、もしかすると2015年の関西Ruby会議06のLT以来8年ぶりかも? 今回はまつもとさんの GVL の話と、同僚のこばじゅんのパーサーの話とそれに対する Lrama 作者の金子さんのフィードバックなど…

vscode-rubocop 0.6.0 をリリースした

vscode-rubocop 0.6.0 をリリースしました。rubocop -A 相当の安全でないオートコレクトのトリガー実行を可能にしています。 github.com vscode-rubocop を使う際に、editor.formatOnSave を有効にしてファイル保存時のオートコレクトは rubocop -a で安全に…

大阪Ruby会議03に登壇します

来月 2023年9月9日(土) に開催される、大阪Ruby会議03 に『A Practitioner's Journey from Ruby 1.8 Era to Present』というタイトルで登壇します。 regional.rubykaigi.org プロポーザル提出した講演概要を引用すると「Ruby 1.8 時代から現在の最新開発版で…

vscode-rubocop 0.4.0 をリリースした

vscode-rubocop 0.4.0 をリリースしました。Layout cop のみを有効にする rubocop -x を LSP で実現できるオプションを追加しています。 github.com もし日頃から rubocop ではなく rubocop -x を使っている人がいれば、rubocop -x による高速フォーマッター…

勤務先の中期経営計画発表会だった

2017年以来の in-person での中期経営計画の全社集合で福井に行っていた。これにあわせて、Ruby メソッドかるた永和杯や LT 会など事業部独自で前乗りイベントを行っていた。 Ruby メソッドかるたを使った第1回永和杯は @kakutani のツイートにあるように @i…

vscode-rubocop 0.2.0 をリリースした

RuboCop を標準搭載した LSP 向けの VS Code 拡張である vscode-rubocop の 0.2.0 をリリースしました。いわゆる肉の日リリースです。 marketplace.visualstudio.com Ruby 製の言語サーバーをターゲットにした、LSP クライアントを見てみると、どうも YJIT …

勤務先で『高橋メソッド』の書籍紹介をした

勤務先のおすすめ書籍の紹介イベントで、『でかいプレゼン 高橋メソッドの本』を題材にした話をした。 でかいプレゼン 高橋メソッドの本作者:高橋 征義ソフトバンク クリエイティブAmazon 当日のスライドは以下。 高橋メソッドそのものに関する Web 文献は高…

RuboCopにLSPを標準搭載した

タイトルのとおり。RuboCop 1.53 で LSP (言語サーバー) を標準搭載しました。 最初に3行まとめを書いておきます。 RuboCop を使っているけれど LSP を使っていない場合は、高速なリアルタイム性で開発体験が変わると思います。速い! VS Code ユーザーを使…

RubyKaigi 2023 に登壇した

RubyKaigi 2023 に登壇しました。現地での登壇は3年ぶりです。 rubykaigi.org 当日の発表スライドは以下です。スライドのコード中に出てくる ennd なんかは typo ではなく、松田さんのスライドテクニックで、end がネストしている場合、ネスト分 ennnndとし…

『研鑽Rubyプログラミング』をレビュアー献本いただいた

『研鑽Rubyプログラミング』をレビュアー献本いただきました。角谷さん、ラムダノートさん出版おめでとうございます & ご献本いただきありがとうございました。 研鑽Rubyプログラミング 実践的なコードのための原則とトレードオフ作者:Jeremy Evans,角谷信太…

RubyKaigi 2023 に登壇します

RubyKaigi 2023 に『The Resurrection of the Fast Parallel Test Runner』というタイトルで登壇します。そして久しぶりの現地登壇です (3年以上ぶり?) 。 私の登壇は2日目である 2023年5月12日(金) の 13:30-14:00 の予定です。 rubykaigi.org 昨年コミッ…

勤務先で『ソフトウェア職人気質』の書籍紹介をした

勤務先のおすすめ書籍の紹介イベントで、『ソフトウェア職人気質』を題材にした話をした。 ソフトウェア職人気質―人を育て、システム開発を成功へと導くための重要キーワード (Professional Computing Series)作者:ピート マクブリーンピアソンエデュケーシ…

Bliki (ja) の翻訳チームに加わった

Martin Fowler's Bliki (ja) を管理しているリポジトリのコミット権を @kdmsnr さんからもらったことで、翻訳チームに加わった。 github.com 勤務先の永和システムマネジメントでは、『マーチン・ファウラーの会』という Bliki (ja) を読んでディスカッショ…

Ruby 30周年記念イベントにLT登壇した

プログラミング言語Ruby 30周年記念イベントに LT 登壇した。 30.ruby.or.jp 当日のスライドは以下。 RuboCop をメンテナンスしている日常の中からの話をピックアップしようと思っていたところ、RuboCop の哲学とかそのあたりを話の背景に入れたり、レビュー…

勤務先で『あなたの知らない超絶技巧プログラミングの世界』の書籍紹介をした

勤務先のおすすめ書籍の紹介イベントで、『あなたの知らない超絶技巧プログラミングの世界』を題材にした話をした。 あなたの知らない超絶技巧プログラミングの世界作者:遠藤侑介技術評論社Amazon 当日のスライドは以下。 全体としては、鍋谷さんなどが行わ…

エンジニアリングマネージャー研修を社内開催した

勤務先の 岡島 CTO から社内の組織としてエンジニアリングマネージャー (の考え方や役割) を増やしたいという話を受けて、セミナーを設計して開催しました。勤務先で自分が所属しているのは Ruby x Agile をビジネスの中核にしている部署ですが、今回はクラ…

SlackへのGitHub通知先をスレッドからチャンネルにする

SlackへのGitHub通知先をスレッドからチャンネルにする方法です。 最初にまとめ。先月2022年10月下旬に、Slack への GitHub 通知がスレッド宛てになったのを、/github settings と Slack チャンネルで入力してチャンネル宛ての通知にできるといったものです…

Lint Night #1 に登壇した

Lint Night #1 に登壇した。 lintnight.connpass.com 当日のスライドは以下です。 今回は Kuniwak さんの方でそもそも「Lint とは?」といった前段の話をしていただけるというのと、"Lint" を冠したイベントを考えて、ここなら事前に求める前提知識をいくつ…

Ruby 3.2 (dev) のビルドに Bison 3 以上が必要になる

Ruby 3.2.0-dev のビルドで、手元の Bison が古いと以下のようなエラーになります。 % rbenv install 3.2.0-dev rbenv: /Users/koic/.rbenv/versions/3.2.0-dev already exists continue with installation? (y/N) y To follow progress, use 'tail -f /var/…

Lint Night #1 に登壇します

Lint Night #1 に登壇します。 lintnight.connpass.com Lint というテーマに絞っているイベントであることに加えて、そもそも Lint とは何かなどといった話は Kuniwak さん が話されるということで、今回の話はマニア指向で作るつもりです。なので、エンドユ…

XP祭り 2022 に登壇した

XP祭り 2022 に登壇した。 当日のスライドは以下です。昨年のような機材トラブルもなく無事に終えられて良かったです。 話としては今年の 6 月くらいの @beakmark との「エンジニアリングマネージャーの仕事」に関するやりとりをきっかけに、エンジニアリン…

勤務先で『NO HARD WORK』の書籍紹介をした

勤務先の社内イベントにある『DE ラジオ』の『DE の手書きポップ』という書籍紹介コーナーで話すことになり、『NO HARD WORK』を題材にした話をしました。 NO HARD WORK! 無駄ゼロで結果を出すぼくらの働き方 (早川書房)作者:ジェイソン フリード,デイヴィッ…

CircleCIのGitHub連携でPermission denied (publickey)が起きたときの対処

CircleCI を使った GitHub リポジトリの CI で、ある日突然以下のようなエラーが起きるようになりました。 現象 CircleCI のログを見たところ、GitHub からソースコードをチェックアウトする際に、以下のようなエラーになっていました。 if [ "$existing_rep…