shiloの素人日記

素人考えを書きます

イベント主催者をやってみて

はじめに

こんにちは。 shilo です。

先日、会社の社外 LT イベントの企画から司会進行までを主催者として担当しました。 あいにくの雨だったのですが、40人以上に参加いただきました。 ここまでの規模の外部イベントを主催したのは初めてだったので、その雑感をまとめてみようと思います。

イベントのレポートは以下のブログにまとめていますので、よければご覧ください。

tech.giftee.co.jp

雑感

周りのサポートがなければ何もできなかった

今回初めて主催を務めましたが、振り返ってみると、自分一人の力でできたことはほんの一部だったと感じています。テーマ設定や connpass の記載内容について先輩方に何度も無理を言ってレビューをお願いしたり、前日・当日の準備(名札やイベントスペースの用意)は有志の後輩メンバーにたくさん手伝ってもらいました。 また、当日参加してくれた社内メンバーもイベントを大いに盛り上げてくれて、本当に感謝しかありません。改めて、こうしたコミュニティイベントは1人では決して成り立たないものだと肌で感じました。

一方で、「主催者としてあるべき姿」は、まさにこういう状態(周囲に任せること)なのかもしれない、とも思いました。 主催者が細かなタスクまですべて抱え込んでしまうと、いざという時の「意思決定者」が不在になってしまいます。今回は幸いにも大きなトラブルはなく、シビアな判断を迫られる場面はありませんでしたが、主催者は重要な意思決定に注力し、任せるべきところは信頼して任せることが、イベントを円滑に進めるためには重要なのかなと感じました。

何はともあれ、イベント運営の大変さと楽しさを知ることができたので、今後は自分の身の回りでイベントを企画する人がいれば、積極的に恩返し(協力)をしていこうと思います。

イベントを定期開催するための仕組み化

今回のイベントは立ち上げから3回目になります。1回目、2回目は先輩のじぇまきさんが主催されていました。 今回、私が大きな問題なく開催までこぎ着けたのは、じぇまきさんが「誰でも主催できるように」と、暗黙知になりがちな準備の進め方や開催ノウハウをドキュメントにまとめてくれていたおかげです。

よく「何かを習慣化するには、努力ではなく仕組み化が重要」と言われますが、それはイベント運営でも全く同じでした。イベントを継続していくためには、個人やチームの気合い・努力に頼るのではなく、できる限り仕組み化して開催のハードルを下げ、「誰でも打席に立てる状態」を作ることが理想なのだと感じています。

ゼロからイベントを立ち上げ、さらにそれを再現性のある「仕組み」にまで落とし込んだじぇまきさんのすごさを、身をもって実感しました。

細かなこだわりが参加者の体験に直結する

今回は、細かな部分にもいくつかこだわってみました。たとえばLT テーマ的に5分でまとめるのは難しいと判断して7分にしてみたり、会話のきっかけに名札を用意してみたりしました。

少しでも参加者の皆さんの体験がよくなればいいなあという気軽な気持ちでやったものですが、アンケートで思いの外、それらのこだわった部分についてお褒めのコメントが多かったです。

「神は細部に宿る」とよく言いますが、本当にその通りで、細部まで妥協せずにこだわることは大事ですね。

イベント開催後こそ、スピード感が命

今回主催をやってみて、イベントは「終わってからもやることがたくさんある」と痛感しました。むしろ、イベント開催後のフォロー(レポート執筆やアンケート回収など)こそ、企画側も参加側も熱が冷めないうちに動く必要があるため、よりスピード感を意識しなければなりません。

冒頭で紹介したレポートブログも、公開までに1週間以上間が空いてしまったのは個人的な反省点です……!

まとめ

だいぶ雑なまとめになってしまいましたが、イベントを主催してみての感想をまとめてみました。 改めて参加いただいた皆様、手伝ってくれた社内メンバーには感謝しています。

実は今回の主催のきっかけは、お酒の席でじぇまきさんにお誘いいただき、二つ返事で「やります!」と言ってしまったところから始まりました。 そんな勢いから始まったイベントではありましたが、結果として個人的にとても大きな経験になりました。

また今後も機会があればイベント企画してみたいと思います!

OSS Gate ワークショップに参加してきました!

はじめに

こんにちは。shilo です。

2026/2/13(金)にオプティムさんのオフィスでオフライン開催された OSS Gate というワークショップイベントに参加してきました。 OSS Gate は Ruby コミッターの須藤さんが主催されている OSS 開発に参加する人を継続的に増やしていくことを目的にしているイベントです。 この記事では当日の流れや参加してみての学びをまとめようかなと思います。

参加のきっかけ

これまで私は単発で OSS に PR を出したことはありましたが、たまたま業務の中で見つけたバグを修正しただけで、なかなか継続して OSS 開発に携わることができていませんでした。とはいえ業務で OSS をたくさん使わしてもらっているので、何か継続して貢献できれば嬉しいなと考えており、自分よりスキルの高いエンジニアと協業できることにもずっと魅力を感じていました。今回のこのワークショップで継続して OSS に関わっていくための何かヒントが得られるといいなと考え、ビギナー枠として思い切って参加してみました。

当日のワークショップの流れ

当日のワークショップはビギナー3人で1グループを作り、そのグループ1つに対して1人サポーターがついてくれる形でした。少人数グループだったので困った時や意見を欲しい時にすぐにサポーターの方とディスカッションがすることができたのがとてもありがたかったです。

当日のワークショップのざっくりとした流れ(ステップ)は以下です。

1. コントリビュートする OSS を選ぶ

初めのステップはワークショップでコントリビュートしたい OSS を決めます。具体的にはサポーターの方と相談しながらコントリビュートしたいプロジェクトの候補を決めた上で、そのプロジェクトが OSS プロジェクトなのかをライセンスを確認することで決定します。

私の場合は普段 Ruby / Rails や Terraform を主に書いているので、 Ruby / Rails 関連のリポジトリにコントリビュートしてみたいなと考え、事前に何個か候補を考えていきました。サポーターの方と相談の結果、ワークショップ内で比較的コントリビュートしやすそうな Faker にすることにしました。

github.com

2. その OSS を触ってみる

次のステップでは上記で決めた OSS を公式ドキュメントや README を参考にして自分のローカル環境で動かします。この時のポイントとしては「とにかく、動かすためにやったことや気づいたことを細かくメモすること」でした。 というのもこの時の気づきは他の人も同じ気づきになりやすく、その気づきというのがもし何かしらの記載不備や間違いだった場合それは十分 OSS へフィードバックする価値のある内容だからです。

私の場合も README を参考にローカル環境に Faker を clone して、irb で起動してみて色々動かしてみました。普段なんとなく Rails で Faker を使っていますが、よく README を読んでみると知らない機能や気になる機能がたくさん出てきて面白かったです。

そして肝心のプロジェクトにフィードバックできそうな気づきについては大したものは見つけられなかったんですが、2点ほど README に細かな表記揺れがあることが分かりました。

「これくらい、報告しなくてもいいかな?」と普段なら流してしまうような些細な点でしたが、ワークショップの「すべてメモする」という環境のおかげで、改善の種にすることができました。

3. プロジェクトにフィードバックを送る

次のステップではローカル環境で動かしてみての気づきをプロジェクトにフィードバックします。フィードバックはどんな形でもよく、課題提起のための Issue を立てるでもいいし、変更内容が明確な場合は PR を送ってみるのも良さそうでした。

私の場合はある程度変更内容が明確なドキュメントの変更だったので、Faker のコントリビュート規約を読んだ上で PR を出すことにしました。 ここら辺に関しては以前も OSS に PR を出したことがあったので、特に悩まずにすんなり PR 自体を作って出すことができました。

github.com

とはいえ、Faker は以前コントリビュートした OSS とは Github の Star 数が桁違いに多いので、コミッターから反応があるまではずっと少しそわそわしていました(ちなみに無事、当日に出した PR は数日後にマージされました)。

4. その日の振り返り

プロジェクトにフィードバックを送った後は最後にアンケートを記入して、記入後その場でアンケート集計し、結果を眺めることでその日の振り返りを行いました。 他のビギナーの方それぞれが全く違った OSS に対してコントリビュートしており、眺めるのとても楽しかったです。 また、いずれのビギナー参加者の方もしっかりプロジェクトにフィードバックしきるところまで完了しており、このワークショップの凄さを感じました。

ここからは余談ですが、普段このようにイベント参加の最後にアンケートを記入する機会は多いですが、今回のように記入した後すぐに結果を全体で眺めるというのは主催者側も参加者側も双方でその結果からの学びを共有できるので、とても良い設計だなと感じました。次回私が何かのイベントを企画する際にはぜひこのやり方を取り入れたいなと思います。

5. (おまけ)懇親会

懇親会は会場そのまま、オプティムさんのオフィス内での開催でした。 オプティムさんでは会社でオプティム米というお米を栽培しているらしく、そのお米を使ったカレーやその他オードブルを用意いただきました。 懇親会でカレー(お米)というのは初めてでしたが、すごく美味しかったです。

カレーの写真を撮らなかったことをとても後悔しています・・・笑

懇親会でも須藤さんや @yasulab の安川さんをはじめ、いろいろな方と OSS への関わり方や普段の業務についてざっくばらんに意見交換できてとても学びがありました。

参加しての学び

どんなに小さいフィードバックでもそれは立派なOSS への貢献

今回参加してみて、どんなに小さいフィードバックでも十分立派な OSS への貢献になるということが分かりました。これまでも何となく OSS を使う中でのフィードバックした方がいいかもしれない気づきはありましたが、こんな軽微な変更で PR や Issue 立てていいのか迷うことがありました。

今回のワークショップで Faker に出したフィードバックは本当に小さなドキュメントの変更ですが、送った PR が最終的にマージされたのをみると、そういった小さな変更でもこれからその OSS を使う人の役に立つかもしれないから、OSS 側は受け入れてくれるんだろうなと感じました。

それを踏まえるとどんなに軽微でもそれは誰かの役に立ちうるので、気づいたことはどんどんプロジェクトへフィードバックするのがとても大切な姿勢だということを再認識しました。

小さな気づきや違和感を逃さない

上記に書いたように小さな気づきをフィードバックするというのはもちろん大切なんですが、それよりも前段階としてその小さな気づきをしっかり逃さない、見過ごさないという観点も普段ソフトウェア開発する中でとても重要な姿勢だと感じました。

これは OSS に限らず、仕事全般に言える話のような気がします。私の周りを観察する限り、優秀なエンジニアというのは他の人が見過ごしやすい小さな気づきや違和感に恐ろしく敏感だと思います。もしかしたら OSS に携わっているエンジニアに優秀なエンジニアが多いと感じるのはそういった他の人が見過ごしやすいポイントに自然に気づくからなのかなと思ったりしました。

何はともあれ、そこの感度を上げるためには、今回ワークショップの中で実践したように日常の小さな違和感をしっかりメモする癖をつけることが大切だと思います。ということで今後は今以上にメモをたくさんとっていくことを意識したいなと思います。

終わりに

このワークショップに参加する前はたった1日のワークショップの中で OSS にコントリビュートできるのかと思っていましたが、実際にやってみると思ったよりもコントリビュートできる機会はたくさんあるんだなと感じました。

どちらかというと、その機会を見過ごさないためにはどうしていくべきかという方が個人的には重要なトピックになりそうです。

そういった貴重な学びも得ることができたので、今回のワークショップに参加して良かったなと思います!いつかはサポーターとして参加できるように今後も頑張りたいと思います!

ここまで読んでいただきありがとうございました!

2025年振り返り

2026年になっちゃったけど、2025年に振り返りができていなかったので、この場でしたいと思う。総じて初めてのことにいろいろチャレンジできたので、良かったと思う。2026年はこれらの取り組みを継続していけると良さそう。

仕事

開発

2025 年はバックエンドというよりインフラメインのタスクが圧倒的に多かった。特に EC2 を Fargate に載せ替えるという案件の要件定義や基本設計をここ数ヶ月はやっていたおかげで ECS 周りの知識は一定ついたと思う。これまではどちらかというとバックエンドのタスクが多かったので、そういう意味ではインフラの知識や経験を増やせた一年だったと思う。2026年も基本はそこの詳細設計や実装を進めていくことになるので、引き続き頑張っていきたい。

一方でバックエンドのコードを触る機会があまりないので、そこは課題だと思っている。今後も自分のタスク的にしばらくはバックエンドのコードは触れなさそうなので、レビュー担当として自分なりの実装を思い描いてみたり、個人開発とかで補っていくしかなさそう。ここは意識しながら日々過ごしていかないとなかなか自分のスキルを伸ばしていける状況ではないと思うので、頑張らねば。

あとは今年気づいたけど自分はお客さんの要望をヒアリングして要件を詰めていくような超上流は苦手らしい。どこまでお客さんの要望を要件に落とし込んでいくか、どこを諦めてもらうかの顧客折衝が難しいなと思うことが多かった。ただ、苦手とはいえ嫌いではなく、むしろうまく調整できた時は嬉しいので、2025年に経験したことはしっかり自分のスキルとして今後も顧客折衝とかにも積極的にチャレンジしていけるとよりエンジニアとしての幅が広がったりするのかなと思ったりする。

その他

上記の開発以外に2025年はいろいろなことに手を挙げて参加させてもらった。会社のテックブログの編集委員(=運営担当)になったり、新卒の技術面接やインターン(サマーインターンや 1week インターン)のメンターとかやった。上記開発タスクの他のチームの人や学生と関わる機会が多かったので、新しい学びが多かった気がする。

あとは会社として RubyKaigi や Kaigi on Rails といったカンファレンスにも手を挙げて参加した。RubyKaigi は初参加でセッションの内容とかほぼ理解できなかったけど、普段何気なく使っている Ruby を作っている人たちがどのようなことを考えて Ruby という言語を育てているかというところを感じることができて自分も OSS に対するモチベーションが上がった。

hogarakaryo.hatenablog.com

Kaigi on Rails ではうちの会社から1人登壇することになってすごいなあと思う一方で、自分も頑張って一度くらいは登壇してみたいなという気持ちにもなったので来年はぜひプロポーザル出してみたいと思う。(今くらいからネタ探しはしておいた方がいいのかも)

hogarakaryo.hatenablog.com

外部発信

技術ブログ執筆や社外の勉強会でのLTは今年も何回かできたので良かったと思うが、それ以上に YAPC::Fukuoka 2025 にプロポーザル出したのはいい経験だったと思う。結果的に落選だったけど、自分でもプロポーザル書けるんだということとプロポーザルは準備がめちゃめちゃ大切という学びがあった。 詳しくは以下に書いた。

speakerdeck.com

2026年は今回の学びを活かして、積極的にプロポーザル出していきたいと思う。

OSS 活動

2025年は初めて社外のリポジトリにコントリビュートできた。普段技術ブログ周りでお世話になっているはてなブログワークフローのコードを読んでいたときにたまたま発見した修正で大した内容ではないが、ずっと OSS 活動してみたいと思っていたので、はじめの一歩を踏み出せてよかった。

github.com

今回の対応で OSS 活動をしていくためにはやっぱりコードをたくさん地道に読んでいくことが大切であることがわかったのと、なんとなくの OSS 活動の進め方みたいなところを感じ取れたので、2026年はもっとたくさんのコントリビュートができたらいいなあと思う。

英語

英語はちょこちょこといろいろやったけど、これといった成果みたいなのはなかった。英語に関してはモチベーションの波が大きいので、ある程度しっかりとした目標を2026年は立てないと成果には結びつかないのではないかと思う。 とりあえず目標を立てるところからかな。

(直近、妹に留学先で知り合ったイタリア人の彼氏ができたらしく、この間その彼氏を紹介された時にカタコトの英語でしか挨拶できなかったので、その彼氏とコミュニケーションをとることを目標としようかなと思っている。)

その他

上記にも書いたが、圧倒的にバックエンドのコードを書く機会が少ないので年末から久しぶりに個人開発をやり始めた。テーマは今どのカンファレンスのプロポーザルが受付期間なのか分かりづらく、そこら辺の情報が一元的にまとまっているサイトがあるといいなと YAPC::Fukuoka 2025 にプロポーザルを出した後から感じているので、そこら辺の課題を解決できるような Web サービスを作りたいと思っている。とりあえずサイトの最低限の雛形はできたので、これの機能拡張を2026年の頭はやっていければと思う。

https://cfpartner.onrender.com/

Kaigi on Rails 2025 に参加してきました

はじめに

こんにちは、shilo です。 先週 Kaigi on Rails 2025 に参加してきました。 今回は昨年に引き続き2回目の参加です。 個人的な所感をレポートとしてざっくりまとめておきたいと思います。

印象に残ったセッション

どのセッションもスピーカーの方の熱意と深い知見に溢れており、多くの学びを得られました。 ここでは、特に印象に残ったセッションをいくつか振り返ります(メモの取りこぼしや認識誤りなどあれば、ぜひご指摘ください!)。 (聴講を泣く泣く諦めたセッションも多いため、YouTube での公開を心待ちにしています!)

5年間のFintech × Rails実践に学ぶ - 基本に忠実な運用で築く高信頼性システム( ohba さん)

本セッションは以下の内容でした。

  • Fintech 領域では高い信頼性が求められるシステムを運用する必要がある。運用とは本質的にビジネスを可能とすること。
  • そのために開発段階では要件に特化したシステムコンポーネントを分離するアーキテクチャ設計やConcern / Concering を活用した積極的なモジュール化等の工夫を行った。
  • 運用段階では資金移動業者向けガイドラインを確認し、異常検知の仕組み整備、パフォーマンスモニタリング、SLIやSLOの導入、アラートトリアージの徹底、障害対応フロー整備など様々な取り組みを行っている。
  • 結果としてスケールに耐えうる高信頼性を開発/運用を通じて確保できている。

私が担当するプロダクトもスマートバンクさんと同様に決済処理があり、求められる品質特性が近いため、毎回非常に参考にさせていただいています。 今回の発表も私のチームでも取り入れると効果がありそうなアイデアがたくさんありましたので、今後ぜひ取り入れに向けて検討したいと思います。

Railsによる人工的「設計」入門( 大場 さん)

本セッションは以下の内容でした。

  • 設計はコードレベルで考えることではない。全部のコードを考えるのは実装であり、実装より抽象度高いレベルで考えることが設計。
  • 人工的なメソッドとして設計を行うためにすることは「逆算」。
    • 完成したいシステムを思い浮かべ、そこから思考の起点となるゴール(最も実現したい本質的な事柄)を見定める。さらにそのゴールを達するためには何を検討しなければいけないかを必要かをブレイクダウンしていく。
    • ポイントは上記のゴールや課題などのそれぞれのトピックに短い名前をつける。
    • 本質的なところではない部分の課題も一旦洗い出すだけ洗い出しておくと後から考えやすい。

私自身、設計の進め方って言語化が難しいなと感じていたところがあったのですが、今回のセッションではそこを見事に言語化していただいた内容だったのでとても参考になりました。 特に「逆算的に本質的なものから考える」というのは瑣末なものに意識を取られずに本質的な面を検討ができるので、それだけでその設計自体が大外れすることはなくなり、非常に重要な思考だと再認識しました。 最近、新卒のエンジニアの方と一緒に仕事をする機会が増えてきており、より大きな観点での設計というところも今後一緒にしていくと思うので、その時に進め方で迷った場合などは今回学んだことはアドバイスとして伝えてあげたいなと思いました。

今改めてServiceクラスについて考える 〜あるRails開発者の10年〜( joker1007 さん)

本セッションは以下の内容でした。

  • Service クラスに関しては実際の仕事の現場ではなるべく使わないほうがいいというのが最近の認識。なぜなら開発統制の困難さを上回るメリットが見当たらない。
    • Rails は Service クラスなしの場合、レイヤー分類がよくできている。そこにService クラスを入れると逆に構造がわかりづらくなり、Rails のレイヤー構造がわかりやすいというメリットが失われる。
    • これは継続的に開発のペースを維持するためには読みやすく想像しやすい構造を作ることが大事だが、Service クラスは上記のように構造をわかりにくくしてしまう。
  • 結局のところ、Service クラスだの Form Object はあまり重要ではなく、ちゃんとシンプルさを求めることから逃げていないことが重要。
    • 複雑なシステムを設計するときに重要なのはコンテキストマップを作り、コンテキスト同士は境界を超えた先に影響を与えないようにする。
  • 結局大切なのは開発者にとって想像がつき、驚きが少ない開発。そこに対して常にいい判断をし続けることが重要で、それができる環境というのがいわゆる設計できている状況である。

私の担当しているプロダクトでは一部に Service クラスを使っています。ただ、今回の発表があったように Model側に処理が書いてあるのか、Service クラス側に処理が書いてあるのか明確な線引きがないため、手を入れるたびにどちらにコードが書いてあるか確認が必要な場合があります(そのおかげでFat ModelというほどModelのコードが肥大化していないというメリットももちろんあります)。ここら辺は発表にもあった通り正解は無くて、今後も常にどうして行けたらいいかを逃げずに考えることが何よりも重要なのかなと思いました。

2重リクエスト完全攻略HANDBOOK( mitani さん)

本セッションは以下の内容でした。

  • 2重リクエストの対策は意外に難しい。なぜなら上記のように2重リクエストが起こりうるシチュエーションは幅広いため、それらのシチュエーション全てに対応できる対策は存在しないためです。そのため、クライアント側(フロントエンド)とサーバー側(バックエンド)の両方で多重に防御を仕掛ける必要がある。
  • さまざまなシチュエーションに応じた防御策がクライアント側とサーバー側に分けて主に9つあり、それらを組み合わせて対策する必要がある。
  • Fintech 領域でサービスを展開するスマートバンク社では、排他制御、Idempotency-Key ヘッダーやワンタイムトークン、レートリミット等を機能や処理の特徴に合わせて採用しており、実サービスで有効に機能している。

発表の中で mitani さんが話していた「2重リクエストは単なるバグではなく、ビジネス的な損失に直結するセキュリティ・信頼性の問題である」と言う言葉がとても印象的でした。なんだかんだ自分としてもこのセッションを聴くまでは2重リクエストを他の障害より若干軽視している節はあったかもしれないです。 改めて色々なエンドポイントで考慮しなくてはならない2重リクエスト対策を軽んじず、ユースケースやアプリケーションの特性に応じて防御策を組み合わせて2重リクエスト対策することが重要だと認識しました。

また、こちらの mitani さんのセッションを聴講して、自分が普段担当しているプロダクトの2重リクエスト対策を振り返るという記事を会社のテックブログで執筆中です。 そちらもまた近いうちに公開いたします。

オフィシャルパーティー

オフィシャルパーティーはまさかの東京国際フォーラムでした。 建築学科出身で元々好きな建物だったこともあり、非常にテンションが上がりました。 (大部分がガラス張りで、夜には宇宙船のデッキのように見えるあの雰囲気が特に好きです)

オフィシャルパーティー自体は今回もたくさんの Rubyist の方とお話しすることができました! 登壇者の方ともたくさん話させていただいたんですが、特に katakyo さん(@katakyo_51)や Koya さん(@koxya)、daichi さん(@da1chi24)と話した際に「どのようにプロポーザル書いたり、発表準備したか」という生の話をたくさん伺うことができました。 今年は弊社でも mugi さん(@mugi_1359)が登壇されて、そういった意味でも多くの登壇者の方の話を聞けてとても刺激になったので、来年は私もプロポーザル提出&登壇を目指したいと思います!

また、会の途中ではKashiwa.rb でお世話になっている koji さん(@kozy4324)の会社と弊社の新卒エンジニア同士の交流も生まれており、そういう意味でもすごく良い場だったなと思います。 みなさん、ありがとうございました!

まとめ

今年もすごく楽しく、たくさんの学びがあった2日間でした! 今から来年の Kaigi on Rails が楽しみです!

ここまで読んでいただきありがとうございました!

弊社の新卒エンジニアが書いた参加レポートもぜひ

tech.giftee.co.jp

3日坊主の私が5年間、毎日日報を書き続けた3つの理由

はじめに

こんにちは。shilo です。

突然ですが、私は新卒の頃から毎日、日報を書いています(数少ない自慢です)。

自分でもここまで長く続けられるとは思っていなかったので、自分が一番驚いています。

でも振り返ってみると自分なりに訳があって続けているんだなということがわかったので、この記事では、3日坊主で定評のある私がなぜ日報を続けてこられたのか等を紹介できればと思います。

なぜ日報を書くようになったのか

日報を書くようになった経緯は正直あまり覚えていませんが、そんな大した理由はなく、業務報告ということでやり始めたのかなと思っています。

しかし、今も日報を書き続けている理由は明確にあります。それは作業コストに対して圧倒的にメリットが大きく、コスパが最強だと考えるからです。

日報のメリット

5年間続けてみての感じた日報のメリットは主に以下の3つです。

学んだことが知識やスキルとして定着しやすくなる。

業務で学んだことや考えたことをその日のうちに日報という形で半強制的にアウトプットするので知識やスキルの定着がしやすくなります。

「インプット」と「アウトプット」は、知識を定着させるためには必要不可欠です。しかし、日々の業務の中ではインプットに偏りがちで、せっかく得た知識も「わかったつもり」で終わってしまうことが少なくありません。

日報は、この「わかったつもり」を解消し、ちゃんと学びを自分のものにするために有用なツールだと思っています。どういうことかというと業務で経験したことやその時考えたことを自分の言葉で書き出すことで、あいまいで抽象的で感覚的だった学びが具体的な学びに変わります。この具体的に文字に起こすというのがチリツモで効いてきて、だんだんと学んだことを自分の言葉で語れるようになり、そこで初めて自分の血肉にすることができます。

例えば、私はエンジニアなので業務中にプログラミングのエラーに遭遇することが日常茶飯事です。自分が知らない未知のエラーと遭遇することもあり、その時はググったり、AIも活用しながら試行錯誤でエラーを解決する必要があります。その時の試行錯誤の経緯は非常に重要な学びになります。ただし、こういった学びは揮発性なので、何かにメモらない限りは数日、数時間で忘れてしまいます。そんな時に日報にそれらの試行錯誤の経緯やそこから得られる学びを文字としてまとめることで、忘れにくい実践的な知識として定着させることができます。(後から同じエラーに遭遇した場合にも参考にすることができるので、そういった意味でもメリットがあります。)

読んでくれる人に自分のことを知ってもらえる

実は日報って反応がないことも多いけど、こっそり読んでくれてる人はたくさんいます(いると信じてる)。 実際、日報自体にコメントや反応はせずとも、日報の内容をきっかけに自分に興味を持ってくれて、オフィスで会った時に話しかけてくれるもたくさんいます。つまり、気軽に話せるくらいの社内の知り合いをコスパよく増やすことができます。

企業に属して仕事をする場合は必ず多かれ少なかれ他の部署とのやりとりが発生するので、その時に他の部署に気軽に相談できる知り合いがいるかどうかはその企業内のやりとりのしやすさに直結します。これはエンジニアに限らず、社会人として仕事をしていく上で非常に大きなメリットになると思います。

後から日報を振り返ることで、自信につながったり、より中長期的な改善アクションを見つけることができる

日報を続けることで、自分がどんなことに挑戦し、どのような課題を乗り越えてきたのか、その成長の軌跡を見える化できます。私自身も定期的に過去の日報を読み返すのですが、当時の自分と今の自分を比較でき、成長を客観的に実感できるため、モチベーションの維持に役立てています。

また、日報を分析することで自分だけの成功法則や失敗法則もなんとなく分かったりします。例えば、私の場合は日報にこれまでに成功したことや失敗したことを記録していいるので、それらをグルーピングして分析してみると、ものごとをうまく進められた時にはチームメンバーに相談を早めにしていたとかとか、ものごとで失敗したときの大半は何かしらが準備不足だったという傾向を掴むことができました。それ以来、準備には時間をかけて取り組むようにするなど改善アクションをとっています。

このような感じで毎日のPDCAだけではなく、もう少し長いスパンでのPDCAを回すためのネタを日報は提供してくれると思います。

普段どのように日報を書いているか

では私が普段、どのように日報を書いているかというと、すごくシンプルな以下のフォーマットで日報を書いています。これを終業前の10〜15分で書き上げて、Slack の自分の分報チャンネル(times チャンネル)に投稿しています。

  • 日付
  • やったこと
  • 思ったこと・学んだこと
  • よもやま

KPT なども試しましたが、KPTはKEEPとPROBLEMを分けて書かないといけなく、どっちか判断が微妙な場合に筆が止まってしまい、日報としては若干の書きづらさを感じることが多々ありました。毎日やる上でストレスなくやることが大事なので、筆が止まらないフォーマットというのは結構大事で最近は自分として書きやすい上記フォーマットに落ち着いています。

書く内容としては「思ったこと・学んだこと」を重視して書くようにしています。理由はその時思ったことや学んだことは忘れてしまう可能性が高いので、忘れないうちに日報でできる限り言語化して振り返ることが成長のためには重要だと考えているからです。

また、よもやま話もネタを見つけて欠かさず書くようにしています。理由はよもやま話も自分を知ってもらうために非常に有用な情報だからです。趣味でやっていることは何なのか、最近の気になっているスポットはどこなのか、そういった情報は読んでくれた人に情報を提供するとともに、共通点を作るためのフックになりえます。

日報を書くうえで大切にしていること

内容を充実させるよりも長く習慣化することが大事

とにかく完璧を目指さずに頑張りすぎないことが大事です。

個人的にはどんなに内容が薄くても別に気にしなくていいし、できない日があってもいいと思います。飲み会がある日は飲み会を優先してもいいし、ゲームの発売日なら書かなくてもいいと思います。

大事なのは書けなかった日や内容が薄くなってしまった日のことを気にせず、その次の日も変わらずに日報を書き続けることだと思います。

自分に嘘をつかない

多少恥ずかしくても日報は自分の思いを吐き出すべきだと思います。 もちろん人の目に触れるように書く場合はチームメンバーの悪口等は控える必要がありますが、自分の熱い思いや考えたことは遠慮せずに書いていいと思います。

最後に

日報って正直胸を張ってやったぞ!って言えるほどのものではないですが、コツコツ続けてみると案外良いことがあったりします。

もしこの記事を読んでみて、少しでも日報について興味を持ってもらえたら嬉しいなと思います。

ここまで読んでくれてありがとうございました!

RubyKaigi 2025に参加してきました!

はじめに

こんにちは。shiloです。 3週間近く前ですが、松山で行われたRubyKaigi2025に参加してきました。 今回はRubyistになって1年、初めてのRubyKaigi参加です。それとない所感ということでレポートとしてまとめておこうと思います。

参加前の準備

セッション聞いて全く分からないというのは嫌だったので、去年のセッションの録画を見たり、SmartHRさんの事前勉強会に参加したり、Rubyのしくみ Ruby Under a Microscopeを読んだりして予習しました。

特に事前勉強会でのudzuraさんの資料が大変参考になりました!Parser周りやJITの概要や現状を知れたのは大きかったです。

docs.google.com

印象に残ったセッション

セッションはParserやJIT、型に関するものを中心に聴講しました。 いずれもハイレベルでとても全てを理解することはできませんでしたが、スピーカーの方の熱意や思いを感じることができてすごく楽しかったです! ここでじゃいくつか印象に残ったセッションを振り返ろうと思います。

Make Parsers Compatible Using Automata Learning(Fujinamiさん)

本セッションは以下の内容でした。

  • 現在はparse.y、Prismをはじめとした大パーサー時代と言えるが、パーサー間で互換性というのが一つ課題となっている。
  • その課題を解決するために、unitテストをたくさんしてみたり、他のgemやパーサーのパース結果と比較するという物量で解決するアプローチが取られている。
  • そこで新たなアプローチとしてオートマトン理論が使えそうなので、それを元に互換性の確認をしてみた。
  • 具体的にはhttps://github.com/makenowjust/lernenを使って、結果が得られた。
  • parse.yとPrismを比較してhttps://github.com/ruby/prism/issues/3035を見つけた

オートマトン理論の詳しい技術的な話は理解できませんでしたが、parse.yとPrismを比較できる共通のフォーマットを作り、それの差分を比較するアプローチ自体は非常に素直で理解できました。 理論から攻めてみるというユニークな発表でしたが、その理論をもとに実際にツール作って検証およびissueまで立ててしまうという熱意と技術力が本当にすごいなと感じました。

Deoptimization: How YJIT Speeds Up Ruby by Slowing Down(k0kubunさん)

speakerdeck.com

本セッションは以下の内容でした。

  • Ruby3.4ではYJITにdeoptimization機能が追加された。
    • これは最初は「最適化されたコード」で処理を進めるが、動的に予測外の動きがあった場合に「最適化前の遅いコード」に戻すものであり、一見パフォーマンスダウンに見えるが、「間違った最適化によるミス」よりもずっと効率的。
    • 具体的にはEscaped Localsの無効化、Singleton Classの無効化、Lazy Frame Pushなどの機能が追加されている。
  • このようにYJITはRubyの実行を部分的に「遅くする」ことで、全体として「速くする」という戦略を取っている。

YJITは最初は「最適化されたコード」で処理を進めるが、動的に予測外の動きがあった場合に「最適化前の遅いコード」に戻す処理になっており、Rubyの実行を部分的に「遅くする」ことで、全体として「速くする」という戦略を取っているという 聴講前はSlowing DownによってSpeeds Upさせるってどうゆうこと?と疑問でしたが、ちゃんと理解すると理にかなってるアプローチだと感じました。YJITにも個人的に非常にお世話になったので、今後のMaximeさんが発表されていたZJITにも非常に期待しています!k0kubunさんとは3日目のお昼休みに屋台の前で少しお話しすることができて、コミッターの方と身近な距離感で会話することができるのもRubyKaigiの良さなんだろうなと感じました!

Speeding up Class#new(Aaronさん)

こちらの内容は同僚の@tokiさんがセッションレポート書いてくれたので、そちらを参照くださいー!

tech.giftee.co.jp

API for docs(soutaroさん)

Rubyにおける静的型チェックツール「Steep」に、新たにエディタ統合型のドキュメント機能が追加されました。これにより、RBSに書いたコメントが、コード補完やホバー、シグネチャヘルプとしてリアルタイムに表示されるようになりました。 これまでのRubyでは、RDocやYARDといったツールを使ってHTMLなどに出力されたドキュメントを「読む」ことが主流でした。しかしこの機能では、開発中のエディタ上で即座に表示され、補完候補選びにも役立つという、まさに次世代的な体験が実現されています。

発表内容の詳細は以下のブログの方で書きました!こちらもぜひ!

tech.giftee.co.jp

オフィシャルパーティー

オフィシャルパーティーはday1に開催されました。 なんと松山城を仰ぎ見ることができる城山公園でどかーんと開催でした。

私はあまりお酒が飲めないので、みかんジュースをいただいたんですが、みかんジュースも4〜5種類があり味比べができてとても楽しかったです。 また、たくさんのRubyistの方とお話しすることができました!(igarashiさんとかとも話せたの嬉しかったです) 普段お世話になっているKashiwa.rbのメンバーも集まって写真を撮りました!

Drinkup

day2の夜は弊社(ギフティ)主催のDrinkupに参加してきました!写真がないのがとても残念ですが、色々な方と交流することができました!みなさま来てくださりありがとうございました!学生さんともコミュニケーションできたの嬉しい☺️

day3の夜はさくらインターネットさん主催のDrinkupに参加してきました!100名以上の方が参加したみたいで非常に盛り上がっていました。 ちょうどday3に発表しており私も聴講していたコミッターのAlan Wuさんがいらっしゃったので突撃していろいろ話をさせていただきました! 特に「たとえcRubyに対してコントリビュートしようが、自作のgemにコントリビュートしようがそこにレベル差はほとんどなくて、大事なのはOSSにコントリビュートする姿勢だと思います(意訳)」という言葉をいただきまして、それが個人的にブッ刺さって身近なところから頑張っていこうと思いました!

その他

せっかくの松山ということでday3の夜に道後温泉にも行ってきました!(しっかり観光!) 温泉自体にも温泉情緒たっぷりの雰囲気にもとても癒されました!

湯上がり後のフルーツオレも最高でした・・・!!!!

まとめ

いやー、初めてのRuby Kaigi、最高でした。 色々なセッションを聴講したり、大勢のRubyistの方と交流することでめちゃめちゃたくさんの発見がありました!

悔しかったのちょこちょこセッションでの英語がわからずに内容を理解できなかったというのと、この振り返り記事を書くのが遅くなってしまったことですかね・・・ また来年も必ず参加したいと思うので英語力ももう少しアップできるといいなあ

読んでいただきありがとうございました!

shinjuku.rb初参加

はじめに

こんにちは。shiloです。

1/30にshinjuku.rbに初参加してきました!

今回のshinjuku.rbのテーマは個人開発発表 LT大会!ということで、各自の個人開発の内容を発表し合い、みんなで愛でようという趣旨でした。みんなで愛で合うというのがいいですね!

今回、発表してくださった方々の個人開発内容は全部紹介したいくらいどれも魅力的だったんですが、特に個人的に面白いなあと思ったいくつかをご紹介できればと思います。

Add-on を作って学ぶ Ruby LSP

speakerdeck.com

僕がkashiwa.rbで大変お世話になってるkozyさんが、これまた大変お世話になっているRuby LSPのadd-onを個人開発されているということで、もう感謝しかないLTでした。

開発されているのはRuby LSPにおけるRakeのAdd-onとのことで、Ruby LSPの概要やRuby LSPのAdd-onをどのように開発しているのかを説明いただきました。 個人的にこのAdd-on開発、LSPをよく使っているということもあり、とても気になっています。今後関わっていきたいなと思っていたので、今回そこら辺の話を聞くことができて、とてもためになりました。

リポジトリは以下になります。

t.co

政治資金データベース

political-money-db.com ブルーモ証券の小林さんのLTです。 政治資金問題が毎日のニュースを騒がせている中、個人開発でその資金を可視化するという内容でした。

LTの感想としては政治資金という社会課題ドリブンで開発されているのが本当にすごいなと感じました。私は身の回りの課題に対して課題ドリブンな開発をするのも難しさを感じてしまうので、今回このような政治資金の不透明さという社会課題に対して切り込んだ開発をされているのはとても勉強になりました。

また構成としてはRailsDjangoを両方使われているとのことで、そこらへんもとてもユニークだなと思いました。 なぜそのような構成にされたのかというとても大切な部分を聞き逃してしまったのでまた今度お会いしたときに聞いてみたいなと思います。

pitboard

pitboard.dev yamataka22さんのLTです。発表いただいたpitboardはプロジェクト中起こりうる変更に対して柔軟に変更ができるプロジェクトタスク管理ツールとのことです。

現在開発中とのことで本番運用は今後とのことですが、デモやLPを見た限り個人開発レベルではなくもう商用のSaaSじゃんっていうレベルでした。 本業ではない時間を使って開発されているぽかったので、そこら辺の時間の使い方とかもすごく上手いんだろうな〜と聞いてて思いました。

またお会いする機会があればぜひそういった面も質問してみたいと思います。

終わりに

発表者の皆さん、発表ありがとうございました!

初めてのshinjuku.rbでしたが、楽しかったです。

私自身、以前から学習目的で作った個人のWebサービスを細々と運営しており、また新しい個人開発にチャレンジしようかなと考えていたところだったので、そういう意味でも今回の参加はすごく刺激になりました。

また参加ぜひ参加したいと思います! IBJさん会場ありがとうございました!!

よもやま

新宿駅の西口が数年前と変わりすぎていてめちゃ迷いました・・・余計迷路になってる感。