Slide 1

Slide 1 text

とある文字列でビープ音鳴らす話 モールス信号学習gem作った話 oguressive

Slide 2

Slide 2 text

Overview - 自己紹介 - puts xxx でビープ音を鳴らせる - モールス信号学習支援 gemを作成

Slide 3

Slide 3 text

自己紹介 人材会社、Webメディア・水中ドローンの会社など でシステム開発 現在、CAMPFIREのバックエンドエンジニア フロントエンド分離の推進を進めています https://note.com/oguressive/n/n4de282e7ecd0

Slide 4

Slide 4 text

puts ”\a” するとピープ音が鳴る ターミナルで puts ”\a” するとピープ音が鳴る なぜ?? case 'a': /* alarm(bell) */ return '\007'; https://github.com/ruby/ruby/blob/master/parse.y#L8124-L8125

Slide 5

Slide 5 text

ASCIIの7番は制御コード(control code)のBEL https://so-zou.jp/software/tech/programming/tech/character-code/ascii-code.htm

Slide 6

Slide 6 text

何回も鳴らしてみた 楽しくなって 何回も鳴らしてみた。 あれ、、、

Slide 7

Slide 7 text

何回も鳴らしてみた なんか「モールス信号 」ぽいな。。 いやでもモールス信号とかコナン君の世界でしかみたことあまりない ちょっと調べてみた。むずかしかった。 Webで調べてて、文字と符号の関係はわかるけど、 簡単に試しながら勉強できるいいツールが パッと探してみたところあまりなさそうだった。 せっかくならgem作ってみよう。rubyist専用。 For Rubyist.

Slide 8

Slide 8 text

モールス信号の学習支援gemを作った モールスと rubyをかけて、 morsby というgemを作ってみた。 https://rubygems.org/gems/morsby

Slide 9

Slide 9 text

- `morsby -learn` : 学習モード - 基礎、Q符号、CW略号、ランダムクイズ(符号=>文字、音声=>文字) - `morsby "xxxx"` : モールス信号を音声出力するモード (文字列→音声) - `morsby "xxxx" -- pro` : 高速再生用のオプション - `morsby -learn -- lang en` : 英語対応用のオプション morsby

Slide 10

Slide 10 text

なんでしょう ... --- ... => ??? --. -- .-. ..- -... -.-- .. … - => ???

Slide 11

Slide 11 text

自分がそこそこ学習できるのはできた お試し感覚で勉強してみる、くらいの温度感では使えそうなくらいにはなった 3日前にLTをすることをきめ、ネタ探しをする中でそれから急ぎ作ったので 結構雑に作られてます。 Issueなど無限に投げていただいて構いません ※音声出力でsoxを使ってるので、brew install sox は事前に必要です。  一応インストールされていない場合はアラートが出るようにはなってます。  (ビープ音でモールス信号を再現できないか試みましたが断念しました)

Slide 12

Slide 12 text

おわり GM Rubyist