Shohei Mitani

不定期開催

書籍紹介「エンジニアリングマネージャーお悩み相談室 日々の課題を解決するための17のアドバイス」

7月7日にあらたまさんの「エンジニアリングマネージャーお悩み相談室 日々の課題を解決するための17のアドバイス」が発売されました👏👏👏

www.shoeisha.co.jp

私もいくおさんmiisanと共にレビュワーとして参加させていただいたのですが、全EMに読んでほしい本なので、私の推しポイントと一緒に紹介します!

続きを読む

RubyKaigi 2025 参加ログ

松山で開催されたRubyKaigi 2025にDay0 ~ Day4まで5日間参加してきたので、やってたこと・聞いてたセッション・Rubyistたちとの交流の記録を残しておきます。

Day0

今回は所属するスマートバンクがHack Space Sponsorとして参加することになったため、Day0はスペースの準備をしていました。キャンプ場っぽい雰囲気を出すために芝を引いたりキャンプチェアを置いたり、ブースの設営などをしてました。

準備が終わってからは、あっきーさん、矢野さん、かびさんとのDay0飲みへ

写真引用元

2次会はローカルオーガナイザーのらむさらさんに合流させていただいて、地元の美味しいご飯とお酒をいただきました。

Day1

トーク

ImaizumiさんのKeynoteでRubyKaigi開幕!!文字コードの歴史からunicodeutf-8の関係など細かく説明があった後、rubyunicodeの最新バージョン対応など、imaizumiさんが取り組んでるPJについて紹介があり非常に勉強になりました。過去のキャリアからRuby Commiterへのつながりの話はめっちゃエモくてよかったですね〜。

sinsokuさんの「Automatically generating types by running tests」は今回の中で一番刺さった気がします。rbs-trace早速試してみたい。

Hack Space & ブース

会社のHack Space & ブースにはたくさんの人が来ていただいて、盛況で良かったです!

Party

オフィシャルパーティで美味しいご飯 & 日本酒をいただけて大満足!会場のレイアウトから機材、食材・お酒、設営など全て自前で準備したと聞いてローカルオーガナイザーさんすごい!!!

その後2次会 ~ 3次会と色々なRubyistとお友達になれて楽しかったです!

写真引用元

Day2

トーク

前日のお酒はなんとか消化し切って気持ち良い朝を迎えたDay2。同僚のosyoyuさんのトークを聞いてました。Benchmark Driven Developmentやっていき!

この写真カッコ良過ぎる

スポンサーブース

今回は全部のブースを回りたいと決めてたので、トークはあまり聞かずに全てのブースを回り切りました。

hakomonoさんにいただいたサウナボーイのボトル&サコッシュがめちゃ嬉しかったです!これから常用します!primeNumberさんの素数スピードもめっちゃ面白かったです!

今回、アンケート | クイズ | Xフォローからの景品ガチャのブースが多かった気がします👀 休憩時間は人が多くてあまりブースの人と喋れなかったのでそこはちょっと残念。Day1からスタンプラリーができないのはなんでなんでしょうか?

Hack Space & ブース

2日目も合計1時間ほどブースに立ってました。今回12名くらいで参加したので、無理ないブースのシフトを作ってくれてスポンサーチームに感謝。

Drinkup

2日目はQiitaさんのDrinkupに参加させていただきました。「 しまなみ直送 真鯛・海鮮料理専門店 鯛将」さんで美味しい刺身やじゃこ天、鯛めしをいただきました。コース料理とは思えないほどボリュームが多くめちゃめちゃ美味しかったのでビビりました。Qiitaさんありがとうございました!!

2件目はgifteeさんのDrinkupの2次会組にちょっとだけ参加させてもらった後、シミュレーションゴルフでDay4の秘密の特訓をしてました。

ドライバーマン振りするころちゃん

Day3

トーク

流石に飲み過ぎの疲れが出始めたDay3... ペンさんの「Analyzing Ruby Code in IRB」と同僚のohbaryeさんの「On-the-fly Suggestions of Rewriting Method Deprecations」を聞いてました。どちらもPrismを使ってコード解析していたので面白かったです。こういう色んなところで使われるPrismみたいな技術、ゲームチェンジャー的な感じがして面白い。

Hack Space & ブース

最終日も30分ほどブースに立ってました。色々な方にブースに来ていただいて、Hack Spaceも活用いただいて大感謝!!

Drinkup

Day3はhacomonoさんのYakiniku Drinkupに参加させていただきました!「京城園 一番町本店」でめちゃめちゃ美味しい焼肉いただきました。特にタンがめっちゃ美味しかったです!hacomonoさんありがとうございました!

そこから2次会に同じDrinkupに参加してたRubyistと行って、ホテルに戻りました。

Day4

個人的なRubyKaigiの本番?(違う)のRubyKaigi 2025 Golf Competitionに参加!!この日のために前日は早々と2次会で切り上げてました。

RubyとGolf、同じ趣味を2つも持つ人たちとの時間が面白くないわけがなく、最高の時間を過ごしました!かびさん企画ありがとうございます!!!!

終わりに

この他、お昼ご飯だったりノベルティだったり廊下での会話だったり、書ききれないくらい楽しい5日間を過ごせました!来年の函館も行きたい!!

RubyKaigiのチームの皆様ありがとうございました〜〜!!!

EMConf JP 2025と3つの学び

2月27日に新宿で開催されたEMConf JP 2025に参加してきました。

2025.emconf.jp

ネームプレートからチェキ、アンカンファレンス、ブースなど、「増幅」と「触媒」というテーマに合わせて、トーク以外にも参加者が多くの人や学びに出会えるよう設計された非常に良いイベントでした。

参加して帰ってからもグルグルと頭の中を駆け回っていた様々な学びを、このブログを書くことで整理したいと思います。

続きを読む

ONCE: Writebookのコードを読んでみた 25年1月Ver

Writebookとは

37signals が提供するオンラインブックの作成ツール。24年7月に無料で公開され、Railsを開発している人たちが書いたRailsアプリケーションのコードを読めるとのことで話題になったやつ。

今でも開発は続いているようでRails8に対応していたりとリリースされた時にコードを読んだ人も、改めてダウンロードし直すと最新コードが読めて面白いかも知れません。

最近社内で最新のWritebookを見る会があったので、自分が気になったところを中心にまとめようと思います。

手元で見たい人はこちらから

once.com

Rails 8になってる

WritebookのGemfileで railsgithub: "rails/rails" が指定されているのでinstall時点の最新のRailsがインストールされます。実際にRails 8の新機能であるレート制限APIなども利用されてました。

#frozen_string_literal: trueが指定されてない

Ruby 3.4以降のデフォルト化を見据えてるんですかね?frozen_string_literalの指定は一切ありませんでした。

特定のモデル専用のConcernが多用してる

Concernは複数のモデルで共通で利用する処理を切り出すものと理解されてる人も多いかもしれません。WritebookのコードではBookクラス専用のBook::XxxableみたいなConcernが実装されてます。自分も職場ではよく使う方法でFat Modelを抑止しやすいので良いですね。

Delegated Typesを使ってる

Rails 6.1から入ったDelegated Typesが実際に使われてます。設計の妙みたいな使い方だったので社内の他メンバーからも好評でした。Delegated Typesがどんな感じで使えるのか知りたい方は見てみるといいでしょう。

before_actionでset_xxxがあったりcreated_atに依存してる箇所もあったりとよく言われるアンチパターンは普通に使ってる

Controllerのshowのbefore_actionでset_bookみたいにインスタンスを初期化する実装をしていたり、それをConcernで共通化したり、ActiveRecordで追加されるcreated_atの順序に依存したコードを書いていたりと、自分の周りではあまり使わないようにと言われるようなコードも見られました。

DBのトランザクションをほとんど貼ってない

一番驚いたのがこれで、複数のレコードを順に登録していく処理でDBのトランザクションを貼ってないコードが多かったです。INSERTが多い処理だとDBへの接続が途切れる以外で失敗することなんてほとんどないからデータ不整合などはあまり気にしてない感じなのでしょうか?

以上、また定期的に最新版をダウンロードして眺めたいなーと思います。

"目"を変えて実施する定例MTGのすゝめ

先日のEMゆるミートアップで「虫の目・鳥の目・魚の目」で分けてEMの定例MTGをしていると話したところ、「いいね!」「どんな議題でやってる?」と反響いただいたので私が所属してる会社でやっている内容を紹介します!

続きを読む

YAPC::Hakodate 2024に参加してきた #yapcjapan

2024年10月5日に函館で開催されたYAPC::Hakodate 2024に参加してきました。初函館!!

今回は会社がプラチナスポンサーとしてブース出展をしたので、ブース企画運営担当として参加してました。プロポーザルはLTと合わせて2つ出していたんですが通らず残念... 次回頑張ります。

fortee.jp fortee.jp

やってたこと

ブース企画担当だったので、パーセントバルーンクイズに答えてご当地お菓子掴み取り企画だったり、B/43ユーザーの招待コードを交換し合う企画だったり、登壇者向けのアンケート企画だったり、参加者全員向けの洗濯ネットノベルティとかをosyoyuさんといっぱい考えて準備しました。作りたいものを考えてデザイナーさんと一緒に形に落とし込むってのは楽しいですね。

オフィスで仮組みして楽しむ様子

※ 満面の笑みなのはosyoyuさんで私ではありません

今回のテーマがB/43のプロダクトの中身を知ってもらうことだったので、B/43の使われ方が知れるクイズを考えてWeb画面を作るところは結構頑張りました。

percent-balloon-black.vercel.app

普段あんまりフロント書かないので、できるだけChatGPTにコードを書かせるというトライもしたりしてました。

GPTくんに無茶振りするの図

ここら辺の面白話をLTで話したかったのですが通らず、またどこかで記憶があるうちにしゃべりたいです。

面白かったトーク

前夜祭とブースの合間にいくつかトークも聞きに行きました。自社のトークを除いて感想書きます。

小さな勉強会の始め方、広げ方、あるいは友達の作り方 by あらたま

最近自分もWelcome Fintech Communityというものを立ち上げたので共感ポイント多かったです。特に宣言するのはめっちゃ大事。自分と同じことをやりたい人はいっぱいいる!!

speakerdeck.com

Perlで始めるeBPF: 自作Loaderの作り方 by Takeru Hayasaka

eBPFって単語は聞いてたけどどういうものか全く勉強してなかったので興味を持って聞きに行きました。歴史から仕組みまで順番に話してくれたのでかなり理解度がました気がします。他の人に説明はできないけど、話が出た時にあー、あれのことねというざっくり理解までいけました。

こういう普段キャッチアップしてない話を気軽に聞きにいけてちょっと分かる状態になれるのがYAPCいいなと思います。

speakerdeck.com

誰になんと言われても「いい開発環境」を作りたくて頑張っている話 by Tatsuro Hisamori

今回のYAPCでめちゃ目立ってたtoggle holdingsさんの開発環境の話。myfinderさんが入られてからガッと採用から開発環境からテコ入れした話は聞いていて、具体どういう状況なのか知りたかったので聞きに行きました。自分がmyfinderさんの立場になったらその動きはまだできないなと思うポイントばっかりだったので刺激になります。

Webセキュリティのあるきかた by akiym

会社でお世話になっているFlatt Securityのakiymさん。セキュリティ関連の知識、年とともに忘れてしまったことが多いことに気づき改めて勉強しないとなと感じました。自分の中で理解できていること、忘れていること、ふんわりとしか理解してないことのおさらいになってめっちゃ良かったです。

speakerdeck.com

うーたんさんのYAPCの話(タイトル忘れた)

YAPCがやりたいことがしっかりいろんな人に届いてて歴史が紡がれているんだなと感じたLTでした。ベストLT賞おめでとうございます!!

nasaさんの正規表現の話(タイトル忘れた)

最初何の話かわからなかったけど途中からザ・LTっぽい構成で怒涛のすごいとウケるの繰り返しが最高でした

聞きそびれたやつ

onkさん、瀧澤さんの話は聞きに行きたかったんですがスポンサー業で行けず... 後日の動画公開を楽しみにしてます!

廊下 & 懇親会 & 飲み会

色々な人とお話しさせてもらってまとめるのが至難の業だったので割愛します 🙏

inaoさん、あすみさん、いくおさん、chaspyさんには前からお話ししたいと思っていて挨拶できて嬉しかったです。これからもよろしくお願いします!

グルメ

懇親会後もいくつか飲み会に混ざらせてもらって函館グルメを堪能しました。

特にニシンの刺身最高

終わりに

会場も良かったし、トークも良かったし、懇親会も飲み会も前夜祭も全部楽しかった!!!ブログ書いたので自分にとってのYAPC::Hakodateはここで終わり!!!

YAPC::Fukuokaでは何か話したいな〜

おわり