広大な土地を歩く

社会人1年生が仕事や日常をつらつら書きます

人生初めてのRubyKaigi2022に参加しました

2022年9月8日〜9月10日にRubyKaigiに参加してきました。 このようなオフラインでのカンファレンスは約3年ぶりでした。 学生からエンジニアになり心境の変化も大きいので、報告と参加して感じたことを書きます。

印象に残った発表

会社で予習して取り組んだのですが、それでも自分にとっては理解できないものも多かったです。 そのなかで特に印象に残った発表に触れたいと思います。

いきなりWASMの発表から始まるのが、このRubyKaigiの色をよく表している気がしました。 クックパッドのブースでプログラミングのクイズがありましたが、そこで早速WASMが使われていて本当に動くことが実感できました。

RubyRailsのコードに型をつけるgem_rbs_collectionの紹介とコントリビューションの具体的な方法が分かりました。 RubyKaigi全体を通しても型に関する発表は多かったので、注目されている分野という印象がありました。 Rubistはあくまで型は自動生成によってつけたいものであって、自分では書きたくないという強い意志を感じました。

RubyKaigiでは常連であるk0kubunさんの発表は正直全然わかりませんでしたが、勢いが凄まじく印象に残っています。 参加していた方に難しかったですと感想を言ったところ、RubyKaigiに何回も参加している人がやっと少しわかるというぐらいの高度な話のようでした。

初めてだったので内容を先輩に聞いたところ「知らないで見た方がいい!」と言われていたので、予習なしでみました。 すごく読みにくいコードや芸術性の高いコードなどプログラミングの純粋な楽しさを感じられる、プログラミングに初めて出会った時のような新鮮な気持ちを思い出すイベントでした。

会社で度々、記載した記事を紹介してくださっていたので、一方的にお世話になっている方でした。 Wiresharkというnetwork packet analyzerをmrubyで動かせるようにしたという話で、今関心のあるCTFの文脈で興味がある内容でした。足りないと思ったら自分で作る!というエンジニアの気概を感じました。 観客とのコミュニケーションが活発で、一番コミュニティからの愛のある発表でした。

Stringのエンコーディングの速度のボトルネックをframegraphを見ながら探索的に進めていく過程がまとまっていて、すごく勉強になりました。 ちょうど自分も仕事でパフォーマンスの改善を行なっていたので親近感が湧く発表でした。 発表内容だけ見るとスムーズに調査してるように見ましたが、実際にはかなり苦労する部分も多かったのがというの後日談の記事でわかってなおすごいと思いました。

imaizumimr.hatenablog.com

発表全体を通して、CPU周りの低レイヤーの知識が必要となる、かなり難しいものもありました。 会社の先輩に勧めてもらった黒曜さんのリアルタイムの要約Tweetがわかりやすく、理解が追いつかない時にすごくお世話になりました。

エンジニア同士の交流

主に suzumasaanzuさんと行動していることが多かったです。 特にanzuさんがRubyKaigiに参加していた多くの人と繋げてくださったおかげで、いろんな方と挨拶や雑談できました。

社会人になって初めて名刺交換(バトル)ができたのも良い経験になりました。

会社で講演してくださって開発者ブログ記事のレビューしてくださった松田明さんにも直接お礼が言えたのでよかったです。

tech.classi.jp

Twitterのアイコンのシールをマスクに貼ってフラフラしていたのですが、「ゴリラのアイコン見たことある!」みたいなコミュニケーションが生まれて、インターネットとリアルのつながりを感じました! Twitterでは変なこと言わないようにしつつ、ちゃんと発信することが大事だと思いました!

昼や夜ご飯は、エモリハウスの方や先輩の友人の方、フィヨルド関係者の方とご飯を一緒に食べる機会もありました。 Rubyコミュニティへの熱い思いを聞けたのが印象的でした。

最終日はpixivさん主催のDJイベントに参加しました。 他の会社の新卒の方や、昔からラジオで知っていた方とコミュニケーションが取れたので楽しかったですし、かなり刺激をもらいました。

DJイベント盛り上がる様子

ご飯

ご飯は会社の先輩がスポンサーをしてくれて、とてつもなく良い思いをさせていただきました。

津はうなぎをよく食べる文化らしく、朝ご飯で毎回鰻を食べました。うなぎって食べ飽きないんですね。。

会社でお世話になっているigaigaさんに高級松坂牛のすき焼きに連れてってもらいました。 20数年間の中で人生で一番美味しいお肉でした。 こういうものをまた食べられるように明日からまた頑張ろうと思えました。

全体を通して感じたこと

学生の時と発表の見方が変わった

学生の頃はこんな面白い技術があるんだとか、こんなすごい人がいるんだという感じで客観的な印象だけで終わっていました。 実際にエンジニアになった今感じたことは、次来る時までにはこの技術を理解できるようになりたい!という自分ごとに引きつけて考えている自分がいました。

会社の先輩がコメントが正しく自分の考えていることを明確にしてくれていた

RubyKaigiでの発表がすぐに日常の仕事に活かせるかは分かりませんが、純粋に技術を楽しむ気持ちやそれを試したくなる好奇心を感じることができました。

若手エンジニアから刺激を受けた

RubyKaigiでは若手の方も登壇されていたり、他の会社の新卒の方も多く 自分の裏テーマとしてこういった自分と比較的年齢が近い方の話を聞いて刺激を受けたいというのがありました。

直接話すと、仕事やプライベートを含めて尖ったものを持っていて、結構背中を突き飛ばされる感覚がありました。 入社してからそれなりにやってきたと思っていましたが、自分に全然まだまだ頑張れる伸び代があると素直に感じました。 少し視野が狭くなってたかも知れません。内側に閉じないでもっとガンガン外に開いていくことが大事だとあらためて感じました。

エンジニアコミュニティはやっぱり好き

元々自分がエンジニアになろうと思ったきっかけにも、コミュニティが好きというのがありました。 昔からずっとRuby界隈に参加されている方は、自分のコミュニティへの愛やもっと良くしたいという熱い思いをそれとなく感じました。 最近はコミュニティ活動に参加していませんでしたが、あらためて楽しいなと感じました。

今回のRubyKaigiで多くの方と話す機会がありましたが、これで終わりにしたくないです。 コミュニティや勉強会に、少しずつ参加していこうと思っています。

まとめ

全体を通してRubyKaigiは、プログラミングの楽しさを再認識したり、外の世界のエンジニアを知れたり、これから取り組むべき課題など様々な思いを感じることができるすごく貴重な機会でした。

貴重な機会をいただいた会社の諸先輩方や、楽しめるように気を配ってくださったあんずさん、RubyKaigi中に関わって皆様に感謝いたします。 ありがとうございました。

nazotokiCTFに参加した

7月18日〜19日に先輩ののみぞうさんが主催・運営してくださったnazotokiCTFに参加しました。 リアルタイムでCTFに参加すること自体が初めてで、すごく新鮮で楽しかったのでその時の感想です。

ナゾトキCTF~入社試験からの脱出~

CTFにはWriteupという終わった後に自分がどう解いたのか公開する文化があります。自分も書こうと思ったのですが、他の参加した方のwriteupがすごく丁寧にまとめてあったので、今回は感想だけにしたいと思います。

もし解き方を知りたい方は、Twitterで#nazotokictf writeupで調べるとたくさん出てきます。 一例としてtask4233さんのwriteupがすごく丁寧で模範的だと感じたので、載せておきます。

nazotokiCTF Writeup | Note

問題が解ける感覚が楽しい!

このCTFは名前の通り、謎解き要素が絡んでいます。 そのため技術的なところだけでなく、謎を解く力やひらめきも必要になっていました。 難易度は抑えめのようでしたが、簡単すぎてつまらない問題ではなく、解ける時の達成感が味わえる内容であったため、初心者である自分でも取り組みやすかったです。

あと色々悩むけど「最後には解ける快感」を味わってほしいみたいな気持ちがあって、難易度は抑えてます。
https://yawaraka-sec.com/report-on-the-mystery-ctf/

技術的に勉強になる!

当然CTFなので、web技術に関連したものやセキュリティの脆弱性をつく問題も出題されていました。普段開発をしているだけではなんとなく理解しているものも、実際に自分が攻撃する側で考えてみることは視野が広がって違った楽しさがありました。

個人的にはWeb - Air elemtntsの問題で、dev toolを開きながらcurlコマンドを叩いたり、色々値をフォームに入れて探索的に脆弱性を見つける感じが好きでした。

謎解き要素が面白い!

一見何を聞かれているか分からない問題でも、よく考えたり解釈を広げたりすることでひらめくもの問題がありました。また、問題の手がかりは問題文だけでなく、ページの至る所に仕込まれているのがすごく考えらていて面白かったです。色々飛び回って見て、最後に「ここか〜!」という気付いた時の感覚が痛快でした。

参加してみて

競プロ以来久しぶりにこういったイベントに参加しましたが、休日に色々考えてあーでもないこーでもないと考えるのも楽しいなと思いました。この経験からCTFや謎解きの面白さに気づけたので良い収穫となりました。今回は全問できずに脱出できませんでしたので、次回以降開催されるのであればできるように頑張りたいと思います!

企画から運営まで行われたのみぞうさん、ほんとお疲れ様でした!

EC2インスタンス内でPumaを自動起動する設定

研修期間中に作成したRailsAPIをEC2にデプロイする時がありました。

デプロイするために、インスタンス起動時はアプリケーションサーバーが起動したままになるように設定する必要があったので、その時のメモです。

方針

その際にRailsのデフォルトのアプリケーションサーバーであるPumaはデーモンのコマンドがありません。
そのためsystemdでデーモン化して、systemctl enable自動起動する設定をします。

実行環境

systemdのファイルを作成する

puma.serviceをsystemdの設定ファイルに作成します。

$ vim /etc/systemd/system/puma.service

[Unit]
Description=Puma App Server
After=network.target

[Service]
Type=notify
# 今回はSSMを使用して接続しているため
User=ssm-user
# プロセスの実行ディレクトリ
WorkingDirectory=/home/ssm-user/.../backend
# 実行コマンド
ExecStart=/bin/bash -lc "bundle exec puma -C config/puma.rb -e production"
# プロセス停止時の再起動
Restart=always

[Install]
WantedBy=sockets.target

自動起動をオンにする

デーモンの設定を再読み込ませます

$ sudo systemctl daemon-reload

自動起動をオンにします

$ sudo systemctl enable puma.service

あとはインスタンス再起動して起動していればOKです

$ sudo systemctl status puma.service

[ssm-user@ip-10-0-3-42 ~]$ systemctl status puma.service
● puma.service - Puma App Server
   Loaded: loaded (/etc/systemd/system/puma.service; enabled; vendor preset: disabled)
   Active: activating (start) since Thu 2022-07-14 06:36:39 UTC; 44s ago
 Main PID: 2907 (bundle)
   CGroup: /system.slice/puma.service
           └─2907 puma 5.6.4 (tcp://0.0.0.0:3000) [backend]

参考文献

東京から名古屋までヒッチハイクした

よくみたら漢字間違ってる...

4日にヒッチハイクをしながら東京から名古屋まで行ってきた。知らない方の車に乗せてもらったのも、ちゃんと一人旅したのも今回が初めてだったので久々にすごく刺激的な経験ができた。

なぜやろうと思ったか

好奇心

GWが始まる前、会社の方に「時間があるので旅でも出たいんですよね〜」と話をしていた。そしたら先輩に、ヒッチハイクしたら?って話になった。その先輩はヒッチハイクを何度も経験していて、かなり推していた。そこでの出会いが仕事につながった経験もあるとのこと。その話を聞いて自分のテンションが上がったので、熱が冷める前にやっちゃおう!と思って始めた。

人生観を広げたい

1週間も連休が続くことなんて久しぶりだったので、自分の人生でやったことないことを挑戦したかった。思い立ったら自分で背水の陣を敷いてしまう時があり、今やらなかったら一生できないなと勝手に思っていた。また、いつもいるコミュニティの外の人とフラットに話せる機会が欲しかった。

下調べ

目的地は先輩や同期が住んでいる名古屋・大阪方面を狙って移動することに決めた。ヒッチハイクを始めるにあたり調査した結果、用賀のICから高速に乗せてくれる車を探すやり方と一般道から入れるSAから始めるやり方の2択があることが分かった。用賀はヒッチハイクの聖地と呼ばれているらしい。

kiblog.hatenablog.com

場所が行きやすく気軽に始められるが、なかなか停まってくれる車が少なく難しいとのこと。SAだと比較的やりやすいとのことなので、海老名SAまでは電車で行ってそこから始めることにした。前日にスケッチブックとマジックペンを買った。

当日、海老名SAから始めるまで

電車とバスを乗り継ぎで12時過ぎあたりに海老名SAに着いた。GWだからめちゃくちゃ混んでた。とりあえずお腹空いたので海老名メロンパンを食べて腹ごしらえをした。

いざやろうとするととても恥ずかしい。10分ぐらい散歩しながらもじもじ。スケッチブックに行き先を書くのもみられないようにコソコソ隠しながら書いてた...苦笑

しばらくしてここまできたのでせっかくきたので、やるしかないと決心した。それでも知らない人の前でスケッチブックを出してみられまくる体験は人生でそうそうないし、メンタルへの負荷がかなり高い。5分ごとストップウォッチを設定して、タイマーがなるまでスケッチブックを掲げて我慢できたら、SAで美味しいものを食べるというマイルストーンを置きながらやる作戦で行った。

1台目 海老名SA 〜 富士川SA

スケッチブックを掲げてものの3分経たないうちに乗せてくれる方が現れた。こんなに一瞬で見つかるなんて思わなくて、正直めちゃくちゃびっくりした。乗せていただいた方は20代の男性で、ワゴンを借りて引っ越し作業をしている最中で途中のSAまでなら乗せてくれることになった。お話を聞いたら、後輩がヒッチハイクをしたことがある方がいたとのことだった。

ヒッチハイクを乗せてくれる方は、好奇心がかなり強い方か、自分がヒッチハイク経験者か周りに経験者がいる方が多い気がした。

その方は元々コンサル系の会社に就職した後に、独立してマーケティング系のサービスで起業をされていた。起業は始めるのは割と簡単だが、それを事業として成立させることが大変らしい。投資家から資金調達して、一定期間内に利益を上げることを担保しないと事業が終わって負債だけ残るという厳しい世界だと分かった。聞いてるだけでプレッシャーが強く、それを一人でやっているとのことでシンプルに尊敬した。出てくる金額も何千万や何億という普段の生活ではお目にかかわらない単位だったでちょい震えた。薬局のコンサルも関わったことがあるらしく、少し接点もあったので話が盛り上がった。

他にも、サウナの魅力や相席食堂の渡部陽一の回が面白い話、一人暮らしで築浅コンクリートの打ちっぱなしの家はやばいこと、メンタルヘルスは大事等々、ずっと楽しくお話しができた。2時間近く乗せてもらったが、あっという間の時間だった。ありがとうございました。

2台目 富士川SA 〜 日本坂PA

富士川SAは海老名SAより人が少なかったが、15分程度で乗せてくれる方が見つかった。その方々は10代の3人組のお兄さんで、ヒッチハイクしてる自分を面白がってくれて乗せてくれることになった。GWは熱海でナンパがてら旅行しに行っていたらしく、帰りに静岡のさわやかでハンバーグを食べて帰る途中だった。めちゃくちゃ元気で車にスピーカーが積んであった。好きな曲流していいと言われたので髭男をリクエストしたら流してくれて嬉しかった。

他にもいろいろ話したが、内容が結構際どいのでここではあんまり書けない。もし興味ある方は言っていただければ、会った時にお話しします。1時間ぐらい乗せてもらい、近くの日本坂PAで下ろしてもらった。ありがとうございました。

3台目 日本坂PA 〜 愛知県岡崎駅

ここが一番苦戦した。人が少ない上に、なんとなくの肌感として乗せてくれる気配を感じない。結局1時間ぐらい滞在することになった。1台目に乗せていただいた方のヒッチハイク経験者の後輩は車が見つからなくて山1つ超えたらしいと言っており、少し不安が募った。幸いなことに歩いて30分ぐらいのところに駅がありそうなので、最悪そこに乗れればいいかなと思っていた。

途中おじさんが頑張れって話しかけてくれたのが嬉しかった。

18時までに車が見つからなかったら暗くなるのでデットラインとしていた。残り時間も少なく厳しそうだったが、ご夫婦の方が話しかけてくれた。その方々は愛知県まで戻る予定なので、岡崎駅までなら送れるよと行ってくれた。喜んで乗せてもらうことにした。

話を聞いたところ、以前も一度大学生の兄妹をヒッチハイクで乗せたことがあったらしい。しばらく遠くから様子を見ていたそうで、乗せてくれることになった。女性の方は昔海外でバックパッカーをやっていたことがあるらしい。それに影響を受けた友人が少し危険な思いをしたらしく、ヒッチハイクをしている自分は心配になったとおっしゃっていた。

女性の方は元気で積極的にいろいろ話しかけてくれる気さくな方で、男性の方は温厚で程よく肩の力が抜けてるウィットに富んだ方だった。車でいろんなところに出かけることも多いそうで、話しながら休みの日に色んなところに出かけるのは自分が思う理想的な関係性だなと思った。愛知県は車社会で成人すると普通に1人1台車を持つ文化らしい。豊明市豊川市みたいな場所だと電車も本数が少ないため、車がないと生活できないとのこと。他にも愛知県の名所として犬山城熱田神社を教えてもらったり、大学で学んでたことと自分の仕事が全然関係ないこと等々、多くの話をさせていただいた。3時間以上乗せていただき、ほんとあっという間で充実した時間だった。21時ごろに岡崎駅に着いた。ありがとうございました。

名古屋に着いてから

22時過ぎに名古屋駅に着いた。

時間も遅かったので名駅前でラーメン食べて、ウェルビーに泊まった。地味にカプセルホテルも初めてだったで上の人のいびきがうるさかったが、疲れてたので一瞬で寝られた。

次の日は、ヒッチハイクで乗せていただい方や先輩、同期に聞いておすすめされたところに行くことにした。

名古屋市科学館

大地のハンター展というまさに自分のために開催しているイベントを発見したのでみた。ビースターズとコラボしていて面白かった。

熱田神社

写生大会をしていた

矢場とん味噌かつ

開店してすぐに行ったのに、めちゃくちゃ並んでた。

  • 親子丼

駅地下の親子丼

美味しかったが、おすすめされたところ多分ここじゃない気がした。

一つ一つの場所が割と遠く、歩きまくった。

帰りは流石に疲れたので、新幹線で東京へ戻った。確かに車必須だった。

終えてみて

車に乗せていただいた方は皆さん全然違う生き方をしていて、色んな人生やキャリアがあった。しかもそれは目標を立てて計画的に組み立てる訳ではなく、運も絡んでいて突発的に変化するものだと感じた。これは自分の人生を顧みても、納得がいくことだったが、今回色んな人の話を聞いて余計その思いが強くなった。これからのキャリアを考えてみると、今はまだまだエンジニアとしてペーペーだし、今は恵まれた環境でやりたいことがたくさんあるので、先のことはあまり考えてない。ただ自分の3年前と比較してわかるように、3年後に何をしているか分からない。自分がやらないといけない事は、これから来るであろうチャンスをしっかり掴めるような心持ちと、日々挑戦できる失敗を恐れない積極性だけを忘れないことだと思った。

プライベートでは、自分の理想の夫婦関係を見つけられてちょっとほっこりした。休みの日に一緒に色々経験しながら、色んな感情を共有できるのって素敵だと感じた。

また、意外となんでもやればできると少し自信に繋がった。1年前の自分なら絶対やりたくないって思ってただろうし、何がきっかけで自分の行動が変わるか分からないのでその時の気持ちと勢いは大事だと感じた。経験則としてチャンスや転機は人が運んでくると思ってるので、今後もご縁を大切にしたいと思わせてくれる旅だった。

久々に刺激的でやってよかったと思う経験だった。乗せていただいた方やヒッチハイクを進めてくれた先輩、おすすめのお店を教えてくれた同期の方々、ありがとうございました。

自分の感情を言葉で伝えるようにしている

4月から社会人が始まった。新しい環境や出会いに情報が過多でアップアップしながら日々生活している。これからしばらくは研修期間となっていて、基本的にリモートがメインなので出社をしていない。とりあえず今月いっぱいは実家にいるが、親は「ずっと家にいるけど寂しくないの?」とか煽ってくる。

就職してからは色んな人と会話する機会が増えてきた。そういう時に最近心がけていることは、相手の話を聞いたときに自分の感情をちゃんと言葉にして相手に伝えることだ。

リモートだと顔出しをしたとしても、ディスプレイ越しだと相手の温度感や仕草が伝わりにくい。また、自分が結構落ち着いて見られやすい。今までを振り返ると、何を考えているか分からずに相手を不安にさせてしまうことがあった。なので、相手の話を聞いたときに嬉しい時は「嬉しい」や楽しい時は「楽しい」とちゃんと言葉にすることで、相手の言葉に自分の気持ちが動いていることをしっかり伝えることができると思っている。

お世辞を使えるほど人間力は高くないので、思ってもないことを口には出せないが、自分の感情をちゃんと外に言葉で表明することを実践している。

コンタクト、始めた

小学校の時から眼鏡っ子だった。なのでそこまで違和感なく、今まで生活してきた。

ただ、ここ数年で温泉やサイクリングをする機会が増えてきて不便だと感じていた。また色んな人と話す中で、もともと性格をあいまって、真面目で近寄りがたい第一印象を持たれることが多かった。その一因に眼鏡があると思ったので、対面での最初のハードルを下げたいと思っていた。

正直、目に物を入れるのはかなり怖く、昔から目薬も苦手だった。ただ時間があるのは今しかないので、一念発起してコンタクトをすることにした。

近所の眼科で検査をしてから装着練習を行ったが、案の定苦戦。なかなか外れなくて、最初は丁寧に対応していた店員さんも最終的には苦笑いしていた気がする。周りの人に「すぐ慣れるよ」とよく言われるので、早く慣れると嬉しい。

衛生的に1Dayがいいかと思ったから、なんちゃらオアシスってやつを店員さんに言われるがまま選択した。ただこれが結構いいやつだったらしく、1ヶ月分で8000円ぐらいした。今後続けるには、正直高すぎる。場合によっては外れにくいタイプらしいので、なんちゃらモイストってやつに変更しようと思う。ある程度金が貯まったら、ICLとかやりたい。