6/29 「Kyoto.rb Meetup 20190629」に参加しました。
URL→https://kyotorb.doorkeeper.jp/events/93279
目的は話を伺ったり雰囲気を拝見することです。
当日の流れ
開幕、施錠されたドアを思いっきり開けて音を立て、恥ずかしい気持ちになりました。
正解はインターホンを押すことだったようです。
というか会場が会社で曜日が土曜なんだから、施錠されてるに決まってる…。
しばらくしてから会が始まり、まず畳張りの会議スペースで輪になって自己紹介を行いました。
自己紹介と同時に興味のあるテーマを発表し、そのテーマの中から投票で、その日にみんなで話すテーマを6つ決めることに。
議題
議題は以下の6つ。(※正確にメモ取れていません)
・コードレビュー、
・APIのテスト
・メモリ管理について
・ハッカーランク
・rubyonrails
・gRPCについて
6つのうち、前半40分で3つ、後半40分で3つについて、3グループに分かれて話し合います。
話を伺ったのは「コードレビュー」と「メモリ管理について」です。
以下自分用メモを転記します
コードレビュー
コードレビューとは、伊藤潤一氏という方がアウトプットのネタに困ったらこれという感じで提唱したもの。
シンプルなプログラミング問題を自力で解いて、そのコードを見てもらって、見る側、見られる側のレベルアップを図る。
カレンダー作成問題について解いたコードを見ながら、活発な意見交換になった。
具体的には主に配列の処理についてメソッドの名前がいろいろ出てきました。(メモってない)
初心者向け議題ということで席に入れて貰ったが、多分別の所に行ったほうが良かったかもしれない。こちらは人のコードになんか言う権利は多分ない。
メモリ管理について(※正確なメモが取れていません)
議題に挙げた方が、今、仕事の中で、メモリについて困っているとの事。
メモリ管理用ライブラリを探していて、objspaceというライブラリを見つけたが、memsize_ofというメソッドに罠。
aという文字列を一万倍したオブジェクトも同じ40メモリと帰ってくる。
(ネストしたデータ構造だと期待したような結果が現れないとの事)
timeコマンドというメモリ計測用コマンドがあるものの、こちらも実態と全然違うので、困っている。
objspaceの内部のコードを見ようとしていて、今そこで話が止まっている。
スタックプロフというgemを使ってメモリを見る事もできる。
それでもやはり値が妙に小さい。
mallocというメモリの操作法に問題があって(C言語の概念)、jemallocを使えばメモリの断片化を防げるという話が。
参考→https://techracho.bpsinc.jp/hachi8833/2017_12_28/50109
マルチスレッドで動かしているのなら、同じオブジェクトにアクセスしている際にロックが発生する。
参考→https://qiita.com/nysalor/items/94ecd53c2141d1c27d1f
ロックが発生すると大量にメモリが消費されてしまう。
そうなると実際に動かした際のメモリ消費量の計測がどんどん難しくなっていくため、100回まわしたり1000回まわしたりした時にちゃんと動くかどうかの話はよくわからない。
jemallocのソースコード・紹介ページを皆で見る。
結局のところどうすればいいか
……という話になったものの、よく聞き取れず+理解できずでメモすることができなかった
専門用語でなにか言ってたとは思うんですが。
参考→https://qiita.com/zaru/items/04fdd43158e5cd1d835d
https://qiita.com/srockstyle/items/3f1dad0c88c9ef4c5288
会が終わって懇親会へ
懇親会ではピザと飲み物を頂きました。
二人のエンジニアの方や、主催の方に大変有意義なお話を伺いました。
名刺交換する空気があるだろうと思ったら無く、お話伺った二人の方の名前をちゃんと覚えていないという大変不義理な状況です。次お会いしたらお名前を教えてください。
後半は技術的な話で盛り上がっている方が増えてきました。
特に、液晶モニタを使ってRubyの小技を披露されている方がいて、周囲を沸かせていました。
これは自分は邪魔だなと判断し、荷物をおいている席に戻り、ひたすら周りの話に相槌を打つモードに入りました。話の内容は英語でしたが、TOFEL500000点あるので理解は容易でした。(※大嘘です)
まとめ
現職の方々の空気も掴めたし、転職にあたり具体的で貴重なお話は伺えたしで、勉強中の自分にとって大変有意義な会でした。
もうちょっと方向性を探りつつですが、手を動かし始めたいです。
今回の会では知識不足でずっと黙ってましたが、次に同じイベントに参加する時は、一つでも自分からなにか提供できることがあればいい。
そういえば会場(会社さん)は綺麗だったし、主催として参加されていると思われる社員の方は親切でした。
畳張りの会議スペースってカッコいいですねー
以上レポっす。