Slide 1

Slide 1 text

業務で使用したOSSにプルリクを投げてみた話

Slide 2

Slide 2 text

突然ですが、皆さんOSSって何か知ってますか?

Slide 3

Slide 3 text

OSSとは OSS(オープンソースソフトウェア) オープンソースソフトウェア(英: Open Source Software、略称: OSS)とは、利用者 の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が可能なソフ トウェアの総称である 引用元 https://ja.wikipedia.org/wiki/オープンソースソフトウェア

Slide 4

Slide 4 text

つまりタダで使える&改造できる&再配布できるソフトウ ェアのことです! ※ 細かい決まりはライセンスによりますが今回はそこには触れないです

Slide 5

Slide 5 text

ある日の出来事 「ログのUAを解析して、ブラウザ仕様割合を見たい」

Slide 6

Slide 6 text

考えた調査方法 アクセスログの中のUA(ユーザーエージェント)を見ればブラウザが特定できそう こんなやつ→User-Agent: Mozilla/5.0 () () アクセスログをCSVでダウンロードしてRubyでUAを解析すれば自動化できそう!

Slide 7

Slide 7 text

課題 UAからブラウザ名を特定しなければならない Rubyで作るのでできればGemが欲しい(Rubyで使えるの便利ツール的なの)

Slide 8

Slide 8 text

そんなこんなでGemを見つけました

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

browser https://github.com/fnando/browser UA(ユーザーエージェント)をブラウザ名に変換してくれるGem(Rubyの便利機能的 なやつ) トラッキングサーバーへのアクセスログを解析してブラウザの使用割合を計測するため に使用 バンクーバーに住んでるNando Vieiraさんが作った(https://github.com/fnando)

Slide 11

Slide 11 text

一旦これで解決...だが UAでの解析に対応していないブラウザがある 対応していないブラウザのUAは全て「Unknown」で出力されてしまう

Slide 12

Slide 12 text

よし、プルリクを送ってみよう!

Slide 13

Slide 13 text

どんなプルリクを送ったのか yahooブラウザのUAを追加しました

Slide 14

Slide 14 text

機能を追加した箇所 UA文字列の中にYJAppがあればyahooブラウザだよ〜!

Slide 15

Slide 15 text

マージされました? されてません!! そもそも定期的に更新されてるGemでは無さそう yahooブラウザがマイナー過ぎて無視されてるかも

Slide 16

Slide 16 text

今回学んだこと OSSは無料で使えるし、便利だけどその裏で有志による開発が行われている 使う時は開発者へのリスペクトを忘れない! OSSのコードを読むことで勉強になる

Slide 17

Slide 17 text

バレットグループ 人とテクノロジーで世界をつなぐ テクノロジーの部分でいっぱい使われてるのがOSS SLVRbulletだけでも色々なOSSが使われてる こんな便利なものあるのか〜 こんな便利なものを誰かが作ってくれてる

Slide 18

Slide 18 text

ただOSSを使うだけじゃ無くて発展に貢献するのもプログ ラマーとして大事だなと思いました!

Slide 19

Slide 19 text

終わり

Slide 20

Slide 20 text

No content