日常

ケ・セラ・セラ

技術書典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 だったらそれはそれで継続して開発していきたいところです。

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

その他いろいろ

FFTT (20180427) ふりかえりと、社の活動の紹介

FFTT というのは、フィードフォースの社内勉強会なんですが、それをやった後の振返りを qiita team に書こうと思ったところで、これ public で良い内容だな。qiita team に公開してから public に公開するよりも、先に public にしてから qiita team に貼った方がトラブルもなかろう。とか考えて雑に貼った。 (前提情報としては、僕が発表をして、聞いてくれた人が発表後に付箋に感想を書いてくれる。みたいなことをしたふりかえりです。)

FFTT (20180427) を終えて、まとめます。

発表資料はこちらです。

speakerdeck.com

話したこと

  • 1 - 4 月の活動報告
  • 沖縄Ruby会議02 のふりかえり
  • 技術書典4 サークル参加のふりかえり
  • 身近な技術コミュニティの紹介など
  • クリアコード須藤さんの沖縄Ruby会議02のスライドが良いので紹介

その他、言い忘れて思い出したことや、補足できること、付箋でいただいた感想に対する感想などを以下にシュッと書いていきます。

FFTT

http://tech.feedforce.jp/about/

FeedForce Tech Team ゆえに FFTT。

なるほどなー。

keynote テンプレートについて

僕はひとつのことをやるとしても、その途中でついでに得られる効果があるのなら得ておきたいと考えます。効率的にやることを進めないと、アニメを観たり、ゲームをする時間というのは中々作れなくなってしまいます。そこで今回はどうせ FFTT のスライドを作るのならば、フィードフォースぽい色の keynote テンプレートを育てていくぞ!という選択をしたのでした。

次回の対外的な発表は 5/12 の RejectKaigi 2018 になります。その後も何かとある予定ですが、keynote のテンプレートとかは、いい感じに仕上げていくには時間を要するものです。だからいつもはちょっとづつ育てています。毎回、ひとつ以上の改善を加えることによって、毎回ちょっとづつ良くする作戦を取っています。スライドを作っている最中ではそのテンプレートが最高かもしれないけれど、時間を置いて、次の機会にスライドを作る時に見直してみると、いやここはこうあるべきだろ過去の自分よ...。と思うことも多くあります。その為、時間をかけながら少しづつ改善していく必要があるのです。自分の場合は。

あとは、そういえば発表ではスライドの最後まで流すのを忘れましたが、スライドの最後に書いていたのでした。ここ最近の、カンファレンス参加の費用補助の決定など、非常にありがたい方向に進めて頂いたことにはとても感謝しています。その感謝の気持ちはできるだけ行動で表現するべきだと考えるケースが自分は多いです。今回はその一環で、まずはテンプレートをフィードフォースっぽく整えるとかをやってみるか。となったのでした。他にもやれることは考えているのでその辺は順次やっていきます。

楽しむことに対する貪欲な気持ち

これはけっこう冗談半分で、FF14 のゲーム仲間の楽しむことに対する貪欲さが凄い。という話をしたんですが、そこから学んだり感じ取ったことが無かったら、現実世界で、特に仕事でもなく、ただ趣味でやっているプログラミングの領域において、ここまで踏み込んで楽しもうという考えには至らなかったのではないかというのは本当にそうで、そういう意味で僕はゲーム仲間に救われたし、偶然だとしてもその世界を紹介してくれた @tmd45 には感謝しかないというのは、嘘のような冗談のような本当の話だったりするので、世の中何があるかわかりませんね。

頂いた付箋ごとにつらつらと書いていきます(カッコ内が僕のコメントになります)

  • 沖縄Ruby会議の振返りおもしろかったです
    • (ありがとうございます)
  • 本は何冊刷ったんですか?
    • (今回 50部です。正直、全部売れると思ってなかったです。2h ちょっとで完売というのは非常にありがたい結果でした)
    • (利益を得ることも今回は考えていなくて、帰りに :beer: を飲んだりシャッツキステに長居して Ruby の型の話をしていたら利益分は全て吹き飛んだ程度です。出版までの一連のプロセスを辿り学ぶことが今回の目的なので OK)
    • (次回は冬コミか次の技術書典で新刊は考えていて、少しづつここで利益を得ていく計画はあります。まあ、とはいえ完全に楽しむこと優先ですが。)
  • feedforce color は 2 つある...!
    • (せやな...!!)
  • 外部コミュニティにめっちゃ出てるのスゴイと思ってます
    • (スゴイかどうかってのは僕にとって興味の対象じゃないんですが、楽しいし、現実的なメリットもあるよ!!)
  • それぞれの話 エモいし Tech いし 濃いし 面白い ラフに話してるのに!
    • (これはですね、種明かしをすると、僕にとってのそういう風に思う hero みたいな人達が居て、それに学んだということですね。)
    • (今でも別に上手とは思っていないんだけど、そう言ってもらえるのは上達したということだと思うので、ありがとうございます!)
  • GraphQL Tokyo おもしろそう
    • (はい、かなりおもしろかったですよ)
  • 須藤さんとは Emacs 関連で話したことありました Emacs のメモリ管理まわりのコード
    • (そう、フィードフォースにもめっちゃ強い人がいる!!)
  • 自分もコミュニティ活動頑張っていこうと思った
    • (僕はまったく頑張ってはいないんだけどw、何にしてもモチベーションの共有に成功した様でかなりうれしい!)
  • 沖縄Ruby会議02 の話おもしろかったです!! 体に悪いのでちゃんと寝てください。
    • (いやー、ありがとうございます。正直、興味のある人がいるのかがかなり不安で、やっぱりこういう声が無いと振返りをやるにしても、つまらん話でみんなを拘束してしまったら申し訳ないなあという感情でやることになってしまうので、こういう声に本当に救われるんですよ。今回に限らず、また僕に限らず、こういう声は見える形にして頂きたいです。僕もそうするので!)
    • (そうね、寝られるようにやっていきます!ありがとう!)
  • 秒速 vs 神速
    • (それなw)
  • 2m くらいの布やふろしき的なものがあると、サークルの見た目がよくなりますよ
    • (先輩からのアドバイスだ!ありがとうございます!)
  • 秒速さんが普段どういう考えで活動してるのかなんとなく知れて良かった
    • (こういう話をする機会って、作り出さないと無いんですよね。あまりエモい話をわざわざするのも好きではないし。今回そういう機会になって良かったです。ありがとうございます。)
  • yield しか使わなくても引数 (&block) の記載があった方が読みやすいというお話しは、とても共感しました!
    • (ねー)
  • そういった速度は遅いが読みやすいといったコードは いずれ速度が速くなるように改良されるというお話しも印象的でした!
    • (ありがとうございます!)

(き27 どらやきもなか)技術書典4にサークル参加しました #技術書典

サークル どらやきもなか として技術書典4 に参加して、新刊 "Fast Code for Ruby" と、神速さんの "Clean Code for Rails" を委託で頒布しました。

techbookfest.org

今回は 13 時を過ぎた頃、最高のタイミングで、神速さんの "Clean Code for Rails" と共に完売となりました。みなさま本当にありがとうございました。

f:id:at284km:20180424161428j:plain

だいたい、言いたいことは全てあとがきに詰まっていた感じなので、あとがきをペタッと貼りますね。(実は、最後の最後、寝てるのか寝ていないのかみたいな境地でこのあとがきは書かれていたので、後から見て、なるほどこういうことを最後に書き残したのだなと自分で把握しました...。)

= あとがき

初めての同人誌制作を終えて、ほっとした気持ちがあったり、反省点も多かったり(特にスケジューリングに関する)、やり方をひととおり覚えたので、次は今回よりも良いものにしたいという気持ちが湧いていたり、とにかく寝たかったり...。

正直なところ、もっと書きたかったことがあった。特に MRI の実装のことなんですけれど、全然間に合いませんでした...。ごめんなさいm(_ _)m。

今回、自分で実際に同人誌制作のひととおりのプロセスを辿ることによって、8ページ毎に印刷料金の壁があるのだなとか、最終的に何が揃っていれば完了できるのかとか、表紙のことや電子版の配布をするとしたらどうすれば良いかとか、入稿のやり方とか、学びがたくさんあった。とにかくやってみて良かったです。実際にやることにより、自分が何が出来て、何が出来なかったかは明らかになりました。

それと、気軽に本を書いて良いんだよということをこれで自分で示せたのではないかと思います。凄くなくても良くて、ハードル上げなくてもよくて、自分の好きなことを自由に書いて良いんですよと、そういうことを示せたら良いなと思っていたのでした。そんな風に、気軽に自分の好きな内容で本を書く方が増えたらおもしろいじゃないですか。買いに行きたい。

最後になりますが今回、技術書典4 での活動において、多くのアドバイスやサポートをしてくれた @sinsoku さん、@youchan さん、しんどい時に、本買いにいきますね!と声をかけて元気を与えてくれたいつも優しいパーソン達には、特に感謝しています。ありがとうございました。

次回がある予定ですが、内容は未定です。 今回よりも一つ以上の改善を加えたものを作れるようにしたいです。

完売後にも、買いたかったと言ってくれる方がたくさんいて非常にありがたいです。 そこで電子版についても少し考えてみたのですが、今回は電子版は出さずに、技術書典4 で頒布した紙の本のみとしたいと思います。電子版買います!と言ってくれた方々にはごめんなさい。

そうする理由ですが、そういうのも同人誌の良さだったりするじゃないですか?? わりとあの世界観が好きなんですよ。 それと、自分自身の興味としてはもう次のものに移ってしまっていたりもするので、何らかの次のアウトプットで今回より良いものを見せられたらなという気持ちの方が強いのです。

あと、名前は分からないんですが、よく会うから知っています!!という方もたくさん買ってくれたのですが、そこで twitter id とか聞いておけば良かったんだよなと、後になって思ったりしました。何故そうしなかったのか。

最後に、今回ねこのしっぽさんに大変お世話になりまして、実は入稿チャレンジに一度失敗しているんですが、ギリギリになって入稿したにも関わらず、また、全然知識の足りていない状態の人間に、非常に親切に説明、対応をしてくれたおかげで無事に当日を迎えることが出来ました。次のために、それら情報を簡単にまとめておきたいと思います。

  • 表紙
    • 同人誌の申込がB5サイズだが、データのサイズがA4
      • (B5サイズに縮小して頂き、見え方も大丈夫だったが、次は気をつけよう)
  • 表紙、裏表紙ともレイヤーが複数残っている

    • (次回は結合して入稿します...!!)
  • 本文

    • 印刷作業に本文の通しのノンブルが必要となる
      • (次回以降可能なら通しで入れる)
  • 目次
    • 目次ページと「第一章」の間の白紙は、仕様で大丈夫ですか?
      • (これなんで空白ページができちゃうかなあ?? 調べて直したい)
      • 目次の文字が赤色で出来ております。
    • 1色に落として作業を行いますが、その際赤色はグレー(おおよそ K62%程)になります。
      • (全然気にしていなかった...。見え方は大丈夫だったが、次回再考する)
    • 文字がグレーの枠よりはみ出ている
    • データ上のノンブル13P目、綴じ口ギリギリに文字があり糊で閉じた際、見えづらくなりそう
      • (最後の方、細かい調整をする時間を作ろう...!!)
  • その他
    • 神速さんが買ってきてくれた 100 円と、500 円のコインケース、お札を止めておくためのクリップがとても便利だった
    • 見本誌を置く良い感じの台があったらほしい。
    • いい感じの POP とか用意できたら便利だよね

スタッフのみなさま、お疲れ様でした。ありがとうございました。

それではまた次回。