2021年9月9日(木) から11日(土) の3日間にわたって開催される RubyKaigi Takeout 2021 に永和システムマネジメントから @koic (Day 1) と @ima1zumi (Day 3) が登壇します。
ここでは、それぞれの登壇スケジュールと講演内容について軽く紹介します。
9月9日(木) 11:30-11:55 @koic 『RuboCop in 2021: Stable and Beyond』
2020年10月に RuboCop 1.0 がリリースされておおよそ1年が経過しようとしています。
前回の RubyKaigi Takeout 2020 では日々の OSS 活動のうち、RuboCop 1.0 への道のりからテーマを抽出したことに対して、今年は RuboCop 1.0 以降の RuboCop 開発で行っていることからテーマを抽出しました。
RuboCop 1.0 は安定したメジャーバージョンということで、Breaking Change を起こさないアップグレードを指向しています。この講演では、アップグレードのメリットや、その舞台裏における問題抽出の環境について紹介する予定です。また、現状の RuboCop の静的解析における限界に対する設計や実装ポイントについても取りあげつつ、今後の拡張に対するアイデアのいくつかをお伝えします。
RuboCop のライトユーザーから、カスタム cop を作っている RuboCop マニアまで何かしら Takeout してもらえると良いなといったコンテンツ作成を進めています。お楽しみに。
9月11日(土) 11:00-11:25 @ima1zumi 『Dive into Encoding』
文字コードとは何でしょうか。私は現実世界の "文字" を抽象化して計算機上で扱えるようにしたものだと思います。業務アプリケーションで現実世界の業務を抽象化してコードを書くように、文字コードもまた "文字" を抽象化して計算機上で扱えるようにしているのだと考えています。
Ruby で 'あ'
というコードを書くと String
のインスタンスが作られます。例えば 'あ'.bytes
を実行すると あ
という文字のバイト列が得られます。 私は「あ」という文字がバイト列になっているということを想うととても興味深く感じます。その間には一体どんなコードがあり、文字はバイト列になるのでしょうか?また、バイト列で表現された文字と文字コードとの関係、文字コードを変換するとは一体どういう意味なのでしょうか。Ruby は String
のインスタンスそれぞれが文字コードを持っていますが、それはどういうことなのでしょう?
これらの疑問を解決するため、自作文字コード「いろは」を作ってローカルの Ruby でビルドし、その過程を追うことで Ruby の文字コードの取り扱いについて深く潜ってみることにしました。このセッションでは、文字コードの基礎から Ruby の文字コードの実装まで話します。これを機に文字コードの世界に興味を持っていただければ幸いです。
それでは、オンライン会場でお会いしましょう。
RubyKaigi Takeout 2021 に Platinum スポンサーとしても参加している永和システムマネジメントでは、Ruby とアジャイルソフトウェア開発を通じてコミュニティと成長したいエンジニアを絶賛募集しています。