mtsmfm blog

RubyKaigi 2017 で Language Serverの話をします

RubyKaigi 2017 で Language Server の話をします。 http://rubykaigi.org/2017/presentations/mtsmfm.html

この発表を通じて、Language Server というもの、その考え方を知ってもらい、 Ruby の開発環境がリッチになって開発者が Ruby をさらにキメやすくなるといいなぁと思っています。 また、Ruby の静的解析について僕自身手探りな状態なので、情報交換ができれば嬉しいです。

Language...

Read more

Docker 版 pow もどきの Yaichi を作った

複数のアプリが連携しているような Web アプリを開発する場合、アプリ A が localhost:3000 で、B が localhost:3001 で… というような構成にして手元では開発することがあるだろう。

現に Quipper では生徒向け、先生向け、管理者向け、問題作成者向け etc といったようにアプリがいくつもあって、ポート何番で動いているのかよくわからなくなる。 前々から Docker 版 pow みたいなのが欲しいなー (pow 使ったことないけど) と思っていたので...

Read more

オフラインリアルタイムどう書く E14 の問題 - サイコロできるかな

オフラインリアルタイムどう書く E14 の問題です。

追記: 当日発表中に自分で気づいて懺悔しましたが、ある場合のテストケースが足りずに出題者の回答が特定の状況で誤検出していました。 @Nabetani さんありがとうございます。

問題の概要

でたらめにサイコロの目を印刷した紙がある。 サイコロを作ることができるか答えよ。

入力

5262,4631,2644 のような形式。 数字はサイコロの目。, は行の区切り。 この値の場合上の図のようになる。

出力

true もし...

Read more

転職しました

5月末で永和システムマネジメント を退職し、Quipper に入社してました。

前職は新卒で入社し、学生時代コード書ける方とか思ってたけれど微塵もできないことを突きつけていただいたり、 プログラマとしてのありかた、仕事のやり方など非常に多くのことを学ばせていただきました。

仕事だけでなくコミュニティ面でも多くの刺激を得ることができ、西日暮里.rb とか OSS とかもこの会社にいなければしなかっただろうなぁと思います。

中でも一番影響を受けたのは @tkywtnb さんの「まずは自分...

Read more

SQL マスキングツール Vanir を作った

本番データと同様の分量、分布のデータが欲しいことはよくあるが、 個人情報を含むとそのままコピってくるわけにもいかない。

そこで *** みたいにマスキングする必要があるが、なんかそれっぽいのが見つからなかったのでえいやで作った。

https://github.com/mtsmfm/vanir

名前は某見通す悪魔から。

マスクしたいテーブル名とカラム名の yaml に Go のテンプレート書けばおっけー。

ハッシュ化できるようにしたのは、メアドなどの個人情報を外部キーに使っているよ...

Read more

オフラインリアルタイムどう書く E12 の問題 - 積むけど消えない

オフラインリアルタイムどう書く E12 の問題です。

問題の概要

5 種類のテトロミノを積んでいく。高さを求めよ。

テトロミノ

入力

3S0T2O3I のような形式。

数字は右にいくつずらしてから落とすか、文字 (I、 L、 O、 S、 T) はテトロミノの形。

出力

8 のような形式。高さ。

補足

実装ができた方は Qiitaの記事 のコメント欄からリンクを張っていただくと見つけやすくて助かります。

サンプルデータ

# 入力 期待 状況へのリンク
0 1O3L0I0T 5 状況
1 0I 4 状況
2 0I0I
Read more

西日暮里.rb 2年のふりかえり

この記事は IT勉強会/コミュニティ運営 Advent Calendar 2016 の20日目の記事です。

19日目は @ara_ta3 さんの 大体新卒(?)コミュニティDarkでやってるtips集 でした。

どうもこんばんは、@mtsmfm です。 Ruby と麻雀が好きです。 西日暮里.rb のオーガナイザーをしています。

西日暮里.rb は、主に最終月曜日に行われている地域.rb です。 西日暮里や神田や五反田などで、もくもく会をしたり LT 大会をしたりしています。 最近で...

Read more

オフラインリアルタイムどう書く E10 の問題 - 塗って繋ぐ

オフラインリアルタイムどう書く E10 の問題です。

問題の概要

黒い正方形それぞれを9等分して5箇所を白く塗る操作を X、4箇所を白く塗る操作を O とする。 操作を繰り返した結果、白の領域が繋がった部分がいくつになったか求めよ。

X

操作X

O

操作X

XO

操作X

ルール

入力

XOX のような形式。

各々操作の種類の名前。

出力

21 のような形式。

白の繋がっている部分の数。

補足

実装ができた方は Qiitaの記事 のコメント欄からリンクを張っていただくと見つ...

Read more

オフラインリアルタイムどう書く E06 の問題 - 目指せホゲモンマスター

オフラインリアルタイムどう書く E06 の問題です。

問題の概要

ホゲモンリーグを勝ち抜いて、ホゲモンマスターになろう!

ルール

プレイヤー同士でホゲモンを戦わせ、総当たり戦を行う。

  1. プレイヤーは手持ちの中で登録した順に 1 匹づつホゲモンを繰り出し、常に 1 対 1 で戦う
  2. ホゲモンには体力があり、 0 以下になるともう行動することはできない

戦闘について

  1. 戦闘はターン制で、1 ターンに 1 回攻撃できる
  2. レベルが高い方が先に攻撃する
    • レベルが低い方は、体力が残っ...
Read more