日常

ケ・セラ・セラ

写真で振り返る #railsdm 2018 Day 3 Extreme ✌

聞きに行った発表の登壇者を撮る。ということをしていました。良い感じの写真が撮れた時もあったのでひととおりそれっぽいものをまとめてみました。

発表直前の微妙に緊張感あるタイミングで最高の ✌ をありがとうございました。 準備や僕が行くタイミングを失敗したものはそういう感じの写真になってしまった。

今回は、自分が依頼したにも関わらず聞きに行けなかったセッションもあり、その点はごめんなさい。

しかし毎度思うが、僕の写真力低いな...。

techplay.jp

Ruby Hack Challenge の良さについて書いてみる

実際に参加したところとても良いイベントだったので、何が良かったのかという日記を書いてみようと思う。

僕が参加したのはこちらです。6/23 (Sat) にありました。Cookpad Ruby Hack Challenge #4 カバレッジ特別回

cookpad.connpass.com

そして、7/16 (Mon) にもイベントがありますね。高専カンファレンス Ruby Hack Challenge - Rails寺子屋特別編

rails-terakoya.connpass.com

まず本題である良かったことですが、

  • Rubyカバレッジの取り方、見方を覚えることが出来た
    • それは、自分に出来ることが増えたということ(カバレッジを見てこの辺テスト足すかとか)
  • 実際にイベントの時間内に、イベントの趣旨に沿った PR を作れたこと (https://github.com/ruby/csv/pull/38)
  • 他にもけっこう多くの人が、Ruby にパッチを送ったり出来ていたので、これはすごいイベントだな...!! と思いました。(そして聞く限りでは、僕もそうだけどその方々も特別知識があったわけではなく、当日の説明やサポートを受けつつパッチ送るまで到達したらしい)

僕の状態を書いてみると、

  • プログラミングに興味があり、趣味で何かコードを書いたりします
  • Ruby のことは好きで、もうちょっと知りたいなと最近思っています
  • 仕事では Rails アプリケーションをいくらか書いたりしてきた

という感じになります。

上 2 つに当てはまる方はけっこういるのではないでしょうか? そういう方はきっと参加したら楽しめるでしょうし、おそらく当日得られるものがあると思います。という感想を実際に参加することで持ちました。

3 つめの仕事のことはあてはまってもそうでなくても、あまりどうでもいいかなと思います。

Ruby のことをもうちょっと知りたいと言っても、なんか凄いレベルでなくて良くて、ちょっと何かやってみるかと思える程度の興味があれば十分ではないでしょうか。

実際僕も興味だけあって大して知識がありませんでしたが、笹田さん、遠藤さんが用意してくれていた資料があって、それに沿ってやれば Ruby のビルドが出来てカバレッジが取れて、カバレッジの見方も説明してもらえて、途中で何かにハマったり理解できていないところがあれば自由に聞くことが出来ますし、だいたい会場内にいる誰かが詳しかったりする環境なので(これもすごいことだ)まあその時点での知識は問題にならないのではないでしょうか。

現時点での知識よりも、興味が持てることの方が大事だと思っていて、何故ならその後も継続しやすいと思うからです。継続できると、なんだかんだ役に立つようになってきたり、楽しみ方も増えてくるような感触はあります。

自分がそうだったのでこう言いますが、参加してみて、自分にも出来そうなことが見つけられたりしたら、けっこうお得だと思います。

rails-terakoya.connpass.com

技術書典5 に申し込んだ

申し込んだのは何日か前。

5ヶ月ほど前には、4 に申し込んでいたみたい。

at284km.hatenablog.com

Ruby 以外の言語で書かれた良い感じのライブラリを、Ruby で便利に使おう!的な内容を考えています。 当選するかはわからないし、内容もそうなるかは未定ですが、そういう意気込みです。

techbookfest.org

表参道.rb #35 ~After RubyKaigi~

こちらも RubyKaigi のことなので、書きます。

omotesandorb.connpass.com

表参道.rb で発表するのは、30回以来だったようです。たしかに久しぶりという感覚がありました。

After RubyKaigi というテーマですが、僕は振り返りだけするというよりは、アレです。kaigieffect は大事だと思っていたので、それを言葉にして、小さくても RubyKaigi から得たことから新しい何かをしたかった。

そう考えて今回選んでみたのがライフゲームの実装の話でした。RubyKaigi でも何度か話題にあがったシーンがあったと思います。僕は過去の表参道.rb の発表で、まだ自分で実装したことがないけれど時間があったらやりたいヤツとしてあげていました。なのでちょうどよい。機運だ。と思ってやりました。

書いてみると、以外にそこから膨らませるようなおもしろそうな話を浮かばす、結局やりました!動かします!バーン!!というだけのオチになってしまってイマイチでしたが、何はともあれやりたかったことがひとつ出来ました。

https://284km.github.io/slides/20180607_omotesandorb35/slides/#/

遅れて RubyKaigi 2018 の日記を書いた

途中まで書いたまましばらく放置となり、書くのが予定よりかなり遅れてしまった。 色々書いていると、RubyKaigi は色々ありすぎたので全然書き終わらなくてだから特に書きたいところだけ書くことにした。

RubyKaigi 前日の 5/30 (Wed) に仙台に着いて、翌日の 6/3 (Sun) に東京に戻ってきた。

rubykaigi.org

昨年の RubyKaigi 2017 では、当日のお手伝いをしながら参加していた。 今年は LT speaker として参加することができた。

この点についてひとつ触れると、今年も RubyKaigi のお手伝いをしようかなと最初思っていたんだけれど、結局申し込まなかった。いつでも手伝う気持ちがあったにも関わらず。 それは今回は speaker として RubyKaigi のお手伝いをしたいという気持ちがあって、そちら側で手伝えそうな可能性があるなら今年はそちらでやってみるか。と考えたからです。両方やるというのは、今の自分にはちょっと無理と判断した(なかなかブチャラティの様にはなれないな)

そういうわけで、自分の出せる proposal を出してみたりした。 過去にもブログに書いたけれど、本編には CFP を2つ出していて、両方落ちている。そりゃそうだよなと思える内容だったので、そこでひとつ学び、次の RejectKaigi ではもうちょっと良いものが発表できたと思う。そこからもうひとつ良くして RubyKaigi LT の proposal を書いたらありがたいことに accept された。けっこう頑張ってたのでかなり嬉しかったですね。まあ、ここから継続することが大事なのですが。

LT では、今回絶対にひとつだけ実績解除したいことがあって、それだけはとにかく狙っていた。英語で発表するということだ。 正直、日本語で話した方がよっぽど伝えられるし、英語の出来は酷いものだったと思う。だが今回においてはそれで良いのだ。いやそれで良いのだというか、今はそれしか出来ないのだ。 なぜ英語で発表したいのかと言えば、国際会議だからだ。国際会議で英語で話すというのは普通のことだと思う。普通のことなので、それ以上に理由はない。という感じで今回に関して僕はそうしたかった。 とはいえやっぱり普通には話せなかったので、普通に話せるように訓練する必要があるなあと感じた。あとスライドをもっと早く完成させて、声に出して発表の練習する時間を設けるべきだ僕は。 この、自分の現在地点を知り、今までまったく見えなかったちょっと前が見えるようになる。みたいなのが挑戦した時に得られるもので、これの繰り返しで今回どうにかギリギリで LT に選んでもらえたところがあると思う。

LT で発表するまでにコードを書いている途中で何度か行き詰まったりしていた。RubyKaigi 2018 Keynote Speaker の須藤さんに相談に乗ってもらったり、Asakusa.rb で usa さんにアドバイスをもらったりしたことがとても助かった。大変感謝である。

松田さんの Closing が今年も最高に良くて、なぜこういう、人の心を突き刺しにくるような言葉の伝え方が出来るんだろうなあなどと思いつつ、感動をしつつ聴いていた。

僕にとって、RubyKaigi に触れる時にいつも含まれているのが Asakusa.rb についてのことだ。 RubyKaigi 期間中にも Asakusa.rb について人がどう思っているかをいくつか耳にすることがあったが、ジョーカーさんが書いてくれた記事が詳しくて、ああいう感じなのである。 Asakusa.rb で僕は多くを学んだと思う。ただ、なんで頻繁に参加しているかというと、得られるものが多いからという理由ではないと思っている。振り返ると、僕にとってなんとなく自然な場だったから、自然にそうなったという感じがしている。僕はあの場に集まる人達をすごく尊敬しているし、すごく好きだ。

今年は前回に比べ人と会う楽しみが増えていて、例えば 3 月に沖縄Ruby会議に行った時に知り合った方や、去年の RubyKaigi で知り合った方、ちょっとしか話せなかったけどそれでも僕のことを覚えていてくれた海外から参加している方々がそうだが、ほぼこの年一回の機会でしか会えないのだから RubyKaigi はそういう場としても重要である。

RubyKaigi が終わってすぐ書いていたら、この文章の締めくくりももう少し違う形になっていた気がする。惜しいことをしたなと少し思う。が、まあ仕方がない。 脈絡なく書いたが、これで書きたいことは書けたと思う。 なので、また日々のコードを書いてやっていきます。

speakerdeck.com

日記。Asakusa.rb 第461回, Asakusa.vim

asakusarb.esa.io

基本的にはなるべく急いで RubyKaigi の準備をしていた。

弊社(フィードフォース)の広報の方がどういう活動なのか(文化的なところとか)に興味を持ってくれて、最初の方一緒に参加して話に混ざったりしていた。Asakusa.rb が自社で開かれたりしているけれど、この様に実際に興味を持って足を運んでくれた人はエンジニア含めても社内で初めての出来事なので、純粋に僕としてはうれしかったです。 興味があれば、仙台に、RubyKaigi に実際に来るときっと良いですよとかふきこんでいたと思う。

そんな中、ujihisa さんと雑談を10分ほどしていて、何を話していたかはよく覚えていないのだけれど、その間に Asakusa.vim というものが誕生していた。便利そう。

asakusavim.connpass.com

こういう、なんだかスゴイものがある。

vim-adventures.com

RejectKaigi 2018 で Super fast CSV parser という発表をしました

この記事を書いた直後ぐらいに通知が来ました。がんばります 💪


speee.connpass.com

RejectKaigi 2018 で Super fast CSV parser という発表をしました

speakerdeck.com

RejectKaigi とは言いますが、この Super fast CSV parser というネタ自体は実は RubyKaigi 本編の CFP に提出したものではなく、今のタイミングでちょうど自分がやっていることがコレだったのでその発表をしました。 (ちなみに本編 CFP は 2 つ提出して落選しているので、RejectKaigi の正当な参加権?! は僕は持っているはずだ)

スライドにも書いたとおり、開発を続けますという宣言をしているので、どうせここから大きく変わるはずですし、現時点での内容を細かく説明したりなどは今回ここでは特にしません。

RejectKaigi までを一区切りとした時に、そこまでの活動を通じてよかった点をいくつかあげたいと思います。

  • ruby/csv の commit を全部読んで色々と知ることが出来た
  • 途中で libcsv を使いたくなったので、FFI を使ってみるちょうどよい機会になったこと
  • test-unit を使っていたので、test-unit についても最低限のことは調べたり、パッチを送ったりした

発表後、言われて特にうれしかったコメントが 2 つありました。この言葉の何が?と思う方もいるかもしれませんし、特に解説もしないのですが、僕は何を意味した言葉なのかをちゃんと理解しているつもりではいます。やっていきます。やっていきましょう。ということですね。

  • 今回の発表よかったですね
  • 発表を聴きながらコードを書くのが捗りました

やはり、発表すると関連した情報がけっこう集まって来るというのはうれしい出来事で、発表終了後に質問をたくさんもらえたこと、その中でも、Asakusa メンバーのモリスさんからの rcsv の他にもこういう既存の実装も存在するようですが、とか、ようさんからの fork ではなくてこれは新たな gem として作った方が良いのではとか、懇親会ではCSV に一家言ある MVP栗原さんと実装や考えを交換できたりもしました。大変便利です。ありがとうございます。

あと、id:onk さんと久し振りに会えたのも良かったなぁ。

RubyKaigi 2018 LT にはこの延長の話で提出しているので、もし accept されたら仙台でちゃんと話せるように準備したいですし、reject だったらそれはそれで継続して開発していきたいところです。

まとめると、今回も前回の発表より改善できたのではないかと思います。

その他いろいろ