Skip to content

Instantly share code, notes, and snippets.

View kakutani's full-sized avatar

Kakutani Shintaro kakutani

View GitHub Profile
@kakutani
kakutani / ruby-advent-20221211_kakutani.md
Last active December 12, 2022 22:26
日本Rubyの会のほうから来ました

日本Rubyの会のほうから来ました

この記事はRuby Advent Calendar 2022の第11日の記事です。前日の記事は@taichi-ishitaniさんによる「YAML 上の位置を取得する」でした。

日本Rubyの会の理事の@kakutaniです。この記事はあくまで個人の見解であり、会の公式見解ではありません。

in-person開催のイベントが「帰って」きましたね

ここ2年ほどのコロナ禍のなか、日本Rubyの会の活動はいつも以上に元気がありませんでしたが、2022年にRubyKaigiがin-personで開催されのは、なんか日本のRubyコミュニティの活動を再始動させるきっかけになった気がします。参加した皆さんは楽しんでくれたようでしたし、オンライン参加だった方がたからも「次はやっぱり現地に行こうと思った」という声を少ならからず聞いています。RubyKaigi 2022以降、ふりかえってみると国内でも毎月のようにRuby関連イベントは開催されていたのでした。

@kakutani
kakutani / ruby-jp-for-rubyistist.md
Last active September 28, 2022 02:04
Rubyist-istのためのruby-jpチャンネルガイド

Rubyist-istのためのruby-jpチャンネルガイド

ruby-jpには大量にチャンネルがあります。 rubyist-istの観点から少し整理してみました。

Rubyistの集まりに関するチャンネル

  • [#regional_rb][0]: 地域のRubyist同士の集まり(ミートアップ)に関する話題が中心
  • [#rubykaigi][1]: RubyKaigiの話題
  • [#rubyworld-conference][2]: 毎年11月に松江で開催されるRubyWorld Conferenceの話題
@kakutani
kakutani / yancya-club.md
Last active December 2, 2021 09:57
おはようございます。@kakutaniです。2021年12月1日の、朝…ではなく夜です。このテキストはやんちゃクラブリスナーアドベントカレンダー2021、1日目の記事です。

The First Rule of yancya.club is:

No one can be told what yancya.club is.

おはようございます。@kakutaniです。2021年12月1日の、朝…ではなく夜です。このテキストはやんちゃクラブリスナーアドベントカレンダー2021、1日目の記事です。

記事タイトルと見出しで『ファイトクラブ』(1999年作品。地域によりますが、12/09(木)までなら「午前十時の映画祭」という企画上映で劇場でご覧になれます。自己言及的な作品の作中に「映画館で上映されてること」への自己言及の仕掛けがあって、公開当時は中心だったアナログフィルム上映では効果的だったのが、2022年にはデジタル上映全盛となってしまって、若干風情が失われてしまいましたが、まあ、それでもやはり貴重な機会ですので、是非映画館へ足をお運びください)と『マトリックス』(1999年作品。12/17(金)に『The Matrix Resurrections』が電撃的に公開されますが、ネオとトリニティはオリジナル配役で、他の旧作キャラはリ・イマジネーションされて(?詳細不明)、いまどきの若手俳優が演じるのは興味ぶかい試みだとは思うものの、公開当時に渋谷パンテオンで13回観た頃にはRegion 1のDVDがAmazon.comから届いてその後はひたすら毎朝出勤前に円盤を回していた私(その頃はエスイーとしてスーツを来て出勤していたのだ)としては、今回の「よみがえり(リザクションズ)」というのはタイトルも含めて複雑な心境ですね…。悪い意味で「ゾンビ的映画」(ゾンビ映画ではなく)になりかねい危うさもあるわけで…公式サイトにも執筆時点で掲載されている作品ポスターのキアヌの風貌はジョンウィックみたいだし、キャリー=アンは風格が出すぎてThe Matrixの治安を乱すハッカー集団(?)を引率する保護者みたいだし…。予告編も「あえて」第1作のアイコンを選り抜いて散りばめているんだろうけれども、語り直しとリイマジネーションで2022年に向けて人類の「想像力」を更新できるの(第1作は間違いなく人類

@kakutani
kakutani / reading-polished-ruby-translation.md
Last active November 3, 2021 14:06
Polished Ruby Programming翻訳査読書(のようなもの)

"Polished Ruby Programming" by Jeremy Evans

-- Build better software with more intuitive, maintainable, scalable, and high-performance Ruby code

「Rubyの磨きかた -- わかりやすくてメンテナンスしやすい、スケール可能で高性能なRubyコードでソフトウェアを上手につくろう」みたいな感じ?

https://www.packtpub.com/product/polished-ruby-programming/9781801072724

  • Publication date: June 2021
  • Publisher: Packt
  • Pages: 381
@kakutani
kakutani / oedo09.md
Created October 27, 2021 00:41
私家版大江戸Ruby会議09開催趣旨

『発掘されたRubyKaigi展 (2021)』

2006年からほぼ毎年RubyKaigiは実施されていますが、初期の開催については当時の動画アーカイブの保存形式や格納場所の問題のため、講演動画にアクセスできるRubyistは限られていました。

このたび、松田明メンバーの尽力により発掘調査が行われた結果、出土した講演動画のなかでも特に注目に値するRubyKaigi 2006と2007の基調講演動画を中心とした展示を構成し、Asakusa.rb主催の地域Ruby会議として大江戸Ruby会議09をDiscord上で「出前エディション」として開催いたします。 当時の運営チームの主要メンバーである高橋氏と島田氏をゲストに迎え、RubyKaigi 2006〜2008を解説する企画も予定しています。 企画展ではRubyKaigiの過去の講演動画とあわせて発掘された大江戸Ruby会議01,大江戸Ruby会議04の基調な講演動画も紹介する予定です。

この企画展は、Rubyistが埋蔵文化財に親しみ、RubyKaigiの歴史の重要性に関する理解を深めることを目的としています。祝日である翌11月3日(水)の文化の日を迎えるのふさわしい催しとなることに期待しています。なお、この地域Ruby会議はAsakussa.rbの第634回の記念した開催でもあります。

@kakutani
kakutani / README.md
Created July 16, 2021 13:23
『ユニコーン企業のひみつ』レビューワー向けREADME

🦄 competing-with-unicorns-ja

[build Re:VIEW PDF]

『ユニコーン企業のひみつ - Spotifyで学んだソフトウェアづくりと働き方(仮)』のためのリポジトリです。原書はJonathan Rasmusson著「Competing with Unicorns - How the World’s Best Companies Ship Software and Work Differently」です。 訳書は2021年にオライリー・ジャパンより刊行予定です。

📢 レビューに参加いただく皆さまへ

このリポジトリに来て書名を知ったら、「ああ、なんだSpotifyモデルの話か……」 という印象を持つ方が多少なりともいらっしゃるかもしれません。

@kakutani
kakutani / competing-unicorns-talk.md
Last active July 15, 2021 11:25
Spaces番組「『ユニコーン企業のひみつ』のひみつ」 🦄

🦄 「『ユニコーン企業のひみつ』のひみつ」番組概要

🗓 いつ・どこで?

🗳 島田さんへの質問を事前に受け付けているよ!

  • kakutaniのマシュマロまで。匿名で質問できます
@kakutani
kakutani / bowling.rb
Last active February 24, 2021 14:41
end-less methods bowling (object-oriented)
# frozen_string_literal: true
module Bowling
class Game
def initialize(marks) = (@frame_builder = Frame.builder(marks))
def score = frames.sum(&:score)
private
def frames = (@frames ||= Array.new(10){ build_frame(final?(_1)) })
def build_frame(final) = @frame_builder.call(final)

ついうっかりAsakusa.rbの火曜日のミートアップでキーボードの話をしてしまうので、火曜日じゃないところでキーボードの話をすればよいのでは?という仮説を検証します。

目的

Rubyをよりよくしていくための活動を存在意義とする地域RubyistコミュニティAsakusa.rbのメンバーの使うキーボードをよくすることを通じてRubyをよりよくしていくことに貢献する

到達したい状態

  • メンバーのキーボードがよくなる
  • ミートアップでRubyの話題をするにあたって「すみません、Rubyの話をしてもいいですか」というエクスキューズをなくす
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT( \
//,-----------------------------------------------------. ,-----------------------------------------------------.
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,\
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,\
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
LSFT_T(KC_ESC), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT,\
//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+------